历览千载书,时时见遗烈。这篇文章主要讲述Android 悬浮窗权限校验相关的知识,希望能为你提供帮助。
原文:Android 悬浮窗权限校验【Android 悬浮窗权限校验】悬浮窗权限:
<
uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW" />
权限检验和请求:
//检查是否已经授予权限,大于6.0的系统适用,小于6.0系统默认打开,无需理会if (Build.VERSION.SDK_INT >
= Build.VERSION_CODES.M&
&
!Settings.canDrawOverlays(this)) {
//没有权限,需要申请权限,因为是打开一个授权页面,所以拿不到返回状态的,所以建议是在onResume方法中从新执行一次校验
Intent intent = new Intent(Settings.ACTION_MANAGE_OVERLAY_PERMISSION);
intent.setData(Uri.parse("package:" + getPackageName()));
startActivityForResult(intent, 100);
}else{
//已经有权限,可以直接显示悬浮窗
}
其他注意问题:
//因为部分type在部分系统中已经废弃,懒得看文档,下面是我亲测是兼容7.0和8.0系统的方法if (Build.VERSION.SDK_INT <
Build.VERSION_CODES.O) {
wmParams.type = WindowManager.LayoutParams.TYPE_SYSTEM_ALERT;
} else {
wmParams.type = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY;
}
?
推荐阅读
- Android 调用系统分享文字图片文件,可直达微信朋友圈QQQQ空间微博
- Android TV开发中所有的遥控器按键监听及注意事项,新增home键监听
- 知买app小程序是什么-知买怎么使用
- 从小白角度探索Android事件分发机制
- 解决(Android 8.0检测不到当前的activity)
- react native 安卓home返回键页面刷新
- cordova APP 检查更新
- APP快速开发(PC移动端多项目整合,learun让开发更畅快)
- Android------------------ListVIew学习