125 lines
4.8 KiB
Plaintext
125 lines
4.8 KiB
Plaintext
page.title=Android 5.1 APIs
|
|
excludeFromSuggestions=true
|
|
sdk.platform.version=5.1
|
|
sdk.platform.apiLevel=22
|
|
@jd:body
|
|
|
|
|
|
<div id="qv-wrapper">
|
|
<div id="qv">
|
|
|
|
<h2>In this document
|
|
<a href="#" onclick="hideNestedItems('#toc44',this);return false;" class="header-toggle">
|
|
<span class="more">show more</span>
|
|
<span class="less" style="display:none">show less</span></a></h2>
|
|
|
|
<ol id="toc44" class="hide-nested">
|
|
<li><a href="#ApiLevel">Update your target API level</a></li>
|
|
|
|
<li><a href="#multisim">Multiple SIM Card Support</a></li>
|
|
<li><a href="#http">Deprecated HTTP Classes</a></li>
|
|
<li><a href="#carrier">Carrier Services</a></li>
|
|
</ol>
|
|
|
|
<h2>API Differences</h2>
|
|
<ol>
|
|
<li><a href="{@docRoot}sdk/api_diff/22/changes.html">API level 21 to 22 »</a> </li>
|
|
</ol>
|
|
|
|
<h2>See Also</h2>
|
|
<ol>
|
|
<li><a href="{@docRoot}about/versions/lollipop.html">Android Lollipop Highlights</a> </li>
|
|
</ol>
|
|
|
|
|
|
</div>
|
|
</div>
|
|
|
|
<p>API Level: {@sdkPlatformApiLevel}</p>
|
|
|
|
<p>
|
|
Android 5.1
|
|
(<a href="{@docRoot}reference/android/os/Build.VERSION_CODES.html#LOLLIPOP_MR1">LOLLIPOP_MR1</a>)
|
|
is an update to the Lollipop release that offers new features for users and app developers.
|
|
This document provides an introduction to the most notable new APIs.
|
|
</p>
|
|
|
|
<p>
|
|
For a high-level look at the new platform features, see the <a href=
|
|
"{@docRoot}about/versions/lollipop.html">Android Lollipop highlights</a>.
|
|
</p>
|
|
|
|
|
|
<h3 id="ApiLevel">Update your target API level</h3>
|
|
|
|
<p>
|
|
To start building apps for Android 5.1, use the
|
|
<a href="{@docRoot}tools/help/sdk-manager.html">SDK Manager</a> to download the Android 5.1 SDK
|
|
Platform and System Images. Then set your app development project to use a
|
|
<a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#target">{@code targetSdkVersion}</a>
|
|
of <code>"{@sdkPlatformApiLevel}"</code>. Install your app on an Android {@sdkPlatformVersion}
|
|
system image, test it, then publish the updated app with this change.
|
|
</p>
|
|
|
|
<p>
|
|
You can use Android {@sdkPlatformVersion} APIs while also supporting older versions by adding
|
|
conditions to your code that check for the system API level before executing APIs not supported
|
|
by your <a href="{@docRoot}guide/topics/manifest/uses-sdk-element.html#min">{@code
|
|
minSdkVersion}</a>. To learn more about maintaining backward compatibility, read <a href=
|
|
"{@docRoot}training/basics/supporting-devices/platforms.html">Supporting Different Platform
|
|
Versions</a>.
|
|
</p>
|
|
|
|
<p>
|
|
For more information about how API levels work, read <a href=
|
|
"{@docRoot}guide/topics/manifest/uses-sdk-element.html#ApiLevels">What is API Level?</a>
|
|
</p>
|
|
|
|
<h2 id="multisim">Multiple SIM Card Support</h2>
|
|
|
|
<p>
|
|
Android 5.1 adds support for using more than one cellular carrier SIM card at a time. This
|
|
feature lets users activate and use additional SIMs on devices that have two or more SIM card
|
|
slots.
|
|
</p>
|
|
|
|
<p>
|
|
You can access information about the currently active SIM through the {@link
|
|
android.telephony.SubscriptionManager} class, including whether or not the device is considered
|
|
to be roaming on the current network. This information is useful for developers who want to
|
|
throttle their apps' data access down or off for device users who are sensitive to data access
|
|
charges. Your app can be alerted to changes in a device's current network connection by
|
|
requesting the {@link android.Manifest.permission#READ_PHONE_STATE} permission and setting {@link
|
|
android.telephony.SubscriptionManager.OnSubscriptionsChangedListener} on the {@link
|
|
android.telephony.SubscriptionManager} object.
|
|
</p>
|
|
|
|
|
|
<h2 id="http">Deprecated HTTP Classes</h2>
|
|
|
|
<p>
|
|
The {@code org.apache.http} classes and the {@link android.net.http.AndroidHttpClient} class
|
|
have been deprecated in Android 5.1. These classes are no longer being maintained and you should
|
|
migrate any app code using these APIs to the {@link java.net.URLConnection} classes as soon as
|
|
possible.
|
|
</p>
|
|
|
|
|
|
<h2 id="carrier">Carrier Services</h2>
|
|
|
|
<p>
|
|
Android 5.1 provides support for telecommunication service providers to create apps that can
|
|
perform carrier provisioning tasks on an Android device. These APIs provide a secure and flexible
|
|
way for carrier-developed apps to perform these tasks and be distributed through Google Play. Apps
|
|
that use these functions must be signed by a certificate that matches the certificate in the
|
|
device's Universal Integrated Circuit Card (UICC).
|
|
</p>
|
|
|
|
<p>
|
|
The carrier service APIs have been added to the {@link android.telephony.TelephonyManager} class,
|
|
the {@link android.telephony.SmsManager} class, and the new {@link
|
|
android.service.carrier.CarrierMessagingService} class. Apps can check for access to these APIs
|
|
by calling the {@link android.telephony.TelephonyManager#hasCarrierPrivileges} method. Apps that
|
|
call these APIs without access receive a {@link java.lang.SecurityException}.
|
|
</p>
|