我已经有一个支持 pre-lollipop 设备的 android 应用程序,但我想移植 android 应用程序以支持最新版本到 Marshmallow 和早期版本到 Jellybean,是否有任何具体指南可用于支持上述标准?
最佳答案
在您的 manifest/build.gradle 中:(取决于您使用的是什么)
<uses-sdk
android:minSdkVersion="14"
android:targetSdkVersion="23" />
Gradle :
defaultConfig {
........
minSdkVersion 14
targetSdkVersion 23
}
将 minSDK 设置得尽可能低。如果它太低,它会显示错误。请记住,如果您使用任何需要更高 API 级别的代码(例如,当编写 xml 时只编写需要 API 17 的 android:layout_marginStart
),您会收到一条错误消息,告诉您提高最低 API 级别。现在,有一些方法可以避免增加;
- 如果可能,添加也支持较低 API 级别的代码(例如
android:layout_marginRight
- 如果没有可用于支持两者的替代方案,请将您的代码瞄准较低的 API 级别。
- 记住操作系统分布并定位百分比最高的平台。无需针对实际上已失效的平台。
- 您可以在新设备上运行旧代码,但是旧设备上的新代码要么不可能,要么需要 AppCompat(例如 Material 设计)
- 即使我说运行旧代码以针对新旧平台,也要避免弃用代码!如果可能,使用 AppCompat 在旧设备上使用新代码。
总结:
编写 XML 代码时,使用支持新旧(如果可用)的代码。在进行正常编码时,尝试使用支持旧版本和未弃用的新版本的代码。如果可能,请使用 AppCompat 在旧设备上获取新代码和新事物。
关于java - Android 应用程序支持主要的 android 版本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39178811/