在 Android Studio 中使用已编译的 SDK

Using compiled SDK in Android Studio

我正在尝试从源代码编译 android-6.0.1 并在 Android Studio 中使用编译后的 SDK。为了编译 SDK,我尝试了以下命令:

 $ lunch sdk-eng
 $ make sdk

也尝试过:

 $ lunch sdk-eng
 $ make PRODUCT-sdk-sdk showcommands

编译结果0个错误。

为了在 Android Studio 中添加 SDK,我检查了有关如何更改 SDK 路径的 SO 问题。路径更改后我面临问题。我编译的SDK文件夹里面有关键文件夹,名字是android-6.0.1比如

 platforms/android-6.0.1
 build-tools/android-6.0.1

SDK 中的完整文件夹集是:

 add-ons  build-tools  docs  documentation.html  extras  platforms  platform-tools  RELEASE_NOTES.html  samples  system-images  tests

编译的 SDK 适用于 API 版本 23。

以下是我迄今为止尝试在 Android Studio(版本 2.1.2)

中添加已编译 SDK 的步骤

1) 更改 sdk 路径 -> Gradle 同步开始 ->

(记住 sdk 文件夹确实有一个构建工具文件夹)

我的应用程序 build.gradle 包含

android {
 compileSdkVersion 23
 buildToolsVersion "23.0.0"

 defaultConfig {
    applicationId "com.example.sdktest"
    minSdkVersion 22
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
}

2) build.gradle 平台名称不允许 6.0.1 这样的字符串,所以我尝试重命名相关文件夹

已将 build-tools/23.0.0/source.properties 修改为包含 Pkg.Revision=23.0.0

我对比了meld中的build-tools文件夹(左边是新编译的SDK,文件夹层次是一样的,虽然我还没有检查所有的不同):

[更新]

我尝试按照 Android Studio 提示安装构建工具版本 23.0.0 并且 com.android.support:appcompat-v7:23.1.1 -> gradle 同步再次开始,并在日志中打印以下内容(然后仍然卡住):

  build-tools/23.0.0/aapt: error while loading shared libraries: libz.so.1: cannot open shared object file: No such file or directory

我尝试安装软件包 lib32z1,但没有解决问题。有没有人尝试在 Debian jessie(64 位)上修复它?

我安装了以下库来解决它:

  • libc6-i386
  • lib32stdc++6
  • lib32gcc1
  • lib32ncurses5

我在这个答案中找到了解决方案: