Windows 下使用adt-bundle-windows 启动SDK Manager 时出错闪退的原因和解决办法

昨天在Windows7下搭建Android开发环境,在启动SDK Manager的时候遇到了出错闪退的问题,后来查询尝试了很多方法均未得到解决。今天,仔细看了下启动用到的两个bat文件,终于找到了问题的症结所在!

顺便把搭建过程也记录下!

1. 先安装JDK,去官网下载

http://www.oracle.com/technetwork/java/javase/downloads/jdk7-downloads-1880260.html

得到exe文件,双击安装即可!

2. 配置JDK的环境变量

java_home、classpath、 path 三个变量

path 变量注意把jdk的放在最前面,避免System32的干扰

3. 安装 adt-bundle-windows

adt-bundle-windows 集成了eclipse、adt、sdk,解压到D盘根目录即可

下载地址:https://dl.google.com/android/adt/adt-bundle-windows-x86-20140702.zip

4. 启动adt-bundle-windows里的eclipse编写个HelloWorld可以运行

遇到了问题:

在工具栏启动SDK Manager 时发生了下列错误


如下界面一闪而过


在尝试了很多方法都无效后,我仔细查看了

D:\adt-bundle-windows-x86-20140702\sdk\tools\android.bat

D:\adt-bundle-windows-x86-20140702\sdk\tools\lib\fand_java.bat

这两个相关批处理文件

最后发现在find_java.bat文件中有如下内容

reg Query "HKLM\Hardware\Description\System\CentralProcessor\0" |^
find /i "x86" > NUL && set arch_ext=32 || set arch_ext=64

正是这一句,导致了错误

reg Query 会去查询注册表,由于我的Windows账户是自己建立的,而不是Administrator用户,没有权限导致查询失败,接着导致arch_ext这个在后面多次用到了变量没正确设置,解决办法可想而知了,直接设置而不去注册表查询,所以将上句改为

arch_ext=32

改了后如图所示:



这样问题得到完美解决,SDK Manager 可以成功启动了


但是更新时发现速度非常慢!

解决办法:

1. 在C:\Windows\System32\drivers\etc\hosts后添加

203.208.46.146    dl-ssl.google.com
203.208.46.146    dl.google.com

2. 点击Android SDK Manager -> Tools-> Options


勾上 Force https://...sources to be fetched using http://...

注意:注销或重启下使hosts生效!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值