Android APP如何防止二次打包

2021-10-04 08:29:55 字數 933 閱讀 5022

要實現**內部防止

被二次打包首先得了解

apk的機器識別原理,

apk的唯一識別是依靠包名和簽名來做鑑定的

,類似豌豆夾的洗白白、

360手機衛士等安全軟體對

apk的山寨識別,他們就是依賴包名來確定

apk,

然後通過簽名來確定其是否山寨。所以說自己的程式內部在啟動的時候可以通過獲取

apk本身的簽名然後和正確的簽名做對比來識別自己是否被二次打包。(判斷的本質就是簽名)

1.獲取apk自身簽名的md5值

通過packagemanag物件可以獲取apk自身的簽名,簽名分解後得到一串接近20個位元組的字串,這個字串就是apk簽名的md5值,通過獲取的簽名md5值與正確的md5值進行對比,就可以識別其apk是否被盜版:

public void getsinginfo() catch (exception e)  catch (exception e)}

}}

被上面呼叫的方法

public void parsesignature(byte signature)}

} catch (exception e)  catch (exception e)}

}}

2. 下面獲取的是除錯時的簽名資訊

window--->android--->build--->md5 fingerprint 對應的值

keytool 是安全鑰匙與證書的管理工具.它管理乙個儲存了私有鑰匙和驗證相應公共鑰匙的與它們相關聯的x.509 證書鏈的keystore(相當乙個資料庫). 

android APP如何實現launcher

android largeheap true android persistent true 在啟動的activity裡面新增filter android name android.intent.action.main android name android.intent.category.def...

如何設計Android APP測試用例

開發應用程式是一項壓力很大的工作,人無完人,工作中遇到bug是很正常的事,有些程式設計師會生氣,沮喪,鬱悶,甚至洩氣,也有一些程式設計師則會比較淡定。當涉及到安卓平台及其提出的獨特問題的數量 安卓就ui提出顯著挑戰 時,挑戰變得更加複雜。關鍵字 碎片化 象徵著移動應用全面測試的最大障礙,還表明了發布...

Mac電腦開發Android app如何連線真機

1 安卓手機用資料線連線到mac電腦的usb介面,開啟安卓手機開發者選項usb除錯 2 開啟mac電腦終端命令臺輸入 system profiler spusbdatatype 然後就會顯示入下圖,記下 vendor id 3 進入 users 自己的使用者名稱 android 比如我自己的 use...