Search code examples
javaappium

Launching Application appium, I've written AppActivity and package but still


I am trying to Automate Bumble application using Appium and Java in eclipse, I've succesfully launched other apps but there is problem when i try to launch Bumble dating application. Here is My DesiredCapabilities setup

DesiredCapabilities dc = new DesiredCapabilities();
        
        dc.setCapability("deviceName", "pixel_6_pro");
        
        dc.setCapability("udid", "emulator-5554");
        
        dc.setCapability("platformName", "Android");

        dc.setCapability("androidVersion", "14");
        
        dc.setCapability("appPackage", "com.bumble.app");
        
        dc.setCapability("appActivity", "com.bumble.app.ui.screenstories.ScreenStoryBlockersActivity"); 
        
        //dc.setCapability("autoGrantPermissions", "true");
        
        //dc.setCapability("noReset",true);
        
        
        driver = new AndroidDriver(new URL("http://127.0.0.1:4723/wd/hub") , dc);

and here is Log Description

FAILED CONFIGURATION: @BeforeTest Bumble.WebBrowser.runners.mobileVerify.setup
org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Response code 500. Message: An unknown server-side error occurred while processing the command. Original error: Cannot start the 'com.bumble.app' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Error executing adbExec. Original error: 'Command 'C:\\Users\\Dato\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe -P 5037 -s emulator-5554 shell am start -W -n com.bumble.app/com.bumble.app.ui.screenstories.ScreenStoryBlockersActivity -S' exited with code 255'; Stderr: 'Exception occurred while executing 'start':
java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.bumble.app/.ui.screenstories.ScreenStoryBlockersActivity } from null (pid=11173, uid=2000) not exported from uid 10191
    at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1136)
    at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1069)
    at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:742)
    at com.android.server.wm.ActivityTaskManagerService.startActivityAndWait(ActivityTaskManagerService.java:1548)
    at com.android.server.am.ActivityManagerService.startActivityAndWait(ActivityManagerService.java:3241)
    at com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:719)
    at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:233)
    at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
    at android.os.ShellCommand.exec(ShellCommand.java:38)
    at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:9681)
    at android.os.Binder.shellCommand(Binder.java:1068)
    at android.os.Binder.onTransact(Binder.java:888)
    at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:5267)
    at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2720)
    at android.os.Binder.execTransactInternal(Binder.java:1344)
    at android.os.Binder.execTransact(Binder.java:1275)'; Code: '255' 
Host info: host: 'DESKTOP-LI39OCO', ip: '192.168.43.60'
Build info: version: '4.11.0', revision: '040bc5406b'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '20.0.2'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [null, newSession {capabilities=[{appium:androidVersion=14, appium:appActivity=com.bumble.app.ui.screenstories.ScreenStoryBlockersActivity, appium:appPackage=com.bumble.app, appium:deviceName=pixel_6_pro, platformName=ANDROID, appium:udid=emulator-5554}], desiredCapabilities=Capabilities {androidVersion: 14, appActivity: com.bumble.app.ui.screensto..., appPackage: com.bumble.app, deviceName: pixel_6_pro, platformName: ANDROID, udid: emulator-5554}}]
Capabilities {androidVersion: 14, appActivity: com.bumble.app.ui.screensto..., appPackage: com.bumble.app, deviceName: pixel_6_pro, platformName: ANDROID, udid: emulator-5554}
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:140)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:133)
    at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:102)
    at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:182)
    at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:250)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:518)
    at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:274)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:159)
    at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:89)
    at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:101)
    at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:113)
    at Bumble.WebBrowser.runners.mobileVerify.setUpDriver(mobileVerify.java:131)
    at Bumble.WebBrowser.runners.mobileVerify.setup(mobileVerify.java:39)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:69)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurationMethod(ConfigInvoker.java:390)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurations(ConfigInvoker.java:325)
    at org.testng.TestRunner.invokeTestConfigurations(TestRunner.java:663)
    at org.testng.TestRunner.beforeRun(TestRunner.java:652)
    at org.testng.TestRunner.run(TestRunner.java:614)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:443)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:437)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:397)
    at org.testng.SuiteRunner.run(SuiteRunner.java:336)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1280)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1200)
    at org.testng.TestNG.runSuites(TestNG.java:1114)
    at org.testng.TestNG.run(TestNG.java:1082)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)

SKIPPED: Bumble.WebBrowser.runners.mobileVerify.testMobileVerify
org.openqa.selenium.SessionNotCreatedException: Could not start a new session. Response code 500. Message: An unknown server-side error occurred while processing the command. Original error: Cannot start the 'com.bumble.app' application. Visit https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md for troubleshooting. Original error: Error executing adbExec. Original error: 'Command 'C:\\Users\\Dato\\AppData\\Local\\Android\\Sdk\\platform-tools\\adb.exe -P 5037 -s emulator-5554 shell am start -W -n com.bumble.app/com.bumble.app.ui.screenstories.ScreenStoryBlockersActivity -S' exited with code 255'; Stderr: 'Exception occurred while executing 'start':
java.lang.SecurityException: Permission Denial: starting Intent { flg=0x10000000 cmp=com.bumble.app/.ui.screenstories.ScreenStoryBlockersActivity } from null (pid=11173, uid=2000) not exported from uid 10191
    at com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1136)
    at com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1069)
    at com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:742)
    at com.android.server.wm.ActivityTaskManagerService.startActivityAndWait(ActivityTaskManagerService.java:1548)
    at com.android.server.am.ActivityManagerService.startActivityAndWait(ActivityManagerService.java:3241)
    at com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:719)
    at com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:233)
    at com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)
    at android.os.ShellCommand.exec(ShellCommand.java:38)
    at com.android.server.am.ActivityManagerService.onShellCommand(ActivityManagerService.java:9681)
    at android.os.Binder.shellCommand(Binder.java:1068)
    at android.os.Binder.onTransact(Binder.java:888)
    at android.app.IActivityManager$Stub.onTransact(IActivityManager.java:5267)
    at com.android.server.am.ActivityManagerService.onTransact(ActivityManagerService.java:2720)
    at android.os.Binder.execTransactInternal(Binder.java:1344)
    at android.os.Binder.execTransact(Binder.java:1275)'; Code: '255' 
