xamarin - 在 Visual Studio 16.9.0 Android "deploy to device"错误 - 命令太长

标签 xamarin xamarin.forms xamarin.android visual-studio-2019 visual-studio-debugging

在我的 xamarin Android 项目中,一切正常,直到我更新到 Visual Studio 2019 v16.9.0。
升级后,我能够成功构建项目,但是如果我尝试部署或调试到设备或模拟器,我会收到以下错误:
[构建日志的最后一部分]

  Adding assembly reference for Xamarin.Firebase.Analytics.Impl, recursively...
  Adding assembly reference for Xamarin.Firebase.Common, recursively...
  Adding assembly reference for Xamarin.Firebase.Iid, recursively...
  Adding assembly reference for Xamarin.Firebase.Iid.Interop, recursively...
  Adding assembly reference for Xamarin.Firebase.Measurement.Connector, recursively...
  Adding assembly reference for Xamarin.Firebase.Messaging, recursively...
  Adding assembly reference for Xamarin.Forms.Core, recursively...
  Adding assembly reference for Xamarin.Forms.Platform.Android, recursively...
  Adding assembly reference for Xamarin.Forms.Platform, recursively...
  Adding assembly reference for Xamarin.Forms.Xaml, recursively...
  Adding assembly reference for Xamarin.Google.Android.Material, recursively...
  Adding assembly reference for Xamarin.Google.AutoValue.Annotations, recursively...
  Adding assembly reference for Xamarin.Google.Guava.ListenableFuture, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Ads.Identifier, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Analytics, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Analytics.Impl, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Base, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Basement, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Location, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Maps, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Measurement.Api, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Measurement.Base, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Places.PlaceReport, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Stats, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.TagManager.V4.Impl, recursively...
  Adding assembly reference for Xamarin.GooglePlayServices.Tasks, recursively...
