关闭

Android Service 弹出系统全局Dialog

标签: Android全局Dialog系统DialogService
4381人阅读 评论(1) 收藏 举报
分类:

在Android Service中弹出全局Dialog对话框是一个很古老的问题。
很久之前解决过,但没有记录,今天遇到的时候又纠结了会儿。

搜了下资料,千篇一律的解决方法无非是:

dialog.getWindow().setType(WindowManager.LayoutParams.TYPE_SYSTEM_ALERT);  

并增加权限

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

然并卵。

其实最主要在于在主线程中调用Dialog方法。

Handler handler = new Handler(Looper.getMainLooper());
handler .post(new Runnable() {
                        @Override
                        public void run() {
                              //调用dialog                        }
});

如此,便可以顺利调出系统全局Dialog。

1
3

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:536847次
    • 积分:5419
    • 等级:
    • 排名:第5125名
    • 原创:86篇
    • 转载:1篇
    • 译文:0篇
    • 评论:218条
    最新评论