Android SDK 在win8下的常见问题

问题一:SDK Manager 闪退退问题

问题现象:

               a. 在android 安装目录下,双击SDK Manager.exe,出现闪退

               b.在eclipse 集成开发环境下,点击无反应,无法启功SDK Manager

问题分析:

                查看日志发现出现,"'C:\Program' 不是内部或外部命令,也不是可运行的程序”,错误信息。一开始以为是win8造成android SDK不支持文件路径空格,将android sdk 移动到了盘符根目录下,发现问题依然存在,暴露相同的问题。这时开始怀疑问题可能是android SDK 所依赖的JDK找不到导致,便查询资料android sdk是如何指定JDK路径的,最后在网上找到,关键的androi .bat 这个脚本文件。

                里面有:

                rem Check we have a valid Java.exe in the path.

               set java_exe=
                      call lib\find_java.bat
                      if not defined java_exe goto :EOF
                      call lib\find_java.bat
                      if not defined java_exe goto :EOF
               rem be 0 if the command worked or 1 if the exec failed (program not found).
               for /f %%a in ('%~dps0\find_java.exe -s') do set java_exe=%%a
               if not defined java_exe goto :CheckFailed

               if not defined java_exe goto :CheckFailed

                根据脚本继续

                查看find_java.bat

               rem Check we have a valid Java.exe in the path. The return code will

:SearchJavaW

rem Check if we can find a javaw.exe at the same location than java.exe.

rem If that doesn't work, just fall back on the java.exe we just found.

for /f %%a in ('%~dps0\find_java.exe -s -w') do set javaw_exe=%%a

if not exist %javaw_exe% set javaw_exe=%java_exe%

goto :EOF

             可以看出脚本都会去调用“find_java.exe” 这个应用程序,问题应该就出在这个应用程序里。

              找到了问题,就来修改吧。

问题解决:

             a.修改android.bat    

         set java_exe=D:/Program Files/Java/jdk1.6.0_27/bin/java.exe

         b.将find_java.bat修改为

          rem if not defined java_exe goto :CheckFailed

set java_exe=D:/Program Files/Java/jdk1.6.0_27/bin/java.exe

goto :EOF

:SearchJavaW

rem Check if we can find a javaw.exe at the same location than java.exe.

rem If that doesn't work, just fall back on the java.exe we just found.

rem for /f "delims=" %%a in ('"%~dps0\find_java.exe" -s -w') do set javaw_exe=%%a

rem if not exist "%javaw_exe%" set javaw_exe=%java_exe%

set javaw_exe=D:/Program Files/Java/jdk1.6.0_27/bin/javaw.exe

goto :EOF

两种方法原理一样,不经过调用,直接硬指定。经测试有效,但须注意,更新tools后会被覆盖,所以注意备份。

问题二:android sdk 无法更新

问题解决:

1、在SDK Manager下Tools->Options打开了SDK Manager的Settings,选中“Force https://… sources to be fetched using http://…”,强制使用http协议。

2、修改host文件,添加下面两行
#google_android更新
203.208.46.146 dl.google.com
203.208.46.146 dl-ssl.google.com


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值