(1 條消息)Android Studio 中如何引入 layoutlib.jar?
如題,現有項目是在 Eclipse 下編程的,想切換成 Android Studio,但苦於沒法引入 layoutlib.jar ... 請問各位有木有碰到類似的?怎麼解決?
http://stackoverflow.com/questions/16588064/how-do-i-add-a-library-project-to-the-android-studio
在build.gradle文件定義個變數,獲取SDK_DIR路徑。然後在dependencies 使用provided引入layoutlib.jar
String SDK_DIR = System.getenv("ANDROID_SDK_HOME")
if(SDK_DIR == null) {
Properties props = new Properties()
props.load(new FileInputStream(project.rootProject.file("local.properties")))
SDK_DIR = props.get(sdk.dir);
}
dependencies {
provided files("${SDK_DIR}/platforms/android-20/data/layoutlib.jar")
}
在gradle配置文件中,寫一個函數,動態獲取layoutlib.jar路徑,然後加到dependencies中即可,代碼如下:
dependencies {
provided files(getLayoutLibPath())
}
/** ZhangChao time:2014-12-31,get layoutlib.jar path.
* android.os.SystemProperties need it. */
// must called after "android" definition
def getLayoutLibPath() {
return "${android.getSdkDirectory().getAbsolutePath()}" + "/platforms/" +
android.compileSdkVersion + "/data/layoutlib.jar"
}
ps: 此方法中需要讀取 android.compileSdkVersion,所以必須在android 定義了之後才能調用,也就是這麼寫:
android {
compileSdkVersion 22
// ...
}
dependencies {
provided files(getLayoutLibPath())
}
對比一下你的那個文件夾就知道問題出在哪了
good
推薦閱讀:
※如何看待android studio2.0穩定版?
※okhttp,retrofit,android-async-http,volley應該選擇哪一個?
※如何優雅地讀logcat?
※這種ui誰能給點思路?
※(1 條消息)Android studio 源代碼報錯?
TAG:Android開發 | AndroidStudio |