Qiita Teams that are logged in
You are not logged in to any team

Log in to Qiita Team
Community
OrganizationAdvent CalendarQiitadon (β)
Service
Qiita JobsQiita ZineQiita Blog
Help us understand the problem. What is going on with this article?

Android Developers Blogにてアナウンスされた今後のセキュリティとパフォーマンスの向上について

More than 3 years have passed since last update.

Improving app security and performance on Google Play for years to come | Android Developers Blog にてAndroidアプリのセキュリティとパフォーマンス向上のためのアナウンスがされました。これは今までにもあった”新しいAPI Levelから導入されます、使いましょう”という内容とは主旨が異なり、これからのアプリに対して最新のAPI Levelに対応を求める内容になります。

日本語訳記事も投稿されました: 今後の Google Play でのアプリのセキュリティおよびパフォーマンスの改善について | Google Developers Blog Japan

はじめに

意訳:Google Playは一年間で数十億のインストールとアップデートをおこなっています。わたしたちは誰もが好きなアプリやゲームを見つける有意義な体験を保証するために、セキュリティとパフォーマンスを重視しています。Android Developer達に3つの変更点とその目標、目標までのサポート予定、変更の理由、どのようにしてAndroid Deviceにて長期間セキュリティとパフォーマンスを向上させるかの勧告をおこないます。

Google Play powers billions of app installs and updates annually. We relentlessly focus on security and performance to ensure everyone has a positive experience discovering and installing apps and games they love. Today we're giving Android developers a heads-up about three changes designed to support these goals, as well as explaining the reasons for each change, and how they will help make Android devices even more secure and performant for the long term.

1. Target API level requirement from late 2018

概要

  • 2018年後半からGoogle Playにアプリをアップロードするとき、アプリのTargetを最新のAPIレベルとする必要がある
  • 新規アプリは2018年8月から、既存アプリの更新は2018年11月から対応が必要となる
  • セキュリティとパフォーマンスが最適化された最新のAPIをアプリに保証させることが目的

理由

最新のAPIに対応することでセキュリティとプライバシー保護が強化され、セキュアなアプリ開発を通してマルウェアからユーザを保護できるようになります。
このような機能はマニフェストのtargetSdkVersionを通して最新のAPIをサポートしているアプリに適用されます。
targetSdkVersionを23以上するとRuntime Permission対応できるように、最新のAPIに上げることでバッテリーやメモリのリソースが誤って過度に使用されることを防ぐユーザエクスペリエンスの改善が含まれています。

意訳:このように可能な限りユーザに最高の体験を提供するために、アプリは最新のAPIレベルに対応する必要があります。

案件への影響

  • アップデートするつもりのない既存アプリは影響なし
  • 新規アプリもしくはアプリ更新する際に影響あり
    ※ 現在のAPI Levelと機能によって対応内容が異なるため対応工数はアプリ次第。目安としてアカウント情報を扱ったりカメラやGPS等のセンサ使用、バックグラウンドで処理を走らせるなどセキュリティやパフォーマンスに関連した機能に心当たりがあれば覚悟してください。
  • minSdkVersionは今まで通りで問題ないため、古いOSを搭載した端末へのサポートには影響なし

実装への影響

予定

時期 対象と対応内容
2018年8月から 新規アプリのTarget API Levelを8.0以上とする
2018年11月から 既存アプリ更新のTarget API Levelを8.0以上とする
2019年以降 毎年必要なtargetSdkVersionを上げてくからよろしくな!

将来

  • API Levelだけを目標とせずパフォーマンスやセキュリティをに悪影響を与えるアプリも制限していきます。
  • アプリのエコシステムの断片化を予防しつつ、セキュリティとパフォーマンスを確保しつつ、十分な期間と周知によってこれからの指針をDeveloper達に伝えていきます。
  • 今年は最高に安全でパワフルなOreoをリリースしたのでよろしくな!最新のリリースが端末に届くよう支援していくのでAndroid 8.1 Oreoでアプリをつくっていきましょう!

2. 64-bit support requirement in 2019

概要

  • プラットフォームとしてはAndroid 5.0から64bitをサポートしており、現時点で40%以上のAndroid Deviceが64bitに対応している(32bitの下位互換を保ちつつ)
  • アプリがNative Librariesを使っている場合だと、レジスタや命令の追加によって64bitコードのパフォーマンスがかなり向上する
  • Google Playは32bitのアプリとAndroid Deviceをサポートし続ける

実装への影響

  • 32bit対応のライブラリを含んでいるアプリは64bitの対応が必要になる
    ※ 1つのAPKで32bit, 64bit両方を対応するか、Multiple APK Support 対応するか
  • Native Libraryを含まないアプリは影響なし

予定

  • 2019年8月から対応予定
  • 32bit→64bit移行のため事前通知中
  • 今後は64bit Native Libraryのパフォーマンスの利点等について投稿する。NDK向けの CPUs and Architectures ガイドもあわせて確認してほしい

将来

  • 将来的にはAndroid Deviceは64bitコードのみサポートし、Google Playで配布するアプリは32bitに加えて64bitのサポートを必須とする

3. Security metadata in early 2018

  • Google Playから配布されたアプリであることを証明するためにApkにSecurity Metadataが追加される
  • アプリ容量として気になる程の容量にはならず、アプリに影響はない
  • Developer達は何もしなくてよい
  • 将来的にGoogle Playのエコシステムの改善に使われる。
    ※ 新しい配布タイミングの追加や、アプリのアップデート配信の改善など

所感

gyamoto
最近はスマホアプリでKotlin, Flutterしている それまではRaspberryPi, Ruby, Kinect, Arduino, JS, Elixirを触ったり
team-lab
最新のテクノロジーを活用したシステムやデジタルコンテンツの開発を行うウルトラテクノロジスト集団
https://www.team-lab.com
Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away