我正在尝试将Android Studio中的Android应用移植到Visual Studio 2015 / Xamarin。我尝试运行该项目,然后得到:
Android application is debugging.
The application could not be started. Ensure that the application has been installed to the target device and has a launchable activity (MainLauncher = true).
Additionally, check Build->Configuration Manager to ensure this project is set to Deploy for this configuration.
我将[Activity(MainLauncher = true)]
添加到主要课程并检查Build->Configuration
这似乎是正确的,但这些都没有效果。
我收到了这个警告:
Cannot find annotation method 'anyOf()' in type 'RequiresPermission':
class file for android.support.annotation.RequiresPermission not found
MyApplication.Native.Droid C:\Users\allelopath\AppData\Local\Xamarin\GooglePlayServices.Maps\8.4.0\embedded\classes.jar(com/google/android/gms/maps/GoogleMap.class)
我也收到了这个警告:
Warning
Found conflicts between different versions of the same dependent assembly.
In Visual Studio, double-click this warning (or select it and press Enter) to fix the conflicts;
otherwise, add the following binding redirects to the "runtime" node in the application configuration file:
<assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
<dependentAssembly><assemblyIdentity name="System.Net.Http" culture="neutral" publicKeyToken="b03f5f7f11d50a3a" />
<bindingRedirect oldVersion="0.0.0.0-4.0.0.0" newVersion="4.0.0.0" /></dependentAssembly></assemblyBinding>
Acquaint.Native.Droid
我按照建议双击,并询问:
Do you want to fix these conflicts by adding binding redirrect records in the application configuration file?
我点击是。这最终没有效果,在重建并尝试运行后,警告再次出现。
我在设备上卸载了应用程序,该程序已在Android Studio上运行,但这也没有效果。
你有什么建议?
答案 0 :(得分:1)
对于第一个问题,我会右键单击您的解决方案,转到配置属性并确保正在构建所有正确的项目,并检查您的Android项目的部署框。这只是一个糟糕的Xamarin倾向。
我自己有第二个警告,这只是因为Android支持库要求您针对sdk版本23进行编译.Google地图包必须使用这些新注释。由于这个错误,我没有遇到任何问题,minSdkVersion为15,所以我只是忍受它。
我也有相同的依赖程序集警告,我认为正在发生的是我有一个项目正在使用.net原语的新引用,而不是.net http正在使用的。只是一个猜测,但我也不担心让这快乐。