android - Android SDK 是编译/链接到 APK 还是安装在 Android 设备上?

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

首先是一些前提:

  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 构建工具”(与“SDK 平台”不同(根据“SDK 管理器”窗口!)并且有自己的版本控制)负责编译您的代码,因此更新版本意味着更好的字节码优化和更快的 JAVA -> DEX 翻译!? build/compile tools

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

Google API(例如 Google Maps API)怎么样?

Android 支持库怎么样?

最佳答案

Android SDK 代码嵌入到设备中,不属于您的 apk。

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

关于android - Android SDK 是编译/链接到 APK 还是安装在 Android 设备上?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39839007/

相关文章:

android - 如何在 CollapsingToolbarLayout 中滚动 Recyclerview

android - 哪些移动网络类型允许通话期间的 http 流量?

java - Android 登录屏幕切换

java - Kotlin 中的错误但仅使用 Java - 类 kotlin.reflect.jvm.internal.FunctionCaller$FieldSetter

node.js - Google 日历推送 API Node 不工作? [实体.资源] [观看]

android - AlertDialog 中的密码字段

android - 在android中设置NavigationDrawer项目的OnClick

android - 使用 ImageButton android 分享到 Whatsapp

google-api - 带有同义词的谷歌翻译 API

python - 可以随时间获取 alexa 信息或 google 页面排名吗?