當前位置:首頁 » 安卓系統 » 如何查看android源碼

如何查看android源碼

發布時間: 2023-05-18 00:28:19

❶ 怎樣查看 Android APP 源代碼

需要把反編譯的apk存放到apktools同級文件夾目錄下,然後運行要查看的安裝包,具體操作如下:

1、首先把反編譯的apk存放到apktools同級文件夾目錄下,如下圖所示。

❷ 如何查看Android SDK源碼版本

  1. 點擊菜單欄Tools-Android-SDK Manager

    ❸ 如何使用android studio 查看android源碼

    1、在Android studio的中進行導入一個Android的開發的項目的文件,然後在項目中選中一個需要檢查的文件。 2、項目的文件被選中完成之後,進行點擊Android studio菜單中的Analyze選項菜單。 3、進行點擊完Analyze菜單中之後,就會彈出了一個下拉的菜單的inspect code選項菜單。 4、然後就會彈出了一個speoify inspection scope的談出框,在inspection scope中,whole project為是整個的項目檢查,如果只想檢查剛才選中的文件,進行選中第四個選項即可file【app】即可,然後進行點擊OK。 5、那麼在就會Android studio的底部位置中,彈出了一個項目的檢查的結果,也是檢查結果的列表。 6、如果要查看具體的檢查的內容的話,進行點擊檢查的結果的文件之後,可以查看到的是檢查結果的具體信息內容。

    ❹ 怎樣查看 Android APP源代碼

    將apk文件拷貝至sdcard上。
    命令順序如下:

    進入Android sdk文件夾/tools目錄下
    輸入adb shell
    輸入su
    輸入cd data
    輸入cd app
    這時就可以看到你安裝的所有的apk文件。輸入cp 空格 對應的apk 空格 /sdcard/
    這樣就將apk文件拷貝出來了。
    將apk文件後綴直接變成rar格式,可以看到熟悉的目錄結構了,

    其中xml文件打開後都是二進制的,無法查看。
    這時就用到了一個android4me的AXMLPrinter2工具。(請自行網路搜索)
    輸入以下命令,將xml文件解析出來
    java -jar AXMLPrinter2.jar showtimes_list.xml
    此命令是在命令行中查看此showtimes_list.xml
    將showtimes_list.xml生成xml文件,則輸入以下命令:
    java -jar AXMLPrinter2.jar showtimes_list.xml > h.xml
    目前進行到這一步,只能看到xml文件的內容,其工程中的java源文件還是看不到,看目錄結構下有一個classes.dex文件,我們需要將dex文件變為jar文件。
    這里用到了另一個工具dex2jar。(自行搜索下載)
    在Windows下解壓之後的目錄如下圖所示:

    在命令行中,進入到此目錄下:
    在Windows下,輸入以下命令:
    dex2jar.bat c:classes.dex
    運行完之後,在C盤會多一個classes.dex.dex2jar.jar文件,此文件就是我們需要的jar文件。
    利用jd-gui,將jar文件反向工程為java代碼。(請自行搜索下載)
    它分為Windows、Linux、和max三個版本,這里我下載的是Windows版本的。
    解壓之後,雙擊運行exe文件,選擇classes.dex.dex2jar.jar文件,相應的jar文件中的Java文件就被反向工程顯示出來了!

    ❺ 如何查看Android源碼

    當我們在eclipse中開發android程序的時候,往往需要看源代碼(可能是出於好奇,可能是讀源碼習慣),那麼如何查看Android源代碼呢?

    比如下面這種情況

    假設我們想參看Activity類的源代碼,按著Ctrl鍵,左擊它,現實的結果卻看不到代碼的,提示的信息便是「找不到Activity.class文件」。

    此時點擊下面的按鈕,「Change Attached Source…」,選擇android源代碼所在位置,便彈出圖三的對話框。

    第一種是選擇工作目錄,即已經存在的android應用程序源代碼。

    第二種分兩種方式

    (1)選擇External File…按鈕,添加Jar格式文件或者zip格式文件路徑;

    (2)選擇External Floder…按鈕,添加文件夾所在路徑。

    下面問題就來了,源代碼在哪裡?不能憑空產生阿。

    可以通過Android SDK Manager進行源代碼下載;(推薦該種方法),如圖四

    勾選Source for Android SDK,進行下載即可。

    此外也可通過其他途徑下載,網上有很多共享的資源。

    這里選擇第二種方式的(2)方法,選擇源碼所在目錄(即圖四下載源代碼目錄所在路徑),如圖五

    點擊「OK」按鈕,此時,Activity文件便能夠查看源代碼了,如圖六。

    這樣就大功告成了!!!

    ❻ 大牛們是怎麼閱讀 Android 系統源碼的

    由於工作需要大量修改framework代碼, 在AOSP(Android Open Source Project)源碼上花費了不少功夫, Application端和Services端都看和改了不少.
    如果只是想看看一些常用類的實現, 在Android包管理器里把源碼下載下來, 隨便一個IDE配好Source Code的path看就行.
    但如果想深入的了解Android系統, 那麼可以看下我的一些簡單的總結.

    知識
    Java
    Java是AOSP的主要語言之一. 沒得說, 必需熟練掌握.
    熟練的Android App開發
    Linux
    Android基於Linux的, 並且AOSP的推薦編譯環境是Ubuntu 12.04. 所以熟練的使用並了解Linux這個系統是必不可少的. 如果你想了解偏底層的代碼, 那麼必需了解基本的Linux環境下的程序開發. 如果再深入到驅動層, 那麼Kernel相關的知識也要具備.
    Make
    AOSP使用Make系統進行編譯. 了解基本的Makefile編寫會讓你更清晰了解AOSP這個龐大的項目是如何構建起來的.
    Git
    AOSP使用git+repo進行源碼管理. 這應該是程序員必備技能吧.
    C++
    Android系統的一些性能敏感模塊及第三方庫是用C++實現的, 比如: Input系統, Chromium項目(WebView的底層實現).

    硬體
    流暢的國際網路
    AOSP代碼下載需要你擁有一個流暢的國際網路. 如果在下載代碼這一步就失去耐心的話, 那你肯定沒有耐心去看那亂糟糟的AOSP代碼. 另外, 好程序員應該都會需要一個流暢的Google.
    一台運行Ubuntu 12.04的PC.
    如果只是閱讀源碼而不做太多修改的話, 其實不需要太高的配置.
    一台Nexus設備
    AOSP項目默認只支持Nexus系列設備. 沒有也沒關系, 你依然可以讀代碼. 但如果你想在大牛之路走的更遠, 還是改改代碼, 然後刷機調試看看吧.
    高品質USB線
    要刷機時線壞了, 沒有更窩心的事兒了.
    軟體
    Ubuntu 12.04
    官方推薦, 沒得選.
    Oracle Java 1.6
    注意不要用OpenJDK. 這是個坑, 官方文檔雖然有寫, 但還是單獨提一下.
    安裝:
    sudo apt-get install python-software-properties
    sudo add-apt-repository ppa:webupd8team/java
    sudo apt-get update
    sudo apt-get install oracle-java6-installer
    sudo apt-get install oracle-java6-set-default

    Eclipse
    估計會有不少人吐槽, 為什麼要用這個老古董. 其實原因很簡單, 合適. 剛開始搞AOSP時, 為了找到效率最優的工具, 我嘗試過Eclipse, IntelliJ IDEA, Vim+Ctags, Sublime Text+Ctags. 最終結果還是Eclipse. 主要優點有:
    有語法分析 (快速准確的類, 方法跳轉).
    支持C++ (IntelliJ的C++支持做的太慢了).
    嵌入了DDMS, View Hierarchy等調試工具.
    為了提高效率, 花5分鍾背下常用快捷鍵非常非常值得.
    調整好你的classpath, 不要導入無用的代碼. 因為AOSP項目代碼實在是太多了. 當你還不需要看C++代碼時, 不要為項目添加C++支持, 建索引過程會讓你崩潰.
    Intellij IDEA
    開發App必備. 當你要調試系統的某個功能是, 常常需要迅速寫出一個調試用App, 這個時候老舊的Eclipse就不好用了. Itellij IDEA的xml自動補全非常給力.
    巨人的肩膀

    這個一定要先讀. 項目介紹, 代碼下載, 環境搭建, 刷機方法, Eclipse配置都在這里. 這是一切的基礎.

    這個其實是給App開發者看的. 但是裡面也有不少關於系統機制的介紹, 值得細讀.

    此老羅非彼老羅. 羅升陽老師的博客非常有營養, 基本可以作為指引你開始閱讀AOSP源碼的教程. 你可以按照博客的時間順序一篇篇挑需要的看.但這個系列的博客有些問題:
    早期的博客是基於舊版本的Android;
    大量的代碼流程追蹤. 讀文章時你一定要清楚你在看的東西在整個系統處於什麼樣的位置.

    鄧凡平老師也是為Android大牛, 博客同樣很有營養. 但是不像羅升陽老師的那麼系統. 更多的是一些技術點的深入探討.

    Android官方Issue列表. 我在開發過程中發現過一些奇怪的bug, 最後發現這里基本都有記錄. 當然你可以提一些新的, 有沒有人改就是另外一回事了.

    一定要能流暢的使用這個工具. 大量的相關知識是沒有人系統的總結的, 你需要自己搞定.
    其它
    代碼組織
    AOSP的編譯單元不是和git項目一一對應的, 而是和Android.mk文件一一對應的. 善用mmm命令進行模塊編譯將節省你大量的時間.
    Binder
    這是Android最基礎的進程間通訊. 在Application和System services之間大量使用. 你不僅要知道AIDL如何使用, 也要知道如何手寫Binder介面. 這對你理解Android的Application和System services如何交互有非常重要的作用. Binder如何實現的倒不必著急看.
    HAL
    除非你對硬體特別感興趣或者想去方案公司上班, 否則別花太多時間在這一層.
    CyanogenMod
    這是一個基於AOSP的第三方Rom. 從這個項目的wiki里你能學到很多AOSP官方沒有告訴你的東西. 比如如何支持Nexus以外的設備.
    DIA
    這是一個Linux下畫UML的工具, 能夠幫你梳理看過的代碼.
    XDA

    這里有最新資訊和最有趣的論壇.
    想到了再補充.

    ❼ 如何查看Android的native源碼

    比如我們有一個類是EventLog,其中有一些方法是native的,我們想看下它的源碼,如何操作呢?
    我們可以根據如下的規則,先找到這個基鋒悉類,然後再搜索其中的方法。

    比搏乎如我們的這個EventLog,它的包名是: android.util,於是我們搜索要查找的類為:

    這里通過在線查找的方基磨式,參考網站: http://androidxref.com/

    接下來我們找下這個方法的native實現

    也可以使用這個網站: https://cs.android.com

    ❽ 如何用eclipse查看android源碼

    在Eclipse中查看Android源代碼 1.需要下載一個對應的android sdk,下完了後找到souce目錄,將其中所有的內容拷貝到eclipse所用的sdk下的source目錄下,如果沒有這個目錄則新建一個。 2.在eclipse中打開一個android的類文件,會出現如下圖所示提示: 點擊其中的「Change Attached Source"按鈕,在彈出的對話框中選擇「External Floder",選擇前面復制文件所在的source文件夾。 3.重啟eclipse,一切ok了,可以直接查看android的源代碼,如下圖所示。

    ❾ 怎樣查看 Android APP 源代碼

    壓縮軟體打開apk文件,解壓出根目錄中的classes.dex文件

    使用cmd ,dex2jar.bat classes.dex命令將classes.dex轉換為jar

    再用jd-gui打開該jar就可以查看源碼了,如果apk安全性好的話,有些代碼是看不到的

    ❿ 如何獲取android源代碼

    當前的Android代碼託管在兩個方:https://github.com/android 和https://android.googlesource.com之前在 android.git.kernel.org上也有託管,不過現在重定向到了https://android.googlesource.com好在都支持git訪問

    google提供的repo工具實際上是一個內部操作git工具來簡化操作Android源碼的Python腳本。經過嘗試,直接使用git工具在ubuntu下可以實現cloneAndroid源碼。下面介紹一下方法:

    1.獲取當前的在github上託管的Androidgitrepositories:

    github頁面為:https://github.com/android/following。不過這個頁面不支持通過wget"https://github.com/android/following"或者curl"https://github.com/android/following"的方式訪問,錯誤信息如下:

    這個時候需能做的只能是"tryagain"了。

    需要說明的是"不要試圖同時並發執行多個gitclone命令",這樣會導致大量出現上面貼圖中的錯誤,另外,整個clone過程中耗時最多的gitrepository如下:

    kernel_common.gitkernel_msm.gitplatform_frameworks_base.gitplatform_prebuilt.git其中platform_prebuilt.git是google提供的預編譯好的二進制文件,包含:各種庫文件,jar包,可執行程序等等,如果只是閱讀Android源代碼,這個gitrepository可以不用clone.

熱點內容
java編程課程 發布:2025-02-13 15:36:08 瀏覽:475
cs編譯 發布:2025-02-13 15:36:07 瀏覽:55
高級語言都要編譯解析型語言 發布:2025-02-13 15:06:32 瀏覽:304
openwrt源碼下載 發布:2025-02-13 15:01:59 瀏覽:644
linux刪除一個目錄 發布:2025-02-13 15:00:29 瀏覽:539
螞蟻存儲 發布:2025-02-13 15:00:25 瀏覽:918
腳本師傳奇 發布:2025-02-13 14:45:48 瀏覽:481
我的世界lce伺服器剪輯 發布:2025-02-13 14:40:50 瀏覽:625
phpsftp上傳 發布:2025-02-13 14:35:43 瀏覽:274
c學生管理系統資料庫 發布:2025-02-13 14:21:41 瀏覽:123