Highly recommended article: Welcome to collect Android dry goods to share

Lifelong Learning with you, this is Android programmer

This article covers some of the basics of Android development. Here’s what you’ll learn:

  1. Innovation and new experience highlights
  2. User privacy Highlights
  3. Safety features
  4. Camera and multimedia highlights
  5. Connectivity window

This paper reference links as follows: developer.android.com/about/versi…

Android 10 is built around three important themes. First, Android 10 is shaping the lead in mobile innovation, with advanced machine learning features and support for emerging devices such as foldable and 5G phones. Going forward, Android 10 focuses on privacy and security, with nearly 50 features that provide users with greater protection, transparency and control. Finally, Android 10 expands users’ digital wellbeing, so individuals and families can find a better technological balance.

Here are the developers in Android 10 and how to use it today

Innovation and new experiences

With Android 10, you can leverage the latest hardware and software innovations to build a great app experience for your users.

Foldables

With powerful multi-window support, Android 10 extends multitasking across application Windows and provides screen continuity to keep your application state when the device collapses or expands. Android 10 adds a number of improvements to onResume and onPause to support multiple resumes and notify your app when focus is active. It also changes how the resizeableActivity manifest property works to help you manage how your application appears on collapsible and large screens. To help you build a foldable device, you can configure the foldable emulator as a virtual device (AVD) in Android Studio. See the Developer’s Guide for more information on how to optimize your application for collapsibility.

5 g

5G networks offer consistently faster speeds and lower latency, and Android 10 adds platform support for 5G and extends existing apis to help you take advantage of these enhancements. You can use the connection API to detect whether the device has a high-bandwidth connection and check that the connection is metered. With these, your apps and games can be tailored for a rich, immersive experience for users up to 5G

Convenient reply Notification

Android 10 uses ML on the device to suggest contextual actions within a notification, such as making an intelligent reply to a message or opening a map of the address in the notification. Your application can take advantage of this functionality immediately without having to do anything. By default, smart replies and actions provided by the system are directly inserted into the notification. You can still provide your own responses and actions if desired. Just use setAllowGeneratedReplies () and setAllowSystemGeneratedContextualActions () on the basis of each notification opt out smart reply.

Dark Theme

Android 10 adds a system-wide dark theme, which is great for low lighting and helps save battery life. Users can activate the new system-wide dark theme by going to Settings or turning on Power Saving Mode. This changes the system UI to dark and enables the dark theme for applications that support it. You can build custom Dark themes for your application, or you can choose to have the system dynamically create Dark versions from existing themes using the new Force Dark feature. You might also want to take advantage of AppCompat’s DayNight feature to provide dark themes for users on earlier versions of Android. See the Developer’s Guide for more information.

Gestures to navigate

Android 10 introduces a fully gestural navigation mode that eliminates the navigation bar area and allows apps to use the full screen to provide a richer, more immersive experience. It retains the familiar Back, Home, and Recents navigation through edge slides rather than visible buttons. To seamlessly integrate with gesture navigation, you should edge to edge, drawing behind the navigation bar to create an immersive experience. To achieve this, the application should use the setSystemUiVisibility () API for a full-screen layout, and then process the WindowInsets as needed to ensure that important parts of the UI are not obscured. Start optimizing your application now, and check out our blog series for more information.

Quick sharing

Sharing shortcuts make sharing faster, allowing users to jump directly to another application to share content. Developers can publish shared goals for specific activities that add content to their applications and display these goals to users in a shared UI. Because they are pre-published, the shared UI loads immediately upon startup. The shared shortcut is similar to the application shortcut and uses the same ShortcutInfo API. The ShareTarget AndroidX library also supports apis. For more information, see the sample application

User privacy

Privacy is a core focus of Android 10, from stronger protections in the platform to new features designed with privacy in mind. Over the previous version, Android 10 includes a number of changes to protect privacy and provide users with more control, improved UI, stricter permissions, and restrictions on what data applications can use. For more information on how to support these in your application, see Privacy Changes.

