【问题标题】:Is Android SDK compiled/linked to APK or installed on Android device?Android SDK 是编译/链接到 APK 还是安装在 Android 设备上?
【发布时间】:2017-02-11 20:02:24
【问题描述】:

首先是一些前提:

  1. Android 应用程序使用 Android SDK API 类。

  2. 类定义是一些代码或部分代码,它们被编译成机器码/字节码。

  3. 我假设构成 Android SDK API 的所有(或大部分)类/包都列在:
    https://developer.android.com/reference/packages.html https://developer.android.com/reference/classes.html

    太多了!


现在的问题:

这些代码/数据位于何处?它们是与应用程序代码一起编译到 APK 文件中,还是存在于设备上的 Android 操作系统中,在这种情况下,应用程序应该动态链接到它们?

如果它们存在于设备上,那么使用较新的 Android SDK 版本(例如 Android Studio 中的每个 compileSdkVersion)编译应用程序有什么不同?

假设“Android SDK Build-Tools”(与“SDK Platform”不同(根据“SDK Manager”窗口!)并有自己的版本控制)负责编译您的代码,因此是更新的版本意味着更好的字节码优化和更快的 JAVA -> DEX 翻译!?

您编译 android 应用程序并使用 compileSdkVersion 关键字设置其版本的“SDK 平台”是否仅包含类声明和引用符号?!

Google API(例如 Google Maps API)呢?

Android 支持库呢?

【问题讨论】:

    标签: android android-studio google-api android-sdk-manager


    【解决方案1】:

    Android SDK 代码已嵌入设备中,不是您的 apk 的一部分。

    您需要通过 gradle compile 包含的内容进入您的 apk(例如 Support Library

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2022-01-15
      • 2013-03-11
      • 1970-01-01
      • 2015-07-17
      • 2014-11-07
      • 1970-01-01
      • 2020-06-18
      • 2011-12-07
      相关资源
      最近更新 更多