安全例外:尝试通过Appium Inspector打开Facebook应用程序时拒绝权限

时间:2019-02-28 07:46:11

标签: android appium android-permissions permission-denied

我正在尝试启动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

我跟随https://github.com/appium/appium/blob/master/docs/en/writing-running-appium/android/activity-startup.md检查我的活动,

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,但是我如何获得主要活动?

2 个答案:

答案 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中以用于主要活动/指定活动。