当遇到异常时,首先应该登录Xamarin官网查询。
1、在使用AVD模拟器进行调试部署时极易出现”部署失败“(尤其是新建项目)
感觉不是项目的原因,将模拟器关掉,启动调试将重新打开,因启动过程较长多数情况下,不能正常进入调试状态,需重新点击启动调试,有的时候就能正常了。实在不行可以将模拟器和VS2015都关闭,在重新打开,重新建一个项目(有时要尝试多次),只对Android版本相关项做修改,就启动调试,正常后在进行其它内容的修改。
目前也不知道原因,也许是VS与模拟器的兼容问题。
2、AVD模拟器调试时出现有的程序段不执行
实际遇到的一次现象是添加一段对已有按钮控件的Click事件处理程序,调试时点击按钮却不执行,将原来有的程序段屏蔽一段模拟器居然仍能运行相应操作。将模拟器中的相应APP卸载后,重新部署调试后正常,总结原因有可能是中间调试部署时出了问题,导致后来一直没部署上。
3、在使用AVD模拟器进行调试出现”unfortunately launcher has stopped“
按照网上提供的方法: 查看logcat的时候发现有个错误:delvikvm-heap out of memory on a 2158608-byte allocation ,就试着把AVD的RAM改成700,VM heap 改成32,居然好了,没再出现过这个问题
|
4、引入兼容包经常会报错
如:Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip and put it to the...
在迅雷中或则百度云(这个我没试过)中打开链接https://dl-ssl.google.com/android/repository/android_m2repository_r32.zip ,把这个文件下载下来,换下这个zip下面的压缩文件,名字还是这个F16A345的,其他的名字就换成其他的,复制到下面说明中的文件位置(不能放在vs所提示的路径下否则编译仍然出现上述错误)。
Copy the file to the Xamarin zips folder:
◦On Windows, this folder is located at C:\Users\username\AppData\Local\Xamarin\zips.
For example, the following screenshot illustrates the result when android_m2repository_r16.zip is downloaded and renamed to the MD5 hash of its download URL on Windows:
Copy the file to the Xamarin zips folder:
5、引用Xamarin.Android.Support.Design的NuGet包时出现如下错误
安装失败的原因是自己的项目版本是Android4.2,一开始安装的是Xamarin.Android.Support.Design 版本是24.2.1,后来降低到23.2.1仍然不行,后来安装22.2.1时才成功,其它版没有测试,这提醒我以后不能都安装最新版的。
但编译时报错:No resource identifier found for attribute 'touchscreenBlocksFocus' in package
修改项目为Android5.0,并将Xamarin.Android.Support.Design包卸载后重新安装(均为22.2.1版3个文件包)编译正常。
后来部署时出现错误Couldn't connect to logcat, GetProcessId returned: 0
未能解决,参考过这个链接:http://blog.logiticks.com/couldnt-connect-to-logcat-getprocessid-retured-xamarin-android/
新建项目部署时出现错误An error occured. See full exception on logs for more de
部署时也出现过如下错误:(网上说的方法试了下不是没有解决就是出现其它错误)
Android.Views.InflateException: Binary XML file line #1: Error inflating class android.support.design.widget.TextInputLayout
测试几个晚上也没有找到解决办法,最终放弃。转为使用"Xamarin.Android Templates Pack "补充套件。
6、error MSB6006: “aapt.exe”已退出,代码为 -1073741819
以下内容转自:http://www.bubuko.com/infodetail-1635453.html
这个问题是生成工具版本选择的问题,似乎是Xamarin和某些指定的生成工具版本之间的问题,我的是24,看网上也有人用21.0.1也是报这个错误,具体生成的时候用的是什么版本可以看生成日志,具体在“Windows日志”—> “应用程序”中查找即可 。
两种处理方式:
一种直接卸载不好使的版本,然后再生成时就会自动选择其他版本的生成工具。
另一种处理方式,为项目指定生成工具,用文本编辑器打开项目的.csprj文件,在PropertyGroup下添加AndroidSdkBuildToolsVersion节点,配置相应版本即可,如<AndroidSdkBuildToolsVersion>23.0.3</AndroidSdkBuildToolsVersion>
下面是修改文件示例
7、Error : java.lang.UnsupportedClassVersionError: com/android/dx/command/Main : Unsupported major.minor version 52.0
注:按照下面的方法解决了,但要注意不管windows是32位还是64位都只能安装32位的JDK。
Do not use jdk_1.7.
Use jdk_1.8 instead, to get rid of this issue.
You can configure the path to the JDK in the following way:
Microsoft Visual Studio 2015 -> Tools -> Options -> Xamarin -> Android Settings -> JDK Location [Change]