Sources for Android API 23 Platfrom not found (Android Studio 2.0)
参考链接:
stackoverflow http://stackoverflow.com/questions/36814755/sources-for-android-api-23-platfrom-not-found-android-studio-2-0
cnblogs http://www.cnblogs.com/permanent2012moira/p/5447419.html
上面两个链接中都未说出重点
下面会说.
第一步:找到jdk.table.xml
Windows系统中:
C:\Users{USER_NAME}.AndroidStudio2.0\config\options\jdk.table.xml
Linix系统:(后边儿有其他找法)
~/Library/Preferences/AndroidStudioBeta/options/jdk.table.xml
第二步:找到你要关联的源码版本:
你可能安装了很多sdk版本
如下图
但是问题是现在你找不到的是api 23:
所以你要找到的是23对应的Android API 23 Platform
注意:对应的文件夹路径要是这种格式(file://XXX):
file://$USER_HOME$/Library/Android/sdk/sources/android-29
重点就是:
根据需要找到对应的Android API XX Platform,然后添加sources关联
“根据需要”,需要是啥,就是android studio的那句Sources for ‘Android API XX Platform’ not found
对于Linux系统,有人反映路径不太对,并提供了方法,使用locate命令,在此表示感谢_
关于locate命令:
locate命令其实是“find -name”的另一种写法,但是要比后者快得多,原因在于它不搜索具体目录,而是搜索一个数据库(/var/lib/locatedb),这个数据库中含有本地所有文件信息。Linux系统自动创建这个数据库,并且每天自动更新一次,所以使用locate命令查不到最新变动过的文件。为了避免这种情况,可以在使用locate之前,先使用updatedb命令,手动更新数据库。
以上摘抄于http://www.cnblogs.com/flysnail/archive/2012/05/16/2504266.html
不过由于
WARNING: The locate database (/var/db/locate.database) does not exist.
To create the database, run the following command:
sudo launchctl load -w /System/Library/LaunchDaemons/com.apple.locate.plist
Please be aware that the database can take some time to generate; once
the database has been created, this message will no longer appear.
故而我使用find命令来查找jdk.table.xml
的,以下为操作步骤
# 1、cd到根目录
cd ~
# 2、查看根目录path
pwd
# 3、以根目录为起点遍历查找所有jdk.table.xml文件
find /Users/xiaoyee -name "jdk.table.xml"
如下图所示
根据结果,因为我安装了Android Studio以及Intellij的两个版本(2016.1版本的是之前的版本),所以有三个,然后根据自己想关联哪个IDE,就修改对应的xml