次の方法で共有


AppOpsManager.UnsafeCheckOp(String, Int32, String) メソッド

定義

アプリケーションが操作を実行できるかどうかを簡単に確認します。

[Android.Runtime.Register("unsafeCheckOp", "(Ljava/lang/String;ILjava/lang/String;)I", "GetUnsafeCheckOp_Ljava_lang_String_ILjava_lang_String_Handler", ApiSince=29)]
public virtual Android.App.AppOpsManagerMode UnsafeCheckOp (string op, int uid, string packageName);
[<Android.Runtime.Register("unsafeCheckOp", "(Ljava/lang/String;ILjava/lang/String;)I", "GetUnsafeCheckOp_Ljava_lang_String_ILjava_lang_String_Handler", ApiSince=29)>]
abstract member UnsafeCheckOp : string * int * string -> Android.App.AppOpsManagerMode
override this.UnsafeCheckOp : string * int * string -> Android.App.AppOpsManagerMode

パラメーター

op
String

確認する操作。 OPSTR_* 定数の 1 つ。

uid
Int32

操作を実行しようとしているアプリケーションのユーザー ID。

packageName
String

操作を実行しようとしているアプリケーションの名前。

戻り値

#MODE_ALLOWED操作が許可されている場合、または#MODE_IGNORED操作が許可されておらず、(アプリのクラッシュを引き起こさずに) サイレント 無視する必要がある場合に返します。

属性

注釈

アプリケーションが操作を実行できるかどうかを簡単に確認します。 これは<>セキュリティ チェックではありません<>。実際のセキュリティ チェックを使用するか#startOp(String, int, String, String, String)、実際のセキュリティ チェックに使用#noteOp(String, int, String, String, String)する必要があります。これにより、指定された uid とパッケージ名の一貫性も確保されます。 この関数は、一部の作業の早期拒否として、アプリケーションに対して操作が無効になっているかどうかを簡単に確認するためにのみ使用できます。 これにより、操作に関するタイム スタンプやその他のデータは変更されません。

これが行わない重要な事柄 (最終的に使用 #noteOp(String, int, String, String, String) するか、カバー #startOp(String, int, String, String, String) する必要があります):

<ul><li>uid とパッケージの整合性を確認するため、呼び出し元は自分の ID をスプーフィングできません。</li li>><アプリの現在のフォアグラウンド/バックグラウンド状態を考慮して、この状態によってモードが異なるアプリは常に次のように#MODE_ALLOWED報告されます。</li></ul>

の Java ドキュメントandroid.app.AppOpsManager.unsafeCheckOp(java.lang.String, int, java.lang.String)

このページの一部は、Android オープンソース プロジェクトによって作成および共有され、クリエイティブ コモンズ 2.5 属性ライセンスに記載されている条件に従って使用される作業に基づく変更です。

適用対象