安卓手机APP开发__支持不同的平台版本

发布于:2024-05-16 ⋅ 阅读:(70) ⋅ 点赞:(0)

安卓手机APP开发__支持不同的平台版本

目录

概述

指定最小的和目标的API的级别

检查运行时的系统版本

使用平台的风格和主题


概述

当安卓的最新的版本为你的APP提供了很好的API,你应该继续支持安卓的旧版本,
直到更多的设备已经升级为安卓的新版本了.这里展示了你如何利用最新的API,
同时还能很好地支持安卓的旧版本.

使用安卓工作台的新项目向导,来找到运行各个版本的安卓的活跃设备的分发版本.
这个分发版本是基于访问谷歌应用商店的设备的数量.一般来说,我们推荐支持活跃设备
的数量的90%,同时你的APP的目标版本是最新的版本.

提示:为了跨几个安卓版本,提供最佳的特性和功能,你应该在你的APP中使用
安卓支持库,这允许你使用老版本上的平台的API.

指定最小的和目标的API的级别

安卓的配置文件描述了关于你的APP和APP支持哪些安卓版本的详细的信息.
特别是,最小SDK版本和目标SDK版本这两个属性,是<uses-sdk>标签标识了
API的能兼容的最小级别和APP的设计和测试的目标级别.

例如:

<manifest xmlns:android="http://schemas.android.com/apk/res/android" ... >
    <uses-sdk android:minSdkVersion="4" android:targetSdkVersion="15" />
    ...
</manifest>

当安卓的新版本发布了,一些风格与行为可能会改变.为了允许你的APP利用这些改变,
并且确保你的APP适合每一个用户设备的风格,你应该设置目标SDK的版本来匹配
可用的安卓的最新版本。


检查运行时的系统版本

安卓在构建的常数类中,为每一个平台版本都提供了一个独特的代码。
在你的APP中,使用这些代码来构建保持你的代码依赖于更高的API级别的条件,


Kotlin

private fun setUpActionBar() {
    // Make sure we're running on Honeycomb or higher to use ActionBar APIs
    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) {
        actionBar.setDisplayHomeAsUpEnabled(true)
    }
}

注意:当解析XML资源时,安卓忽略了不被当前的设备支持的XML属性。所以你能够
安全地使用XML属性,这些属性是仅被新的版本支持的属性,你不用担心旧版本被破坏。
例如,你设置了目标SDK的版本是11,你的APP包括了由安卓3及以上默认支持的动作条。
为了在动作条上添加菜单项,你需要在你的菜单资源XML文件中设置android:showAsAction="ifRoom"
在一个跨版本的XML文件中,这么做是安全的,因为安卓的旧版本可以很容易地忽略
showAsAction这个属性。

使用平台的风格和主题

安卓提供了用户体验主题,给APP相应的操作系统下的外观和界面皮肤。这些主题
能使用配置文件应用到你的APP中。通过使用内嵌的风格和主题,你的APP能够很自然
地遵循安卓的每一个发布版本的风格和外观了。

为了让你的活动看起来像一个对话框:

<activity android:theme="@android:style/Theme.Dialog">

为了让你的活动有一个透明的背景:

<activity android:theme="@android:style/Theme.Translucent">

为了应用在/res/values/styles.xml文件定义的你自己的定制的主题:

<activity android:theme="@style/CustomTheme">

在你的整个APP(所有的活动)中,为了应用一个主题,在<application>元素中
添加一个属性android:theme:

<application android:theme="@style/CustomTheme">

为了了解更多的关于创建和使用主题的信息,见风格和主题的指导。