0

私のアプリでは、ギャラリーを起動するボタンをクリックし、ギャラリーから写真を選択すると、アプリが写真を圧縮してサムネイルを生成します。このアクションには数秒かかります。アプリが何かを実行していることをユーザーに知らせるダイアログを表示したいと考えています。問題は、写真が生成されている間、ギャラリーがまだ画面上でアクティブであり、ダイアログが表示されないことです。現在、以下のコードを使用すると、「このウィンドウ タイプに対して許可が拒否されました」および「badtoken」に関するエラーが発生します。「SYSTEM_ALERT_WINDOW」のマニフェストにアクセス許可が設定されています

私の質問は基本的に、このダイアログをギャラリー ビューの上に表示するにはどうすればよいですか?

public void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        switch (requestCode) {

        // Do this if result came from selection in android photo gallery
        case PICK_EXISTING_PHOTO_RESULT_CODE: {

            if (resultCode == RESULT_OK) {
                AlertDialog alertDialog = new AlertDialog.Builder(this)
                        .setTitle("").setMessage("Optimizing Photo...")
                        .setCancelable(false).create();
                alertDialog.getWindow().setType(
                        WindowManager.LayoutParams.TYPE_SYSTEM_DIALOG);
                alertDialog.show();
4

1 に答える 1