Android Developer公式ブログにて2017/12/26に「今後の Google Play でのアプリのセキュリティおよびパフォーマンスの改善について 」がアナウンスされました。既に公開済みのアプリも2018年11月以降のアップデート時はAPIレベル26(Android8)対応が必須となります。
対応のポイント
- ランタイムパーミッション
Android6より導入されたアプリのパーミッションを実行時にユーザーが直接管理できる機能に未対応の場合、対応する必要があります。
- バックグラウンドでの実行制限
バックグラウンドで実行されているアプリがバックグラウンドサービスにアクセスできる頻度と時間に制限が設定され、また大半の暗黙的なブロードキャストは、アプリでマニフェストを使用して登録することができなくなりました。サービスなどを使用し、バックグラウンドでの動作を行っていたアプリは機能・設計の見直しが必要になる場合があります。
- Dozeモードへの対応
端末の電池寿命を改善したり、RAM の使用量を削減したりするために、システムの動作がいくつか変更されています。
- アカウントアクセスの検出の許可
認証システム側でユーザーのアカウントを所有しているか、ユーザーがアクセス権を付与していない限り、アプリ側でユーザー アカウントにアクセスできなくなりました。
- 開発環境がAndroid Studio 3に変更されました。
EclipseやAndroid Studio 3未満を使用して作成されていた場合、Android Studio 3へ変更する必要があります。またAndroid Support Libraryなど外部ライブラリのバージョンの変更が必要になります。
- 非推奨・廃止されたapiの置き換え
targetSdkVersion変更に伴い、使用できなかったAPI機能の置き換えが必要です。
注意:最新のOSで動作確認するだけでは不十分
「最新のAPIレベルをターゲット」を指定するということは、下位互換性に影響のあるtargetSdkVersionの指定を上げるという意味です。最新APIレベル26(Android8)対応にした場合、下位互換性が失われこれまで動作していた機能の一部が動作しなくなる可能性があります。
ケース別の具体例
<ケース1>バックグラウンド動作アプリ
特定のイベント(充電開始やWi-Fi接続など)に応じて、バックグラウンドで動作するアプリ。
「バックグラウンド実行制限」により、ブロードキャストを以前の方法で受信できなくなります(一部の例外を除く)。サービスをフォアグラウンドに移行したり、ジョブとして処理するなどの対応が必要になります。機能によっては、以前の動作を維持できない場合があります。
<ケース2>アラーム利用アプリ
•アラーム登録により、指定した時間に動作するアプリ。
公開中アプリのtargetSdkVersionや性質によって、影響度が変わります。現在のtargetSdkVersionが低いほど、影響は大きくなります。アラームの正確性が重要でないとみなされるようなアプリの場合は、正確性が維持できなくなる可能性があります。
<ケース3>位置情報追跡アプリ
•GPSでユーザーの位置を定期的にチェックするアプリ。
targetSdkVersionに関わらず、8.0以上の機種で制限が適用されます。最新OSでの動作確認が不十分な場合、速やかな確認が必要です。
Android最新OS対応についてご相談ください
弊社では自社アプリの最新OS対応も積極的に進めており、Android最新OS対応のノウハウを蓄積しています。状況や予算に応じた、柔軟な対応が可能です。
ご依頼迄の流れ
- メールでのお問い合わせ: info@telemarks.co.jp
- NDAの締結
- ご希望対応範囲の聞き取り・ドキュメント・ソースのご提供
- 弊社から対応の可否・スケジュール・お見積もりの提示