【问题标题】:SYSTEM_ALERT_WINDOW Chathead with android M - app crashs带有 android M 的 SYSTEM_ALERT_WINDOW 聊天头 - 应用程序崩溃
【发布时间】:2016-07-21 15:17:01
【问题描述】:

我正在使用这个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 -- 权限被拒绝 窗口类型

【问题讨论】:

    标签: android chat android-windowmanager


    【解决方案1】:

    这是一个权限问题,而不是通常的方式(如清单所示)。 这是我在另一个线程上找到的解决方案:

    if (!Settings.canDrawOverlays(this)) {
                    Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION,
                            Uri.parse("package:" + getPackageName()));
                    startActivityForResult(intent, 3);
    

    在创建气泡之前通过您的活动运行此操作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2017-05-31
      • 1970-01-01
      • 2019-01-19
      • 2017-07-22
      • 2016-06-15
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多