Android SDK的默认目录导致的AVD启动时各种找不到

各位,有木有被下面各种启动AVD报错的问题纠结到:

PANIC:Couldnotopen:ANDROID_SDK_HOME=D:/android-sdk-windows/tools\.android/avd/aa.ini=======================================

PANIC:ANDROID_SDK_HOMEisdefinedbutcouldnotfindTest.inifilein$ANDROID_SDK_HOME\.android\avd

==================================

PANIC:HOMEisdefinedbutcouldnotfindTest.inifilein$HOME\.android\avd

==================================

类似的错误各种搜索也能找到一堆解决方案,可能在大多数情况下都能解决,可惜很不幸,我遇到了极少数情况,所有搜索引擎找到的答案都无法解决,包括中文的和英文的。

我遇到的是上面三种中的第三种。

和前面的是不是很像。但是还是有差别的:一个是HOME,一个是ANDROID_SDK_HOME,而后而要找的文件却是一样的文件。

我的环境:

win8.1

android-studio1.0

sdkmanager24

网上找到的答案无非是设置环境变量,涉及到的环境变量主要有:ANDROID_SDK_HOME、ANDROID_AVD_HOME、ANDROID_SDK

这个设置就不说了,也有回复说环境变量要加上$符号,也就是说设置环境变量的时候变量名为:$ANDROID_SDK_HOME.

而我遇到的错误提示是$HOME,那么是不是代表我需要配置的变量是$HOME呢,非常不幸,各种配置全部试遍全都不行。

====================纠结的分割线=======================

大家也都知道这个文件夹的数据膨胀极度恶心,很多人都用乾坤大挪移大法将其搬家,不过都非常麻烦,搬家的过程中也常常出现各种问题,我比较懒,使用win8自带的小搬家功能,将桌面、文档、下载等几个目录转移到了D盘。就是这样一个不经意的操作给我带来了麻烦。

于是乎我的电脑中一些用户文件夹的结构变成了下面这样子:

用户文件夹:c:\users\yaolei

桌面文件夹:d:\document\desktop

下载文件夹:d:\document\download

经过多次试验,我发现这样一个现象:

当我用AVDManager创建一个avd时,avd的目录存放在了:d:\document\.android\avd目录中。

\.android\avd文件夹呢?

Why?

于是再做了一个实验,将桌面文件夹从d:\user\desktop重新移回到了c:\users\yaolei\desktop文件夹。

再次使用AVDManager创建avd,创建完成后发现avd的默认路径神奇的变成了c:\users\yaolei\.android\avd目录

这时再启动AVD,一切正常。。。。。。

法克,我有种想骂人的冲动。

===========================================================

原来在AVDManager看来,$HOME目录其实不是用户文件夹(即:c:\users\yaolei),而是”windows桌面的实际路径/..“,注意最后面还有一个..,这代表的是上一级目录,而%USERPROFILE%在windows系统中指用户文件夹根目录,,也就是c:\users\yaolei,这要样一来,如果你的桌面路径和用户文件夹没有在一起的话,很不幸,无论怎么样设置环境变量,你都是无法正常使用AVD的。

换句话说,AVDManager创建AVD的时候使用的是“桌面/..”为默认路径,而执行的时候却使用%USERPROFILE%作为默认路径,查阅了一些资料发现如下命令:

没有一种不通过蔑视、忍受和奋斗就可以征服的命运。

Android SDK的默认目录导致的AVD启动时各种找不到

相关文章:

你感兴趣的文章:

标签云: