3. What’s new in Android M?
Top 10 things for developers
4. M - preview timeline
● Schedule subject to change
● Updates delivered over-the-air (OTA)
● Final M release targeting Q3 2015
5. App permissions
● Changes to runtime permission
● Reduced install and update friction.
● Behavior remains same for prev versions of SDK
○ grant upfront
○ but can deny later .
● Best practice : for absolutely necessary permission ask user
for it during setup .
6. App permissions
targetSdkVersion < M targetSdkVersion = M+
Pre-M device
Install time permission dialog
All permissions granted
M device
Install time permission dialog
All permissions granted
User can revoke permissions
No dialog during install
No permissions granted initially
App can request permissions
User can revoke permissions
7. Fingerprint Api
● new fingerprint api
● hardware support
● updated lockscreen
● multi finger support
● Ui is completely controlled by the app
● Can fall back to keygaurd manager
● Authenticate user without sharing any credential
8. ● Better battery back up when idle
● Standby can improve upto 2x
● Uses sensors to detect if the phone is idle
● Postpones non important tasks that wake up the device
● Resumes when the device is moves
Doze mode
9. ● Apps that are not used for long periods
● Lose access to network and background tasks
● Avoid continuous battery drain for unused stuff
● Resumes when the device plugs in or you use the app .
App standby
10. Assistant support
● Provide system additional info about the current screen
○ Context
○ Metadata
● can be at application or activity level .
● eg) google now on tap
11. Data binding
● view to object mapping
● can apply transformation
● better performance
dependencies {
classpath "com.android.tools.build:gradle:1.3.0-beta1"
classpath "com.android.databinding:dataBinder:1.0-rc0"
}
<variable name="user" type="com.example.User"/>
<TextView android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@{user.firstName}"/>
13. Applinks
● directly open links in app without intent chooser
● used when you own the domain and app
● statements.json file in server under .well-known folder
○ apk package name
○ certificate hash
● intent filter has android auto-verify = true
● override is possible