Skipping target "_CopyConfigFiles" because all output files are up-to-date with respect to the input files.
Skipping target "_ConvertPdbFiles" because all output files are up-to-date with respect to the input files.
Skipping target "_LinkAssembliesNoShrink" because all output files are up-to-date with respect to the input files.
Skipping target "_AndroidXCecilfy" because all output files are up-to-date with respect to the input files.
Skipping target "_GenerateJavaStubs" because all output files are up-to-date with respect to the input files.
Skipping target "_ManifestMerger" because all output files are up-to-date with respect to the input files.
Skipping target "_ConvertCustomView" because all output files are up-to-date with respect to the input files.
Skipping target "_AndroidXJetifyManifest" because all output files are up-to-date with respect to the input files.
Skipping target "_AddStaticResources" because all output files are up-to-date with respect to the input files.
Skipping target "_GeneratePackageManagerJava" because all output files are up-to-date with respect to the input files.
Skipping target "_GenerateAndroidAssetsDir" because all output files are up-to-date with respect to the input files.
Skipping target "_PrepareCreateBaseApk" because all output files are up-to-date with respect to the input files.
Skipping target "_CreateBaseApk" because all output files are up-to-date with respect to the input files.
Skipping target "_CompileJava" because all output files are up-to-date with respect to the input files.
Skipping target "_CompileNativeAssemblySources" because all output files are up-to-date with respect to the input files.
Skipping target "_CreateApplicationSharedLibraries" because all output files are up-to-date with respect to the input files.
Skipping target "_AndroidXJetifyJavaLibraryRules" because all output files are up-to-date with respect to the input files.
Skipping target "_AndroidXJetifyProguardRules" because all output files are up-to-date with respect to the input files.
Skipping target "_CompileToDalvik" because all output files are up-to-date with respect to the input files.
Copying file from "C:\temp\100\android\bin\com.caledoslab.runner.apk" to "C:\Caledos\code\Runner\CaledosLab.Runner.Android\bin\Debug\com.caledoslab.runner.apk".
Creating "C:\temp\100\android_debug_keystore.flag" because "AlwaysCreate" was specified.
C:\Program Files (x86)\Android\android-sdk\build-tools\30.0.2\zipalign.exe -p 4 "C:\temp\100\android\bin\com.caledoslab.runner.apk" "bin\Debug\\com.caledoslab.runner-Signed.apk" 
C:\Program Files\Android\Jdk\microsoft_dist_openjdk_1.8.0.25\bin\java.exe -jar "C:\Program Files (x86)\Microsoft Visual Studio\2019\Enterprise\MSBuild\Xamarin\Android\apksigner.jar" sign --ks "C:\Users
icold\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 29  C:\Caledos\code\Runner\CaledosLab.Runner.Android\bin\Debug\com.caledoslab.runner-Signed.apk 
Signed android package 'bin\Debug\com.caledoslab.runner-Signed.apk'
Using cached value from RegisterTaskObject
Found device: emulator-5554

    Command too long

   at Mono.AndroidTools.Adb.AdbClient.GetCommandBuffer(String command) in C:\A\1\36\s\External\androidtools\Mono.AndroidTools\Adb\AdbClient.cs:line 258
   at Mono.AndroidTools.Adb.AdbClient.BeginWriteCommand(String command, AsyncCallback callback, Object state) in C:\A\1\36\s\External\androidtools\Mono.AndroidTools\Adb\AdbClient.cs:line 227
   at Mono.AndroidTools.Adb.AdbClient.BeginWriteCommandWithStatus(String command, AsyncCallback callback, Object state) in C:\A\1\36\s\External\androidtools\Mono.AndroidTools\Adb\AdbClient.cs:line 274
   at System.Threading.Tasks.TaskFactory`1.FromAsyncImpl[TArg1](Func`4 beginMethod, Func`2 endFunction, Action`1 endAction, TArg1 arg1, Object state, TaskCreationOptions creationOptions)
   at Mono.AndroidTools.Internal.AdbClientTaskExtensions.WriteCommandWithStatusAsync(AdbClient client, String command, TaskCreationOptions options) in C:\A\1\36\s\External\androidtools\Mono.AndroidTools\Internal\AdbClientTaskExtensions.cs:line 62
   at Mono.AndroidTools.AndroidDevice.<>c__DisplayClass62_0.<RunShellCommand>b__0(Task t) in C:\A\1\36\s\External\androidtools\Mono.AndroidTools\AndroidDevice.cs:line 403
   at System.Threading.Tasks.ContinuationResultTaskFromTask`1.InnerInvoke()
   at System.Threading.Tasks.Task.Execute()
Done building project "CaledosLab.Runner.Android.csproj" -- FAILED.
Build FAILED.
12>Deployment failed to pixel_3a_xl.
========== Build: 11 succeeded, 0 failed, 0 up-to-date, 0 skipped ==========
========== Deploy: 0 succeeded, 1 failed, 0 skipped ==========
任何的想法?
谢谢你!

最佳答案

TLDR
我可以通过取消选中 来解决此问题。使用快速部署 来自 安卓选项 Android 项目选项中的选项卡。
详情
我正在运行 Visual Studio 2019 v16.9。升级之前我没有问题,但上周升级到 16.9 后,我开始遇到这个问题。无论目标模拟器/设备如何,都会发生此错误。
一旦我在 Visual Studio 的 中启用了诊断构建输出构建和运行 设置,我可以在构建输出中看到失败发生在 期间快速部署应用程序文件 .
Visual Studio Build Output
一旦我取消选中快速部署,部署工作正常。我重新打开快速部署并尝试重新部署,但仍然失败。
所以现在我在禁用快速部署的情况下继续开发,到目前为止还没有出现问题。

关于xamarin - 在 Visual Studio 16.9.0 Android "deploy to device"错误 - 命令太长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66465262/

相关文章:

c# - 使用Xamarin表单选择产品时如何显示产品详细信息

android - 网格未扩展以填满屏幕

c# - Xamarin.Forms 中的水平 ListView

c# - Xamarin iOS SIGABRT 崩溃

xamarin - 平台上不同的网格大小(高度)

c# - 在 Xamarin Forms 中居中对齐工具栏项目

c# - Xamarin.Forms - 加载类型时发生 TypeLoadException 失败

c# - 将变量从 ViewModel 传递到另一个 View (MVVMCross)

c# - PCL 文件中的自定义异常