what's new in android n at google i/o extended in fukuoka
TRANSCRIPT
What’s new in Android N@ Google I/O Extended in Fukuoka
Proprietary + Confidential
Masahiro Hidaka@mhidaka
Insert Photo
Yuki Anzai@yanzm
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Android N Roadmap
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Android N APIs are now final
What’s new in…
Multi-Window Support
Notification
VRMode (Daydream)
Android
N
Proprietary + Confidential
New Feature
マルチウィンドウ
同時に複数のアプリを起動
・分割モード:Split
・自由配置:FreeStyle
・PiP:Picture in Picture
動画を見ながらSNSなど「ながら」作業が可能に。Android Nならアプリ対応を待たずに利用可能
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
マルチウィンドウ
モバイル端末の大画面化、タブレットなど用途の拡大に対応
複数のアプリケーション間でのドラッグアンドドロップも可能に。
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
マルチウィンドウ
デフォルトONです!
(targetSdkVersion とか minSdkVersion とか関係なく)
off にしたい場合は
AndroidManifest.xml の <application> か <activity> で
android:resizeableActivity="false"
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
マルチウィンドウのポイント
<activity android:name=".MyActivity"> <layout android:defaultHeight="500dp" android:defaultWidth="600dp" android:gravity="top|end" android:minimalHeight="450dp" android:minimalWidth="300dp" /> </activity>
・分割はユーザー操作
・サイズ指定はXMLで
・ライフサイクルは今までどおり
アプリにフォーカスがない非アクティブ状態で表示される点が新しい
・onPauseではなくonStopを活用
https://developer.android.com/preview/features/multi-window.html
↓ AndroidManifest.xml
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
マルチウィンドウが提供する未来
https://youtu.be/ZLYzX0G0YKQ?list=PLOU2XLYxmsILe6_eGvDN3GyiodoV3qNSC&t=240
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
17分で終わった驚きのセッションを見ようhttps://www.youtube.com/watch?v=yEEy_48hoXI
Multi-Window mode
- Google I/O 2016
Notifications
通知バーがより使いやすく
・新しいテンプレート
・通知のグループ化・ダイレクトリプライ
通知領域の表示はAndroid Wearと同じスタイルに。メッセージのグループ化やその場でのリプライなど高機能に。
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
新しいデザイン
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
通知のグループ化
https://material.google.com/patterns/notifications.html#notifications-guidelines
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
通知のグループ化
https://developer.android.com/preview/features/notification-updates.html
NotificationCompat.Builder.setGroup()
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Inline Reply
https://developer.android.com/preview/features/notification-updates.html
RemoteInput
Google VR -Daydream
Android NではVR Modeをサポート
・VRプラットフォームを提供
・Unity/Unreal Engineが対応
・Google Cardboardで手軽に
Daydreamでは違和感のない反応速度(20ms)を保証。Youtube 360など既存のコンテンツを活用。High-low Mixで展開
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
開発環境
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
ハードウェア
https://developers.google.com/vr/concepts/controller-emulator
• 絶賛実機作っているNow
• リモコンのエミュレータがある
https://www.youtube.com/watch?v=l9OfmWnqR0M
Proprietary + Confidential
Project Svelte
ProjectSvelte
Android Nのパフォーマンスチューニング
省メモリ化および消費電力を抑えるための取り組み
・Doze Mode
・Data Saver
タイミングの削減、遅延、同時実行がポイント
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Android battery and memory optimizations
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Doze Mode(うたた寝モード)
発動条件は「バッテリで動作中&スクリーンOFF」の状態
浅いDoze:
ネットワークアクセス停止、バックグラウンド動作の制限 深いDoze:上記に加えて
Wakelock無効化、Alarm遅延、GPSやWi-Fiスキャンを停止
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Text
Lollipop API Level
21
Job SchedulerDozeに対応したバックグラウンド動作の仕組み
スケジュールされたジョブの開始トリガは
・Time window
・ネットワーク切替時
・充電時や充電&未使用時処理をできるだけ遅延させ、まとめて実行する
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Job Scheduler
https://www.youtube.com/watch?v=VC2Hlb22mZM
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Job Scheduler - Sample
JobInfo.Builder builder = new JobInfo.Builder(JobId, mServiceComponent);builder.setMinimumLatency(Long.valueOf(delay) * 1000);builder.setOverrideDeadline(Long.valueOf(deadline) * 1000);
builder.setRequiredNetworkType(JobInfo.NETWORK_TYPE_UNMETERED);
builder.setRequiresDeviceIdle(true);builder.setRequiresCharging(true);
Data Saver
通信環境にあわせてネットワーク通信を制限
重量課金制など通信量を減らしたい時、バックグラウンド通信を抑制できる
https://developer.android.com/preview/features/data-saver.html?hl=ja
Proprietary + Confidential
Instant Apps
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
Instant Apps
アプリの最大の障壁はダウンロードしてもらうこと
Instant Apps
Google 検索からシームレスに買い物をするアプリ
Instant Apps
チャットからリンクを経由して料理を検索するアプリ
Jelly Bean API Level
16
Install不要のアプリ
Google Playで配布するアプリを対象に2017年以降提供
アプリをモジュール化し、特定のモジュールを体験版のように提供
・体験版は4MBまで
・決済なども可能
・Runtime Permission必須
Proprietary + Confidential
And More
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
And more feature
• Java 8 Support
• Quick Setting
• Direct Boot
• Dynamic Shortcut
• JIT Compiler Update
• Security Update
• Vulkan, Open GL ES 3.2 Support
• Android Wear 2.0
Change To OpenJDK
Java 8
Jackコンパイラの改善によりJava8の機能を取り込み
機能 後方互換ラムダ (およびメソッド参照) ○インターフェイスのデフォルトメソッド、静的メソッド
×
反復アノテーション △新しい API (Stream API など) ×
Quick Settings
通知バーの設定パネルが解放
パネルに好きな機能を追加
よく使うアイコン5つはクイックパネルで表示される
Security Update
OTAの更新が楽に!!
Nからは「アプリを最適化しています」は表示されない
ARTの最適化(JACKの改善も)が行われたため待ち時間がなくなる。
http://www.androidauthority.com/android-n-app-optimization-compile-679129/
Vulkan Support
低レイヤグラフィックスAPIに対応
OpenGLはリッチで使いやすいグラフィックスAPIとして広く普及
一方でオーバーヘッドが大きく、ハードウェア性能を引き出せていなかった。Vulkanに対応したことで性能を最大化
http://www.androidauthority.com/android-n-app-optimization-compile-679129/
Android Wear 2.0
より洗練されたUIで登場
ウォッチフェイスの強化(盤面に情報を追加できるComplications API)、通知の改善、スタンドアロン(3G/4G対応)、Firebaseからのプッシュ対応などFitをはじめ様々なユースケースに対応
http://www.androidauthority.com/android-n-app-optimization-compile-679129/
Source: Lorem ipsum dolor sit amet, consectetur adipiscing elit. Duis non erat sem
画像出典&参考文献
• Google I/O 2016 Keynote - https://www.youtube.com/watch?v=862r3XS2YB0
• What’s new in Android - https://www.youtube.com/watch?v=B08iLAtS3AQ
• Android Wear 2.0 Building Apps with Material Design - https://www.youtube.com/watch?v=LtD7eJp2ILo
• Android Developers - https://developer.android.com/index.html
• Google VR - https://vr.google.com/daydream/
• MultiWindow - https://developer.android.com/preview/features/multi-window.html
Proprietary + Confidential
Masahiro Hidaka Yuki Anzai@yanzm@mhidaka
End