Give users more control over location data – users can better control their location data with new permission options – they can now allow applications to access locations only when the application is actually in use (running in the foreground). This provides an adequate level of access for most applications, while for users it provides a significant improvement in transparency and control. For more information on location changes, see the Developer’s guide or our blog post.

Protecting location data in network scans – Most apis for scanning networks require rough location permissions. Android 10 adds protection to these apis by requiring precise location permissions.

Prevent device tracing – Applications can no longer access non-resettable device identifiers that can be used for tracing, including device IMEI, serial number, and similar identifiers. By default, the MAC address of the device is also randomized when connected to a Wi-Fi network. Read best practices to help you choose the right identifier for your use case, and see the details here.

Protecting user data in external storage – Android 10 introduces a number of changes that give users more control over files in external storage and their application data. Applications can store their own files in their private sandboxes, but they must use MediaStore to access shared media files and the System file picker to access shared files in the new Downloads collection. Learn more here.

Prevent unnecessary interrupts – Android 10 prevents apps from launching from the background, accidentally jumping to the foreground and taking over focus from other apps. Learn more here.

security

Android 10 introduces a number of features that make users more secure through improvements in encryption, platform enhancement and authentication. Learn more about Android 10 security updates here.

Storage Encryption – All compatible devices booted with Android 10 need to encrypt user data, and for efficiency, Android 10 also includes our new encryption mode, Adiantum.

TLS 1.3 by default – By default, Android 10 also supports TLS 1.3, a major revision of the TLS standard with performance benefits and enhanced security.

Platform enhancements – Android 10 also includes enhancements to several security-critical areas of the platform.

Improved biometrics – Android 10 extends the BiometricPrompt framework to support passive authentication methods such as faces, and adds both implicit and explicit authentication processes. In an explicit process, the user must explicitly acknowledge the transaction in the TEE during authentication. Implicit processes are designed as a lightweight alternative to transactions with passive authentication. Android 10 can also improve the fallback of device credentials when needed. Learn more here.

Camera and Multimedia

The dynamic depth of the photo

Applications can now request dynamic depth images that consist of JPeGs, XMP metadata associated with depth-related elements, and depth and confidence graphs embedded in the same file. These allow you to offer professional blur and bokeh options in your application. Dynamic Depth is an open format for the ecosystem, and we’re working with partners to bring it to devices running Android 10 and beyond.

Audio acquisition and playback

Any application that plays audio can now have its audio stream captured by other applications using the new Audio playback capture API. In addition to enabling subtitles and subtitles, the API also allows you to support popular use cases such as streaming games. We built this new feature with privacy and copyright protection in mind, so the application’s ability to capture other applications’ audio is limited, giving the application full control over whether or not its audio stream can be captured. Read more from this blog post.

Added audio and video decoders

Android 10 adds support for the open source video codec AV1, allowing media providers to deliver high-quality video content to Android devices with less bandwidth. In addition, Android 10 supports audio encoding using Opus – an open royalty-free codec optimized for voice and music streams – as well as HDR10 + for high-dynamic range video on devices that support it. The MediaCodecInfo API introduces an easier way to determine video rendering capabilities on Android devices. For any given codec, you can get a list of supported sizes and frame rates.

Introduction of native MIDI apis

For applications that use C ++ to perform audio processing, Android 10 introduces a native MIDI API that communicates with MIDI devices through the NDK. This API enables low latency processing of MIDI messages by allowing MIDI data to be retrieved within audio callbacks using non-blocking reads. Try out the sample application and source code here.

Custom microphone

Android 10 gives you more control over audio capture through the new MicrophoneDirection API. You can use the API to specify the preferred orientation of the microphone while recording audio. For example, when a user takes a “selfie” video, you can request a front-facing microphone for recording (if present). In addition, the API introduces a standardized way to control scalable microphones, allowing your application to control record field dimensions.

