在克隆我的git存储库并尝试在我的设备上运行应用程序后,我一直无法使其运行。我能够启动一个新的helloworld项目并成功运行,但是我无法让这个项目运行。
错误提示如下:
应用程序无法启动。确保应用程序已安装到目标设备,并且具有可启动的活动(MainLauncher = true)。
此外,请检查Build-> Configuration Manager,以确保此项目设置为该配置的Deploy。
我已经寻找解决此问题的方法,但未能找到有效解决方案。
我解决了问题。某种原因,应用程序在我的设备上仍然存在,尽管它没有显示在我的应用程序中,我需要将其删除。
解决方法是找到我曾经通过电子邮件发送的旧版APK并安装它。然后我卸载了应用程序并从Visual Studio重新部署它。这次它成功了。
你可以在这里阅读更多:https://forums.xamarin.com/discussion/8501/install-failed-update-incompatible
编辑(2017年3月13日):
似乎很多人都发现这个答案有用,所以我决定更新一下另一种卸载应用程序的方法,如果您没有访问旧版本。
如Atul Chaudhary和Nestel提到的,您可以打开adb命令提示符并运行adb uninstall <com.your.application.package.name>
。如果还有应用程序残留,这应该能够摆脱它们。
在 adb shell 中运行以下命令解决了我的问题:
adb shell pm uninstall -k com.packagename
要从Visual Studio工具访问adb shell -> Android -> Android Adb命令提示符。
非常有趣的错误,似乎Visual Studio无法完全卸载先前的版本。
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
或者从.cs活动文件属性中删除MainLauncher = true
。当设备上没有足够的内存时,我遇到了这个问题。在“成功”部署之后,该应用程序甚至从设置中的应用程序列表中消失了。通过adb删除时出现了失败,表明它未被安装。在VS2015的输出日志中,我收到了与OP相同的消息。最终,在清理了大约50-100 MB之后,它才起作用,尽管在应用程序设置中显示有500 MB可用空间。我尝试了不同的解决方案(通过adb删除、清理、构建然后部署),但只有清理才起作用。
adb uninstall解决了问题。奇怪的是,即使你运行列出所有已安装应用程序的命令,它也不会显示,但如果你使用你的包名(应该是你的项目名称或你分配的名称)运行卸载命令,你将获得成功的结果,这意味着它已被卸载,要检查是否运行相同的包名再次运行卸载命令,你将得到失败的命令。然后再次部署你的包应该就可以了。
如果您已经重新安装了所有内容,可能需要在VS中重新设置配置管理器。
在Visual Studio中:构建 -> 配置管理器 -> 在“部署”框中打勾。