代码之家  ›  专栏  ›  技术社区  ›  user5389726598465

Xamarin无法将应用程序部署到emulator,原因是:“意外的安装输出:cmd:找不到服务:包”

  •  1
  • user5389726598465  · 技术社区  · 6 年前

    我正在制作样品 intro xamarin forms app 在visualstudio2019中,仿真器启动,但应用程序不会部署并出现错误 :

    1>No way to resolve conflict between "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" and "mscorlib, Version=2.0.5.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e". Choosing "mscorlib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089" arbitrarily.
    1>C:\Program Files\Android\jdk\microsoft_dist_openjdk_1.8.0.9\bin\keytool.exe -list -alias androiddebugkey -storepass android -keypass android -keystore "C:\Users\sticker592\AppData\Local\Xamarin\Mono for Android\debug.keystore" 
    1>C:\Program Files (x86)\Android\android-sdk\build-tools\25.0.3\zipalign.exe -p 4 "C:\Users\sticker592\Downloads\FirstApp\AwesomeApp\AwesomeApp.Android\obj\Debug\81\android\bin\com.companyname.AwesomeApp.apk" "bin\Debug\\com.companyname.AwesomeApp-Signed.apk" 
    1>C:\Program Files\Android\jdk\microsoft_dist_openjdk_1.8.0.9\bin\java.exe -jar "C:\Program Files (x86)\Android\android-sdk\build-tools\25.0.3\lib\apksigner.jar" sign --ks "C:\Users\sticker592\AppData\Local\Xamarin\Mono for Android\debug.keystore" --ks-pass pass:android --ks-key-alias androiddebugkey --key-pass pass:android --min-sdk-version 21 --max-sdk-version 27  C:\Users\sticker592\Downloads\FirstApp\AwesomeApp\AwesomeApp.Android\bin\Debug\com.companyname.AwesomeApp-Signed.apk 
    1>ADB0000:  Deployment failed
    1>Mono.AndroidTools.InstallFailedException: Unexpected install output: cmd: Can't find service: package
    1>
    1>   at Mono.AndroidTools.Internal.AdbOutputParsing.CheckInstallSuccess(String output, String packageName) in E:\A\_work\413\s\External\androidtools\Mono.AndroidTools\Internal\AdbOutputParsing.cs:line 345
    1>   at Mono.AndroidTools.AndroidDevice.<>c__DisplayClass95_0.<InstallPackage>b__0(Task`1 t) in E:\A\_work\413\s\External\androidtools\Mono.AndroidTools\AndroidDevice.cs:line 753
    1>   at System.Threading.Tasks.ContinuationTaskFromResultTask`1.InnerInvoke()
    1>   at System.Threading.Tasks.Task.Execute()
    1>ADB0010: Unexpected install output: cmd: Can't find service: package
    1>
    1>   at Mono.AndroidTools.Internal.AdbOutputParsing.CheckInstallSuccess(String output, String packageName) in E:\A\_work\413\s\External\androidtools\Mono.AndroidTools\Internal\AdbOutputParsing.cs:line 345
    1>   at Mono.AndroidTools.AndroidDevice.<>c__DisplayClass95_0.<InstallPackage>b__0(Task`1 t) in E:\A\_work\413\s\External\androidtools\Mono.AndroidTools\AndroidDevice.cs:line 753
    1>   at System.Threading.Tasks.ContinuationTaskFromResultTask`1.InnerInvoke()
    1>   at System.Threading.Tasks.Task.Execute()
    1>Done building project "AwesomeApp.Android.csproj" -- FAILED.
    1>Build FAILED.
    
    1 回复  |  直到 6 年前
        1
  •  41
  •   this.myself alexisdm    5 年前

    在我的例子中,它帮助在Android设备管理器中重置模拟设备的出厂设置。 enter image description here

        2
  •  15
  •   Reza Taba    6 年前

    我面临的许多问题的解决方案:

    正如用户5389726598465提到的,“从android9.0模拟器切换到android8oreo映像”使得visualstudio卸载Mono共享运行时并安装一个新的运行时。好像是单核细胞修复。

    以下是Visual Studio中的步骤:

    2-转到“工具”>“Android”>“Android SDK管理器”。

    3-安装你想要的Android及其所有组件。e、 安卓8奥利奥。(等待安装完成!)

    注意:如果您正在使用 Visual Studio 2019 像我一样,你必须使用安卓8.1奥利奥或更高版本。

    现在您可以卸载旧的-可选。

    5-创建一个新的设备/仿真器,其操作系统和API版本与您在步骤1中选择的完全相同。 (不要使用x86\u 64处理器,以避免随机错误)

    6-在“解决方案”下右键单击我的应用程序。Android项目>属性>应用> 设置 使用Android版本:(Target Framework)编译 选择匹配的Android版本

    7-Android设备管理器>运行。(等待Android Emulator完全启动。)

    8-清洁然后构建解决方案。

    9-运行解决方案并等待。(第一次执行此步骤可能需要20分钟以上,没有可视化过程。离开电脑,耐心等待,直到在Emulator屏幕上看到您的输出时才中断程序!)

    做得好!

        3
  •  6
  •   Jean-François Fabre    5 年前

        4
  •  2
  •   spottedmahn    6 年前

    上周我用了 My Device (截图中的红框)没有问题。这周我得到了:

    Mono.AndroidTools.InstallFailedException异常:意外的安装输出:cmd:找不到服务:包

    Reza's answer 我在 项目, My Device 2 (屏幕截图中的紫色方框),它在该设备上工作。

    android device manager screenshot

        5
  •  1
  •   Malic Tyrell    4 年前