Android10获取设备唯一标识符方案(本地保存)具体方法

可以写一个工具类把这些代码复制进去

先获取一个唯一的uid

/**

* 获取UUID

*

* @return uid

*/

public static String getUID() {

return UUID.randomUUID().toString().replaceAll("-", "");

}


public static StringrootXMLPath = Environment.getExternalStorageDirectory().getPath() +"/UUID";

/**

* 保存内容到TXT文件中

*/

public static boolean writeToXML() {

boolean isExists;

    FileOutputStream fileOutputStream;

    BufferedWriter bufferedWriter;

    createDirectory(rootXMLPath);

    File file =new File(rootXMLPath +"/" +"uuid" +".txt");

    try {

//文件是否创建成功

        isExists = file.createNewFile();

        if(isExists){

fileOutputStream =new FileOutputStream(file);

            bufferedWriter =new BufferedWriter(new OutputStreamWriter(fileOutputStream));

            bufferedWriter.write(getUID());

            bufferedWriter.close();

        }

}catch (IOException e) {

e.printStackTrace();

return false;

    }

return isExists;

}


/**

* 读取TXT内容

* @return

*/

public static StringreadFromXML() {

FileInputStream fileInputStream;

    BufferedReader bufferedReader;

    StringBuilder stringBuilder =new StringBuilder();

    File file =new File(rootXMLPath +"/" +"uuid" +".txt");

    if (file.exists()) {

try {

fileInputStream =new FileInputStream(file);

            bufferedReader =new BufferedReader(new InputStreamReader(fileInputStream));

            String line;

            while ((line = bufferedReader.readLine()) !=null) {

stringBuilder.append(line);

            }

bufferedReader.close();

        }catch (FileNotFoundException e) {

e.printStackTrace();

return null;

        }catch (IOException e) {

e.printStackTrace();

return null;

        }

}

return stringBuilder.toString();

}


/**

* 创建文件夹

*

* @param fileDirectory

*/

public static void createDirectory(String fileDirectory) {

File file =new File(fileDirectory);

    if (!file.exists()) {

file.mkdirs();

    }

}

记得开启读写内存权限

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。