首頁 > 網際網路

【愛加密】防止Android apk二次打包植入廣告

2019-11-29 19:42:13

    辛苦開發個app如果被惡意植入了廣告,不僅自己的利益受到損害,對使用者的體驗傷害也很大。下面為大家分享一篇經驗,僅供參考!!!

 

    如今打包黨真是太猖獗了,為了賺錢真是無所不用其極了,開發者一定要採取措施,來抵禦他們了。傳統的加密措施已然失效,只有選擇專業的加密服務才能抵禦凶猛的侵襲,給大家推薦一個app加密平台——愛加密。目前基礎加密服務是免費的,愛加密採用的加密技術不能說無人破解,要破解至少也得聚精會神三個月!!!

1

 

我們拿HelloWord.apk為例,反編譯植入有米廣告。

首先,我們用apk改之理,反編譯HelloWorld.apk。


2

 

然後按照有米的開發文件進行廣告植入。下載地址http://static.youmi.net/files/sdk/YoumiSdk_v4.04_2013-07-12.zip


1

?1.申請AppID(忽略)

2

 

2.匯入SDK

反編譯,有米SDK ,demo目錄下的ApiDemo.apk。


3

 

3.設定AndroidManifest

3.1 設定使用者許可權(重要)

按文件把許可權拷入helloword的AndroidManifest.xml中。


4

 

3.2 新增必須元件(重要)

按文件把元件拷入helloword的AndroidManifest.xml


5

 

完成上面步驟我們的sdk就已經植入成功了。

以有米廣告條呼叫為例。下面我們開始新增廣告程式碼。

根據文件我們把程式碼新增到要展示廣告的Activity的layout檔案中,並且放在合適的位置。

開啟layout/activity_main.xml,新增布局程式碼。


6

 

這裡新增了一個新的id「adLayout」,我們需要把這個id手動寫到com/example/helloworld/R$id.smali中。注意這裡的16位元value值是遞增的。


7

布局檔案修改完成後,我們在MainActivity的onCreate方法中,呼叫廣告介面,顯示廣告。

我們把下面程式碼寫入android工程中。


8

 

然後反編譯得到對應的smali程式碼。


9

 

把initAD()對應的smali程式碼新增到MainActivity中 ,並在onCreate()方法中呼叫initAD()顯示廣告。(invoke-direct {p0}, Lcom/example/helloworld/MainActivity;->initAD()V


10

 

最後,編譯程式碼生成apk。(頂部導航->編譯->編譯生成apk),安裝生成的apk(頂部導航->ADB->安裝生成的apk)。

程式碼植入前後對比。




IT145.com E-mail:sddin#qq.com