導航:首頁 > 源碼編譯 > so文件能不能看到源碼

so文件能不能看到源碼

發布時間:2024-08-22 00:28:06

1. 請問安卓的SO文件是怎麼回事,可以反編譯源碼嗎 是如何生成的用JAVA還是C代碼生成的

如何JAVA代碼調用?
jni吧?
安卓的SO文件是linux下的文件,用c或者c++寫的。

2. 如何看到一個APP應用的源代碼

一、安卓APP

android-killer可以反編譯apk,比較方便,不過只能看到smail文件,學習一點smail,你可以看明白他的源代碼的意思,如果有殼的話,先改apk後綴後為zip,找到加殼的so文件,一般如名字中帶xxxprotect.so 用網路,360,騰訊廠商加固的話,也都有對應特點,然後把這個so文件用IDA pro打開,找到它的關鍵加密演算法。找到後,一版是不讓進加密演算法,直接return。就可去殼,去了殼之後,再進行重打包簽名,測試下。
二、ios上的app一般走如下流程
1、 拿個越獄機-下好工具
2、 去越獄平台下個想分析的應用(或者去app store下,用解密工具解密一下)
3、 導入reveal分析頁面,得到想要的知道的具體視圖類或者大致范圍
4、 分析class-mp中,找到想要的類和函數
5、 在IDA或者Hopper中找到具體函數,查看匯編邏輯
6、 修改相應的邏輯,達到篡改目的,重新打包

3. 請問我有一個.so文件,如何在Linux下編程使用呢

-lxx

xx是你的.so文件名

其實使用方法和你使用數學庫函數是一樣的,源代碼中添加

#include <math.h>,編譯的時候,加上-lm參數。

註:linux下的擾褲.so文件為共享庫,相當於windows下的dll文件。

(3)so文件能不能看到源碼擴展閱讀:

linux下編寫調用so文件實例

.so是Linux(Unix)下的動態鏈接庫. 和.dll類似.

比如:

文件有: a.c, b.c, c.c

gcc -c a.c

gcc -c b.c

gcc -c c.c

gcc -shared libXXX.so a.o b.o c.o

要使用的話也緩友簡很簡單. 比如編譯d.c, 使用到libXXX.so中的函數, libXXX.so地址是MYPATH
gcc d.c -o d -LMYPATH -lXXX

注意不是-llibXXX

test.c文件和一個test.h,這兩個文件要生成libsotest.so文件。然後我還有一個testso.c文件,在這個文件裡面調用libsotest.so中的函數。

編寫的過程中,首先是編告孝譯so文件,我沒有編寫makefile文件,而是參考的2裡面說的直接寫的gcc命令

因為so文件裡面沒有main函數,所以是不可執行的,所以編譯的時候要加上-c,只生成目標文件。

閱讀全文

與so文件能不能看到源碼相關的資料

熱點內容
上滑命令 瀏覽:899
linux紅帽伺服器版 瀏覽:65
檢查jdk版本命令 瀏覽:962
如何加入葉楓伺服器 瀏覽:863
android虛擬機許可權 瀏覽:73
趨勢平均力度源碼 瀏覽:280
做程序員好難 瀏覽:240
晚年程序員的生活 瀏覽:411
安卓什麼型號可以用兩年不卡 瀏覽:188
安卓怎麼一邊玩游戲一邊打電話 瀏覽:282
體育綜合分的演算法 瀏覽:599
用友客戶端連伺服器P地址 瀏覽:525
程序員小工具有哪些 瀏覽:850
android難用 瀏覽:253
2021金磚論壇數據演算法盛宴 瀏覽:744
職校學計算機出來可以當程序員嗎 瀏覽:478
androidxml命名 瀏覽:85
批命令if 瀏覽:101
手機桌面出現安卓圖標怎麼辦 瀏覽:965
php網站生成app 瀏覽:731