Android设备序列号修改:修订间差异

来自弘迪在线
跳转到导航 跳转到搜索
(创建页面,内容为“=原理= 全志平台Android系统“关于平板电脑”中设备序列号由U-Boot中sunxi_serial环境变量记录,而U-Boot中有通过读取芯片ID或读取…”)
 
Hdadmin​(留言 | 贡献)
无编辑摘要
第1行: 第1行:
=原理=
=Android设备序列号修改=
==原理==
全志平台Android系统“关于平板电脑”中设备序列号由U-Boot中sunxi_serial环境变量记录,而U-Boot中有通过读取芯片ID或读取特定分区内文件的方式自动设置此环境变量的代码。
全志平台Android系统“关于平板电脑”中设备序列号由U-Boot中sunxi_serial环境变量记录,而U-Boot中有通过读取芯片ID或读取特定分区内文件的方式自动设置此环境变量的代码。


=修改步骤=
==修改步骤==
2.1 修改FEX文件和U-Boot代码
===修改FEX文件和U-Boot代码===
2.1.1 启用U-Boot对序列号的支持
====启用U-Boot对序列号的支持====
修改lichee/brandy/u-boot-2014.07/include/configs/sun8iw11p1.h,取消注释#define CONFIG_SUNXI_SERIAL;
修改lichee/brandy/u-boot-2014.07/include/configs/sun8iw11p1.h,取消注释#define CONFIG_SUNXI_SERIAL;
2.1.2 在FEX文件中添加:
=====在FEX文件中添加=====
[serial_feature]
[serial_feature]
sn_filename = "sn.txt"
sn_filename = "sn.txt"


2.2 重新编译U-Boot和打包固件
===重新编译U-Boot和打包固件===
2.2.1 编译U-Boot(lichee/brandy/u-boot-2014.07/):
可参考[[固件构建指南——环境搭建与编译步骤]]
make distclean
make sun8iw11p1_config
make -j16
2.2.2打包固件(android/):
source build/envsetup.sh
lunch 24
pack


2.3 写入/修改序列号:
===写入/修改序列号===
====手动修改====
在系统启动后在Shell命令行执行:
在系统启动后在Shell命令行执行:
busybox mkfs.vfat /dev/block/by-name/private
busybox mkfs.vfat /dev/block/by-name/private
mkdir /sdcard/private
mkdir /sdcard/private
mount /dev/block/by-name/private /sdcard/private
mount /dev/block/by-name/private /sdcard/private
echo "XXXXXXXX12345678" > /sdcard/private/sn.txt
echo "XXXXXXXX12345678" > /sdcard/private/sn.txt
sync
sync
重启后可看到序列号变为XXXXXXXX12345678。
重启后可看到序列号变为XXXXXXXX12345678。


=说明=
====利用量产工具(DragonSN)批量写入====
3.1 可以将上述写入序列号的流程写成脚本,通过adb shell执行从而方便量产;
DragonSN是全志提供的序列号量产工具,实现原理同上文提到的一样。只是提供一个图形界面和自动化操作流程,方便目标客户量产使用。
3.2 private分区在烧录固件时不会被擦除,所以写入的序列号不会因刷机而丢失;
 
DragonSN可在资料光盘/开发工具中下载,压缩包内有此工具的使用说明文档PDF。
 
==说明==
1. 可以将上述写入序列号的流程写成脚本,通过adb shell执行从而方便量产;
 
2. private分区在烧录固件时不会被擦除,所以写入的序列号不会因刷机而丢失;

2021年12月9日 (四) 07:49的版本

Android设备序列号修改

原理

全志平台Android系统“关于平板电脑”中设备序列号由U-Boot中sunxi_serial环境变量记录,而U-Boot中有通过读取芯片ID或读取特定分区内文件的方式自动设置此环境变量的代码。

修改步骤

修改FEX文件和U-Boot代码

启用U-Boot对序列号的支持

修改lichee/brandy/u-boot-2014.07/include/configs/sun8iw11p1.h,取消注释#define CONFIG_SUNXI_SERIAL;

在FEX文件中添加

[serial_feature]

sn_filename = "sn.txt"

重新编译U-Boot和打包固件

可参考固件构建指南——环境搭建与编译步骤

写入/修改序列号

手动修改

在系统启动后在Shell命令行执行:

busybox mkfs.vfat /dev/block/by-name/private

mkdir /sdcard/private

mount /dev/block/by-name/private /sdcard/private

echo "XXXXXXXX12345678" > /sdcard/private/sn.txt

sync

重启后可看到序列号变为XXXXXXXX12345678。

利用量产工具(DragonSN)批量写入

DragonSN是全志提供的序列号量产工具,实现原理同上文提到的一样。只是提供一个图形界面和自动化操作流程,方便目标客户量产使用。

DragonSN可在资料光盘/开发工具中下载,压缩包内有此工具的使用说明文档PDF。

说明

1. 可以将上述写入序列号的流程写成脚本,通过adb shell执行从而方便量产;

2. private分区在烧录固件时不会被擦除,所以写入的序列号不会因刷机而丢失;