VS2015 Xamarin.Forms使用经验1
来源:互联网 发布:视频清晰度增强软件 编辑:程序博客网 时间:2024/06/06 14:16
VS2015 Xamarin.Forms项目使用Genymotion模拟器
VS2015支持用C#编写跨平台软件,Xamarin.Forms则提供了一个基本的项目框架。VS2015自带Android模拟器,但是需要打开Hype-V,内存占用很大,我还是觉得占用内存比较小的Genymotion模拟器更好用,所以研究两者怎么搭配使用。
先看看怎么安装和配置。
安装VS2015 Update3,选择自定义,打勾Xamarin,最后提示Android SDK安装失败,需要手工补充安装。
以管理员权限运行C:\Program Files (x86)\Android\android-sdk\SDK Manager.exe,设置好国内镜像代理服务器,刷新后,默认提示安装23.0.1版本Tools。
装完之后再刷新,会提示又有新版本,只安装23.0.1版本就好了,不要继续安装更高版本,装好之后是这样子的。
然后安装Genymotion 2.7.2,以管理员权限运行Genymotion,添加手机模拟器,然后等待下载完毕。因为Genymotion官网下载手机模拟器很慢,最好把下载好的ova目录复制一份,如果重装软件,或者要在别的计算机上使用Genymotion,可以把ova目录复制过去,添加手机模拟器后立马完毕。Ova目录在C:\Users\xxx\AppData\Local\Genymobile\Genymotion\ova。
然后参考https://msdn.microsoft.com/zh-cn/library/mt679501.aspx,在VS2015中新建Visual C#,Cross-Platform,Blank App(Xamarin.Forms Portable), 如果此时在Android项目上执行重新生成,会爆出1000多个错误!必须在解决方案上使用Nugget,更新Xamarin.Forms,当前最新版本是2.3.0.107,更新的过程又是漫长的等待。
更新完毕再次重新生成Android项目,系统会自动下载对应的android_m2repository_r29.zip,一定要提前把VPN开起来,不然在这里会彻底卡死。如果编译过程中点击取消,可以看到错误信息:C:\Program Files (x86)\MSBuild\Xamarin\Android\Xamarin.Android.Common.targets(387,2): error XA5208: Download failed. Please download https://dl-ssl.google.com/android/repository/android_m2repository_r29.zip and put it to the C:\Users\xxx\AppData\Local\Xamarin\Xamarin.Android.Support.Animated.Vector.Drawable\23.3.0.0 directory.
经过漫长的等待后终于编译通过。最好把C:\Users\xxx\AppData\Local\Xamarin\zips目录备份下来,如果重装系统,或者在其他计算机上开发同类项目,可以复制Zips目录过去,不用在编译时再翻墙下载。
把Genymotion模拟器跑起来,在VS2015的菜单上就可以看到它,点击调试运行就可以跑到模拟器上去了。
终于可以愉快地玩耍了。
下面说一说期间遇到的坑。
1.SDK Tools版本过高
每次打开SDK Manager,都会提示可以下载最新版本Tools,我曾经试过把Tools版本升级到最新。
然后调试软件到Genymotion模拟器上运行,出现以下错误:
1>尝试在条件“
我在百度上搜索这个问题,居然没有任何答案!感觉目前做Xamarin开发的资料实在太少了。我重装过几次系统,后来无意中找到了问题所在,所以决定写这篇文章,把这个问题公布出来,毕竟我看别人的文章很多年,受益匪浅,有机会应该贡献一点微薄的力量,希望可以帮助到别人。
如果不小心把SDK Tools升级到了最新版本,但是又想用Genymotion,还可以这样处理,在Genymotion的ADB设置中,把SDK路径指向C:\Program Files (x86)\Android\android-sdk
2.SDK路径错误
我在计算机上同时安装了Android Studio 2.0,为了做一个实验,把VS2015的SDK路径指向了Android Studio的SDK路径。
后来编译Xamarin.Forms项目总是出现这样的错误:CS0117 ‘Resource.Attribute’ does not contain a definition for ‘actionBarSize’。后来偶然发现SDK路径不对,改回VS2015的默认路径就没问题了。这个问题也折腾了很久,总之Xamarin.Forms对环境很敏感,有问题可以先检查以下设置。
3.下载APP报错INSTALL_FAILED_UPDATE_INCOMPATIBLE
这个问题通常是由于签名不匹配导致,在手机和模拟器上都遇到过,解决办法:到手机的应用管理中,卸载APP,然后重新下载。
- VS2015 Xamarin.Forms使用经验1
- VS2015 Xamarin使用经验2-INSTALL_FAILED_UPDATE_INCOMPATIBLE
- VS2015 Xamarin使用经验4-SQLite ORM
- 1.开始使用Xamarin.Forms
- VS2015 Xamarin使用经验3-更新版本打包发布Android APP
- 使用Xamarin.Forms构建UWP应用
- 使用Xamarin Forms+XLabs 完成 Camara access
- Xamarin.Forms使用Slider注意问题
- Xamarin.Forms使用XLabs.Forms时MainActivity的继承问题
- Xamarin.Forms探索--使用 Xamarin.Forms 来创建跨平台的用户界面
- Xamarin.Forms入门-使用 Xamarin.Forms 来创建跨平台的用户界面
- 3.Xamarin.Forms中布局控件的使用
- 6.在Xamarin.Forms中使用XAML代码创建页面
- Xamarin.Forms 初探
- 一点一点学xamarin.forms
- xamarin.forms学习资料。
- xamarin.forms 自定义手势
- xamarin.forms 相对布局
- redhat7 配置163 yum源
- LeetCode:Implement Queue using Stacks
- String的使用
- UITableViewCell高度自适应探索--AutoLayout结合Frame
- VirtualBox\Genymotion--安装及问题解决
- VS2015 Xamarin.Forms使用经验1
- 关于SpringMvc中radiobutton默认值为空的问题
- untiy 第二个逗比又无聊的跑酷demo
- 机器学习基础 维基翻译 保序回归 随机森林 Pipeline处理 及简单的sklearn例子
- Java 输入框 undo
- 浅析代码风格
- Windows Server 2012 R2 DNS安装及调试详细指南
- Android Studio官方文档之在Android模拟器上运行App(一)
- C#特性的分类