App Location while adding new application

I have connected my device with test app provide by UiPath but if I want to do automation on any application which is downloaded from play store, so what location I have to mention in App location in Add application window. For UiPath test application the location was complete url path of apk -“https://uipathtestappsto.blob.core.windows.net/testapps/TheApp.apk”.
Please provide suggestion to add location for play store apps.

Thanks!!

Hi Shubham

  1. For Android, because it’s not as restrictive with side-loading apps and also because you can obtain the apk from PlayStore or a previous install, you can get the apk, place it on web server and then use that address for the apk. You can also deploy the apk locally on the same machine that runs Appium and if you provide a local path, Appium will pick the apk from there. An article about how to download an apk is How to Download an APK File from the Google Play Store.

  2. You can install the app on the device before testing and make sure that the device isn’t cleaned. In this way you can just connect to the device without providing any app and use the Manage Other App activity to start the application.

  3. If you want to have a testing workflow that works even if you change the device, in the case where you don’t have an apk, you can have a special workflow that connects to the device and installs the app by automating the PlayStore and then do what’s described at 2.

Hope this helps!
Cristian

1 Like

Thank you @phaserescu for the above explanation.

So one more thing, what is the use of App Package and App Activity in add application window. Are they used if we are storing app apk locally and need to provide that path?
And to connect mobile for automation, I have found 2 option, 1st with USB cable and 2nd with same wifi for both devices. is there any other option where it can perform virtually without connect with wifi or cable?

The apk is just a container that can contain multiple apps. Usually this is not the case but you don’t know beforehand. So the convention on Android when starting an app is to provide the package (that identifies the location of the installed app) and then the activity (because an app can have multiple activities).

These are used after the app is installed. In this case we use a feature of Appium in which we specify the app under test when initializing the session, so Appium knows that it needs to start the app immediately after installing.

When using the Manage Other App activity, you still need the package and activity because otherwise the OS doesn’t know what app to launch.

Is this answering your question?

1 Like

So if we are going with Appium connection link then we don’t have to provide App Package and App Activity, only if we are using manage other app activity then we will have to provide it, right?

And to connect mobile for automation, I have found 2 option, 1st with USB cable and 2nd with same wifi for both devices. is there any other option where it can perform virtually without connect with wifi or cable?

When you’re defining an App in the Applications tab in the MDM you always need an App package and an App Activity. What I’m saying is that when you start a connection you don’t need to specify an Application. You just leave that empty (see image below).

connection_with_empty_application

Yes, these are the two options. The main idea here is for Appium to see the device. We don’t care about the way you connect your device, we only care if Appium can see that device and can work with that device. So, we don’t interact directly with the device. All the interaction goes through Appium.

1 Like

Thank you @phaserescu for all the info.