Mac os區別_SN及Mac地址燒錄

platform:RK3399
OS:Android 7.1
參考:
1.比特人生 https://blog.csdn.net/ielife/article/details/86719313
2.KrisFei https://blog.csdn.net/kris_fei/article/details/79447343?ops_request_misc=%257B%2522request%255Fid%2522%253A%2522158883304619726869022990%2522%252C%2522scm%2522%253A%252220140713.130102334.pc%255Fblog.%2522%257D&request_id=158883304619726869022990&biz_id=0&utm_medium=distribute.pc_search_result.none-task-blog-2~blog~first_rank_v2~rank_v25-4

1. 概述

對于一臺運行Android系統的終端設備,一般會有許多出廠就已經確定的屬性,這些屬性唯一且具有特殊的作用。其中SN,MAC,IMEI(有通信模塊)是最基礎的幾個屬性,這些屬性一般在出廠之前就會使用工具寫到設備中,和設備綁定。

1.1 SN號

SN碼是Serial Number的縮寫,有時也叫SerialNo,也就是產品序列號,產品序列是為了驗證“產品的合法身份”而引入的一個概念,它是用來保障用戶的正版權益,享受合法服務的;一套正版的產品只對應一組產品序列號。SN碼別稱:機器碼、認證碼、注冊申請碼等。

SN號可以根據產品要求或者公司統一的編碼規范進行編碼,但是Android仍然對SN號有一定的限制要求,具體要求如下:

1. 英文字符和數字(a~z,A~Z,0~9)
2. 6~20個字符

1.2 mac地址

MAC地址是一個用來確認網絡設備位置的位址。在OSI模型中,第三層網絡層負責IP地址,第二層數據鏈路層則負責MAC位址 。MAC地址用于在網絡中唯一標示一個網卡,一臺設備若有一或多個網卡,則每個網卡都需要并會有一個唯一的MAC地址。

網絡設備制造商生產時燒錄在網卡(Network lnterface Card)的EPROM中,所以如果網絡設備制造商已經燒錄好了MAC地址,那么我們就不需要再次燒錄。如果沒有提前燒錄,那就需要采購MAC地址池并在生產時將MAC地址燒錄到設備中。一般OEM工廠可以提供MAC地址。

終端設備常見的MAC地址有:WIFI MAC,LAN MAC,BT MAC;這個需要根據產品具體確定,比如有的產品就可能沒有LAN MAC.相應的也不需要燒錄LAN MAC。

2. 燒錄及測試

瑞芯微提供寫號工具,請聯系FAE獲取最新的寫號工具,SDK舊版本的工具可能存在問題.

2.1 燒錄

2.1.1 設備方式

兩種設備模式: maskrom 和 loader 模式 maskrom 進入方式:短接 FLASH CLK 引腳,在該模式下面寫號,必須要選擇正確的 MiniLoaderAll.bin。 loader 進入方式:開機時候按住“音量+”或者 adb reboot loader 命令,在該模式下面寫號, 設備必須是已經有燒寫過固件。

2.1.2 寫號模式

827ab4fca65298a00461f81eac473b8e.png

如果不清楚使用那種模式,可以逐一嘗試.注意錯誤勾選可能導致寫號失敗.

2.1.3 配置

1.代碼配置

diff 

2.軟件配置

bb0dd602cac91d8dea72f5d6cb76842b.png

寫號工具支持同時寫入 7 個項,其中五個是預定義的(ID 是固定的,不能修改),剩下兩個 用戶可以通過修改 ID 自定義寫入。 uboot、內核是通過 ID 來區別用戶寫入的內容的。用戶可以 選擇三種輸入方式寫號: 1) 手動模式 直接在主界面從鍵盤或者掃描槍輸入要寫入的數據項。 2) 自增模式 用戶設定起始項,前綴和后綴,按十進制,或者十六進制遞增生成寫入數據項。 3) 文件模式 從文件獲取寫入的數據項,如果勾選“Bin 文件”,則會把整個文件寫入;不勾選的話,則把選 擇的文件當做文本文件,一次寫入一行.

2.1.3 燒錄

配置完成后,在首頁點擊寫入,等待設備寫入成功即可.

2.2 查看

有多種方式查看是否寫入成功.

方式一:使用上面的寫號軟件讀取.

方式二:使用串口抓取開機log

#Boot ver: 0000-00-00#0.00
12345678 //SN號
normal boot.
checkKey

方法三:傳給Kernel的啟動參數

