2.5 C
New York
Monday, January 27, 2025

The First Beta of Android 16



The First Beta of Android 16

Posted by Matthew McCullough – VP of Product Administration, Android Developer

The primary beta of Android 16 is now accessible, which suggests it is time to open the expertise as much as each builders and early adopters. Now you can enroll any supported Pixel gadget right here to get this and future Android Beta updates over-the-air.

This construct contains assist for the way forward for app adaptivity, Dwell Updates, the Superior Skilled Video format, and extra. We’re trying ahead to listening to what you suppose, and thanks upfront to your continued help make Android a platform that works for everybody.

Android adaptive apps

Customers count on apps to work seamlessly on all their gadgets, no matter show measurement and kind issue. To that finish, Android 16 is phasing out the power for apps to limit display orientation and resizability on giant screens. That is just like options OEMs have added over the past a number of years to giant display gadgets to permit customers to run apps at any window measurement and facet ratio.

On screens bigger than 600dp huge, apps that focus on API degree 36 can have app home windows that resize; it’s best to examine your apps to make sure your present UIs scale seamlessly, working nicely throughout portrait and panorama facet ratios. We’re offering frameworks, tooling, and libraries to assist.

Two hands hold a folding phone, showing the Developer News feed in both the folded and unfolded states. The unfolded view shows more news items.

Key modifications:

Timeline:

Dwell Updates

Dwell Updates are a brand new class of notifications that assist customers monitor and rapidly entry essential ongoing actions.

The brand new ProgressStyle notification template gives a constant person expertise for Dwell Updates, serving to you construct for these progress-centric person journeys: rideshare, supply, and navigation. It contains assist for customized icons for the begin, finish, and present progress monitoring, segments and factors, person journey states, milestones, and extra.

ProgressStyle notifications are urged just for trip sharing, meals supply, and navigation use instances.

@Override
protected Notification getNotification() {
   return new Notification.Builder(mContext, CHANNEL_ID)
      .setSmallIcon(R.drawable.ic_app_icon)
      .setContentTitle("Experience requested")
      .setContentText("On the lookout for close by drivers")
      .setStyle(
          new Notification.ProgressStyle()
          .addProgressSegment(
              new Notification.ProgressStyle.Phase(100)
                  .setColor(COLOR_ORANGE)
           ).setProgressIndeterminate(true)
      ).construct();
}

Digital camera and media updates

Android 16 advances assist for the playback, creation, and enhancing of high-quality media, a vital use case for social and productiveness apps.

Superior Skilled Video

Android 16 introduces assist for the Superior Skilled Video (APV) codec which is designed for use for skilled degree prime quality video recording and submit manufacturing.

The APV codec customary has the next options:

    • Perceptually lossless video high quality (near uncooked video high quality)
    • Low complexity and excessive throughput intra-frame-only coding (with out pixel area prediction) to higher assist enhancing workflows
    • Help for prime bit-rate vary up to some Gbps for 2K, 4K and 8K decision content material, enabled by a light-weight entropy coding scheme
    • Body tiling for immersive content material and for enabling parallel encoding and decoding
    • Help for varied chroma sampling codecs and bit-depths
    • Help for a number of decoding and re-encoding with out extreme visible high quality degradation
    • Help multi-view video and auxiliary video like depth, alpha, and preview
    • Help for HDR10/10+ and user-defined metadata

A reference implementation of APV is offered by way of the OpenAPV mission. Android 16 will implement assist for the APV 422-10 Profile that gives YUV 422 colour sampling together with 10-bit encoding and for goal bitrates of as much as 2Gbps.

Digital camera night time mode scene detection

To assist your app know when to modify to and from an evening mode digital camera session, Android 16 provides EXTENSION_NIGHT_MODE_INDICATOR. If supported, it is accessible within the CaptureResult inside Camera2.

That is the API we briefly talked about as coming quickly within the “How Instagram enabled customers to take gorgeous low mild images” blogpost. That submit is a sensible information on the right way to implement night time mode along with a case research that hyperlinks higher-quality, in-app, night time mode images with a rise within the variety of images shared from the in-app digital camera.

Vertical Textual content

Android 16 provides low-level assist for rendering and measuring textual content vertically to offer foundational vertical writing assist for library builders. That is notably helpful for languages like Japanese that generally use vertical writing techniques. A brand new flag, VERTICAL_TEXT_FLAG, has been added to the Paint class. When this flag is ready utilizing Paint.setFlags, Paint’s textual content measurement APIs will report vertical advances as a substitute of horizontal advances, and Canvas will draw textual content vertically.

