Xamarin无法通过以下方式将应用程序部署到仿真器:“意外的安装输出:cmd:找不到服务:程序包”

时间:2019-02-01 15:36:38

标签: android xamarin

我正在使用Visual Studio 2019构建示例intro xamarin forms app,并且模拟器会启动,但应用不会部署,并显示错误意外的安装输出:cmd:找不到服务:程序包”

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.

6 个答案:

答案 0 :(得分:34)

就我而言,它有助于在Android设备管理器中对仿真设备进行恢复出厂设置。enter image description here

答案 1 :(得分:3)

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

正如user5389726598465所说,“从Android 9.0模拟器切换到Android 8 Oreo映像”使Visual Studio卸载Mono共享运行时并安装一个新的运行时。好像是单声道修复。

以下是Visual Studio中的步骤:

1-创建一个项目/解决方案。

2-转到“工具”>“ Android”>“ Android SDK Manager”。

3-安装所需的Android及其所有组件。例如Android 8 Oreo。 (等待安装完成!)

注意:如果像我一样使用 Visual Studio 2019 ,则必须使用Android 8.1 Oreo或更高版本。

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

4-转到“工具”>“ Android”>“ Android设备管理器”。

5-使用与步骤1中选择的完全相同的OS和API版本创建一个新的设备/仿真器。 (请勿使用x86_64处理器,以避免随机错误)

6-在“解决方案”下,右键单击myApp.Android项目>“属性”>“应用程序”> set 使用Android版本进行编译:(目标框架)要选择匹配的Android版本

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

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

9-运行解决方案,然后等待。 (此步骤第一次可能需要20多个分钟,而且没有可视化过程。请离开计算机,耐心等待,不要破坏程序,直到在“模拟器”屏幕上看到输出为止!)

做得好!

答案 2 :(得分:2)

对我来说,user5389726598465的解决方案有效,但我希望使用PixelXL仿真器,因此我进行了事实重置,该方法可以正常工作。模拟器随着时间的流逝而变得腐败。

答案 3 :(得分:1)

从Android 9.0模拟器切换到Android 8 Oreo图像解决了该问题。对于Xamarin来说我太新了,不知道是什么原因。

答案 4 :(得分:1)

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

  

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

调整Reza's answer我在相同项目My Device 2(屏幕截图中的紫色框)中创建了一个新的模拟器,并且可以在该设备上使用。

android device manager screenshot

答案 5 :(得分:1)

只需将设备重置为出厂设置即可。那应该可以解决问题