mtdparts=rk29xxnand:0x00002000@0x00002000(uboot),0x00002000@0x00004000(trust),0x00002000@0x00006000(uboot_ro),0x00002000@0x00008000(trust_ro),0x00002000@0x0000A000(misc),0x00008000@0x0000C000(resource),0x0000C000@0x00014000(kernel),0x00010000@0x00020000(boot),0x00020000@0x00030000(recovery),0x00038000@0x00050000(backup),0x00040000@0x00088000(cache),0x00600000@0x000C8000(system),0x00008000@0x006C8000(metadata),0x00000040@0x006D0000(verity_mode),0x00002000@0x006D0040(reserved),0x00000400@0x006D2040(frp),-@0x006D2440(userdata) storagemedia=emmc androidboot.oem_unlocked=0 uboot_logo=0x02000000@0x7dc00000 loader.timestamp=2020-04-24_12:20:44 SecureBootCheckOk=0 androidboot.serialno=12345678

方法四:使用adb

#adb devices
12345678 device

方法五:查看系統屬性

getprop ro.serialno
getprop ro.boot.serialno

2.3 有效情況

在不擦除flash的情況下,SN號均有效,具體場景見下表.

操作|SN有效情況 -|- 單分區燒錄|有效 整包燒錄|無效 OTA差分升級|有效 OTA整包升級|有效 擦除Flash后燒錄|無效 恢復出廠設置|有效

3. 獲取串號(SN)

APK:

android.os.Build.SERIAL

ro.boot.serialno:

/system/core/init/init.cpp:

static 

通過cmdline獲取串號ro.boot.serialno,cmdline見上一小節方法三:

androidboot.serialno=12345678

sys.serialno:

system/core/drmservice/drmservice.c

if

由于是寫入的SN,所以從idb中獲取SN.

ro.serialno:

init.rk30board.rc:

//運行drmservice
service drmservice /system/bin/drmserviceclass mainoneshot# set ro.serialno
on property:sys.serialno=*setprop ro.serialno ${sys.serialno}

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/news/539521.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/539521.shtml
英文地址,請注明出處:http://en.pswp.cn/news/539521.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

linux 查看數據庫和表 mysql 命令

2019獨角獸企業重金招聘Python工程師標準>>> 查看是否有安裝數據庫 :rpm -qa|grep -i mysql 如圖已安裝: 未安裝: 查看MySQL版本的四種方法 1 在終端下執行 mysql -V 2 在help中查找 mysql --help |grep Distrib 3 在mysql 里查看…

php mvc 邏輯層在哪,mvc的業務邏輯應該放哪里?

背景: 基于laravel的后臺管理系統,CURD密集型業務問題:當直接在控制器方法中調用orm處理業務邏輯時,代碼復用性差,控制器層很肥嘗試解決1:新建一個model層,將原先在控制器中的處理邏輯移到mode…

servlet/filter/listener/interceptor區別與聯系

下面從幾個方面闡述一下題目中四個概念的區別與聯系: 1、概念 2、生命周期 3、職責 4、執行過程 一、概念: 1、servlet:servlet是一種運行服務器端的Java應用程序,具有獨立于平臺和協議的特性,并且可以動態的生成web頁…

電腦系統哪個最好用_袪痘袪痘印哪個產品最好 祛痘印最好用的產品十大推薦...

原標題:袪痘袪痘印哪個產品最好 祛痘印最好用的產品十大推薦痘痘下去了,痘印卻頑固不化。有些痘印如果不及時修復,會留下疤痕和坑。我們真的不敢去想他們。所以有痘印痘印的時候一定要及時使用護膚品,不要在臉上留下什么遺憾&…

python中集合符號,Python 集合符號

Android SDK Manager 無法下載更新,或者更新速度超慢,或者待安裝包列表不顯示解決方法: 轉自 http://www.cnblogs.com/tc310/archive/2012/12/21/2828450.html http://jingyan.baidu.com/artic ...AJAX學習AJAX即“Asynchronous Javascript And XML”(異…

五阿哥鋼鐵電商平臺Docker容器云平臺建設實踐——你想知道的都在這里!

前言 五阿哥鋼鐵電商平臺(www.wuage.com)是由鋼鐵行業第一的中國五礦與互聯網第一的阿里巴巴聯手打造,并充分運用雙方股東優勢資源,即:阿里巴巴在大數據、電商運營、互聯網產品技術上的巨大優勢,尤其是在B2…

oracle數據導入導出

一、exp/imp與expdp/impdp的區別 1:把用戶usera的對象導到用戶userb,用法區別在于fromuserusera touseruserb ,remap_schemausera:usera 。例如 imp system/passwd fromuserusera touseruserb file/oracle/exp.dmp log/oracle/exp.log; impdp system/passwd directo…

web瀏覽器_Web上的分享(Share)API

我認為Web Share API非常酷,簡而言之,它會利用您所使用的平臺上的原生共享功能(如果該平臺支持的話)。我喜歡這個:在iOS上激活的Web Share API遠遠不止這些東西:為什么?Web Share API只是幾行代碼。簡單!沒…

Oracle視圖添加約束,Oracle創建視圖的語法

Oracle創建視圖的語法導讀:就愛閱讀網友為大家分享了多篇關于 "oracle 創建序列語法" 資料,內容精辟獨到,非常感謝網友的分享,希望從中能找到對您有所幫助的內容。相關資料一 : Oracle 創建視圖的語法Oracle 創建視圖的…

