我正在尝试启动Facebook App的自动化。我从应用程序注销,并使用dumpsys window windows | grep -E mCurrentFocus|mFocusedApp
来获取应用程序活动和软件包。我得到的值为com.facebook.katana/com.facebook.account.login.activity.SimpleLoginActivity
我在appium检查器中提供值以获取定位器值
{
"deviceName": "xxxx",
"udid": "xxxx",
"appPackage": "com.facebook.katana",
"platformName": "android",
"appActivity": "com.facebook.account.login.activity.SimpleLoginActivity"
}
但是我遇到了错误
exited with code 4294967295'; Stderr: 'Security exception: Permission Denial: starting Intent { flg=0x10000000 cmp=com.facebook.katana/com.facebook.account.login.activity.SimpleLoginActivity } from null (pid=20151, uid=2000) not exported from uid 10206
C:\Users\aswathy_krishnan>adb shell am start -W -n com.facebook.katana/.com.face
book.account.login.activity.SimpleLoginActivity -S -a android.intent.action.MAIN
-c android.intent.category.LAUNCHER -f 0x10200000
但这给我一个错误,
Error: Activity class {com.facebook.katana/com.facebook.katana.com.facebook.acco
unt.login.activity.SimpleLoginActivity} does not exist.
我在做什么错?我认为可能是因为appActivity,但是我如何获得主要活动?
答案 0 :(得分:0)
非常明显的例外:出于安全性原因 活动启动被阻止。
您需要在声明PS1
的AndroidManifest.xml文件中设置android:exported="true"
。我想您无权访问Facebook应用源代码来解决此问题。
Appium是非常灵活的工具,但是如果AUT有安全限制,则Appium不能对其进行任何操作。
答案 1 :(得分:0)
首先使用下面的链接交叉检查您的主要活动。
http://www.automationtestinghub.com/apppackage-and-appactivity-name/
如果仍然遇到相同的错误,则android:exported="true"
应该位于AndroidManifest.xml中以用于主要活动/指定活动。