自VS2015起, Visual Studio开始逐渐内置支持跨平台开发, 并且Visual Studio团队还额外发布了一个编译工具集Clang with Microsoft CodeGen, 方便开发人员进行跨平台代码的开发, 该工具集在VS 2015 Update 2时采用的 Clang 版本号是3.7. 与此同时VS的移动开发能力也不再局限于Windows Phone, 而是支持了包括Android, iOS在内的主流平台的应用开发. 和其它新特性首次被引入一样, 虽然历经了两次Update, 同样难免仍存在一些'BUG', 本文就搭建过程中遇到的一些问题作个小结, 并不定时更新.

1.虽然安装的时候可以勾选Visual C++ Android Development, 但是Visual Studio 2015 with Update 2的离线安装包iso中并未完整包含Android SDK, Android NDK, Apache Ant等套件, 所以需要在线下载, 然而受限于国内的网络环境, 安装完成之后你很可能会收到下载失败的警告, 要是这样的话你就要自己去下载安装包并手动配置, 否则你将会遇到诸如Argument 'sdkLocation' is null or empty; aapt.exe could not be found at '.' 等错误.

这里提供作者使用到的一些国内镜像地址:

http://ubuntu.buct.edu.cn/android/repository/
http://mirrors.neusoft.edu.cn/android/repository/
http://mirrors.hust.edu.cn/apache/ant/binaries/

除了Android SDK的手动安装步骤略繁(必备包括Android SDK Tools, Platform-tools和Build-tools等), 其它基本都是一个zip直接解压就行了. 最后需要在VS2015->Tools->Options->Cross Platform配置下地址, 具体看图:

VS2015 Update2 构建 Android 程序问题汇总

2.如果安装的时候卡在Java, Android等上好长时间, 大可不必着急Cancel, 用任务栏管理器结束Secondary Installer相关的进程, 然后安装就可以继续而不会影响其他组件的安装, 后面再把需要的相关组件单独安装.

这里作者安装VS2015时卡在Microsoft Visual Studio Emulator for Android,建议跳过这个模块最后去单独下载该模拟器的安装包安装就是了,如果安装该模拟器到最后又失败回滚的话,检查你的电脑是否开启或者支持Hyper-V特性,比如win8 home edition就没有.

3.上述步骤操作完成基本就可以进行 Android 程序编写了, 但是如果你使用C++开发Native-Activity Application, 你可能在 Build 的时候会得到以下类似错误:

TRK0005: Failed to locate: “clang.exe”. The system cannot find the file specified
TRACKER : "htmlcode">

XDE Exit Code: Unknown (-532462766)
unhandled exception. Exception Info: System.Management.ManagementException

上面的错误是从模拟器启动失败的log文件中反映出来的,这是因为Hyper-V的虚拟交换机没有配置好, 并且这时候打开Hyper-V Manager->Virtual Switch Manger...你很可能会收到以下提示

An error occurred while trying to retrieve a list of virtual switches

至于这个error是啥并未深究,解决方法是彻底卸掉Microsoft Visual Studio Emulator for Android和Hyper-V, 重启, 安装Hyper-V(注意全部都要勾选), 重启, 再安装模拟器(并重启"Could not locate the Android Debug Bridge (adb.exe).",然后VS的设备列表就突然变成了"no available devices"

看样子是找不到adb.exe,看来仅仅在VS里面配置好Android SDK Path还不够, 搜索了下, 找到以下方案并成功解决:
打开注册表管理器,定位HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Android SDK Tools, 修改Path的值为你的SDK路径, 如果没有, 就新建键Android SDK Tools, 然后添加名为Path的字符串值(String Value)

注意no available devices的原因还可能是adb.exe和VS的启动次序问题, 这个在eclipse中同样存在.

广告合作:本站广告合作请联系QQ:858582 申请时备注:广告合作(否则不回)
免责声明:本站资源来自互联网收集,仅供用于学习和交流,请遵循相关法律法规,本站一切资源不代表本站立场,如有侵权、后门、不妥请联系本站删除!

RTX 5090要首发 性能要翻倍!三星展示GDDR7显存

三星在GTC上展示了专为下一代游戏GPU设计的GDDR7内存。

首次推出的GDDR7内存模块密度为16GB,每个模块容量为2GB。其速度预设为32 Gbps(PAM3),但也可以降至28 Gbps,以提高产量和初始阶段的整体性能和成本效益。

据三星表示,GDDR7内存的能效将提高20%,同时工作电压仅为1.1V,低于标准的1.2V。通过采用更新的封装材料和优化的电路设计,使得在高速运行时的发热量降低,GDDR7的热阻比GDDR6降低了70%。