Upload apps using public URL
In order to test your native and hybrid apps on BrowserStack using Appium, you first need to upload your app to BrowserStack servers. Its easy to upload an Android app (.apk
or .aab
file) or an iOS app (.ipa
file) from a public URL to BrowserStack using the REST API. This approach is useful when the app is hosted on a remote server (e.g. S3 bucket) and its downloadable via a publicly accessible URL.
Here is an example cURL
request to upload an Android app using a public URL :
curl -u "YOUR_USERNAME:YOUR_ACCESS_KEY"
-X POST "https://api-cloud.browserstack.com/app-automate/upload"
-F "url=https://www.browserstack.com/app-automate/sample-apps/android/WikipediaSample.apk"
A sample response to the above API request is shown below :
{
"app_url":"bs://f7c874f21852ba57957a3fdc33f47514288c4ba4"
}
cURL
command until you get the response back.
Please note the value of app_url
in the API response (bs://f7c874f21852....
in the above example). This value will be used later to set the app
capability to specify application under test in your Appium test scripts.
You can manage your uploaded apps by using our REST API. Use the recent apps API endpoint to list your recently uploaded apps. You can delete your uploaded apps by using the delete app API endpoint. By default, we will delete the uploaded app after 30 days from the date of upload.
- If you upload an unsigned version of the Android app, we sign them with our certificates before installing them to our devices. Similarly, whenever
.aab
files are uploaded, we convert them to a universal APK and sign them with our certificates. When BrowserStack resigns the apps, your app’s integration with third-party libraries such as Google Firebase services, Google Maps SDK, Facebook SDK, etc may not work if you have restricted the use of API keys based on the SHA-1 certificate fingerprint of the app’s signing key. To avoid this issue, you can sign the APK with your own certificates before uploading the app to BrowserStack. - If you upload an iOS app, we will re-sign the app with our own provisioning profile to be able to install your app on our devices during test execution. However, if your app is signed using the Apple Developer Enterprise Program, you can disable this behavior to test features such as push notifications on BrowserStack devices. To disable re-signing, set the
browserstack.resignApp
capability to false in your Appium test scripts. - Please make sure the iOS app has
isInspectable
enabled forWkWebView
orJSContext
components if it is built with the iOS/iPadOS 16.4+ SDK. This is now required by Apple to make WebView contexts available in appium and the value by default is No/false. Please read Enabling the Inspection of Web Content in Apps for more details.
We're sorry to hear that. Please share your feedback so we can do better
Contact our Support team for immediate help while we work on improving our docs.
We're continuously improving our docs. We'd love to know what you liked
We're sorry to hear that. Please share your feedback so we can do better
Contact our Support team for immediate help while we work on improving our docs.
We're continuously improving our docs. We'd love to know what you liked
Thank you for your valuable feedback!