Sdk位于AOSP

时间:2018-02-02 06:46:58

标签: android gradle android-source

注意 - 我对android和AOSP相对较新......

我在哪里可以找到AOSP中的Android SDK?我们知道,我们使用单独安装的SDK在android工作室中构建.apk。但出于某种原因,我希望在AOSP中使用SDK(如果可用)。我在AOSP中看到了SDK的源代码,我们需要构建它吗?

为什么/我如何得出上述问题,

  1. 我在AOSP中创建了一个.apk,其中包含jni文件并依赖于某些现有的broadcom库(如此)。这是一个系统应用程序。我注意到的是.apk包不包含jni库,而是分别复制到/ system / lib文件夹。 因此我怀疑.apk升级将如何运作?有可能吗?

  2. 我认为.apk升级不会那样工作,应该打包.apk,包括jni库。因此,我计划在工作室中构建.apk并使用.apk作为预构建,并在AOSP中签名(我们有密钥)。然后我还想让开发人员通过在命令行中运行Gradle来在AOSP中构建.apk。我是通过将命令添加到Android.mk来实现的。但重点是,它仍然使用/ home // Android / Sdk中安装的SDK。但是可能有可能没有安装SDK的构建机器。所以我提出这个问题 - 我们(在哪里?)在AOSP中有SDK吗?我可以改用它吗?

  3. 我试图解释这个问题..如果不清楚请告诉我......会尝试提供更多细节......

1 个答案:

答案 0 :(得分:1)

  1. OTA更新将有效。使用包管理器更新 - 不会。对于具有本机库的系统应用程序,这是正常的。
  2. 在AOSP中,应用程序的构建方式取决于它们在构建树中的位置。放置在〜/ packages / apps 〜/ device / some_vendor 中的应用程序是系统应用程序,系统会对它们进行不同的处理。其中一个不同之处在于,在构建过程中,它们被剥离了本机库,而这些库只是复制到/ system / partition。

    1. 包括预先构建的apk是一个很好的解决方案。 是的,你可以自己从源头构建sdk。是的,就在那里。但我不明白为什么你需要那个。 API有任何更改吗?

    2. 还有其他选择。例如,您可以修改构建脚本。比如说,您可以添加一个全局FLAG来禁用系统应用程序的lib剥离。