Android 12.0默认授予app获取序列号SerialNo权限

1. 概述

在12.0的系统rom定制化中,在一些第三方app开发中,会获取序列号等属性,而在10.0以后的高版本对于获取系统属性的相关信息要求严格 必须有权限才可以,10.0以前的Android版本中,可以直接通过调用Build.SERIAL来获取序列号,在高版本中,为了保护个人隐私, 不让第三方应用轻易获取序列号。所以该Api已经过时, 并且它的值也被设置成了"unknown"

2.默认授予app获取序列号SerialNo权限相关核心代码

    frameworks/base/core/java/android/os/Build.java
    frameworks/base/services/core/java/com/android/server/os/DeviceIdentifiersPolicyService.java

3.默认授予app获取序列号SerialNo权限相关代码核心功能实现分析
3.1 Build.java关于序列号的相关代码

    public class Build {
    	private static final String TAG = "Build";
    	/** Value used for when a build property is unknown. */
    	public static final String UNKNOWN = "unknown";
    	/** Either a changelist number, or a label like "M4-rc20". */
    	public static final String ID = getString("ro.build.id");
    	/** A build ID string 

你可能感兴趣的:(android,12.0,Rom定制化系统讲解,android,framework,获取sn号,授权获取sn,app授权获取sn)