Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Android M 追加&変更事項 抜粋
Search
Sponsored
·
SiteGround - Reliable hosting with speed, security, and support you can count on.
→
Makoto Anjo
June 25, 2015
Programming
1.4k
2
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Android M 追加&変更事項 抜粋
DevFest 2015 (Google I/O 2015 報告会)の時の発表資料です。
Makoto Anjo
June 25, 2015
More Decks by Makoto Anjo
See All by Makoto Anjo
Pepper hackathonをホストしてきてわかったこと
tennetiss
1
270
Other Decks in Programming
See All in Programming
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
3.5k
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
460
ドリフトを絶対に許さない(?)CDK運用 / CDK Ops with Zero Tolerance for Drifts (?)
akihisaikeda
1
180
改善しないと、タスクが回らない。 “てんこ盛りポジション” を引き継いだ情シスの、入社3ヶ月の業務改善録
krm963
0
260
Go言語とトイモデルで学ぶTransformerの気持ち / fukuokago23-transformer
monochromegane
0
160
数百円から始めるRuby電子工作
tarosay
0
140
jsmini JavaScript Engine を作ってみた話
yosuke_furukawa
PRO
0
300
テーブルをDELETEした
yuzneri
0
140
言葉の格闘技のススメ~紙とペンと言葉から始める、キャリアの描き方~
progresscicada
2
140
Augmenting AI with the Power of Jakarta EE
ivargrimstad
0
540
yield再入門 #phpcon
o0h
PRO
0
980
源内ハンズオン概要編
hideg
0
130
Featured
See All Featured
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
194
17k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
460
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
480
Building a A Zero-Code AI SEO Workflow
portentint
PRO
0
660
Leading Effective Engineering Teams in the AI Era
addyosmani
9
2.2k
Speed Design
sergeychernyshev
33
2k
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
360
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Amusing Abliteration
ianozsvald
1
240
Rails Girls Zürich Keynote
gr2m
96
14k
Bioeconomy Workshop: Dr. Julius Ecuru, Opportunities for a Bioeconomy in West Africa
akademiya2063
PRO
1
210
Discover your Explorer Soul
emna__ayadi
2
1.2k
Transcript
DevFest2015 Speaker Android M update抜粋 安生 真
Agenda Android M ・指紋認証 ・Backup ・バッテリー効率向上 ・Doze ・App stanby ・通知アイコン
・テキスト範囲選択 ・App Links ・Bluetooth スタイラス ・RenderScript ・カメラ(トーチモード) ・MIDI ・ハイレゾオーディオ ・追加ストレージ ・ART
2つのAPI FingerPrint 指紋認証 ・FingerprintManager.authenticate() ・指紋で認可をとる ・アプリ側でUIコントロールは可能 ・ KeyguardManager.createConfirmDeviceCredentialIntent() ・ロックスクリーンを表示 ・startActivityForResult()
で 確認 ・Sample code github.com/googlesamples/android-FingerprintDialog github.com/googlesamples/android-ConfirmCredential
Confirm Credentialとは FingerPrint 指紋認証 ・KeyguardManager.createConfirmDeviceCredentialIntent() ・ユーザーが何分前に端末をアンロックしたかを取得でき る →n分前未満 なら 処理を続行
→n分以上ならアンロック画面をその場で表示、続行す るためにはユーザーにアンロックしてもらう ・正しいユーザーが使っているかどうかを確認する。決済 処理や、資産管理系アプリなどの前に使うことを想定
アプリの全データがデフォルトでバックアップ される Android Backup ・targetSdk M ・何も設定しなければ全てバックアップされる ・細かく設定も可能 ・xml/resource 内にscheme
ファイルを作って設定 ・include / exculde
Android Backup Android M アプリの全データがデフォルトでバックアップされる ・targetSdk M ・何も設定しなければ全てバックアップされる ・細かく設定も可能 ・xml/resource
内にscheme ファイルを作って設定 ・include / exculde
Doze バッテリー効率向上 スクリーン非表示時の効率 ・しばらく触っていない端末は Doze モードへ ・ネットワーク不可 (優先度設定の高いGCMが来た時はスルー) ・Wake locks無視
・AlarmManagerのスケジュール無効 (setAndAllowWhileIdle(),setAlarmClock()はスルー) ・WiFiスキャン無効 ・sync adapters,JobSchedularによる同期、ジョブ も停止
Doze バッテリー効率向上 ・しばらく触っていない端末は Doze モードへ ただし、 ・充電ケーブルが繋がってる状態 ・端末を動かしている状態(加速度などで検知) ・使っている状態(入力がある状態等) →以上の場合、ノーマルモードへ復帰、
ペンディングだったジョブや同期が実行される つまり、ペンディングから一気に実行されても正しく動作 するよう、事前に検証しておくこと
App standby バッテリー効率向上 ・しばらく触っていないアプリは idle モードへ ただし、 ・ユーザーが自分でそのアプリを起動 ・フォアグラウンドで動いてるプロセスがある ・ロックスクリーンや通知トレイから通知を選択した
・ユーザーが設定からそのアプリの設定を変更 (設定→アプリ→<任意のアプリ>→電池:「最適化を無 視」) →以上の場合、idleではなくなる(復帰する)
App standby バッテリー効率向上 ・idle 状態のアプリは 充電ケーブルが繋がっていない時 ・ネットワーク不可 ・定期ジョブ、同期も停止 充電ケーブルが繋がってる時 ・ネットワークアクセス可
・ジョブや同期も可 ただし、端末が長い間使われていない場合、idleアプリは 1日に一回しかネットワークが使えないという制限がつく
Doze&App standby バッテリー効率向上 Doze ・主にスクリーン非表示、バッテリー駆動時のバックグラ ウンド動作を制限し、知らない間に異常にバッテリーを消 費するようなことをなるべく回避する App stanby ・使用頻度の減ったアプリは特に意図がないかぎりその定
期動作を制限することでバッテリー消費を防ぐ
アイコン作成:今まではリソースIDを渡す必要があ った 通知アイコン リソースIDはビルド前にしか生成できないので、アイコ ンは全パターン事前にresourcesに入れておく必要があっ た
アイコン作成:直接Bitmapを渡せるようになりまし た 通知アイコン
テキスト範囲選択 ・範囲選択がより簡単に ・選択した近くにアクション が表示される ・TextViewだとデフォルト
テキスト範囲選択 また、範囲選択されたテキストをアプリで受け取 って処理する事も可能に
テキスト整形 より凝ったテキスト整 形も可能に
任意のWebドメインとアプリの関係性を明確にす る App Links ・自社Webサービスと自社アプリが同一の作者(企 業)であるという事を明示する事で、サードパーテ ィアプリより優先的な遷移を可能にする 詳細ページ(英語) d.android.com/preview/features/app-linking.html
App Links MのファイナルプレビューまでにはTLSが使えるよ うになります 以下のようなjsonをアプリと関連付けたいドメインに設 置する 関連付けたいアプリのパッケージ名を明 記して、またkeytoolで発行した certificateを記載しておく
App Links MのファイナルプレビューまでにはTLSが使えるよ うになります 以下のようなjsonをアプリと関連付けたいドメインに設 置する アプリ側は、Manifestに以下、 intent-filterやjsonを設置したドメイン名を記載しておく
App Links app linksの確立 ・アプリインストール時に package managerがstatement.jsonをwebから取得 ・そこに記載されているアプリパッケージ名と fingerprintをアプリ側のパッケージ名やcertとマッチして 確認する
→マッチすれば同一の製作者とみなし、自社アプリに 優先権が確立する
App Links app linksの確立 ・app linksを設定しない、もしくはマッチしなかった場 合は、今までどおりそのドメインで動作するアプリが複 数ある場合はアプリを選択するダイアログが表示される。 (ユーザーが選択する)
Styluses ICE_CREAM_SANDWICHからサポート MotionEvent APIs: TOOL_TYPE_STYLUS BUTTON_SECONDARY BUTTON_TERTIARY getPressure(), getSize(), getOrientation(),
など ただし、有線接続もしくはその端末専用デジタイザのみ でした
Styluses Bluetooth stylus support Bluetooth stylus 実装の流れ Bluetooth HID(BLE)経由で筆圧とボタン入力 Android
Mがこの入力をタッチイベントと融合 TOOL_TYPE_STYLUSとして touch streamを取得 できる Bluetooth stylus は全てのM端末アプリで対応可能
RenderScript (まだ生きてた)RenderScript Compute
Camera New Torch mode カメラのストロボ(フラッシュ)をカメラ から独立して制御可能に ※ただし、カメラを制御する方が優先される
MIDI MIDI API 以前から利用可能ではあったが… USBから直接制御するため実装は大変でし た android.media.midi MidiDeviceManager MidiInputPort MidiOutputPort
MidiDeviceService
ハイレゾ オーディオ オーディオサンプル: 単精度浮動小数点 FLOAT32(以前は16bit) サンプルレート: 96kHz(以前は44.1 or 48) USB
デジタルオーディオ: マルチチャンネル
ART 全体的にパフォーマンスは向上 さらに Runtime stats(ランタイムで統計とれるようになった) Debug.getRuntimeStat(String) “art.gc.gc-count” “art.gc.gc-time” … gcの発生回数、所要時間など
他 ・DirectShare ・Voice Interactions ・Camera Reprocessing API などなど
まとめ Mはブラッシュアップが中心 Doze、App stanbyはバックグラウンド動作に影響があ るので、事前に入念にテストしておく必要アリ App Links は App Indexing(Deep
Link)を含めてwebか らアプリへの導線として今後とても重要な機能になり 得るので、自分にとってベストな使い方を!
-------- ご清聴ありがとうございました! Google Developer Expert 安生 真 twitter @tennetiss Google+
Makoto Anjo
Next Product