zoukankan      html  css  js  c++  java
  • 广播最佳实践---实现强制下线

    今天在做广播最佳实践---实现强制下线小例子时,出现如下异常

    java.lang.RuntimeException: Unable to start receiver com.lvkui.boardcast_forceoffline.ForceOfflineReceiver: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@100c0fab -- permission denied for this window type
                at android.app.ActivityThread.handleReceiver(ActivityThread.java:2586)
                at android.app.ActivityThread.access$1700(ActivityThread.java:144)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1355)
                at android.os.Handler.dispatchMessage(Handler.java:102)
                at android.os.Looper.loop(Looper.java:135)
                at android.app.ActivityThread.main(ActivityThread.java:5221)
                at java.lang.reflect.Method.invoke(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:372)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)
         Caused by: android.view.WindowManager$BadTokenException: Unable to add window android.view.ViewRootImpl$W@100c0fab -- permission denied for this window type
                at android.view.ViewRootImpl.setView(ViewRootImpl.java:586)
                at android.view.WindowManagerGlobal.addView(WindowManagerGlobal.java:272)
                at android.view.WindowManagerImpl.addView(WindowManagerImpl.java:69)
                at android.app.Dialog.show(Dialog.java:298)
                at com.lvkui.boardcast_forceoffline.ForceOfflineReceiver.onReceive(ForceOfflineReceiver.java:33)
                at android.app.ActivityThread.handleReceiver(ActivityThread.java:2579)
                at android.app.ActivityThread.access$1700(ActivityThread.java:144)
                at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1355)
                at android.os.Handler.dispatchMessage(Handler.java:102)
                at android.os.Looper.loop(Looper.java:135)
                at android.app.ActivityThread.main(ActivityThread.java:5221)
                at java.lang.reflect.Method.invoke(Native Method)
                at java.lang.reflect.Method.invoke(Method.java:372)
                at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:899)
                at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:694)

    额,没有运行成功。解决方法是:

    manifest.xml 添加权限

    <uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>

    < uses-permission android:name="android.permission.SYSTEM_OVERLAY_WINDOW" /> 

  • 相关阅读:
    Ubuntu 16.04安装Guake Terminal终端(使用一键唤醒功能)
    MySQL查询count(*)、count(1)、count(field)的区别收集
    MySQL查询在一个表而不在另一个表中的数据
    Spring MVC中的拦截器/过滤器HandlerInterceptorAdapter的使用
    Spring mvc解析
    RestTemplate的一个请求过程,mark一下
    福袋开发迭代总结
    Rest分享
    写Markdown费事?Typora让你像写word一样行云流水,所见即所得。
    送你几个用起来很爽的Studio插件
  • 原文地址:https://www.cnblogs.com/kui0621/p/4626006.html
Copyright © 2011-2022 走看看