Ошибка при развертывании на устройстве в Xamarin.Android после обновления до AndroidX в Visual Studio 2019 - PullRequest
1 голос
/ 10 октября 2019

Я недавно обновил проект Android Xamarin для поддержки AndroidX. Я перенес PreferenceManager и несколько обязательных API / методов, таких как ExternalStorageDirectory, SetColorFilter, только для успешной компиляции.

Поскольку существует немного сторонних библиотек, которые все еще используют старую поддержку v4 / v7библиотеки. Это означает, что я не могу начать миграцию вспомогательных библиотек.

При этом сборка работает нормально. Я могу развернуть на устройстве и запустить приложение. Но, при развертывании на устройстве в режиме отладки, появляется ошибка ниже:

Severity    Code    Description Project File    Line    Suppression State
Error       MSB4018: The "GenerateJavaStubs" task failed unexpectedly.
System.IO.FileNotFoundException: Could not load assembly 'Xamarin.Android.Support.v7.AppCompat, Version=1.0.0.0, Culture=neutral, PublicKeyToken='. Perhaps it doesn't exist in the Mono for Android profile?
File name: 'Xamarin.Android.Support.v7.AppCompat.dll'
   at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference, ReaderParameters parameters)
   at Java.Interop.Tools.Cecil.DirectoryAssemblyResolver.Resolve(AssemblyNameReference reference)
   at Mono.Cecil.MetadataResolver.Resolve(TypeReference type)
   at Mono.Cecil.ModuleDefinition.Resolve(TypeReference type)
   at Mono.Cecil.TypeReference.Resolve()
   at Java.Interop.Tools.Cecil.TypeDefinitionRocks.<GetTypeAndBaseTypes>d__1.MoveNext()
   at System.Linq.Enumerable.Any[TSource](IEnumerable`1 source, Func`2 predicate)
   at Java.Interop.Tools.Cecil.TypeDefinitionRocks.IsSubclassOf(TypeDefinition type, String typeName)
   at Java.Interop.Tools.JavaCallableWrappers.JavaTypeScanner.AddJavaTypes(List`1 javaTypes, TypeDefinition type)
   at Java.Interop.Tools.JavaCallableWrappers.JavaTypeScanner.GetJavaTypes(IEnumerable`1 assemblies, IAssemblyResolver resolver)
   at Xamarin.Android.Tasks.GenerateJavaStubs.Run(DirectoryAssemblyResolver res)
   at Xamarin.Android.Tasks.GenerateJavaStubs.Execute()
   at Microsoft.Build.BackEnd.TaskExecutionHost.Microsoft.Build.BackEnd.ITaskExecutionHost.Execute()
   at Microsoft.Build.BackEnd.TaskBuilder.<ExecuteInstantiatedTask>d__26.MoveNext()         0   

Кто-то тоже обнаружил эту проблему?

Тот же вопрос уже задавался: https://forums.xamarin.com/discussion/169837/vs-2019-gives-error-could-not-load-assembly-xamarin-android-support-v7-appcompat

...