Release of the mobile platform Android 10

Google company опубликовала release of an open mobile platform Android 10. The sources associated with the new release are located at Git repository project (branch android-10.0.0_r1). Firmware updates already prepared by for 8 Pixel devices, including the first Pixel. Also formed universal GSI (Generic System Images) assemblies suitable for different devices based on ARM64 and x86_64 architectures. In the coming months, updates from Android 10 will be rolled out to current smartphones from companies such as Sony Mobile, Xiaomi, Huawei, Nokia, Vivo, OPPO, OnePlus, ASUS, LG, and Essential.

All innovations:

  • Project presented Mainline, which allows you to update individual system components without updating the entire platform. Such updates are downloaded via Google Play separately from OTA firmware updates from the manufacturer. It is assumed that the direct delivery of updates to platform components not tied to hardware will significantly reduce the time it takes to receive updates, increase the speed of fixing vulnerabilities, and reduce dependence on device manufacturers to maintain platform security. Modules with updates will initially be delivered as open source, will be immediately available in the AOSP (Android Open Source Project) repositories, and may include improvements and fixes prepared by third parties.

    Among the components that will be updated separately: multimedia codecs, multimedia framework, DNS resolver, Conscrypt Java Security Provider, Documents UI, Permission Controller, ExtServices, Time Zone Data, ANGLE (a layer for translating OpenGL ES calls to OpenGL, Direct3D 9/11, Desktop GL and Vulkan), Module Metadata, network components, Captive Portal Login and network access settings. System component updates are delivered in a new package format APEX, which differs from APK in the possibility of being applied at an early stage of system boot. In case of possible failures, a change rollback mode is provided;

  • Implemented at the system level dark theme design which can be used to reduce eye fatigue in low light conditions.
    The dark theme is enabled in the Settings > Display settings, through the quick settings drop-down block, or when the power saving mode is turned on. The dark theme is applied to both the system and applications, including by offering a mode for automatically converting existing themes to dark tones;

    Release of the mobile platform Android 10

  • The automatic quick replies system previously available for notifications can now be used to generate recommendations for the most likely actions in any application. For example, when displaying a meeting invitation message, the system will offer quick replies to accept or decline the invitation, and show a button to view the intended meeting point on the map. Options are selected using a machine learning system based on a study of the characteristics of the user's work;

    Release of the mobile platform Android 10

  • More tools have been provided to control how applications access user location information. If earlier, in case of granting appropriate permissions, the application could access the location at any time, even when it is inactive (running in the background), then in the new release, the user can allow receiving information about his location only if the session with the application is active;

    Release of the mobile platform Android 10

  • A Family Link parental control mode has been added that allows you to limit the time children use the device, provide bonus minutes for success and achievements, view lists of launched applications and evaluate how much time a child spends in them, review installed applications and set night time to block access at night ;

    Release of the mobile platform Android 10

  • Added "Focus Mode" (Focus Mode), which allows for the time when you need to focus on solving a problem, selectively mute distracting applications, for example, suspend receiving mail and news, but leave maps and messenger. In current builds, the feature is not yet active;
  • Added a gesture navigation mode that allows you to use only on-screen gestures for control without displaying the navigation bar and allocating the entire screen space for content. For example, buttons like Back and Home are replaced by a shift from the edge and a sliding touch from the bottom up, to call up the list of running applications, a long touch on the screen is used. The mode is enabled in the settings "Settings> System> Gestures";
  • Added "Live Caption" function, which allows you to automatically create subtitles on the fly when watching any video or listening to audio recordings, regardless of the application used. Speech recognition is performed locally without recourse to external services. In current builds, the feature is not yet active;
  • The concept of "bubbles" has been added to organize simultaneous work with several applications. Bubbles allow you to perform actions in other applications without leaving the current program. In addition, bubbles provide the ability to pin access to the functionality of a particular application in the process of performing various actions on the device. For example, with the help of bubbles, you can continue the conversation in the messenger in the form of buttons displayed on top of the content, quickly send messages, keep the task list visible, take notes, access translation services and receive visual reminders, while working in other applications. Bubbles are implemented on top of the notification system and allow for a similar API.

    Release of the mobile platform Android 10

  • Added support for devices with foldable screens such as Huawei Mate X. Each half of the folding screen can now host a separate application. To support new screen types, we added support for separate handling of multiple wake-up and focus-change events (when one half of the screen is active and the other remains closed, or when both halves are active), as well as extended the API for handling screen resizing (in order for the application to correctly perceive the increase screen size when opening the second half). Simulation of devices with folding screens has been added to the Android emulator;
    Release of the mobile platform Android 10

  • Added support for shortcuts for sending data and messages (Sharing Shortcuts), allowing you to quickly go to the application that sends;

    Release of the mobile platform Android 10

  • Added support for pop-up settings panels that allow you to access key system settings in the context of a user application. An API is provided to display customization panels from within the application SettingsPanel. For example, a media player may show a panel with system sound settings, and a browser settings for network connection and switching to flight mode;

    Release of the mobile platform Android 10

    Security:

    • Added additional restrictions on app access to shared files such as photo, video, and music collections;
    • To access downloaded files located in the Downloads directory, the application must now use the system file selection dialog, which gives the user full control over which specific files the application can access;
    • Blocked the ability for applications to transition from running in the background to being active, coming to the foreground and gaining input focus, thus interrupting the user's work with another application. When it is necessary to attract the user's attention with a background application, for example, on an incoming call, you should now use a high-priority notification with full screen permissions;
    • Limited access to immutable device identifiers such as IMEI and serial number. To obtain such identifiers, the application must have READ_PRIVILEGED_PHONE_STATE privileges.
      Applications are also limited access to the "/proc/net" pseudo-FS with network activity statistics, and access to data in the clipboard is now provided only when the application is active (has received input focus);

    • When giving the list of contacts to the application, the ranking of the output by the frequency of accessing contacts was stopped to hide information about the user's preferences from applications;
    • By default, MAC address randomization is enabled: when connecting to different wireless networks, different MAC addresses are now generated, which does not allow tracking the user's movement between WiFi networks;
    • Access to the Bluetooth, Cellular, and Wi-Fi Scan APIs now requires Get Fine Location permissions (previously required Get Rough Location permissions). At the same time, if the connection is established in P2P mode or the network for connection is determined by the system, then separate permissions to access information about the location are not required;
    • Implemented support for wireless security technology WPA3, which provides protection against password guessing attacks (will not allow guessing a password in offline mode) and the SAE authentication protocol is enabled. To generate encryption keys in open networks, support has been added for the connection negotiation process implemented by the OWE extension (Opportunistic Wireless Encryption);
    • Added by and enabled by default for all connections support TLS 1.3. In Google tests, the use of TLS 1.3 allows you to speed up the establishment of secure connections by up to 40% compared to TLS 1.2.
    • New storage introduced Scoped StorageA that provides the isolation level for application files. Using this API, an application can create a separate isolated directory for its files on external drives (for example, on an SD card), which other applications cannot access. The current application will be limited to this directory for storing photos, videos, and music, and will not interfere with shared media collections. Sharing shared collections of files will require separate permissions;
    • In the API BiometricPrompt, which unifies the output of the biometric authentication dialog, adds support for passive authentication methods, such as face authentication. Separate methods for handling explicit and implicit authentication are proposed. With explicit authentication, the user must confirm the operation, and with implicit authentication, authentication can be performed invisibly in a passive mode;
  • Wireless stack.
    • Added support for mobile communication standard 5G, for which the existing connection management APIs are adapted. Including through the API, applications can determine the presence of a high-speed connection and the activity of billing for traffic;
    • Added two modes of Wi-Fi operation - a mode for achieving maximum throughput and a mode for minimum delays (for example, useful for games and voice communications);
    • The wireless stack has been refactored to increase privacy and performance, as well as to improve the management of IoT devices over local Wi-Fi (for example, for printing over Wi-Fi) and the choice of connection points. The function of scanning available access points is now provided by the platform with the output of found networks in the Wi-Fi Picker interface and automatic connection configuration if it is selected by the user. Applications through the WifiNetworkSuggestions API are given the opportunity to influence the algorithm for choosing preferred wireless networks by passing the application a ranked list of networks and passwords to connect to them. In addition, when choosing a network to connect to, the bandwidth metrics from the last connection are now taken into account (the fastest network is selected);
  • Multimedia and graphics
    • Added graphics API support Vulkan 1.1. Compared to OpenGL ES, using Vulkan can significantly reduce CPU load (up to 10 times in Google tests) and improve rendering performance. The ultimate goal is for Vulkan to be universally supported on all Android devices, for which Google is working with hardware manufacturers to make Vulkan 1.1 a requirement for all 64-bit Android 10 devices;
    • Added experimental support for executing a layer ANGLE (Almost Native Graphics Layer Engine) on top of the Vulkan graphics API. ANGLE allows rendering to be abstracted away from system-specific APIs by translating OpenGL ES calls to OpenGL, Direct3D 9/11, Desktop GL, and Vulkan). For developers of games and graphic applications ANGLE Allows use the regular OpenGL ES driver on all devices using Vulkan;
    • Camera and imaging applications can now request that the camera pass additional XMP metadata in the JPEG file that includes information needed to process depth in photographs (such as the depth map stored by dual cameras). The specified parameters can be used to implement various modes of background blur and effect. hips, as well as to create 3D photographs or in augmented reality systems;
    • Added video codec support AV1, which is positioned as a royalty-free, open-source video encoding format that is well ahead of H.264 and VP9 in terms of compression;
    • Added support for free audio codec opus, which provides high-quality coding and minimal delay in both high-bitrate streaming audio compression and voice compression in bandwidth-limited VoIP telephony applications;
    • Added standard support HDR10 +, used for encoding video with extended dynamic range;
    • A simplified method has been added to the MediaCodecInfo API to determine the video output capabilities available on the device (the list of codecs and resolutions and FPS supported on the device is displayed);
    • Added API Native MIDI, which allows C++ applications to communicate directly with MIDI devices via the NDK in a non-blocking manner, allowing them to process MIDI messages with very low latency;
    • Added the MicrophoneDirection API to control audio capture from directional microphones. Using this API, you can specify the direction for the orientation of the microphone when recording sound). For example, when creating a selfie video, you can specify setMicrophoneDirection( MIC_DIRECTION_FRONT) to record from the microphone at the front of the device. Through the specified API, it is also possible to control microphones with a changing coverage area (zoomable), determining the size of the area for recording.
    • Added a new audio capture API allowing a single application to
      provide the ability to process the audio stream by another application. Allowing other applications to access audio output requires special permission;
  • System and extended APIs.
    • Significant performance optimizations have been made to runtime ART to reduce memory consumption and speed up application launches. Profile distribution enabled on Google Play
      PGO (Profile Guided Optimization), which includes information about the most frequently executed parts of the code. Precompilation of such parts can significantly reduce the startup time. ART itself has been optimized to start the application process earlier and move it to an isolated container. The application's memory image provides additional data, such as classes, to be stored. Implemented multi-threaded mode for loading application memory images. The efficiency of the garbage collector has been improved, due to the separate processing of newly created objects;

      Release of the mobile platform Android 10

    • API updated to version 1.2 neural networks, which provides applications with the ability to use hardware acceleration for machine learning systems. The API is positioned as the base layer for the operation of machine learning frameworks in Android, such as TensorFlow Lite and Caffe2. A number of ready-made models of neural networks have been proposed for use on mobile devices, including Mobile Nets (recognition of objects in photographs), Inception v3 (computer vision) and Smart
      Reply
      (selection of options for responding to messages). The new release adds 60 new operations, including ARGMAX, ARGMIN, and quantizable LSTM, as well as significant performance optimizations to enable the API to support new machine learning models such as object detection and image segmentation;

    • A new foldable screen device emulator has been added to the SDK and is available in release Android Studio 3.5 in the form of an additional virtual device, presented in versions with screens of 7.3 (4.6) and 8 (6.6) inches. Extended handlers onResume and onPause in the platform for foldable devices, which add support for disabling multiple screens separately, as well as extended notifications when the application gets into focus;

      Release of the mobile platform Android 10

    • A Thermal API has been added that allows applications to monitor CPU and GPU temperatures and independently take measures to reduce the load (for example, reduce FPS in games and reduce the resolution of broadcast video), without waiting for the system to forcibly start cutting application activity.

Source: opennet.ru

Add a comment