mirror of
				https://github.com/ARM-software/workload-automation.git
				synced 2025-10-30 22:54:18 +00:00 
			
		
		
		
	Framework/Uiauto: Add support for Applaunch
This commit is contained in:
		| @@ -0,0 +1,54 @@ | |||||||
|  | /*    Copyright 2013-2016 ARM Limited | ||||||
|  |  * | ||||||
|  |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  |  * you may not use this file except in compliance with the License. | ||||||
|  |  * You may obtain a copy of the License at | ||||||
|  |  * | ||||||
|  |  *     http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  |  * | ||||||
|  |  * Unless required by applicable law or agreed to in writing, software | ||||||
|  |  * distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  |  * See the License for the specific language governing permissions and | ||||||
|  |  * limitations under the License. | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | package com.arm.wa.uiauto; | ||||||
|  |  | ||||||
|  | import android.os.Bundle; | ||||||
|  | import android.support.test.uiautomator.UiObject; | ||||||
|  |  | ||||||
|  | /** | ||||||
|  |  * ApplaunchInterface.java | ||||||
|  |  * Interface used for enabling uxperfapplaunch workload. | ||||||
|  |  * This interface gets implemented by all workloads that support application launch | ||||||
|  |  * instrumentation. | ||||||
|  |  */ | ||||||
|  |  | ||||||
|  | public interface ApplaunchInterface { | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * Sets the launchEndObject of a workload, which is a UiObject that marks | ||||||
|  |      * the end of the application launch. | ||||||
|  |      */ | ||||||
|  |     public UiObject getLaunchEndObject(); | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * Runs the Uiautomation methods for clearing the initial run | ||||||
|  |      * dialogues on the first time installation of an application package. | ||||||
|  |      */ | ||||||
|  |     public void runApplicationSetup() throws Exception; | ||||||
|  |  | ||||||
|  |     /** | ||||||
|  |      * Provides the application launch command of the application which is | ||||||
|  |      * constructed as a string from the workload. | ||||||
|  |      */ | ||||||
|  |     public String getLaunchCommand(); | ||||||
|  |  | ||||||
|  |     /** Passes the workload parameters. */ | ||||||
|  |     public void setWorkloadParameters(Bundle parameters); | ||||||
|  |  | ||||||
|  |     /** Initialize the instrumentation for the workload */ | ||||||
|  |     public void initialize_instrumentation(); | ||||||
|  |  | ||||||
|  | } | ||||||
| @@ -0,0 +1,35 @@ | |||||||
|  | /*    Copyright 2013-2016 ARM Limited | ||||||
|  |  * | ||||||
|  |  * Licensed under the Apache License, Version 2.0 (the "License"); | ||||||
|  |  * you may not use this file except in compliance with the License. | ||||||
|  |  * You may obtain a copy of the License at | ||||||
|  |  * | ||||||
|  |  *     http://www.apache.org/licenses/LICENSE-2.0 | ||||||
|  |  * | ||||||
|  |  * Unless required by applicable law or agreed to in writing, software | ||||||
|  |  * distributed under the License is distributed on an "AS IS" BASIS, | ||||||
|  |  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. | ||||||
|  |  * See the License for the specific language governing permissions and | ||||||
|  |  * limitations under the License. | ||||||
|  | */ | ||||||
|  |  | ||||||
|  | package com.arm.wa.uiauto; | ||||||
|  |  | ||||||
|  | import android.os.Bundle; | ||||||
|  |  | ||||||
|  | public final class UiAutoUtils { | ||||||
|  |  | ||||||
|  |     /** Construct launch command of an application. */ | ||||||
|  |     public static String createLaunchCommand(Bundle parameters) { | ||||||
|  |         String launchCommand; | ||||||
|  |         String activityName = parameters.getString("launch_activity"); | ||||||
|  |         String packageName = parameters.getString("package_name"); | ||||||
|  |         if (activityName.equals("None")) { | ||||||
|  |             launchCommand = String.format("am start --user -3 %s", packageName); | ||||||
|  |         } | ||||||
|  |         else { | ||||||
|  |             launchCommand = String.format("am start --user -3 -n %s/%s", packageName, activityName); | ||||||
|  |         } | ||||||
|  |         return launchCommand; | ||||||
|  |     } | ||||||
|  | } | ||||||
										
											Binary file not shown.
										
									
								
							
		Reference in New Issue
	
	Block a user