Googleがスマホなど向け次期OS「Android P」の開発者向けプレビュー版をリリース! |
Googleは7日(現地時間)、スマートフォン(スマホ)やタブレットなど向けプラットフォーム「Android」の次期バージョン「Android P」における開発者向けプレビュー版「Android P Developer Preview」( http://developer.android.com/preview/ )で導入される予定の新機能やAPI、SDKなどを公開したとお知らせしています。
今回提供されたAndroid Pの開発者向けプレビュー版は、Androidエミュレーターのほか、Pixel、Pixel XL、Pixel 2、Pixel 2 XLでテストするためのシステムイメージやSDKが含まれています。ビルド番号は「PPP1.180208.014」。Android Oこと、現バージョン「Android 8.x(開発コード名:Oreo)」からはNexus 6PとNexus 5X、Nexus Player、Pixel Cがなくなりました。
現在開発者向けプレビュー版が提供されている機種についても必ずしも正式版が提供されるとは限らないとのこと。またエミュレーターで利用するためには「Android Studio」の最新バージョン「3.2 Canary」( https://developer.android.com/studio/archive.html )をインストールするか、P Developer Preview SDKとツールをAndroid Studio 3.1に導入する必要があるとのこと。
開発者向けプレビュー版を利用するには公開されているファクトリーイメージ( https://developer.android.com/preview/download.html )から手動で導入することが可能。なお、「Android Beta Program」( https://g.co/androidbeta )に登録してネットワーク経由によるソフトウェア更新(OTA)は現時点では利用できないとのこと。製品版に近づいたときに一般向けプレビュー版を提供し、そのときにAndroid Beta Programが利用可能になるとしています。
なお、今後に提供される予定の各プレビュー版についてもOTAで提供されるということで、Android Oのときと同様に一般向けプレビュー版も提供される予定。新機能についてもある程度公開されており、無線LAN(Wi-Fi)を使った屋内測位機能や切り欠き(いわゆる「ノッチ」)への表示対応、デュアルカメラAPI、さらになる電力効率化などが追加されるとしているほか、5月8〜19日に開催される「Google I/O 2018」でさらに詳細な説明を行うとしています。
Android Pは現在の最新バージョンのAndroid 8.x Oreoの次のメジャーアップデートとなる予定のバージョンです。Androidではメジャーバージョンアップごとにアルファベット順に開発コード名としてお菓子の名前が付けられており、Android 8.xでは「Oreo」となっていますが、それを受けて正式発表前にはここ最近ではその頭文字を取って「Android O」としています。
そのため、次のバージョンは「O」の次の「P」となるため、Android Pとなっており、正式版では恐らくバージョン番号が「8」の次の「9」になると思われるので「Android 9.0(開発コード名:P****)」などとなると見られます。バージョン番号や開発コード名については現時点では不明。
開発者プレビュー版は順次新しい内容が提供されていくということで、今回の公開されたAndroid P Developer Preview 1(初リリースのα版)に続いて、アップデートスケジュールとして5月上旬のGoogle I/O 2018に合わせて「Preview 2・β版(incremental update)」、6月上旬に「Preview 3・β版(最終APIと公式SDK・Playサービス)」、6月下旬に「Preview 4・RC版(テスト用リリースコンディショナル)」、正式版リリース直前に「Preview 5・RC版(最終テスト用リリースコンディショナル)」と経て、2018年第3四半期(7〜9月)に正式版がリリースされるということで、恐らく過去の例からすると8〜9月あたり提供開始されるものと見られます。
Android Pで導入される新機能は以下の通り。なお、現時点では公式ブログをGoogle 翻訳で翻訳したものです。順次、編集して更新していく予定。ざっくりAndroidエミュレーターで使ってみた限りでは基本的なユーザーインターフェース(UI)などはほとんど変わらずといったところ。
Wi-Fi RTTによる屋内測位
正確な屋内測位は、長期にわたる課題であり、ロケーションベースのサービスに新しい機会を提供します。 Android Pは、Wi-Fi Round-Trip-Time(RTT)としても知られているIEEE 802.11mc WiFiプロトコルのプラットフォームサポートを追加して、アプリ内の屋内測位を利用できるようにします。
ハードウェアサポート、場所の権限、および場所が有効になっているAndroid P端末では、アプリはRTT APIを使用して近くのWiFiアクセスポイント(AP)までの距離を測定できます。このデバイスは、RTTを使用するためにAPに接続する必要はなく、プライバシを維持するために、電話機だけがAPではなく、距離を判断することができます。
3つ以上のAPとの距離を知ることで、1〜2メートルの精度でデバイスの位置を計算できます。この精度で、建物内のナビゲーションなどの新しい体験を構築できます。曖昧さのない音声制御(例えば、「このライトをオンにする」)などのきめ細かなロケーションベースのサービス。 (たとえば、「この製品には特別なオファーがありますか?」など)が含まれます。
表示切り取りサポート
今や、アプリはフルスクリーンのコンテンツを備えた最新のデバイス画面を最大限に活用することができます。私たちは、あなたのコンテンツの表示方法を管理するために使用できるAPIとともに、プラットフォームにディスプレイカットアウトを追加しました。
切抜きのサポートは、アプリケーションでシームレスに機能し、ステータスバーの高さを管理してコンテンツをカットアウトから分離します。クリティカルで没入型のコンテンツがある場合は、新しいAPIを使用して切抜きシェイプを確認し、カットアウトシェイプの周りにフルスクリーンレイアウトをリクエストすることもできます。 getDisplayCutout()を呼び出して現在のデバイスに切り抜きがあるかどうかを確認し、DisplayCutoutを使用して切り抜き領域の位置と形状を決定することができます。新しいウィンドウレイアウトアトリビュートlayoutInDisplayCutoutModeを使用すると、切り抜き領域に対してコンテンツをレイアウトする方法とタイミングをシステムに指示できます。詳細はこちら
アプリで切抜きのサポートを簡単に作成してテストするために、任意のデバイスに切り抜きをシミュレートするDeveloper Optionを追加しました。ディスプレイカットアウトを有効にして既存のアプリをテストして、コンテンツが適切に表示されるようにすることをおすすめします。
臨場感のあるコンテンツを持つアプリは、ディスプレイの切り抜きがあるデバイスでコンテンツをフルスクリーンで表示できます。
改善されたメッセージ通知
Android Pでは、通知の可視性と機能を向上させることに重点を置いています。新しいMessagingStyle通知スタイルを試してください。メッセージスタイルは誰ですか?会話を表示したり、写真やステッカーを添付したり、スマートな返信を提示することさえできます。詳細はこちらをご覧ください。
MessagingStyleの通知では、会話とスマートな返信を表示したり、画像やステッカーを添付することもできます。
マルチカメラAPI
Android Pを搭載したデバイス上の2台以上の物理カメラからストリームに同時にアクセスできるようになりました。デュアルフロントカメラまたはデュアルバックカメラを搭載したデバイスでは、シームレスズーム、ボケなどの単一のカメラでは不可能な革新的な機能を作成できます、およびステレオビジョン。また、APIを使用すると、複数のカメラを自動的に切り替える論理または融合カメラストリームを呼び出すことができます。私たちは、複数のカメラをサポートするAndroid Pデバイスが、今後1年で市場に登場するため、あなたの新しくてエキサイティングな作品を見ることを楽しみにしています。
カメラのその他の改良点には、初期キャプチャ時の遅延を減らすための新しいセッションパラメータ、カメラストリーミングを停止して開始することなくカメラクライアントがさまざまなユースケースを処理できるSurface共有があります。また、ディスプレイベースのフラッシュサポート用のAPIと、アプリケーションレベルのイメージ安定化と特殊効果のためのOISタイムスタンプへのアクセスを追加しました。
ビットマップとドロワーブルのためのImageDecoder
Android Pを使用すると、画像をビットマップまたはドロワーブルに簡単にデコードすることができます。ImageDecoderは、BitmapFactoryを非推奨にしています。 ImageDecoderを使用すると、バイトバッファ、ファイル、またはURIからビットマップまたはドロウアブルを作成できます。 BitmapFactoryには、正確なスケーリング、ハードウェアメモリへのシングルステップデコード、デコード時のポストプロセッシング、アニメーションイメージのデコードなどの利点があります。
ターゲットの寸法でsetResize()を呼び出すだけで、デコードして正確なサイズにスケールすることができます。また、getSampledSize()を呼び出して特定のサンプルレートで画像の寸法を取得し、次にそれらの寸法に拡大縮小することもできます。円マスクやより複雑なエフェクトに丸みを帯びたコーナーを適用するなどの後処理をイメージに追加する場合は、ImageDecoderにany android.graphics.PostProcessorを渡すことができます。 ImageDecoder.decodeDrawable()を使用してDrawablesを直接作成することもできます。エンコードされたイメージがアニメーションGIFまたはWebPの場合、Drawableは新しいAnimatedImageDrawableのインスタンスになります。
HDR VP9ビデオ、HEIFイメージ圧縮、メディアAPI
Android PにはHDR VP9プロファイル2のサポートが組み込まれているため、YouTube、Playムービー、HDR対応デバイスのその他のソースからHDR対応のムービーをユーザーに配信できるようになりました。
HEIF(heic)イメージエンコーディングをプラットフォームに追加することに興奮しています。 HEIFは、圧縮を改善してストレージおよびネットワークデータを節約するための一般的な形式の写真です。 Android Pデバイスでのプラットフォームサポートにより、バックエンドサーバーからHEIFイメージを簡単に送信して利用できます。お使いのアプリがこのデータ形式と互換性があることを確認して共有して表示することができたら、HEIFをアプリの画像保存形式として試してみてください。 ImageDecoderまたはBitmapFactoryを使用してjpegからビットマップを取得し、新しいサポートライブラリアルファのHeifWriterを使用して、YUVバイトバッファ、サーフェス、またはビットマップからHEIF静止画像を書き込むことができます。
メディアAPIの開発と統合をより容易にするために、メディアAPIの強化とリファクタリングを進めています。
JobSchedulerにおけるデータコストの感度
JobSchedulerは、スケジュールされたタスクを管理したり、Doze、App Standby、およびBackground Limitsの変更を処理するのに役立つ、Androidの中央サービスです。 Android Pでは、JobSchedulerは、ネットワーク関連のジョブをユーザーの方でより適切に処理し、キャリアが別途提供するネットワークステータス信号を調整します。
Jobsは予測されたデータサイズ、信号プリフェッチを宣言し、詳細なネットワーク要件を指定できるようになりました。キャリアは、ネットワークが混雑していると測定されていないと報告できます。 JobSchedulerはネットワークの状態に応じて作業を管理します。たとえば、ネットワークが輻輳している場合、JobSchedulerは大規模なネットワーク要求を遅延させる可能性があります。測定されていない場合、プリフェッチジョブを実行して、ヘッドラインの先読みなど、ユーザーエクスペリエンスを向上させることができます。
ジョブを追加するときは、setEstimatedNetworkBytes()、setIsPrefetch()およびsetRequiredNetwork()を使用して、JobSchedulerが正しく処理するようにしてください。ジョブが実行されるときは、JobParameters.getNetwork()によって返されたNetworkオブジェクトを必ず使用してください。そうしないと、意図しないデータの使用を引き起こしてデバイスのデフォルトネットワークが暗黙的に使用されます。
ニューラルネットワークAPI 1.1
Android 8.1でNeural Networks APIを導入し、Androidでのオンデバイスの機械学習を加速しました。 Android Pでは、このAPIを拡張して改良し、パッド、BatchToSpaceND、SpaceToBatchND、Transpose、Strided Slice、Mean、Div、Sub、Squeezeの9つの新しい操作をサポートしています。 Pixel 2デバイスをお持ちの場合、DP1ビルドにはクオンタムのHexagon HVXドライバが含まれています。
自動入力の改善
Android Pでは、ユーザーと開発者からのフィードバックに基づいて、自動入力フレームワークの改善を継続しています。主要なバグ修正に加えて、このリリースには新しいAPIが含まれています。これにより、パスワードマネージャは、データセットのフィルタリング、入力サニタイズ、互換モードなど、オートフィルのユーザーエクスペリエンスを向上させることができます。特に、互換モードはエンドユーザーに大きな影響を与えます。これは、パスワードマネージャが、完全な自動入力機能を備えていないが、パフォーマンスやセキュリティに影響を与えないアプリで、アクセシビリティに基づくアプローチをとることができるからです。ここに新しいもののすべての詳細を参照してください。
NFC支払いと安全な取引用のオープンモバイルAPI
Android Pは、GlobalPlatform Open Mobile APIの実装をAndroidに追加します。サポートされているデバイスでは、アプリケーションはOMAPI APIを使用してセキュアエレメント(SE)にアクセスし、スマートカード支払いなどのセキュアなサービスを有効にできます。ハードウェア抽象化レイヤー(HAL)は、利用可能なさまざまなセキュアエレメント(eSE、UICCなど)を列挙するための基礎となるAPIを提供します。
Androidの基盤を強化する
Android Pでは、Androidを開発者にとって最高のプラットフォームにするために長期的な投資を継続しています。
アプリのセキュリティ
Android Pでは、アプリとデバイス間でより一貫性のある指紋認証UIに移行しています。 Androidは現在、ユーザーに指紋センサーに触れ、デバイスに適したテキストと配置を管理するように促す標準的なシステムダイアログを提供しています。アプリケーションは、新しいFingerprintDialog APIを使用してシステムの指紋ダイアログをトリガすることができます。できるだけ早く新しいシステムダイアログに切り替えることをお勧めします。
クリアテキスト(暗号化されていないHTTP)からTLSにすべてのネットワークトラフィックを移動させるための大きな努力の一環として、ネットワークセキュリティ設定のデフォルトを変更してすべてのクリアテキストトラフィックをブロックします。ネットワークセキュリティ設定を使用している場合、特定のドメインのクリアテキストを明示的にオプトインしない限り、TLS経由で接続する必要があります。
ユーザーのプライバシー
プライバシーをより確実にするため、Android Pは、アイドル状態のアプリからマイク、カメラ、およびすべてのSensorManagerセンサーへのアクセスを制限します。あなたのアプリのUIDがアイドル状態の間、マイクは空のオーディオを報告し、センサーは報告イベントを停止します。あなたのアプリケーションで使用されているカメラは切断され、アプリケーションがそれらを使用しようとするとエラーが発生します。ほとんどの場合、これらの制限によって既存のアプリに新しい問題が導入されることはありませんが、アプリからこれらのリクエストを削除することをおすすめします。
また、クライアント側の秘密でAndroidバックアップの暗号化を有効にします。この機能はまだ開発中で、今後のAndroid Pプレビューリリースで開始されます。
長期的には、関連するMACアドレスのネットワークごとのランダム化をプラットフォームにサポートするよう努めています。 Android Pを実行しているサポートされている端末では、これを新しいデベロッパーオプションとしてテストするために実験的に有効にすることができます。
Android Pでは、プラットフォームのbuild.serial識別子へのアクセスを、READ_PHONE_STATE権限の後ろに置くことで、ユーザーがそのアクセス権を制御することもできます。この識別子への直接アクセスはAndroid 8.0以降では廃止されました。 build.serial識別子にアクセスするには、Build.getSerial()メソッドを使用する必要があります。
ARTのパフォーマンス
私たちは、ARTランタイムを通じて、すべてのアプリケーションにパフォーマンスと効率の改善をもたらすよう努めています。 ARTの実行プロファイルの使用を拡張してアプリケーションを最適化し、コンパイルされたアプリケーションコードのインメモリフットプリントを削減しました。 ARTは現在、DEXファイルのオンデバイス書き換えにプロファイル情報を使用しており、一般的なアプリケーションの範囲で最大11%の削減が可能です。これらは、システムのDEXメモリ使用量の削減と、アプリの起動時間の短縮と密接に関連していると考えられます。
最適化されたKotlin
KotlinはAndroidのファーストクラスの言語です。まだ試していないのならば、あなたはすべきです!私たちはAndroidでKotlinに永続的なコミットメントを行い、Kotlinコードのパフォーマンスを最適化するなどのサポートを拡大し続けています。 Pでは、この作業の最初の結果が表示されます。特に、ループをターゲットとするコンパイラの最適化をいくつか改良し、パフォーマンスを向上させました。また、JetBrainsと提携してKotlinの生成コードを最適化する作業を続けています。 Android StudioのKotlinプラグインを最新の状態に保つだけで、最新のKotlinパフォーマンスの改善をすべて得ることができます。
電力効率
Android Pでは、バッテリ寿命をさらに向上させるためにDoze、App Standby、およびBackground Limitsを引き続き改良しています。これらを使用してアプリを試して、フィードバックを送信してください。
近代的なAndroidをターゲットにする
Android Pは、Androidの基礎とそれを実行するアプリケーションを近代化する長期的な取り組みによって形作られています。最近発表されたとおり、Google Playでは、2018年11月までにAndroid Oreo(targetSdkVersion 26以降)を対象とするすべてのアプリのアップデートが必要になり、2019年の64ビットハードウェアのサポートが必要になります。
これらの変更に伴い、Android 4.2より前のプラットフォーム(targetSdkVersionが17未満)をターゲットとするアプリケーションをインストールすると、Android Pはダイアログを表示してユーザに警告し、将来のプラットフォームバージョンはその下限を引き続き増加させます。 Googleでは、すべてのAndroid開発者に、今すぐターゲットAPI 26への移行を計画し、できるだけ早く移行作業を開始するよう奨励しています。ここでは、ヘルプとサポートのためのリソースのチェックリストがあります。あなたのアプリが最新のAndroidから最大限に活用されることを楽しみにしています。
公開APIによるアプリの互換性の向上
ユーザーと開発者にとって重要な問題は、アプリケーションの互換性です。ユーザーがクラッシュする危険性や開発者が緊急にロールアウトすることなく、新しいプラットフォームバージョンが到着したときにアプリケーションを準備できるようにします。 SDKやNDKのAndroidのパブリックAPIを使用するアプリケーションは互換性がありますが、専用のAndroidインターフェイスとライブラリを使用するアプリはありません。
Android Pでは、選択した非SDKインターフェイスへのアクセスを制限し、Googleのアプリチームを含む開発者に代わりに公開されている同等のものを使用するように漸進的なプロセスを開始しています。あなたのユースケースに対応する公開情報がない場合は、このプロセスが開発者にとってできるだけスムーズであることを確認したいので、フィードバックを使用して、最初のロールアウトが影響を及ぼすことを確認します開発者が公共の選択肢に簡単に移行できるAPI。制限の詳細はこちらです。
いくつかの簡単な手順で開始する
まず、アプリを互換性を持ってAndroid Pにシームレスに移行できるようにします。デバイスシステムイメージやエミュレータシステムイメージをダウンロードし、現在のアプリをインストールしてテストするだけです。 。必要な更新を行った後は、アプリのプラットフォームターゲットを変更せずにすぐにGoogle Playに公開することをおすすめします。
Android Pでテストまたは開発するには、Pixelデバイスをサポートする必要はありません。ほとんどの場合、代わりにテスト環境としてAndroid仮想デバイスをAndroidエミュレータに設定することをおすすめします。最近、エミュレータを試していない場合は、信じられないほど高速で、6秒以内で起動して使いやすく、ロングスクリーンやカメラカットアウトなどの次世代画面もモデル化できます。
次に、アプリのターゲティングを「P」に変更して、Android Pの完全な体験で実行します。アプリのtargetSdkVersionを ‘P’に設定し、compileSdkVersionをandroid-Pに設定してビルドしてテストします。テストする領域と調整が必要な領域を見つけるために、Pをターゲットとするアプリの動作の変更を必ず確認してください。
準備が整ったら、Android Pに目を通し、アプリで活用できる新しい機能やAPIについて学びましょう。新しいAPIを簡単に調べるには、API差分レポートとAndroid P APIリファレンスをご覧ください。プレビュータイムラインとサポートリソースの詳細については、P Developer Previewサイトをご覧ください。また、このビデオでAndroid Pの新機能を紹介しています。
Android Pでビルドを開始するには、P Developer Preview SDKとツールをAndroid Studio 3.1にダウンロードするか、最新のAndroid Studio 3.2 canaryバージョンを使用してください。試してみるために、28.0.0のサポートライブラリのアルファ版もリリースしています。
■関連リンク
・エスマックス(S-MAX)
・エスマックス(S-MAX) smaxjp on Twitter
・S-MAX – Facebookページ
・Android P 関連記事一覧 – S-MAX
・Android Developers Blog: Previewing Android P
(引用元:livedoor news)
Android P
JobScheduler
P Developer Preview SDK
Android P Developer Preview
ImageDecoder
Android Beta Program
アプリケーション
targetSdkVersion
プラットフォーム
Background Limits
BitmapFactory
Android Studio 3.1
HDR VP9
GlobalPlatform Open Mobile API
build.serial識別子
Kotlin
App Standby
any android.graphics.PostProcessor
ネットワーク
HEIF
Comments are closed.