Android 5.1 API

API 级别:22

Android 5.1 (LOLLIPOP_MR1) 是对 Lollipop 版本的更新,为用户和应用开发者提供了新功能。 本文介绍其中最值得关注的新 API。

如需简要了解新平台功能,请参阅 Android Lollipop 重要内容

更新目标 API 级别

如需开始构建 Android 5.1 应用,请使用 SDK 管理器下载 Android 5.1 SDK Platform 和系统映像。然后,将您的应用开发项目设置为使用 "22"targetSdkVersion。在 Android 5.1 系统映像上安装您的应用并对其进行测试,然后发布包含此变更的更新应用。

您可以使用 Android 5.1 API,同时支持较低版本,方法是在代码中添加条件,在执行您的 minSdkVersion 不支持的 API 之前检查系统 API 级别。如需详细了解如何保持向后兼容性,请参阅支持不同平台版本

如需详细了解 API 级别的工作原理,请参阅什么是 API 级别?

多 SIM 卡支持

Android 5.1 增加了对同时使用多个移动网络运营商 SIM 卡的支持。借助此功能,用户可以在具有两个或更多 SIM 卡插槽的设备上激活和使用额外的 SIM 卡。

您可以通过 SubscriptionManager 类获取有关当前有效 SIM 卡的信息,包括设备是否被视为在当前网络上漫游。如果开发者想要针对对数据访问费用敏感的设备用户限制或关闭应用的数据访问,这些信息非常有用。通过请求 READ_PHONE_STATE 权限并在 SubscriptionManager 对象上设置 SubscriptionManager.OnSubscriptionsChangedListener,您的应用可以收到关于设备当前网络连接变化的提醒。

已弃用的 HTTP 类

Android 5.1 中已废弃 org.apache.http 类和 android.net.http.AndroidHttpClient 类。这些类已不再维护,您应该尽快将这些 API 的任何应用代码迁移到 URLConnection 类。

Carrier Services

Android 5.1 支持电信服务提供商创建可在 Android 设备上执行运营商配置任务的应用。这些 API 为运营商开发的应用提供了一种安全灵活的方式来执行这些任务并通过 Google Play 分发。使用这些功能的应用必须由与设备的通用集成电路卡 (UICC) 中的证书匹配的证书进行签名。

运营商服务 API 已添加到 TelephonyManager 类、SmsManager 类和新的 CarrierMessagingService 类中。应用可以通过调用 hasCarrierPrivileges() 方法来检查是否可以访问这些 API。如果应用在没有访问权限的情况下调用这些 API,则会收到 SecurityException