Visual Studio 2015,Android命令“run-as”失败。

11

环境:Windows 10(家庭版、专业版)、Visual Studio 2015(社区版、专业版),所有组合均可。

启动 Visual Studio 2015 更新 1,新建项目,选择 Native-Activity 应用程序(Android),从而创建默认的 Android 原生应用程序。构建解决方案并开始调试,在此过程中会出现以下错误信息:

Error message.

无法启动调试。Android 命令“run-as”失败。包“com.Android1”未知。

我已经查找了相关资料,但没有找到解决方法。我错过了什么?如何设置我的环境或修复一些东西?


我格式化了硬盘,重新安装了Windows 10,并安装了Visual Studio 2015更新1。 - JinMin Choi
我在家里的所有3个安卓设备上,在Visual Studio 2017中遇到了完全相同的错误... - Alexander
3个回答

3

解决这个问题的方法是您必须对设备进行root,然后修复文件权限。如果无法获取root权限,您可以尝试按照提示操作,但在某些情况下只有通过获取root权限才能解决此问题。

一旦您获得了root权限,请打开adb shell并运行以下命令:

su
mount -o remount,rw /system
chmod 4750 /system/bin/run-as
mount -o remount,ro /system

这个修复了setuid权限,因此运行进程将根据文件所有者(即root)被授予访问权限。


1
如果您拥有 root,那么您就不需要 run-as,对吗……? - rustyx
但是像Visual Studio和Delphi这样使用run-as(通过adb)附加其gdb调试会话的非根工具确实需要它。 - Warren P
我在我的三星J1(SM-J100H)上也遇到了同样的问题。尝试了所有方法!唯一的方法就是root设备并使用上面那三行代码。谢谢詹姆斯! - Gediminas

2

我在三星Galaxy S6 Edge上遇到了类似的问题,尝试在VS2015上开始调试时,我得到了一个不同的错误,比附加的截图中显示的要少得多:

run-as:无法设置功能:操作不允许

根据上面附加的截图内容,我尝试使用三星的智能切换来'初始化'/工厂重置设备,并且它实际上解决了我遇到的'run-as'问题。


在三星Galaxy S7 edge上遇到了同样的问题,我通过三星的Smart Switch(在Mac上安装)重置了我的设备,现在run-as命令可以正常工作了。 - Kavitha
如何使用智能切换重置设备? - Vincy
能否提供比仅仅链接到页面并显示一些模糊信息更详细的内容,关于如何将旧三星手机上的数据复制到新手机上? - Warren P
在Smart Switch软件中,有一个子菜单中的“初始化”设备选项,希望这个选项仍然可用于最新的软件版本 - 在我的手机上解决了这个问题后,我不再需要使用该软件。 - Giedrius
我的三星S5调试正常,但我的新S8不行,我在这里看到有人报告S6和S7存在问题。我尝试了所有的解决方法,但对我的S8没有帮助。有人知道这个问题是否仍然存在于S9中吗?当我的合同再次到期时,我一定会寻找一个完全没有这个问题的设备。 - Maya

0

从三星Kies下载它。您将看到一个选项来下载智能切换。点击上一个答案中的链接...


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接