Невозможно нажать кнопку "Установить" при использовании разрешения "SYSTEM_ALERT_WINDOW"

Не могу нажать кнопку установки, пока использую мое приложение.

Я использую разрешение SYSTEM_ALERT_WINDOW.

Ниже мой код:

new WindowManager.LayoutParams( WindowManager.LayoutParams.FILL_PARENT,
                 WindowManager.LayoutParams.FILL_PARENT,
                 WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
                 WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH |
                 WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
                 PixelFormat.TRANSLUCENT);

Если я использую мое приложение, не могу нажать кнопку "Установить" во время установки apk файла.

как я могу использовать кнопку установки?

4 ответа

Удалить только окна и начать после установки..

Это потому, что вы окно "заполнить" весь экран. Попробуйте это, чтобы показать окно 1px x 1px:

new WindowManager.LayoutParams( 1, 1,
             WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,
             WindowManager.LayoutParams.FLAG_WATCH_OUTSIDE_TOUCH |
             WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,
             PixelFormat.TRANSLUCENT);

Во -первых, попробуйте этот код.

WindowManager.LayoutParams params = new WindowManager.LayoutParams(
                  WindowManager.LayoutParams.WRAP_CONTENT,      
                  WindowManager.LayoutParams.WRAP_CONTENT,              
                  WindowManager.LayoutParams.TYPE_SYSTEM_OVERLAY,   
                  WindowManager.LayoutParams.FLAG_LAYOUT_IN_SCREEN,     
                    PixelFormat.TRANSLUCENT);   

и если вы хотите дать позицию, используйте это. положение по умолчанию - центр.

params.gravity = Gravity.~~~~;

если вы хотите, чтобы позиция снизу-справа, сделайте, как показано ниже

params.gravity = Gravity.BOTTOM | Gravity.RIGHT;    

это будет хорошо работать, может быть. но по-прежнему не может щелкнуть по вашему представлению, когда нажимает кнопку "Установить": может нажимать за пределами вашего представления, когда нажимает кнопку "Установить".

Это мера безопасности в Android. Там нет обходного пути. https://blog.lookout.com/blog/2010/12/09/android-touch-event-hijacking/

Другие вопросы по тегам