1. 程式人生 > >ctrl鍵看android studio java原始碼

ctrl鍵看android studio java原始碼

 AndroidStudio中原始碼檢視

linux是在 /home/name/ 都在使用者目錄配置即可

Android開發中,我們有時渴望知道一些系統API的詳細資訊,以便更好的理解其實現原理、使用方法、注意事項等等,這時就用到今天說的這些小技巧了。 
本人使用的IDE環境是Android Studio,版本2.1.2,相信其他版本與此配置一樣。 
以Context為例,按著Ctrl鍵,用滑鼠左鍵點選Context,如果專案配置好了原始碼檢視環境的話,IDE會呈現Context.Java的原始檔,這裡面有原始碼,註釋等等,反之,看到的會是反編譯出來的資訊,有效資訊大大減少,昨天 檢視Application時方法體都是空的,也沒有註釋,這種情況下怎麼辦呢,下面就講解一下這方面的技巧。

1、下載原始碼

在當前IDE所關聯的SDK目錄(File->Settings->Appearance & Behavior->System Settings->Android SDK 可以檢視當前SDK所在目錄)中,sources資料夾中放置的就是各個版本的原始碼(例如:android-23),如果一個也沒有,可以將別人的直接拷貝到sources資料夾中,也可以使用一下方法下載。 
開啟SDK Manager,在SDK Platforms這一欄下面,會有版本列表,選中你要下載原始碼的那一列,點選下面按鈕Apply,會彈出視窗Confirm Change視窗,點選OK,彈出License Agreement視窗,點選Accept同意此協議,然後點選Next,會看到原始碼開始自動下載安裝了。

這裡寫圖片描述

這裡寫圖片描述

下載時需要持續一段時間,還有一個原始碼獲取渠道AndroidDevTools,Android SDK Tools這一選單欄下Android Framework Source Code這一項,有一些系統版本可供大家下載使用。

2、配置路徑

上一步中使用SDK Manager安裝完原始碼之後,如果不能檢視Context等原始碼的話,就遇到筆者相同的問題了,解決方法如下: 
在系統盤C盤下,找到 使用者/使用者名稱/.AndroidStudio版本號/config/options/jdk.table.xml,開啟此XML檔案,這裡面記錄著Android SDK版本和JavaSDK版本的資訊。 
以配置android-21為例

<jdk version="2">
  <name value="Android API 21 Platform" />
  <type value="Android SDK" />
  <homePath value="D:\AndroidSDK" />
  <roots>
    <annotationsPath>
      <root type="composite">
        <root type="simple" url="jar://$APPLICATION_HOME_DIR$/plugins/android/lib/androidAnnotations.jar!/" />
      </root>
    </annotationsPath>
    <classPath>
      <root type="composite">
        <root type="simple" url="jar://D:/AndroidSDK/platforms/android-21/android.jar!/" />
        <root type="simple" url="file://D:/AndroidSDK/platforms/android-21/data/res" />
      </root>
    </classPath>
    <javadocPath>
      <root type="composite">
        <root type="simple" url="file://D:/AndroidSDK/docs/reference" />
      </root>
    </javadocPath>
    <sourcePath><!-- 配置此項 -->
      <root type="composite" />
    </sourcePath>
  </roots>
  <additional jdk="1.7" sdk="android-21" />
</jdk>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28

sourcePath這一標籤包含的內容改為

<sourcePath>
  <root type="composite">
    <root type="simple" url="file://D:/AndroidSDK/sources/android-21" />
  </root>
</sourcePath>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 1
  • 2
  • 3
  • 4
  • 5

大家將url的值改為自己的路徑即可。

3、重啟IDE

重啟之後,大家再試試,應該就可以檢視類的原始碼了。

提示:你檢視的原始碼的版本與你的 compileSdkVersion 一致,例如我採用21的,看到的Context的原始碼就是sources/android-21下面的原始碼。