Host info: host: 'DESKTOP-LI39OCO', ip: '192.168.43.60'
Build info: version: '4.11.0', revision: '040bc5406b'
System info: os.name: 'Windows 10', os.arch: 'amd64', os.version: '10.0', java.version: '20.0.2'
Driver info: io.appium.java_client.android.AndroidDriver
Command: [null, newSession {capabilities=[{appium:androidVersion=14, appium:appActivity=com.bumble.app.ui.screenstories.ScreenStoryBlockersActivity, appium:appPackage=com.bumble.app, appium:deviceName=pixel_6_pro, platformName=ANDROID, appium:udid=emulator-5554}], desiredCapabilities=Capabilities {androidVersion: 14, appActivity: com.bumble.app.ui.screensto..., appPackage: com.bumble.app, deviceName: pixel_6_pro, platformName: ANDROID, udid: emulator-5554}}]
Capabilities {androidVersion: 14, appActivity: com.bumble.app.ui.screensto..., appPackage: com.bumble.app, deviceName: pixel_6_pro, platformName: ANDROID, udid: emulator-5554}
    at org.openqa.selenium.remote.ProtocolHandshake.createSession(ProtocolHandshake.java:140)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:133)
    at io.appium.java_client.remote.AppiumProtocolHandshake.createSession(AppiumProtocolHandshake.java:102)
    at io.appium.java_client.remote.AppiumCommandExecutor.createSession(AppiumCommandExecutor.java:182)
    at io.appium.java_client.remote.AppiumCommandExecutor.execute(AppiumCommandExecutor.java:250)
    at org.openqa.selenium.remote.RemoteWebDriver.execute(RemoteWebDriver.java:518)
    at io.appium.java_client.AppiumDriver.startSession(AppiumDriver.java:274)
    at org.openqa.selenium.remote.RemoteWebDriver.<init>(RemoteWebDriver.java:159)
    at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:89)
    at io.appium.java_client.AppiumDriver.<init>(AppiumDriver.java:101)
    at io.appium.java_client.android.AndroidDriver.<init>(AndroidDriver.java:113)
    at Bumble.WebBrowser.runners.mobileVerify.setUpDriver(mobileVerify.java:131)
    at Bumble.WebBrowser.runners.mobileVerify.setup(mobileVerify.java:39)
    at java.base/jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104)
    at java.base/java.lang.reflect.Method.invoke(Method.java:578)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethod(MethodInvocationHelper.java:139)
    at org.testng.internal.invokers.MethodInvocationHelper.invokeMethodConsideringTimeout(MethodInvocationHelper.java:69)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurationMethod(ConfigInvoker.java:390)
    at org.testng.internal.invokers.ConfigInvoker.invokeConfigurations(ConfigInvoker.java:325)
    at org.testng.TestRunner.invokeTestConfigurations(TestRunner.java:663)
    at org.testng.TestRunner.beforeRun(TestRunner.java:652)
    at org.testng.TestRunner.run(TestRunner.java:614)
    at org.testng.SuiteRunner.runTest(SuiteRunner.java:443)
    at org.testng.SuiteRunner.runSequentially(SuiteRunner.java:437)
    at org.testng.SuiteRunner.privateRun(SuiteRunner.java:397)
    at org.testng.SuiteRunner.run(SuiteRunner.java:336)
    at org.testng.SuiteRunnerWorker.runSuite(SuiteRunnerWorker.java:52)
    at org.testng.SuiteRunnerWorker.run(SuiteRunnerWorker.java:95)
    at org.testng.TestNG.runSuitesSequentially(TestNG.java:1280)
    at org.testng.TestNG.runSuitesLocally(TestNG.java:1200)
    at org.testng.TestNG.runSuites(TestNG.java:1114)
    at org.testng.TestNG.run(TestNG.java:1082)
    at org.testng.remote.AbstractRemoteTestNG.run(AbstractRemoteTestNG.java:115)
    at org.testng.remote.RemoteTestNG.initAndRun(RemoteTestNG.java:251)
    at org.testng.remote.RemoteTestNG.main(RemoteTestNG.java:77)

if anyone faced same problem I would really apriciate help

I, got activity and package using adb shell mCurrentFocus and mCurrentApp. I think problem is in App activity or package cause i ran different apps already on same emulator


Solution

  • You can always try launching another activity which has permission to launch. You can use many third party apps (e.g. apkinfo) to get list of available activities and launch another main window related actvity if particular one fail.