1. 程式人生 > >《Android破解之北斗手機定位系統》之繼續破解

《Android破解之北斗手機定位系統》之繼續破解

,感興趣的朋友可以速速圍觀,下面我要說明的是以下幾點:

一款視覺化的用於修改安卓Apk程式檔案的工具,集Apk反編譯、Apk打包、Apk簽名,支援語法高亮的程式碼編輯器,基於檔案內容的關鍵字(支援單行程式碼或多行程式碼段)搜尋、替換引擎,打造一條龍修改工具(不必再借助各種第三方工具),從而大大簡化Apk修改過程中的繁瑣工作,節約時間,讓你能夠把精力全部集中在修改任務中。

  1、全自動的反編譯、編譯、簽名,從此不必再輸入繁瑣的Apk解包、打包命令。

  2、以樹目錄管理全部Apk資原始檔,瀏覽、管理、開啟、刪除檔案或資料夾都可以統一在軟體中實行,方便快捷。

  3、自動識別影象資源,並提供該類資源的快捷替換功能,方便修改這類圖片資源。

  4、內建程式碼編輯器,支援包含(但不限於)。samli、。xml、。html、。java等的各種檔案的語法高亮顯示,根據檔案格式自動匹配相應語法;同時支援使用系統編輯器來編輯程式碼檔案。

  5、內建基於檔案內容的單行或多行程式碼搜尋、替換引擎,一鍵搜尋替換,可顯示無窮多個搜尋結果以標籤的形式分門別類;可指定搜尋範圍(全部原始碼或在指定的資料夾中搜索),支援正則表示式搜尋和替換。搜尋功能是Apk修改的一個重要工具,從此你不必藉助其它第三方搜尋工具。

  6、內嵌Unicode、AscII互轉工具,以方便漢化類修改。

  7、內建類似於系統cmd.exe的命令視窗,高手也可以手動直接輸入各種命令來手動操作。

  8、所有操作步驟、操作結果都以良好的閱讀格式輸出在日誌視窗,方便檢視修改的歷史記錄。

  9、內建adb功能,包括使用adb向裝置(或模擬器)安裝、解除安裝修改後的apk進行測試,並嵌入adb log、ddms等功能監測修改apk的執行狀況,以便於分析和查詢錯誤。

  10、支援介面換膚。

截圖如下:


small語法:

反編譯後可以得到jar或者得到smali檔案,Android採用的是java語言 進行開發,但是Android系統有自己的虛擬機器Dalvik,程式碼編譯最終不是採用的java的class,而是使用的smali,具體詳情看參考文章:http://mobile.51cto.com/aprogram-464015.htm

,這裡我列下基本語法,以便本內容使用:

.field private isFlag:z  定義變數

.method  方法

.parameter  方法引數

.prologue  方法開始

.line 12  此方法位於第12行

invoke-super  呼叫父函式

const/high16  v0, 0x7fo3  把0x7fo3賦值給v0

invoke-direct  呼叫函式

return-void  函式返回void

.end method  函式結束

new-instance  建立例項

iput-object  物件賦值

iget-object  呼叫物件

invoke-static  呼叫靜態函式

條件跳轉分支:

"if-eq vA, vB, :cond_**"   如果vA等於vB則跳轉到:cond_**

"if-ne vA, vB, :cond_**"   如果vA不等於vB則跳轉到:cond_**

"if-lt vA, vB, :cond_**"    如果vA小於vB則跳轉到:cond_**

"if-ge vA, vB, :cond_**"   如果vA大於等於vB則跳轉到:cond_**

"if-gt vA, vB, :cond_**"   如果vA大於vB則跳轉到:cond_**

"if-le vA, vB, :cond_**"    如果vA小於等於vB則跳轉到:cond_**

"if-eqz vA, :cond_**"   如果vA等於0則跳轉到:cond_**

"if-nez vA, :cond_**"   如果vA不等於0則跳轉到:cond_**

"if-ltz vA, :cond_**"    如果vA小於0則跳轉到:cond_**

"if-gez vA, :cond_**"   如果vA大於等於0則跳轉到:cond_**

"if-gtz vA, :cond_**"   如果vA大於0則跳轉到:cond_**

"if-lez vA, :cond_**"    如果vA小於等於0則跳轉到:cond_**

看到這裡應該大概明白為什麼作者要改lt為gt了吧,小於變成大於了,呵呵,這裡大家重點要掌握就是這個函式呼叫:invoke-static,看明白了基本就可以完成下面去廣告的功能了,除了作者的lt轉gt功能;

去廣告:

如果大家完成了作者的修改lt左右後,發現有個非常討厭的彈出廣告每次都出來,而且不小心點選就會自動下載,我就中招無數,可憐了筆者的小手機,故此必須除掉它,我們首先看下整個專案反編譯後的效果,瀏覽會發現waps這個jar 包,


那就好辦了,搜尋waps 關鍵字,終於出了它本身之外,我們發現了在自己的smali檔案裡出現了一個方法showPopAd,判斷就是它,直接刪除即可,編譯生成可不再顯示彈出廣告;


修改軟體顯示資訊

1,中文

直接定位到string檔案,雙擊開啟就可以編輯任何可見中文,截圖如下:


2,ASCII

發現文字是直接寫到程式碼裡面的,這裡表示對開發者偷懶的極度不滿,讓破解遇到問題,比如如下文字:


轉換後明顯親切了,如下圖:


遇到問題如何解決:

1 破解工具使用,記得要安裝JDK1.7喔,不然可能出現問題吧,出現別的問題自行百度;

2 語法問題,smali 基本語法要懂,不然無法下手,反正就是邊學邊用,程式設計師基本都是如此;

3 第三方jar包,建議先瀏覽看看有哪些方法,然後進行全域性搜尋;

ASCII,遇到不要怕,因為這是可以轉成中文的,如果看不懂,記得轉成中文喔;

聯絡筆者:

感興趣的可以發郵件聯絡筆者:[email protected],特別註明:破解後的軟體不免費提供,請尊重智慧財產權。

附言:

非常感謝原破解作者,站在巨人肩膀,別忘記了繼續往上爬,不然,你還是沒有人家看的高,看的遠,與君共勉。