728x90
permission denied for this window type/BadTokenException
윈도우 팝업창이 뜨지 않고 에러가 발생하면서 죽는다.
검색해보네 API Level 19 이상에서는
WindowManager.LayoutParams.type = WindowManager.LayoutParams.TYPE_SYSTEM_ALERT
을 사용하지 말고
LayoutParams.TYPE_TOAST or TYPE_APPLICATION_PANEL
를 사용하라고 나온다.
그래서 아래와 같이 변경했더니 앱이 죽지 않고 팝업창이 잘 뜬다.
mParams = new WindowManager.LayoutParams(
width,
WindowManager.LayoutParams.WRAP_CONTENT,
WindowManager.LayoutParams.TYPE_TOAST,
WindowManager.LayoutParams.FLAG_NOT_FOCUSABLE
| WindowManager.LayoutParams.FLAG_SHOW_WHEN_LOCKED
| WindowManager.LayoutParams.FLAG_DISMISS_KEYGUARD
| WindowManager.LayoutParams.FLAG_TURN_SCREEN_ON,
PixelFormat.TRANSLUCENT);
728x90
'안드로이드 > 버그탈출' 카테고리의 다른 글
안드로이드 uses-permission (0) | 2017.06.05 |
---|---|
Error running app: Instant Run requires 'Tools | Android | Enable ADB integration' to be enabled. (0) | 2017.06.01 |
Android Studio 액션바(상단바) 없애기 (0) | 2017.05.09 |
Activity 화면 갱신처리 (1) | 2017.04.29 |
Intent.ACTION_CALL (0) | 2017.04.14 |