appium 报错‘权限拒绝’及解决方法
报错:
[2023-08-08 09:43:02,219] remote_connection.py->_request line:319[DEBUG]Remote response: status=500 | data={"value":{"error":"unknown error","message":"An unknown server-side error occurred while processing the command. Original error: Cannot start the 'com.hexin.plat.android.MinShengSecurity.test' 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 'D:\\\\tools\\\\android_sdk\\\\platform-tools\\\\adb.exe -P 5037 -s 3TG0221927001759 shell oam start -W -n com.hexin.plat.android.MinShengSecurity.test/com.hexin.plat.android.LooginAndRegisterActivity -S -a android.intent.action.MAIN -c android.intent.category.LAUNCHER -f 0x10200000' exited with code 255'; Stderr: 'Exception occurred while executing 'start':\r\njava.lang.SecurityException: Permission Denial: starting Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.hexin.plat.android.MinShengSecurity.test/com.hexin.plat.android.LoginAndRegisterActivity } from null (pid=27498, uid=2000) not exported from uid 10241\r\n\tat com.android.server.wm.ActivityTaskSupervisor.checkStartAnyActivityPermission(ActivityTaskSupervisor.java:1244)\r\n\tat com.android.server.wm.ActivityStarter.executeRequest(ActivityStarter.java:1302)\r\n\tat com.android.server.wm.ActivityStarter.execute(ActivityStarter.java:855)\r\n\tat com.android.server.wm.ActivityTaskManagerService.startActivityAndWait(ActivityTaskManagerService.java:1623)\r\n\tat com.android.server.am.ActivityManagerService.startActivityAndWait(ActivityManagerService.java:3396)\r\n\tat com.android.server.am.ActivityManagerShellCommand.runStartActivity(ActivityManagerShellCommand.java:671)\r\n\tat com.android.server.am.ActivityManagerShellCommand.onCommand(ActivityManagerShellCommand.java:220)\r\n\tat com.android.modules.utils.BasicShellCommandHandler.exec(BasicShellCommandHandler.java:97)\r\n\tat android.os.ShellCommand.exec(S
百度翻译后:Permission Denial 权限拒绝 但是 检查包名和启动名均没有错误原因是: 开发给的活动页名称不是真正的活动也名称导致的
用:adb logcat -s ActivityManager > D:\log.txt 获取日志 从日志里面找到正确的包名,日志内容截取如下:
com.hexin.plat.android.MinShengSecurity.test cmp=com.hexin.plat.android.MinShengSecurity.test/com.hexin.plat.android.AndroidLogooActivity} from uid 1000 on display 008-08 10:50:35.015 2176 2367 I ActivityManager: Start proc 3280:com.hexin.plat.android.MinShengSecurity.test/u0a79 for activity
An unknown server-side error occurred while processing the command.
在开发中遇到这种报错
有可能是因为appium的 Java_HOME路径配错。
常见原因是安卓的启动页名称appActivity 写错。开发每次的新测试包,包名是固定的不会变,但是appActivity 会改变。
这个错误通常表示在使用Appium运行测试时出现了问题。根据错误消息,看起来可能有几个潜在的问题:
-
您的应用程序包或主活动名称不正确:请确认您提供的应用程序包和主活动名称是正确的,并且确保在命令中没有拼写错误。
-
应用程序未正确安装:如果应用程序未正确安装在测试设备上,Appium将无法启动它。请确保应用程序已安装并可在设备上正常运行。
-
ADB路径错误:根据错误消息,ADB(Android Debug Bridge)执行时出错。请确保您指定的ADB路径是正确的,并且ADT工具已正确安装。
您可以尝试以下步骤来解决问题:
- 确认应用程序的包名称和主活动名称是否正确。
- 检查应用程序是否正确安装在测试设备上。
- 确保ADB路径正确,并且ADT工具已正确安装。
- 尝试使用其他版本的Appium或ADB工具,以查看是否能解决问题。
- 检查Appium服务器和设备之间的连接是否正常。
- 如果可能,请提供更多的错误日志或上下文信息,以便更好地诊断问题。
希望这些信息能帮助您解决问题!如果问题仍然存在,请提供更多详细信息,以便我能够给出更准确的建议。
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!