linux壓縮和解壓縮命令

tar命令解包:tar zxvf FileName.tar打包:tar czvf FileName.tar DirNamegz命令解壓1:gunzip FileName.gz解壓2:gzip -d FileName.gz壓縮:gzip FileName.tar.gz 和 .tgz解壓:tar zxvf FileName.tar.gz壓縮&a…

【Java進階】Java Lambda 表達式、Stream API完整梳理

一、Lambda表達式 Lambda 表達式是一種匿名函數,它可以用來定義函數式接口的實現。Lambda 表達式可以用來簡化代碼,提高代碼的可讀性和可維護性。 1、Lambda 表達式 1.1、語法介紹 Lambda 表達式的語法如下: (parameters) -> express…

使用T-SQL語句操作數據表-刪除數據

1.使用 delete 語句刪除表中的數據&#xff1a;語法&#xff1a;delete from <表名> [where <刪除條件>]delete 是刪除的意思 where是選填內容可以不加&#xff0c;但是不加條件的話是刪除整個表 例子&#xff1a;delete from 成績表 where 姓名張三含義&#xff1…

Oracle expdp/impdp導出導入命令及數據庫備份

經常報錯&#xff1a; ORA-39002: invalid operation ORA-39070: Unable to open the log file. ORA-29283: invalid file operation ORA-06512: at "SYS.UTL_FILE", line 536 ORA-29283: invalid file operation 解決方法&#xff1a; 1、 CREATE OR REPLACE DI…

exfat單元分配要設置多少_微軟宣布,支持往Linux內核里添加exFAT存儲了!跨系統存儲的福音...

栗子 發自 凹非寺 量子位 報道 | 公眾號 QbitAIexFAT&#xff0c;是微軟開發的文件系統&#xff0c;為閃存而生。你的U盤、SD卡、手機等等存儲設備&#xff0c;能存4G以上的大文件&#xff0c;很大程度上是它的功勞。可exFAT一直是專有的&#xff0c;微軟手握多項專利。所以&am…

在linux中安裝oracle中文包,在Linux命令行下安裝Oracle 10g

Oracle 10g支持在命令行下用靜默模式(Silent)安裝&#xff0c;給那些沒有安裝圖形界面的Linux系統提供了極大的便利。下面以Fedora Core 6為例&#xff0c;介紹在命令行下安裝OracleOracle 10g的方法。1 安裝前的準備準備工作要用登錄為root用戶來進行。1.1 選擇安裝環境的語言…

Jetbrains 系 IDE 編輯器的代碼提示功能

著名的 Jetbrains 可謂編程界的一大福音&#xff0c;眾多有名代碼編輯器比如 ItelliJ IDEA、PHPStorm、WebStorm、PyCharm 等&#xff0c;均出自這家公司麾下。 對于中國的Java開發者來說&#xff0c;可能使用 Eclipse 的人最多。 使用Idea的程序員也不少, 而且每個人都在鼓吹其…

Oracle下的Databse,Instance,Schemas

1、DATABASE&#xff0c;對oracle而言&#xff0c;是指物理上的數據庫&#xff0c;一般你安裝了一個oracle的數據庫軟件后&#xff0c;就是一個database。 2、instance&#xff0c;在同一個數據庫上&#xff0c;可以建立多個實例&#xff0c;這些實例互相不干擾&#xff0c;每個…

oracle實驗數據庫和表,1oracle創建數據庫和表.doc

1oracle創建數據庫和表.doc實驗一&#xff1a;創建數據庫和表一、實驗目的1. 掌握使用DBCA創建數據庫2. 掌握手工創建Oracle數據庫的方法3. 掌握創建數據表的方法二、實驗內容及步驟1. 使用DBCA創建數據庫(1) 打開DBCA組件,創建數據庫sale.(2) 安裝完后進入D:\oracle\product\1…

tkmybatis 子查詢_真假童子命符箓道長教你如何查詢

童子命查詢方法一&#xff1a;童子命在相術里&#xff0c;指的是一生都霉運連連如過本命年的人。古代關于真童子命查詢有口訣“春秋甲寅子&#xff0c;冬夏卯未辰&#xff1b; 金木乙卯未&#xff0c;水火庚辛壬&#xff1b; 土命逢辰巳&#xff0c;童子定為真”解釋上面的口訣…

使用 nvm 安裝 nodejs 和 npm

使用 nvm 可以方便的進行 nodejs 的安裝和版本管理。其實最開始使用的是 n 命令&#xff0c;命令簡潔到極致了&#xff0c;無奈總是安裝不成功&#xff0c;往往下載一部分就報 curl 錯誤。然后又找到這個 nvm&#xff0c;配合淘寶源&#xff0c;簡單快捷&#xff5e; 1.到 nvm …