[HTML payload içeriği buraya]
35.1 C
Jakarta
Monday, May 11, 2026

The Second Beta of Android 17



Posted by Matthew McCullough, VP Product Administration, Android Developer

At this time we’re releasing the second beta of Android 17, persevering with our work to construct a platform that prioritizes privateness, safety, and refined efficiency. This replace delivers a variety of recent capabilities, together with the EyeDropper API and a privacy-preserving Contacts Picker. We’re additionally including superior ranging, cross-device handoff APIs, and extra.

This launch continues the shift in our launch cadence, following this annual main SDK launch in Q2 with a minor SDK replace.

Person Expertise & System UI

Bubbles

Bubbles is a windowing mode function that provides a brand new floating UI expertise separate from the messaging bubbles API. Customers can create an app bubble on their cellphone, foldable, or pill by long-pressing an app icon on the launcher. On massive screens, there’s a bubble bar as a part of the taskbar the place customers can arrange, transfer between, and transfer bubbles to and from anchored factors on the display screen.

EyeDropper API

A brand new system-level EyeDropper API permits your app to request a shade from any pixel on the show with out requiring delicate display screen seize permissions.


val eyeDropperLauncher = registerForActivityResult(ActivityResultContracts.StartActivityForResult()) {
  end result -> if (end result.resultCode == Exercise.RESULT_OK) {
    val shade = end result.knowledge?.getIntExtra(Intent.EXTRA_COLOR, Colour.BLACK)
    // Use the picked shade in your app
  }
}

enjoyable launchColorPicker() {
  val intent = Intent(Intent.ACTION_OPEN_EYE_DROPPER)
  eyeDropperLauncher.launch(intent)
}

Contacts Picker

A brand new system-level contacts picker through ACTION_PICK_CONTACTS grants momentary, session-based learn entry to solely the particular knowledge fields requested by the person, decreasing the necessity for the broad READ_CONTACTS permissions. It additionally permits for choices from the machine’s private or work profiles.

val contactPicker = rememberLauncherForActivityResult(StartActivityForResult()) {
    if (it.resultCode == RESULT_OK) {
        val uri = it.knowledge?.knowledge ?: return@rememberLauncherForActivityResult
        // Deal with end result logic
        processContactPickerResults(uri)
    }
}

val dataFields = arrayListOf(Electronic mail.CONTENT_ITEM_TYPE, Telephone.CONTENT_ITEM_TYPE)
val intent = Intent(ACTION_PICK_CONTACTS).apply {
    putStringArrayListExtra(EXTRA_PICK_CONTACTS_REQUESTED_DATA_FIELDS, dataFields)
    putExtra(EXTRA_ALLOW_MULTIPLE, true)
    putExtra(EXTRA_PICK_CONTACTS_SELECTION_LIMIT, 5)
}

contactPicker.launch(intent)

Simpler pointer seize compatibility with touchpads

Beforehand, touchpads reported occasions in a really completely different approach from mice when an app had captured the pointer, reporting the areas of fingers on the pad slightly than the relative actions that may be reported by a mouse. This made it fairly tough to assist touchpads correctly in first-person video games. Now, by default the system will acknowledge pointer motion and scrolling gestures when the touchpad is captured, and report them similar to mouse occasions. You may nonetheless request the outdated, detailed finger location knowledge by explicitly requesting seize within the new “absolute” mode.

// To request the brand new default relative mode (mouse-like occasions)
// This is identical as requesting with View.POINTER_CAPTURE_MODE_RELATIVE
view.requestPointerCapture()

// To request the legacy absolute mode (uncooked contact coordinates)
view.requestPointerCapture(View.POINTER_CAPTURE_MODE_ABSOLUTE)

Interactive Chooser resting bounds

By calling getInitialRestingBounds on Android’s ChooserSession, your app can establish the goal place the Chooser occupies after animations and knowledge loading are full, enabling higher UI changes.

Connectivity & Cross-System

Cross-device app handoff

A brand new Handoff API permits you to specify utility state to be resumed on one other machine, resembling an Android pill. When opted in, the system synchronizes state through CompanionDeviceManager and shows a handoff suggestion within the launcher of the person’s close by gadgets. This function is designed to supply seamless job continuity, enabling customers to choose up precisely the place they left off of their workflow throughout their Android ecosystem. Critically, Handoff helps each native app-to-app transitions and app-to-web fallback, offering most flexibility and making certain an entire expertise even when the native app shouldn’t be put in on the receiving machine.

Superior ranging APIs

We’re including assist for two new ranging applied sciences – 

  1. UWB DL-TDOA which allows apps to make use of UWB for indoor navigation. This API floor is FIRA (Advantageous Ranging Consortium) 4.0 DL-TDOA spec compliant and allows privateness preserving indoor navigation  (avoiding monitoring of the machine by the anchor).

  2. Proximity Detection which allows apps to make use of the brand new ranging specification being adopted by WFA (WiFi Alliance). This know-how offers improved reliability and accuracy in comparison with present Wifi Conscious primarily based ranging specification.

Information plan enhancements

To optimize media high quality, your app can now retrieve carrier-allocated most knowledge charges for streaming purposes utilizing getStreamingAppMaxDownlinkKbps and getStreamingAppMaxUplinkKbps.

