圖/文 聽鬼哥說故事
閑話少說,so的修改,重要性大家都知道,這裡從頭編寫so檔案,分析so檔案,修改so檔案,打算做一個系列的教程,當然,主要是看時間允許。
android的sdk配置以及ndk環境下載下傳,請同學們自行google即可。
翻牆也不會,工具也不會用,搜尋也懶得搞,請直接略過本文即可。
0x1:建立立一個安卓工程

0x2:編寫調用so代碼和方法定義
在MainActivity.java同目錄下建立一個JniGg.java檔案,用于調用so
0x3:生成檔案頭.h檔案
在這個目錄可以看到我們編寫好并且已經編譯的class檔案,eclipse是自動編譯的。
一切正常編譯,那麼現在我們回到工程根目錄下:
然後在指令行切換到此目錄:
現在我們使用下面的指令:javah -classpath bin/classes -d jni com.ggndktest1.JniGg
不報錯,并且成功編譯出.h檔案,才算成功的。
上面需要注意的是那個bin/classes,因為我的電腦上編譯完的classes目錄是這個樣子的,參照上文那個檔案目錄的截圖圖檔,個别電腦上不需要/classes。然後在Eclipse,右擊工程,進行重新整理,可以看到如下截圖:
0x4:編寫c代碼
在jni目錄下建立file,gg-jni.c自己看看代碼,也就知道啥意思了
然後就是Android.mk檔案的編寫了
0x5:生成so檔案
切換到工程根目錄,然後直接ndk-build即可。這裡需要注意,ndk-build需要配置環境變量,自行搜尋配置方法即可。
0x6:android調用代碼
建立一個TextView,然後顯示so裡面的字元串。然後運作我們的測試代碼:
相關附件和文檔:
http://pan.baidu.com/s/1pJ2Y047
文章同時也交由www.pd521.com 首發,轉載請注明出處。