Word: Present excessive degree textual content APIs, corresponding to Textual content in Jetpack Compose, TextView, Format courses and their subclasses don’t assist vertical writing techniques, and don’t assist utilizing the VERTICAL_TEXT_FLAG.

val textual content = "「春は、曙。」"
Field(Modifier
  .padding(innerPadding)
  .background(Coloration.White)
  .fillMaxSize()
  .drawWithContent {
     drawIntoCanvas { canvas ->
       val paint = Paint().apply {
         textSize = 64.sp.toPx()
       }
       // Draw textual content vertically
       paint.flags = paint.flags or VERTICAL_TEXT_FLAG
       val peak = paint.measureText(textual content)
       canvas.nativeCanvas.drawText(
         textual content, 0, textual content.size, measurement.width / 2, (measurement.peak - peak) / 2, paint
       )
     }
  }) 
{}

Accessibility

Android 16 provides new accessibility APIs that will help you deliver your app to each person.

Supplemental descriptions

When an accessibility service describes a ViewGroup, it combines content material labels from its little one views. In case you present a contentDescription for the ViewGroup, accessibility providers assume you might be additionally overriding the content material of non-focusable little one views. This may be problematic if you wish to label issues like a drop down (e.g. “Font Household”) whereas preserving the present choice for accessibility (e.g. “Roboto”). Android 16 provides setSupplementalDescription so you may present textual content that gives details about a ViewGroup with out overriding data from its kids.

Required kind fields

Android 16 provides setFieldRequired to AccessibilityNodeInfo so apps can inform an accessibility service that enter to a kind subject is required. This is a vital state of affairs for customers filling out many sorts of kinds, even issues so simple as a required phrases and situations checkbox, serving to customers to persistently determine and rapidly navigate between required fields.

Generic ranging APIs

Android 16 contains the brand new RangingManager, which gives methods to find out the gap and angle on supported {hardware} between the native gadget and a distant gadget. RangingManager helps the utilization of quite a lot of ranging applied sciences corresponding to BLE channel sounding, BLE RSSI-based ranging, Extremely-Wideband, and WiFi spherical journey time.

Conduct modifications

With each Android launch, we search to make the platform extra environment friendly and sturdy, balancing the wants of your apps in opposition to issues like system efficiency and battery life. This may end up in habits modifications that impression compatibility.

ART inside modifications

Code that leverages inside buildings of the Android Runtime (ART) might not work accurately on gadgets working Android 16 together with earlier Android variations that replace the ART module by way of Google Play system updates. These buildings are altering in ways in which assist enhance the Android Runtime’s (ART’s) efficiency.

Impacted apps will have to be up to date. Counting on inside buildings can all the time result in compatibility issues, but it surely’s notably essential to keep away from counting on code (or libraries containing code) that leverages inside ART buildings, since ART modifications aren’t tied to the platform model the gadget is working on; they exit to over a billion gadgets by way of Google Play system updates.

For extra data, see the Android 16 modifications affecting all apps and the restrictions on non-SDK interfaces.

Migration or opt-out required for predictive again

For apps concentrating on Android 16 or larger and working on an Android 16 or larger gadget, the predictive again system animations (back-to-home, cross-task, and cross-activity) are enabled by default. Moreover, the deprecated onBackPressed isn’t known as and KeyEvent.KEYCODE_BACK is now not dispatched.

In case your app intercepts the again occasion and you have not migrated to predictive again but, replace your app to make use of supported again navigation APIs or quickly decide out by setting the android:enableOnBackInvokedCallback attribute to false within the or tag of your app’s AndroidManifest.xml file.

Predictive again assist for 3-button navigation

Android 16 brings predictive again assist to 3-button navigation for apps which have correctly migrated to predictive again. Lengthy-pressing the again button initiates a predictive again animation, giving customers a preview of the place the again button takes them.

This habits applies throughout all areas of the system that assist predictive again animations, together with the system animations (back-to-home, cross-task, and cross-activity).

Fastened price work scheduling optimization

Previous to concentrating on Android 16, when scheduleAtFixedRate missed a activity execution because of being exterior a sound course of lifecycle, all missed executions will instantly execute when app returns to a sound lifecycle.

When concentrating on Android 16, at most one missed execution of scheduleAtFixedRate will probably be instantly executed when the app returns to a sound lifecycle. This habits change is anticipated to enhance app efficiency. Please check the habits to make sure your software isn’t impacted. You can even check by utilizing the app compatibility framework and enabling the STPE_SKIP_MULTIPLE_MISSED_PERIODIC_TASKS compat flag.

