You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
fun checkFloatWindowPermission(): Boolean {
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
val result = Settings.canDrawOverlays(BaseContext.application)
return result
} else {
//6.0 以下
val result = checkRomFloatWindowPermission()
return result
}
return true
}
1. BOARD 主板:The name of the underlying board, like goldfish.
2. BOOTLOADER 系统启动程序版本号:The system bootloader version number.
3. BRAND 系统定制商:The consumer-visible brand with which the product/hardware will be associated, if any.
4. CPU_ABI cpu指令集:The name of the instruction set (CPU type + ABI convention) of native code.
5. CPU_ABI2 cpu指令集2:The name of the second instruction set (CPU type + ABI convention) of native code.
6. DEVICE 设备参数:The name of the industrial design.
7. DISPLAY 显示屏参数:A build ID string meant for displaying to the user
8. FINGERPRINT 唯一识别码:A string that uniquely identifies this build. Do not attempt to parse this value.
9. HARDWARE 硬件名称:The name of the hardware (from the kernel command line or /proc).
10. HOST
11. ID 修订版本列表:Either a changelist number, or a label like M4-rc20.
12. MANUFACTURER 硬件制造商:The manufacturer of the product/hardware.(我们目前只需要关注这个静态属性即可)
13. MODEL 版本即最终用户可见的名称:The end-user-visible name for the end product.
14. PRODUCT 整个产品的名称:The name of the overall product.
15. RADIO 无线电固件版本:The radio firmware version number. 在API14后已过时。使用 getRadioVersion()代替。
16. SERIAL 硬件序列号:A hardware serial number, if available. Alphanumeric only, case-insensitive.
17. TAGS 描述build的标签,如未签名,debug等等。:Comma-separated tags describing the build, like unsigned,debug.
18. TIME
19. TYPE build的类型:The type of build, like user or eng.
20. USER
关于android 悬浮窗和自启动的设置, 以及获取系统的信息
标签(空格分隔):Android
悬浮窗
对于是否有开悬浮窗,程序是可以检测到的。
权限声明:
<uses-permission android:name="android.permission.SYSTEM_ALERT_WINDOW"/>
权限检查:
对于android6.0 以上的机型来说,google将悬浮窗权限和其他危险权限单独列出,因此可以检测, 方法:
android 4.4以下大部分机型声明即获取(包括大部分国产机), 因此只需判断4.4.4 -- 5.1之间的系统即可。
至此,权限检查完毕。
不能动态获取,只能跳转到这只页去手动开启。
附: 各手机厂商跳转到设置页的方法:(context)
开启自启动
自启动比较简单,android系统无法检测到是否开启,一般做法是首次安装提示用户跳转设置:
android 相关信息的获取方法:
1.获取手机型号(Build)
所属包: android.os.Build
作用(含义): 从系统属性中提取设备硬件和版本信息
静态属性:
打开其他应用程序中的Activity或服务(ComponentName)
所属包: android.content.ComponentName
构造方法使用方式如下:
需要关注的方法:unflattenFromString(“传递将要跳转的地址,格式为包名/跳转Activity Name”)
通过adb获取跳转包名路径
adb为我们提供了一个可以打印出当前系统所有service信息,在后面可加上具体的服务名的命令
adb shell dumpsys
参考资料 : http://www.voidcn.com/article/p-dpiicqfm-zw.html
The text was updated successfully, but these errors were encountered: