【问题标题】:Xamarin - Android - Visual Studio - The application could not be startedXamarin - Android - Visual Studio - 应用程序无法启动
【发布时间】:2016-03-21 13:31:58
【问题描述】:

我正在使用 Visual Studio 2012 中的 Xamarin 开发一个 Android 项目。我最近从 HDD 升级到 SSD,因此我重新安装了 Windows 和我的所有程序。

克隆我的 git 存储库并尝试在我的设备上运行应用程序后,我无法让它运行。我能够启动一个新的 hello world 项目并让它运行,但我无法让这个项目运行。

这就是错误所说的:

应用程序无法启动。确保应用程序已安装到目标设备并具有可启动的活动 (MainLauncher = true)。

此外,检查 Build->Configuration Manager 以确保此项目设置为针对此配置进行部署。

我已经搜索了此问题的解决方案,但找不到任何可行的方法。

【问题讨论】:

    标签: c# android visual-studio-2012 xamarin


    【解决方案1】:

    我解决了这个问题。不知何故,该应用程序仍然存在于我的设备上,即使它没有出现在我的应用程序中,我需要将其删除。

    解决方案是找到我通过电子邮件发送的旧 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>。如果您的应用程序有任何残留物,这应该摆脱它们。

    【讨论】:

    • 这为我修复了它,尽管我可以通过转到设置 -> 应用程序 -> 全部来卸载它,即使应用程序抽屉中没有启动器,它仍然存在。跨度>
    • 设置 > 应用程序管理器 > NameOfYourApplication > 卸载
    • 谢谢!简短:使用 adb 终端方法。在 Visual Studio 中很容易到​​达那里:TOOLS-->Android-->“Android Adb 命令提示符...”
    【解决方案2】:

    1. 重命名应用程序名称。

    2. 添加了包名。

    应用程序。开始在模拟器上工作,再次重命名应用程序,应用程序。继续运行。

    注意:重置设备,卸载应用。设置中的相关运行时等对我不起作用。

    希望这对某人有所帮助。

    【讨论】:

    • 谢谢!我重命名了应用程序然后它工作了。然后我把它重命名回来,它又开始在我的手机上工作了。
    • 这对我也有帮助,包名不知何故丢失了,以前就在那里..
    【解决方案3】:

    从 adb shell 运行这个命令为我解决了这个问题:

    adb shell pm uninstall -k com.packagename
    

    从 Visual Studio 工具 -> Android -> Android Adb 命令提示符访问 adb shell。

    非常有趣的错误,似乎 Visual Studio 无法完全卸载以前的版本。

    【讨论】:

      【解决方案4】:

      显然,OP 发现了他们的问题,但我仍然想发布与我遇到的问题相关的答案,并带有相同的错误消息。我正在使用 Visual Studio(在 Parallels 中)并尝试在 Xamarin Android Player 实例(在我的 Mac 上运行)上调试应用程序。

      我不断收到此错误,并意识到构建输出中显示了一条不同的、更有帮助的错误消息,指出我不支持正确的架构。

      进入 Android 项目属性 -> Android 选项 -> 高级 -> 并检查 x86 最终允许我成功部署到 Xamarin Android 播放器。

      【讨论】:

        【解决方案5】:

        亚行方法对我不起作用。 我不想将手机恢复出厂设置,也不想卸载我的应用程序,所以我设法通过更改包来部署。

        1. 右键单击您的 Droid 项目
        2. 选择属性
        3. 转到应用程序清单
        4. 更改包名
        5. 重新部署您的项目

        希望对你有帮助

        【讨论】:

          【解决方案6】:

          我今天遇到了同样的错误,试图在 Xamarin Android Player 上运行 Xamarin Android-app。要修复它,我需要检查“支持的架构”部分的“x86”框。因此,您可能需要查看此部分。

          【讨论】:

          • 这个部分在哪里?
          • 找到它... ProjectName.Native.Droid 属性 > Android 选项 > 高级。已经检查过了。
          【解决方案7】:

          当设备上没有足够的内存时,我遇到了这个问题。在“成功”部署后,即使在“设置”中的应用列表中也缺少该应用。通过 adb 删除给了我失败,表明它没有安装。在 VS2015 的输出日志中,我收到了与 OP 相同的消息。最后,在我清理了大约 50-100 MB 之后,它就起作用了,尽管在应用程序设置中它显示我有 500 MB 可用。我尝试了不同的解决方案(通过 adb 删除、清理、构建然后部署),但只有清理工作。

          【讨论】:

          • 查看构建输出,看看存储是否有问题: >部署失败,因为内部错误:设备上没有足够的存储空间来存储包:/data/local /tmp/Mono.Android.Platform.ApiLevel_23.apk。请释放一些空间,然后重试。
          【解决方案8】:

          adb 卸载成功了。奇怪的是,即使您运行命令列出所有已安装的应用程序,它也不会显示,但是如果您使用您的包名称运行卸载命令,该名称应该是您的项目名称或您分配的名称,您将获得成功结果,这意味着它已被卸载,并检查是否使用相同的包名再次运行卸载命令,你将获得失败命令。然后再次部署你的包应该可以工作

          【讨论】:

            【解决方案9】:

            在我的情况下,两个活动是 Launcher 活动,所以我制作了其中一个 Launcher 活动。

            您可以删除 <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 来自 AndroidManifest.xml 文件或 MainLauncher = true 来自.cs Activity 文件属性

            【讨论】:

            • 只有这对我有用。 -->
            【解决方案10】:

            如果您重新安装了所有内容,您可能需要在 VS 中备份配置管理器。

            在 Visual Studio 中:构建 -> 配置管理器 -> 勾选“部署”框。

            【讨论】:

              【解决方案11】:

              我已经设法通过从模拟器中擦除用户数据来解决它。

              在 AVD Manager 中,当您启动模拟器时,选中“擦除用户数据”,您的模拟设备就会像新设备一样运行。

              更新到 Android SDK Tools 25.1.3 后出现问题。

              【讨论】:

                【解决方案12】:

                最初我无法让它工作。尝试删除所有内容(Mono 运行时、应用程序等),但无济于事。

                有效的是重命名我的包,这对我来说很好,因为我还没有发布我的 apk。一些幽灵版本显然仍然存储在我的设备上。

                【讨论】:

                  【解决方案13】:

                  重命名应用程序名称和包名称(转到清单设置)有助于解决此问题

                  【讨论】:

                  • 更改包名并不能摆脱之前安装的应用程序。它只是在您的设备上创建一个全新的应用程序。如果这是一个存在于 Google Play 商店中的应用程序,那么它并不是一个真正可接受的解决方案。
                  【解决方案14】:

                  唯一能帮助我解决这个问题的方法如下:

                  • 在 Xamarin Android Studio 主页(显示所有设备)中,单击“三点”按钮,然后单击恢复出厂设置

                  • 安装新设备并在那里部署您的应用。

                  【讨论】:

                  • 我强烈建议不要恢复出厂设置,因为它会删除您手机上的大部分内容。仅当所有其他卸载应用程序的方法都已用尽时,才应作为绝对的最后手段。
                  • @JaredPrice 是的,我同意,在我的情况下,我没有在那个模拟器上保存数据,所以这不是问题。
                  【解决方案15】:

                  每当我遇到这个问题时,我都会发布应用程序并使用手动安装

                  adb install "&lt;path to apk file&gt;"

                  在 Android Adb 命令提示符中。

                  希望尽快修复,根据 https://github.com/xamarin/xamarin-android/issues/3727

                  【讨论】:

                    【解决方案16】:

                    今天发生在我身上,在从 Git 更新项目并在 Android 模拟器中运行之后。从模拟器中卸载应用程序,在 VS 中执行清理和重建并再次安装应用程序有帮助。

                    【讨论】:

                      猜你喜欢
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 1970-01-01
                      • 2015-12-05
                      • 2021-09-17
                      相关资源
                      最近更新 更多