輕鬆搭建Xposed Hook

2021-08-22 07:11:01 字數 1935 閱讀 2157

0x1.開啟as建立乙個沒有介面的空工程,然後在清單檔案中新增如下**:

0x3. 建立乙個類main,並在main中實現 xposed 中的介面 ixposedhookloadpackage 並重寫方法handleloadpackage

public class main implements ixposedhookloadpackage 

}

0x4. 宣告主入口類路徑需要在 main 資料夾下建立 assets 資料夾中新建乙個 xposed_init 的檔案,並在其中宣告主入口類,com.example.y0n.hookdemo.mainactivity,如下圖所示:

0x5.在過載的函式中寫入想要hook的函式等

//  找到對應的方法,進行替換

// 引數 1 :類名

// 引數 2: 方法名

// 引數 3 :實現監聽,重寫方法

// replacehookedmethod 替換方法

// beforehookedmethod 方法前執行

// afterhookedmethod 方法後執行

xposedhelpers.findandhookmethod(telephonymanager.class,

"getdeviceid", new xc_methodreplacement()

});xposedhelpers.findandhookmethod(telephonymanager.class,

"getsubscriberid", new xc_methodreplacement()

});

0x6.如果hook的是非系統類,而是第三方類,且含有引數,則第乙個引數為要hook的類名字串,同時需要修改第二個引數的classloader 為當前例項的classloader,第三個引數則為hook的方法名,第四個引數為hook函式的引數,具體根據實際hook的函式來寫,第5個引數為hook的重寫,參考**如下:

//  找到對應的方法,進行替換

// 引數 1 :類名

// 引數 2: 方法名

// 引數 3 :實現監聽,重寫方法

// replacehookedmethod 替換方法

// beforehookedmethod 方法前執行

// afterhookedmethod 方法後執行

xposedhelpers.findandhookmethod("org.sugram.base.mainactivity",

loadpackageparam.classloader,

"oncreate",

bundle.class,

new xc_methodreplacement()

});

0x8.執行效果

輕鬆搭建svn環境

前文所述svn客戶端使用的時候,用的svn伺服器通常為外部,例如google code的伺服器,不過,做為乙個程式開發人員,就算自己乙個人寫程式,也應該有乙個svn版本控制系統,以便對開發 進行有效的管理。這裡我就介紹乙個在windows環境下簡單快速搭建svn伺服器的方法。通常的svn伺服器是搭建...

centos輕鬆搭建NFS

首先要了解nfs是由哪兩個服務帶動,乙個是rpcbind乙個是nfs。這兩個服務啟動是有先後順序的,要先啟動rpcbind再啟動nfs.如圖所示 這裡有乙個案例 這道題要怎麼做?nfs伺服器配置 首先新建兩個目錄,乙個是rw乙個是ro的。root nfs svr w shared cat etc e...

輕鬆搭建TensorFlow開發環境

進入本書的開門階段,先從環境的搭建開始。雖然tensorflow支援cpu執行,但是裡面也會有一些內容例項涉及到只能在gpu上執行。所以很有必要在學習本書之前購買乙個帶有gpu顯示卡的機器。本書使用的python 3.5開發環境,開發工具使用anaconda,作業系統使用windows 10。ten...