Like the famous Netflix show – ‘My next guest needs no introduction’ every year around this time the next in android is a known surprise – ‘Next version of the android OS’.
So this year its about ‘Android P’.
Looking at the timeline from google on the rollout of this version, we can clearly understand that google is targeting this version for its Pixel 3 which might be introduced this fall. Google is also trying to position itself as phone manufacturer and not just software provider.
Let’s look at the features listed as part of Android P Dev Preview 1 release –
1) Indoor positioning with WiFi RTT – Indoor positioning is more in focus than never before because of the variety of use cases that can be solved. The latest Android P API seems to be more promising for the following reasons –
A) Phone need not connect to Access Points
B) Accuracy within 1 or 2 meters
My view – Most awaited feature that is needed in today’s demanding use cases.
2) Display cutout option – This seems to be derived from iPhone X feature with edge to edge display just leaving the hardware room for speaker and camera. Even-though the API’s are out I doubt that some can test without any hardware being rolled out by any OEM’s.
My view – Just to match with competition. I am not sure how much of this will impact any app development. Should wait and watch
3) Notifications enhancements – Adding some features to the notification features that was rolled out with Oreo. One will admit that notification channel with Android 8 was a significant change in the way notifications would work. Notification categories gets generated under notification of mobile->settings->apps->notifications. It is a cleaner way of implementing notification taking advantage of the cloud and native platform. There need not be a settings screen to manage notification categories within app.
My view – Showing images in the notification and saving the replies as drafts are a nice to have additions but necessarily not the most lucrative enhancement
4) Camera updates – Multi camera stream which gets content from both front or back cameras. Access to external USB/UVC cameras.
My view – AR and VR might get more accuracy and precision with the enhanced feature
5) Image decoders – ImagerDecoder and AnimatedImageDrawable lets the user to take more control on the way images are rendered using render thread and worker thread.
My view – Improves the UX more than UI by showing the first frame of the image even before the animation starts.
6) HDR enhancements – Last year google slowly started rolling out HDR videos in selected phones through youtube app. This means that very bright objects and very dark objects on the same screen can be shown very bright and very dark if the display supports it.
My view – The growing competition on the quality and content of the videos from Netflix, iTunes, Google play movies, etc demands this enhancements.
7) Job Scheduler – Introduced with API level 21 scheduler has made handling the background tasks in a much simpler way with improved performance. With Android P, the new setEstimatedNetworkBytes(), setIsPrefetch(), and setRequiredNetwork() API’s let’s the developer to handle the app in a more smoother way by understanding congested or un-metered networks.
My view – Most needed feature which will help developers publish the same app for different regions with both faster networks and slower networks but by choosing the type of networks calls within the app.
8) Neural Networks – Android P have introduced 9 more operations in addition to the one introduced with Android 8.1 (API level 27)
My view – Google was clear about ‘AI first approach’ during the last years IO. It is true that future of mobility is about smartness. These API’s enhance the intelligence capability of the smart phones.
9) Screen rotation – New pin added to the system bar to handle unintentional rotations.
My view – This is more convenient to handle rotations from the system bar itself.
10) Fingerprint and user confirmation dialog – Standard fingerprint throughout all the apps increases more standard towards usage of the fingerprint. Confirmation dialog lets the user to approve a short statement as added security which later can be verified at the server front apart from processing the transaction.
My view – Good feature that increases credibility of the app by the user. Confirmation dialog also completely eliminates the need of captcha going forward.
11) Autofill framework – 3 main features to the auto-fill framework in addition to the features that was introduced in android API level 26 –
A) History of dataset that the user selected or ignored
B) Sanitize the data before saving it
C) Dataset filtering which helps in filtering the data using regular expressions before populating the input to a field
My view – Useful feature that helps developers to store the needed data-set and present on appropriate fields.
12) Cryptographic changes – No more of Bouncy castle and ASEC’s from android developer P preview. Android provides implementation of AES, DESEDE, OAEP and EC through Conscrypt parameters. Conscrypt is a combination of both JCE and JSSE to provide TLS support for java applications
My view – Increased security, Increased performance and increased ease of configuration in using conscrypt.
13) App compatibility changes – Non-SDK interface usage using java reflection or JNI is restricted with warning and toast messages and later in full roll-out will be completely deprecated.
My view – Many developers have a standard habit of using reflection on a Non-SDK interface in their coding. This way writing code may lead to unintended app behaviors when these interfaces are changed without any notice. This restriction is useful to keep the code much cleaner and enforces good coding practice.
14) Reorganization of testing libraries – Testing framework is reorganized under 3 libraries – base, runner and mock.
My view – Clear organization of the classes under these libraries and making it as an optional dependency helps in testing test cases against multiple versions of JUnit.
15) Android for enterprise – Samsung is pushing Knox as one of the USP for both work and personal data co-existence in the same device. This is a demanding and growing feature which can increase BYOD among employees for their work. Some features in android includes –
A) Concept of Ephemeral user
B) Clear package data and remove accounts
C) Postpone OTA updates
My view – Growing need of using personal phones for work demands exposure of these API’s where OEM’s and app developers can take control of data sharing across these 2 paradigm.
Overall take on google releasing android previews even before I/O –
1) Android is an established platform. For the platform to grow and survive it has to go beyond the updates and enhancements. So android as a platform might not be the full agenda of google.
2) AI first approach – More focus towards cloud computational processing.
3) AR, VR, Voice are the new UX that might get more focus by google.
Add your comments and your opinions.
Happy simplified coding!