Japan
このブログでは、Google から開発者のみなさま向けの情報をいち早くお届けします。
Android O Developer Preview がついに登場!
2017年3月31日金曜日
この記事は Dave Burke、エンジニアリング部門副社長による Android Developers Blog の記事 "
O-MG, the Developer Preview of Android O is here!
" を元に翻訳・加筆したものです。詳しくは元記事をご覧ください。
2008 年に始まってから、Android プロジェクトはアプリのデベロッパー、端末メーカー、そしてユーザーの皆さんという活発なエコシステムからすばらしいフィードバックをいただいています。最近は、早い段階でパートナーに対して広く成果を共有できるように、エンジニアリング プロセスの改善に積極的に取り組んでいます。
先日、次期 OS である Android O の最初の
Developer Preview
が公開されたことをお知らせします。いつものことですが、これはまだ初期段階なので、今後も多くの機能や安定化、パフォーマンス改善が行われる予定です。しかし、Android O は本日からご利用になれます :)
今後数か月間にわたり、アップデート版の Developer Preview がリリースされる予定です。さらに、5 月の
Google I/O
では、Android に関わるあらゆることを詳しく取り上げる予定です。それまでの間に新しい OS でアプリをテストし、試用した新機能のフィードバックをお寄せください。
O の新機能
Android O には、アプリで利用できるたくさんの新機能や API が導入されています。ここでは、最初の Developer Preview で試すことができるいくつかの機能を紹介します。
バックグラウンドの制限事項:
これは Nougat から開発が始まった機能です。Android O では、ユーザーの電池消費量削減と端末のインタラクティブ性能の改善に主眼が置かれています。これを実現するために、アプリがバックグラウンドで行えることが自動的に制限されます。この制限は主に、暗黙的ブロードキャスト、バックグラウンド サービス、位置情報のアップデートの 3 つに適用されます。これによって、ユーザーの端末や電池に最低限の影響しか与えないアプリを作りやすくなります。バックグラウンドの制限事項は、Android における大きな変更点になります。そのため、すべてのデベロッパーがこの点について熟知しておく必要があります。詳細については、
バックグラウンド実行の制限
と
バックグラウンド位置情報の制限
のドキュメントをご覧ください。
通知チャンネル:
Android O には、
通知チャンネル
も導入されています。これは、アプリで通知コンテンツのカテゴリを定義できるようにする新機能です。デベロッパーがチャンネルを使うと、さまざまな種類の通知をユーザーが細かく制御できるようになります。たとえば、ユーザーはアプリごとではなく、チャンネルごとに通知をブロックしたり、通知の動作を変更したりできます。
通知チャンネルによってカテゴリごとにアプリの通知を管理
Android O には、新たな通知の視覚効果やグループ化も追加されているため、メッセージの着信時や通知シェードの確認時に何が起きているかがわかりやすくなっています。
Autofill API:
Android ユーザーは、さまざまなパスワード マネージャを使ってログイン情報などの繰り返し入力する必要がある情報を自動入力しています。この機能によって、簡単に新しいアプリの設定や取引ができます。今回、自動入力がプラットフォームでサポートされ、エコシステム全体でこのような作業がさらに簡単になります。ユーザーは、キーボード アプリを選ぶのと同じようにして、自動入力アプリを選択できます。自動入力アプリは、住所、ユーザー名、パスワードなどのユーザーデータを安全に保管します。また、自動入力に対応させたいアプリで Autofill サービスを実装するための
新しい API が追加
されています。
ハンドセット用 PIP と新しいウィンドウ機能:
スマートフォンとタブレットで
ピクチャ イン ピクチャ(PIP)
表示が可能になるため、ユーザーは動画を見ながらチャットに応答したり、車を手配したりすることができます。PiP モードがサポートされているシステムのアプリは、再開または一時停止の状態から PiP モードを開始できます。PiP モードでは、アスペクト比や一連のカスタム操作(再生 / 一時停止など)が可能です。他に、アプリでシステムのアラート ウィンドウの代わりに使える
新しいアプリ オーバーレイ ウィンドウ
や、リモート ディスプレイでアクティビティを起動できる
マルチディスプレイ サポート
などのウィンドウ機能も追加されています。
XML フォント リソース:
フォント
は、リソースタイプとして Android O で完全にサポートされるようになります。XML レイアウトでフォントを使えるようになるほか、フォント ファイルとスタイルやウェイトを宣言することによって XML でフォント ファミリーを定義することもできるようになります。
アダプティブ アイコン:
端末の UI との一貫性を向上するため、
アダプティブ アイコン
を作成できるようになります。これは、端末が選ぶマスクを使って、システムごとに異なる形のアイコンを表示する機能です。さらに、アイコンとのインタラクションがアニメーションで表示されます。アダプティブ アイコンは、ランチャー、ショートカット、設定、共有ダイアログ、オーバービュー画面で利用できます。
端末モデルごとに異なる図形を表示するアダプティブ アイコン
広色域アプリ:
Android のイメージング アプリのデベロッパーは、広色域ディスプレイを搭載した新しい端末の機能を活用できるようになります。広色域イメージを表示するアプリは、マニフェストに(アクティビティごとに)フラグを設定し、埋め込み広色域プロファイル(AdobeRGB、Pro Photo RGB、DCI-P3 など)を使ってビットマップを読み込む必要があります。
ネットワーク接続:
オーディオの再現性を極限まで高めるため、Android O では
LDAC コーデック
などの高品質 Bluetooth オーディオ コーデックがサポートされています。さらに、
Wi-Fi Aware
などの新しい Wi-Fi 機能も追加されています。これは、かつて Neighbor Awareness Networking(NAN)と呼ばれていた機能です。この機能によって、インターネット アクセス ポイントがなくても、適切なハードウェアを搭載した端末のアプリであれば、Wi-Fi 経由で近くの端末を検出して通信できるようになります。Google は Wi-Fi Aware テクノロジーを可能な限り多くの端末に導入するために、ハードウェア パートナーと連携して作業を進めています。
ConnectionService API
は拡張されて Telecom フレームワークになっており、サードパーティの通話アプリのシステム UI との統合や、別のオーディオ アプリとのシームレスな連携が可能になっています。たとえば通話アプリは、車のヘッドユニットなど、さまざまな種類の UI で通話の表示や制御が可能です。
キーボード ナビゲーション:
Chrome OS などの大きなフォーム ファクタでの Google Play アプリの登場と合わせて、これらのアプリで使われているキーボード ナビゲーションが復活します。Android O では、デベロッパーとエンドユーザーの双方に役立ち、信頼性が高く予測しやすい「矢印」や「タブ」のナビゲーション モデルの構築を目指しています。
プロ品質のオーディオを実現する AAudio API:
AAudio は、高パフォーマンス、低レイテンシ オーディオを必要とするアプリに特化して設計された新たなネイティブ API です。AAudio を使用するアプリは、ストリームを使ってデータを読み書きします。今回の Developer Preview では、フィードバックをいただくために、この新しい API の初期バージョンをリリースします。
WebView の機能強化:
Android Nougat では、オプションで WebView のマルチプロセス モードが導入されました。これは、ウェブ コンテンツの制御を独立したプロセスで行うものでした。Android O では、アプリのセキュリティと安定性を向上させるために、デフォルトでマルチプロセス モードを有効にし、
アプリでエラーとクラッシュを制御するための API
を追加します。また、その他のセキュリティ対策として、アプリの WebView オブジェクトで
Google セーフ ブラウジングによる URL の確認
が行えるようになっています。
Java 8 言語 API とランタイム最適化:
新しい java.time API などのいくつかの新しい Java 言語 API が Android でサポートされます。さらに、Android ランタイムが高速化されており、アプリのベンチマークによっては、最大 2 倍早くなっています。
パートナーによるプラットフォームへの貢献:
ハードウェア メーカーや半導体関連のパートナーも、Android プラットフォームの O リリースに関連する修正や機能追加を行っています。たとえば、Sony は
LDAC コーデック
などの 30 以上の機能拡張や、Android O の 250 のバグの修正に貢献しています。
対応を開始するためのシンプルな数ステップ
まず、ユーザーがシームレスに Android O に移行できるように
アプリの互換性対応
を行います。
端末のシステム イメージ
かエミュレータのシステム イメージをダウンロードして現在のアプリをインストールし、テストします。アプリは正しく表示、実行され、
動作の変更点
に問題なく対処できている必要があります。必要なアップデートを終えた後は、アプリのプラットフォームのターゲットを変更せず、すぐに Google Play で公開することをおすすめします。
Android O を使用してビルドする
準備ができたら、アプリで活用できる機能について学習するため、
O について詳しく理解
します。
プレビュー タイムライン
、
動作の変更点
、
新しい API
、
サポートされるリソース
などの詳細を
O Developer Preview サイト
でご確認ください。
バックグラウンドの制限事項
や
その他の変更点
にどのようにアプリを対応させるか、計画を立てます。
通知チャンネル
、
PIP
、
アダプティブ アイコン
、
XML フォント リソース
、
TextView の自動サイズ変更
や、
その他の新機能
を試してみてください。Android O の新しい API を簡単に試せるように、
Android O API リファレンス
と合わせて
API の差分レポート
がオンラインで公開されています。
最新の Canary 版
Android Studio 2.4
には、Android O を試してみるための新機能が追加されています。O プレビュー SDK は Android Studio 内でダウンロードとセットアップが可能です。Layout Editor を使って Android O の
XML フォント リソース
や
TextView の自動サイズ変更
をお試しください。今後の Android O のサポートにもご期待ください。
アルファ版の 26.0.0 サポート ライブラリ
も試用できるようになっています。このバージョンでは、たくさんの新しい API が追加されており、minSdkversion も 14 に上がっています。詳細は、リリースノートをご覧ください。
プレビューのアップデート
O Developer Preview には、アップデートされた SDK のほか、公式 Android Emulator、Nexus 5X、Nexus 6P、Nexus Player、Pixel、Pixel XL、Pixel C の各端末でテストするためのシステム イメージが含まれています。ウェアラブル向けにビルドする場合は、Android O で Android Wear 2.0 をテストするためのエミュレータを使うことができます。
プレビュー システム イメージと SDK は、O Developer Preview の期間中、定期的にアップデートされる予定です。このプレビューの第 1 弾リリースは、
デベロッパーのみ
を対象としています。日常的な使用やユーザーの使用を想定したものではありません。そのため、
手動でのダウンロードと書き込み
でのみ利用できます。
ダウンロードと手順は、こちらをご覧ください
。
完成に近づいたら、ユーザーも招待してテストしていただく予定です。その際には、Android ベータ版への登録もオープンしますので、ご期待ください。なお、
現在のところ、Android ベータ版では、Android O は利用できない
点に注意してください。
フィードバックをお待ちしています
いつものように、皆さんのフィードバックは重要です。
お気づきの点はぜひお知らせください
。早めにお知らせいただければより多くのフィードバックを反映できます。問題を見つけた場合は、
こちらから報告
をお願いします。今までよりも安定した
Issue Tracker
ツールに移行しています。このツールは、製品開発時に Google 内部でもバグの追跡や機能リクエストに使われています。その
使いやすさ
をぜひ実感してみてください。
Posted by
Yuichi Araki - Developer Relations Team
コメントを投稿
ラベル
#DevFest16
1
#hack4jp
3
A4A
2
Action on Google
1
Addy Osmani
1
ADK
2
AdMob
18
Ads
10
Agency
1
ALPN
1
AMP
31
AMP Cache
3
Analytics
9
Andorid
9
Android
201
Android Auto
1
Android Design Support Library
1
Android Developer Story
3
Android N
18
Android O
1
Android Pay
1
Android Studio
17
Android Support Library
4
Android Things
1
Android TV
8
Android Wear
23
androidmarket
3
Angular 2
2
AngularJS
2
API
22
APIExpert
45
apk
2
app engine
21
App Indexing
7
App Invites
6
AppCompat
2
Apps Script
6
aprilfool
3
ArtTech
1
Associate Android Developer Certificate
1
Audio
3
Auth Code
1
Authentication
7
AuthSub
2
Autotrack
2
Awareness API
1
Beacons
6
BigQuery
9
Billing
1
BLE
4
Blink
1
blogger
1
Brillo
1
Brotli
1
Budou
1
Calendar
1
Cardboard
4
Career
1
Case Study
1
chrome
72
Chrome Custom Tab
1
Chrome Dev Summit
1
chrome extension
4
Chrome for Android
2
Chrome for iOS
2
Chrome OS
2
Chromebook
2
Chromecast
7
chromewebstore
6
Chromium
5
CLI
1
ClientLogin
3
Closure Compiler
1
Cloud
8
Cloud Functions
1
Cloud Storage
1
Cloud Test Lab
2
CocoaPods
1
codejam
5
codelab
2
compute engine
3
Context
1
Crash Reporting
1
Dart
2
DataCenter
1
Daydream
4
Deep Learning
1
Demo Party
1
Design Sprint
3
DesignBytes
1
DevArt
3
DevBytes
6
Developer
14
Developer Console
4
Developer Preview
4
Developer Relations
2
DevFest
7
DevFestX
3
devtools
3
DirectShare
1
Doodle
1
DoubleClick
4
Doze モード
1
drive
2
Dynamic Links
1
EarlGrey
1
Easter Egg
1
ECMAScript 2015
1
Eddystone
4
egypt
1
English
2
ES2015
1
ES2016
1
ES6
2
ES7
1
Firebase
62
Firebase Admin SDK
1
Firebase Analytics
7
Firebase Auth
1
Firebase Cloud Messaging
5
Firebase Database
4
Firebase Libraries
1
Firebase Notifications
1
Firebase Remote Config
3
Flash
1
font
3
G Suite
3
game
17
GDD11JP
56
GDD2010JP
23
GDE
2
GDG
12
Geo
37
Gingerbread
1
GLIDE
5
Gmail
1
Gmail API
1
Go
1
golang
4
goo.gl
1
Google
5
Google Analytics
1
Google Apps
6
Google Apps Script
3
Google Assistant
1
Google Cast
8
Google Cloud Messaging
10
Google Cloud Platform
6
Google Code-in
1
Google Developer Experts
2
Google Developers Academy
1
Google Developers live
5
Google Developers Summit
1
Google Drive
3
Google Fit
2
Google for Mobile
1
Google for Work
1
Google Maps
43
Google Play
40
Google Play Game Services
7
Google Play Services
19
Google Plus
14
Google Search
6
Google Sheets API
1
Google Sign-In
12
Google Slides API
3
Google Summer of Code
1
Google Tag Manager
1
Google Trust Services
1
Google+
2
Googleapps
10
GoogleGames
1
GoogleI/O
27
GoogleLabs
1
GoogleTV
1
Gradle
1
gRPC
2
GTUG
5
GWT
2
hack4jp
2
hackathon
6
Hosting
2
HTML5
17
HTML5Rocks
1
HTTP/2
5
HTTPS
7
ID Token
1
Identity
12
Identity Toolkit
1
Ignite
4
IME
10
Instant Apps
1
intern
2
Invites
1
iOS
15
IoT
2
IPv6
1
Japanese Input
1
JavaScript
5
K-12
1
Key Transparency
1
Knowledge Graph
1
l10n
8
LINE
1
Lollipop
10
Machine Learning
2
Marshmallow
10
Material
1
Material Design
19
MDL
1
MIDI
2
Mobile
12
Mobile Bootcamp
4
Mobile Vision
3
mod_pagespeed
1
monetize
3
Mozc
14
Music
1
NativeDriver
2
NativeScript
1
Nearby
4
Nexus
2
Nexus S
1
NFC
1
Node.js
2
NPAPI
2
NPN
1
oauth
8
OpenGL
4
OpenID
3
OpenID Connect
2
OpenSocial
1
opensource
15
Optimization
1
Payment
2
People API
1
Performance
8
PersonFinder
1
Physical Web
3
Place Picker
1
Player Analytics
4
Policy
2
Polymer
7
Progressive Web Apps
10
project hosting
1
Promise
1
Promo code
1
Protocol Buffers
1
PRPL
1
publicdata
1
Push API
1
Push Notification
3
QUIC
1
RAIL
1
React
1
React Native
2
Realtime Database
2
Redux
1
Remote Config
3
Remote Display API
1
Rewarded Video Ads
1
Runtime Permission
1
Sample Code
2
Santa Tracker
1
schema.org
1
security
22
Service Worker
3
SHA-1
1
sketchup
1
SmartLock for Passwords
4
social
4
SPDY
3
speak2tweet
1
Spreadsheet
1
startup
3
Storage
2
streetview
3
Study Jams
3
Swift
1
SwiftShader
1
Task
4
techtalk
12
TensorFlow
3
test
3
Test Lab
3
ToS
1
Transliteration
1
Twitter
1
Udacity
16
Unity
3
UX
1
V8
2
VP9
1
VR
7
Vulkan
2
Watch Face
2
wave
2
Weave
1
Web
8
Web Animations
1
Web Components
5
Web Manifest
1
WebAssembly
1
WebGL
1
WebMusic
4
WTM
2
Xcode
1
YouTube
15
YouTube API
1
インタビュー
1
コードサンプル
1
プライバシー
1
言論の自由
1
節電
3
東日本大震災
9
日本語入力
40
ブログ アーカイブ
2017
3
2
1
2016
12
11
10
9
8
7
6
5
4
3
2
1
2015
12
11
10
9
8
7
6
5
4
3
2
2014
12
11
10
9
8
7
6
5
4
3
2
1
2013
12
11
10
9
8
7
6
5
4
3
2
1
2012
12
11
10
9
8
7
6
5
4
3
2
1
2011
12
11
10
9
8
7
6
5
4
3
2
1
2010
12
11
Feed
Google
on
Follow @googledevjp
"プロダクトに関するご意見は
プロダクトフォーラム
にお願いします"