Android の高度な保護機能モード(AAPM)は、危険にさらされているユーザーの Android デバイスのセキュリティを強化することを目的とした新機能です。デバイスの保護を強化するために設計された一連の事前決定された構成を実装する単一の設定として機能します。AAPM は、機能とユーザビリティの低下よりもセキュリティを優先します。つまり、攻撃対象領域を最小限に抑えるために、一部の機能が制限される可能性があります。
影響
デベロッパーへの影響については、以下をご覧ください。
- 機能: AAPM は、リスクの高いユーザーのデバイスの保護を強化するために設計されたセキュリティ設定のコレクションを有効にする単一の設定として機能します。これにより、特定のサービスの動作が変更され、アプリ デベロッパーはそれに対応する必要があります。
- 登録済みアプリへのシグナル: ユーザーが AAPM を有効にすると、すべての登録済みアプリにシグナルが送信されます。このシグナルは、AAPM によって有効になった機能の変更された動作に適応するよう、これらのアプリケーションに通知します。
- アプリの変更: サブスクライブされたアプリのデベロッパーは、AAPM によってトリガーされる動作の変更に対応するためにアプリを変更する必要があります。このような変更の例を以下に示します。
- 2G ネットワークと WEP ネットワークの接続の無効化に対応するためのアプリのロジックの調整。
- サイドローディングの防止に合わせてアプリの動作を変更。
- フォレンジック ロギングの存在に適応します。
- 不明な番号からの通話のブロックに伴い、通話処理に関する機能を調整しました。
- メッセージ アプリ内のリンクのスパム対策メカニズムとの統合または対応。
- リスクの高いユーザーをさらに保護するための、アプリ デベロッパーによる追加の緩和策を含みます。
 
- 対象ユーザー: AAPM は主に、セキュリティ意識の高いユーザー向けにカスタマイズされたセキュリティ機能を組み込んでいるアプリに影響すると予想されます。ユーザーが AAPM を選択すると、これらのアプリは自動アクティベーションのメリットを享受できます。
AAPM と統合する
関連する API を使用するには、次の権限を宣言する必要があります。
<uses-permission android:name="android.permission.QUERY_ADVANCED_PROTECTION_MODE" />
次の API は、新しく導入された AdvancedProtectionManager システム サービスからのものです。
public class AdvancedProtectionManager() {
  // Check the current status
  public boolean isAdvancedProtectionEnabled();
  // Be alerted when status changes
  public void registerAdvancedProtectionCallback(Executor executor, Callback callback);
  public void unregisterAdvancedProtectionCallback(Callback callback);
}
public class Callback() {
  // Called when advanced protection state changes
  void onAdvancedProtectionChanged(boolean enabled);
}
