最近更新了 android 的 gradle 插件(使用 android studio),之后之前进入 SDK 目录的方法就失效了。表达式
${android.plugin.sdkDirectory}
在旧版本中工作的现在返回错误
Error:(42, 0) No such property: sdkDirectory for class: com.android.build.gradle.LibraryPlugin
获取正在使用的 android SDK 目录的正确方法是什么,最好独立于用户的配置,如插件和 gradle 版本?该脚本需要与多个用户共享。
最佳答案
由于之前的所有答案都取决于环境或在正常配置之上的特定用户干预,我将只发布我的技术上困惑的修复。
if (android.hasProperty('plugin')) {
if (android.plugin.hasProperty('sdkHandler')) {
androidPath = android.plugin.sdkHandler.sdkFolder
} else {
androidPath = android.plugin.sdkDirectory
}
} else {
androidPath = android.sdkDirectory
}
与以前的所有方法不同,这确实有效,但它看起来仍然很老套。
关于android - 在 gradle 任务中获取 Android SDK 目录,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24243693/