我正在使用此library。
我知道它可以在Android M上运行,但出于某种原因它每次都会在我的项目中崩溃。
我尝试过研究和添加权限SYSTEM_ALERT_WINDOW
(即使这不是必需的),我也被卡住了。
任何人都知道它崩溃的原因吗?
private void addViewToWindow(final BubbleBaseLayout view) {
new Handler(Looper.getMainLooper()).post(new Runnable() {
@Override
public void run() {
crashes here >>> getWindowManager().addView(view, view.getViewParams());
}
});
}
android.view.WindowManager $ BadTokenException:无法添加窗口 android.view.ViewRootImpl$W@ce82da - 此权限被拒绝 窗口类型
答案 0 :(得分:0)
这是一个权限问题,而不是通常的方式(如清单中所示)。 这是我在另一个线程上找到的解决方案:
if (!Settings.canDrawOverlays(this)) {
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, 3);
在创建气泡之前,通过您的活动运行此操作。