Vulkan is available everywhere

Android 10 extends Vulkan’s influence by enabling us to implement a low-overhead, cross-platform API for high-performance 3D graphics. Vulkan 1.1 is now a requirement for all 64-bit devices running Android 10 and later, and is recommended for all 32-bit devices. We’re already seeing significant momentum for Vulkan support in the ecosystem — 53% of devices running Android N or higher support Vulkan 1.0.3 or higher. With the new requirements of Android 10, we expect the adoption rate to increase further in the coming year.

Connectivity

Optimize peer-to-peer Internet links

We refactored the Wi-Fi stack to improve privacy and performance, as well as common use cases such as managing iot devices and suggesting Internet connections without location permission. The Network connection API makes it easier to manage iot devices over local Wi-Fi, enabling peer-to-peer functions such as configuration, downloading, or printing. The proposed NETWORK API allows the application surface to preferentially select Wi-Fi networks for users to use for Internet connections.

Wifi performance optimization mode

Applications can now request adaptive Wi-Fi by enabling high performance and low latency modes. These are great benefits for low latency that is important to the user experience (such as real-time games, active voice calls, and similar use cases). The platform is used in conjunction with the device firmware to meet the requirements with the lowest power consumption. To use the new performance model, please use the or invoke WifiManager. WifiLock. CreateWifiLock (). In these modes, the platform is used in conjunction with the device firmware to meet requirements with minimal power consumption. WIFI_MODE_FULL_LOW_LATENCYWIFI_MODE_FULL_HIGH_PERF

Android based

ART optimization

ART runtime improvements can help your applications start up faster, consume less memory, and run more smoothly – without any work on your part. The ART profile provided with Google Play allows ART to precompile parts of an application before it runs. At runtime, Android 10 adds Generational Garbage Collection for ART’s concurrent replication (CC) Garbage collector, making Garbage Collection more efficient in terms of time and CPU, reducing Garbage Collection, and helping applications run better on low-end devices.

The neural network API supports V1.2

We added 60 new operations, including ARGMAX, ARGMIN, quantization LSTM, and a series of performance optimizations. This paves the way for accelerating a wider range of models – such as those for object detection and image segmentation. We are working with hardware vendors and popular machine learning frameworks such as TensorFlow to optimize and roll out support for NNAPI 1.2.

Temperature monitoring API

When devices overheat, they can limit the CPU and/or GPU, which can affect applications and games in unexpected ways. Now, in Android 10, apps and games can use the temperature monitoring API to monitor changes on the device and take steps to help restore normal temperatures. For example, streaming apps can reduce resolution/bit rate or network traffic, camera apps can disable flash or enhance image enhancement, or games can reduce frame rate or polygon subdivision. Read more here.

Compatible with public APIS

Android 10 continues to expand the restrictions on non-SDK interfaces, so applications are increasingly moving to using only public apis. If the interface you are currently using is restricted, you can request a new public API for that interface. To help you with the conversion and prevent your application from being corrupted, we only enable restrictions when your application is located to Android 10 (API 29). See the Developer’s Guide for more details on restrictions.

Update faster, fresh out of the Code

Android 10 was built for faster updates through Project Treble to provide a consistent, testable interface between Android and the underlying device code of device manufacturers and chip manufacturers. With Treble, device manufacturers can bring Android 10 to Treble compliant devices more quickly and at a lower cost.

Android 10 is also the first release to support **Project Mainline ** (officially called the Google Play System Update), a new technology we use to protect Android users and keep devices fresh with important code changes – straight from Google Play. With the Google Play System Update, we can update specific internal components on all devices running Android 10 and higher without requiring a full system update from the device manufacturer.

For developers, we hope these updates in Android 10 will help drive consistency across platform implementations across devices and lead to greater consistency over time, which will lower your development and testing costs.

At this point, this has ended, if there is wrong place, welcome your suggestion and correction. Meanwhile, I look forward to your attention. Thank you for reading. Thank you!