Core Performance, Privateness & Efficiency

Native Community Entry

Android 17 introduces the ACCESS_LOCAL_NETWORK runtime permission to guard customers from unauthorized native community entry. As a result of this falls below the prevailing NEARBY_DEVICES permission group, customers who’ve already granted different NEARBY_DEVICES permissions won’t be prompted once more. By declaring and requesting this permission, your app can uncover and connect with gadgets on the native space community (LAN), resembling good dwelling gadgets or casting receivers. This prevents malicious apps from exploiting unrestricted native community entry for covert person monitoring and fingerprinting. Apps focusing on Android 17 or greater will now have two paths to keep up communication with LAN gadgets: undertake system-mediated, privacy-preserving machine pickers to skip the permission immediate, or explicitly request this new permission at runtime to keep up native community communication.

Time zone offset change broadcast

Android now offers a dependable broadcast intent, ACTION_TIMEZONE_OFFSET_CHANGED, triggered when the system’s time zone offset adjustments, resembling throughout Daylight Saving Time transitions. This enhances the prevailing broadcast intents ACTION_TIME_CHANGED and ACTION_TIMEZONE_CHANGED, that are triggered when the Unix timestamp adjustments and when the time zone ID adjustments, respectively.

NPU Administration and Prioritization

Apps focusing on Android 17 that must instantly entry the NPU should declare FEATURE_NEURAL_PROCESSING_UNIT of their manifest to keep away from being blocked from accessing the NPU. This contains apps that use the LiteRT NPU delegate, vendor-specific SDKs, in addition to the deprecated NNAPI.

ICU 78 and Unicode 17 assist

Core internationalization libraries have been up to date to ICU 78, increasing assist for brand new scripts, characters, and emoji blocks, and enabling direct formatting of time objects.

SMS OTP safety

Android is increasing its SMS OTP safety by routinely delaying entry to SMS messages with OTP. Beforehand, the safety was primarily targeted on the SMS Retriever format whereby the supply of messages containing an SMS retriever hash is delayed for many apps for 3 hours. Nevertheless, for sure apps just like the default SMS app, and so on and the app that corresponds to the hash are exempt from this delay. This replace extends the safety to all SMS messages with OTP. For many apps, SMS messages containing an OTP will solely be accessible after a delay of three hours to assist stop OTP hijacking. The SMS_RECEIVED_ACTION broadcast will likely be withheld and sms supplier database queries will likely be filtered. The SMS message will likely be out there to those apps after the delay.


Delayed entry to WebOTP format SMS messages

If the app has the permission to learn SMS messages however shouldn’t be the supposed recipient of the OTP (as decided by area verification), the WebOTP format SMS message will solely be accessible after three hours have elapsed. This variation is designed to enhance person safety by making certain that solely apps related to the area talked about within the message can programmatically learn the verification code. This variation applies to all apps no matter their goal API degree.

Delayed entry to straightforward SMS messages with OTP

For SMS messages containing an OTP that don’t use the WebOTP or SMS Retriever codecs, the OTP SMS will solely be accessible after three hours for many apps. This variation solely applies to apps that concentrate on Android 17 (API degree 37) or greater.

Sure apps such because the default SMS, assistant app, together with linked machine companion apps, and so on will likely be exempt from this delay.

All apps that depend on studying SMS messages for OTP extraction ought to transition to utilizing SMS Retriever or SMS Person Consent APIs to make sure continued performance.

The Android 17 schedule

We will be shifting shortly from this Beta to our Platform Stability milestone, focused for March. At this milestone, we’ll ship ultimate SDK/NDK APIs. From that point ahead, your app can goal SDK 37 and publish to Google Play that will help you full your testing and accumulate person suggestions within the a number of months earlier than the final availability of Android 17.

A yr of releases

We plan for Android 17 to proceed to get updates in a sequence of quarterly releases. The upcoming launch in Q2 is the one one the place we introduce deliberate app breaking habits adjustments. We plan to have a minor SDK launch in This fall with further APIs and options.


Get began with Android 17

You may enroll any supported Pixel machine to get this and future Android Beta updates over-the-air. For those who don’t have a Pixel machine, you may use the 64-bit system photos with the Android Emulator in Android Studio.

In case you are at present within the Android Beta program, you’ll be provided an over-the-air replace to Beta 2.

If in case you have Android 26Q1 Beta and wish to take the ultimate steady launch of 26Q1 and exit Beta, you have to ignore the over-the-air replace to 26Q2 Beta 2 and look forward to the discharge of 26Q1.

We’re on the lookout for your suggestions so please report points and submit function requests on the suggestions web page. The sooner we get your suggestions, the extra we will embody in our work on the ultimate launch.

For the perfect improvement expertise with Android 17, we advocate that you simply use the most recent preview of Android Studio (Panda). When you’re arrange, listed below are among the issues it is best to do:

  • Compile towards the brand new SDK, take a look at in CI environments, and report any points in our tracker on the suggestions web page.

  • Check your present app for compatibility, be taught whether or not your app is affected by adjustments in Android 17, and set up your app onto a tool or emulator operating Android 17 and extensively take a look at it.

We’ll replace the preview/beta system photos and SDK usually all through the Android 17 launch cycle. When you’ve put in a beta construct, you’ll routinely get future updates


Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles