settingscompat
settingscompat copied to clipboard
悬浮窗权限崩溃问题已解决
需要区分系统版本,android 8.0之后需要判断设置WindowManager.LayoutParams 的Type类型。
在8.0上,对于TYPE_PHONE等几种种窗口类型,使用SYSTEM_ALERT_WINDOW权限不能在其他应用和系统窗口上方显示提醒窗口,而需要使用名为 TYPE_APPLICATION_OVERLAY 的新窗口类型。
修改FloatVieww构造方法中的方法:
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { mLp.type = WindowManager.LayoutParams.TYPE_APPLICATION_OVERLAY; } else { mLp.type = WindowManager.LayoutParams.TYPE_PHONE; }