Ordered broadcast precedence scope now not world

In Android 16, broadcast supply order utilizing the android:precedence attribute or IntentFilter#setPriority() throughout completely different processes is not going to be assured. Broadcast priorities for ordered broadcasts will solely be revered throughout the similar software course of quite than throughout all system processes.

Moreover, broadcast priorities will probably be mechanically confined to the vary (SYSTEM_LOW_PRIORITY + 1, SYSTEM_HIGH_PRIORITY – 1).

Your software could also be impacted if it does both of the next:

      1. Your software has declared a number of processes which have set broadcast receiver priorities for a similar intent.

      2. Your software course of interacts with different processes and has expectations round receiving a broadcast intent in a sure order.

If the processes have to coordinate with one another, they need to talk utilizing different coordination channels.

Gemini Extensions

Samsung simply launched new Gemini Extensions on the S25 collection, demonstrating new methods Android apps can combine with the ability of Gemini. We’re working to make this performance accessible on much more kind components.

This preview is for the subsequent main launch of Android with a deliberate launch in Q2 of 2025 and we plan to have one other launch with new developer APIs in This autumn. The Q2 main launch would be the solely launch in 2025 to incorporate deliberate habits modifications that might have an effect on apps. The This autumn minor launch will decide up characteristic updates, optimizations, and bug fixes; it is not going to embrace any app-impacting habits modifications.

2025 SDK release timeline showing a features only update in Q1 and Q3, a major SDK release with behavior changes, APIs, and features in Q2, and a minor SDK release with APIs and features in Q4

We’ll proceed to have quarterly Android releases. The Q1 and Q3 updates, which is able to land in-between the Q2 and This autumn API releases, will present incremental updates to make sure steady high quality. We’re placing extra power into working with our gadget companions to deliver the Q2 launch to as many gadgets as potential.

There’s no change to the goal API degree necessities and the related dates for apps in Google Play; our plans are for one annual requirement annually, tied to the most important API degree.

The right way to prepare

Along with performing compatibility testing on this subsequent main launch, just remember to’re compiling your apps in opposition to the brand new SDK, and use the compatibility framework to allow targetSdkVersion-gated habits modifications as they develop into accessible for early testing.

App compatibility

The Android 16 production timeline shows the release stages, highlighting 'Beta Releases' and 'Platform Stability' in blue and green, respectively, from December to the final release.

The Android 16 Preview program runs from November 2024 till the ultimate public launch in Q2 of 2025. At key growth milestones, we’ll ship updates to your growth and testing environments. Every replace contains SDK instruments, system pictures, emulators, API reference, and API diffs. We’ll spotlight vital APIs as they’re prepared to check within the preview program in blogs and on the Android 16 developer web site.

We’re concentrating on March of 2025 for our Platform Stability milestone. At this milestone, we’ll ship last SDK/NDK APIs and in addition last inside APIs and app-facing system behaviors. From that point you’ll have a number of months earlier than the ultimate launch to finish your testing. The discharge timeline particulars are right here.

Get began with Android 16

Now that we have entered the beta part, you may enroll any supported Pixel gadget to get this and future Android Beta updates over-the-air. In case you don’t have a Pixel gadget, you may use the 64-bit system pictures with the Android Emulator in Android Studio.

In case you are at present on Android 16 Developer Preview 2 or are already within the Android Beta program, you can be provided an over-the-air replace to Beta 1.

In case you are in Android 25Q1 Beta and want to take the ultimate secure launch of 25Q1 and exit Beta, it’s good to ignore the over-the-air replace to 25Q2 Beta 1 and look ahead to the discharge of 25Q1.

We’re searching for your suggestions so please report points and submit characteristic requests on the suggestions web page. The sooner we get your suggestions, the extra we are able to embrace in our work on the ultimate launch.

For one of the best growth expertise with Android 16, we suggest that you just use the newest preview of Android Studio (Meerkat). When you’re arrange, listed below are a number of the issues it’s best to do:

    • Compile in opposition to the brand new SDK, check in CI environments, and report any points in our tracker on the suggestions web page.
    • Check your present app for compatibility, study whether or not your app is affected by modifications in Android 16, and set up your app onto a tool or emulator working Android 16 and extensively check it.

We’ll replace the preview/beta system pictures and SDK recurrently all through the Android 16 launch cycle. When you’ve put in a beta construct, you’ll mechanically get future updates over-the-air for all later previews and Betas.

For full data, go to the Android 16 developer website.

Related Articles

LEAVE A REPLY

Please enter your comment!
Please enter your name here

Latest Articles