New Feature of Android ‘O’ in short

- Background Execution Limits
When app is in background, Most manifest-declared implicit Broadcast receivers will not be called but explicit broadcast will be delivered as usual. Some implicit broadcasts are exempted and allowed like
BOOT_COMPLETED
LOCALE_CHANGED
USB_DEVICE_ATTACHED
2. Background Service
- Run for few seconds after the app has been backgrounded
- Cannot be started with startService() or PendingIntent when the app is not in foreground
3. Foreground Service
- No Change
- New Api added to start foreground Service.
4. Changes even without targeting Android O
- Wake locks release automatically when none of your app component is active
- Background Location update are limited (Few times per hour)
- Foreground location update are unchanged
- Android Id is unique to each app and will persist during uninstall and reinstall. Earlier it was same for all apps.
5. Accessing account information is not only based on permission but an accountChooserActivity also. User can decide which account to expose.
6. Notification Channel
App can implement multiple channels(categories) for notifications and show notification based on it. User can change the setting(block, vibration, lights) of specific channel instead of blocking all the notifications.
7. Picture-in-Picture is available for all devices and not only for Android TV
8. Font in XML
Android O lets you bundle fonts as resources by adding the font file in the res/font/ folder. You can access the font resources with the help of a new resource type, font. For example, to access a font resource, use @font/myfont, or R.font.myfont.
