bool SDL_RequestAndroidPermission(const char *permission, SDL_RequestAndroidPermissionCallback cb, void *userdata);
| const char * | permission | 要求する権限 |
| SDL_RequestAndroidPermissionCallback | cb | 要求の応答があったとき呼ばれるコールバック |
| void * | userdata | アプリケーションからコールバックに渡すポインタ |
(bool) 要求を行えたとき真, エラーのとき偽を戻す. 要求の結果は戻り値ではなくコールバックで通知される. SDL_GetError()を呼んで詳細を知ることができる.
これはSDLに組み込まれた機能を使用する場合は必要ない. 標準SDL APIを使用したマイクからの録音, カメラ画像の読込の権限の要求は自動的に行われる.
この関数はブロックしない. その代わりに, 要求の結果が決まったときアプリケーションが渡したコールバックが呼ばれる. コールバックは別のスレッドで呼ばれる可能性があり, またシステムダイアログでユーザに応答を求めることがあるため遅れる可能性がある. 既に特定の権限が与えられている場合でもコールバックは呼ばれる. その場合は, 恐らく関数から戻る前に現在のスレッドでコールバックが呼ばれる.
要求に失敗したとき, この関数は偽を戻しコールバックは呼ばれないが, それはメモリ不足など致命的な場合に限られる. 通常はコールバックを通じて要求の許可不許可が得られる.
parameter引数の値はここにある:
https://developer.android.com/reference/android/Manifest.permission
この関数はどのスレッドからも安全に呼べる.
SDL 3.2.0以降