Android檢視api原始碼
比如檢視Activity的原始碼,如圖
也可以檢視系統方法怎麼去實現一個過程,
如每個activity設定介面時都會去呼叫的一個方法:setContentView(R.layout.welcome
從程式碼中我們可以看到,這個方法其實就是系統分裝好我們拿來用的簡化版,我們也可以按照原始碼裡面的
getWindow().setContentView(R.layout.welcome);
這樣的實現效果都是一樣的。
在例如系統提供的按鈕控制元件Button:
不看不知道一看明白了,原來它的父類就是TextView,那在然我們看看TextView控制元件的原始碼:
可以發現,它的父類是View,安卓的系統控制元件都是繼承了View類,畫出來的,所以在我們想要自定義控制元件的時候,可以繼承View去做出自己想要的控制元件。
在Eclipse中需要檢視某個類的原始碼,直接按住Ctrl 然後點選想要檢視的類或則方法,就會開啟相對應的類檔案,可是這是建立在配置好源source的情況下才會打得開,下面讓我們去看看如何配置:
一.android API 原始碼
1.首先要先下載SDK下的對應版本API的原始碼Source for Android SDK
2.之後找到你所安裝的SDK所在的目錄,我的SDK目錄路徑是:C:\Users\Administrator\android-sdks
找到各個版本的對應sources資料夾
裡面就是對應的你所下載版本的原始檔
我們拿4.3來做個例子(android-19 就是對應4.3)找到目錄路徑
C:\Users\Administrator\android-sdks\sources\android-19
之後右擊你的專案,選選單最下方的Properties --- Java Buld Path --- Libraries --- android 4.3 --- android.jar
點選Edit,
在上圖所示輸入框放入你前面原始碼的目錄,之後專案會自動更新,之後便可以檢視原始碼了。
二:檢視對應的support拓展包的原始碼
下面以android-support-v4.jar為例子
1.先要下載SDK下的android support library,這個裡面包含了最新版本的拓展包
之後找該拓展包到目錄,這就是V4的架包路徑,我的路徑為:C:\Users\Administrator\android-sdks\extras\android\support\v4\src
在你所在的專案的LIB檔案下,會有一個android-support-v4.jar架包,在該目錄下建立檔案命名為:android-support-v4.jar.properties,(其他V7什麼的架包類似,在原架包名稱後面加上.properties既可以),如下圖所示:
我的是support v4的架包原始碼路徑為C:\Users\Administrator\android-sdks\extras\\android\support\v4\src
之後開啟你所建立的這個檔案,在裡面輸入你該架包原始碼所在的位置路徑:
如果是WINDOWS作業系統下,輸入的路徑為:C:\\Users\\Administrator\\android-sdks\\extras\\android\\support\\v4\\src
ndroid-support-v4.jar.properties檔案中格式: src = C:\\Users\\Administrator\\android-sdks\\extras\\android\\support\\v4\\src
之後這步很關鍵,就是把這個專案CLOSE了,之後在OPEN,
之後我想檢視V4架包的FRAGMENT這個類,就是通過按住CTRL在點選FRAGMENT,查看了,
通過原始碼去深入學習API的實現過程,可以讓我們對android有更深入的體會和了解。
相關推薦
Android檢視api原始碼
當我們閱讀Android API開發文件時候,上面的每個類,以及類的各個方法都是已經寫好的方法和控制元件,可是我們只是在搬來使用,不知道它的原理,它是如何被實現的。android系統是開源的,所以谷歌官方在每釋出一個版本的時候都會放出它對應的API原始碼的,讓我們可以深入瞭
檢視Android的API原始碼方法
推薦一個去除Android的API原始碼中hide隱藏的API地址,可以直接下載替換Android Studio中platform下android.jar檔案 地址: https://github.com/anggrayudi/android-hidden-api 用法: 1.下載對
Android檢視網頁原始碼
1 佈局 <ScrollView android:layout_width="wrap_content" android:layout_height="wrap_content" > <TextView
解決 Android 26 無法檢視系統原始碼的問題
隨著 Android 8.0 的正式釋出,相信有些朋友已經升級 SDK 開始使用新特性了。然而需要注意的是,這一次 Google 並沒有及時釋出與之對應的 Android-26 原始碼。這帶來的問題是,當你按下 command 同時單擊某個系統 API 想瀏覽原始碼文件時,會
ANDROID自定義檢視——onLayout原始碼 流程 思路詳解
簡介: 在自定義view的時候,其實很簡單,只需要知道3步驟: 1.測量——onMeasure():決定View的大小 2.佈局——onLayout():決定View在ViewGroup中的位置 3.繪製—
檢視Android系統的原始碼 線上和離線方式 及閱讀工具
前言 不管是做Android底層(Framework-Linux-驅動)開發,還是做APP開發,對於Android的某一個功能,某一個機制,或者某一個API,它到底是如何實現的,需要 Re
Android檢視jar包原始碼問題
在Eclipse中開發android的應用程式時,有時想檢視函式的內部實現,但是當在函式上點選ctrl和滑鼠左鍵的時候, 往往出現如下提示: Class File Editor Source not found The JAR of this class fil
Android專案匯入jar包——Android檢視Jar包的原始碼——配置
一、Jsoup 的 jar包的匯入和jsoup 的原始碼檢視。 類似【android-support-v4.jar】 (1)Jsoup匯入: 將包直接放入libs目錄下,系統會自動識別——不用修改Build Path! 使用jsoup不需要新增許可權,只是訪問網頁讀取儲
關於Eclipse中“ctrl+滑鼠左擊類”快捷鍵不能檢視該類API原始碼的解決方法
這兩天重灌了一次系統,由32位的轉成了64位的,以為64位系統只能安裝64位的JDK,後來從網上查詢了一下,只要安裝的JDK和Eclipse相匹配就行,也就是說64位系統也能夠執行32位的Java和32位的Eclipse,這裡順帶提一下
Android studio檢視sdk原始碼
以Android api24為例: 1、當我們在Activity上按下ctrl+滑鼠左鍵,會出現Activity.class檔案,這是Android studio反編譯過來的Activity.class檔案,對我們有用的資訊很少 2、看圖中標記的,找不到原始碼有兩種情況
com.android.build.api.transform.TransformException: java.util.zip.ZipException: duplicate entry: android/support/annotation/ColorRes.class
導致 .class div src jar 技術 cnblogs 沖突 信息 保存信息如上: 我在添加一個支持庫的時候遇的問題,這個庫com.yanzhenjie:album:1.0.5 這是由於v4包重復導致的,在網上我也找過多種解決方案 用了這種,方式 confi
【輸出文件】 Android 加密 模組原始碼分析
Android6.0 加密模組解析
關於Android Camera2 API 的自動對焦的坑
https://www.jianshu.com/p/280e5301b7b9 一、使用。關於Camera2的API使用,參考Google官方的例子: Camera2Basic Camera2Raw Camera2Video 這是一手資料,配合官方的資料理解Camera2 API的底層原理:
android檢視so動態庫的介面
使用命令列檢視so介面: nm -D xxx.so 本人測試自己用到的一個so動態庫的介面資訊如下: 00029104 T Java_com_bjy_ffmpeg_1cmake_1single_utils_FFmpegKit_run U __aeabi_d2lz
【Android】Retrofit原始碼分析
Retrofit簡介 retrofit n. 式樣翻新,花樣翻新 vt. 給機器裝置裝配(新部件),翻新,改型 Retrofit 是一個 RESTful 的 HTTP 網路請求框架的封裝。注意這裡並沒有說它是網路請求框架,主要原因在於網路請求的工作並不是 Retrofit
【Android】OkHttp原始碼分析
Android為我們提供了兩種HTTP互動的方式:HttpURLConnection 和 Apache HttpClient,雖然兩者都支援HTTPS,流的上傳和下載,配置超時,IPv6和連線池,已足夠滿足我們各種HTTP請求的需求。但更高效的使用HTTP 可以讓您的應用執行更快、更節省
如何檢視apk原始碼
有時我們需要研究一下某個apk的原始碼,應該怎麼做呢? 經過網上搜集資料並親自驗證,總結如下: 資料: Android APK反編譯檢視原始碼的方法 https://jingyan.baidu.com/article/d3b74d64ffd91f1f77e609a3.html
Android 檢視apk安裝包的AndroidManifest.xml檔案
在Android開發中,可能需要從我們自己的應用跳轉到別的應用的介面,但是在不知道別的應用的包名以及類名的情況下,是很難做到這一點的,有個最簡單的方法就是下載應用的apk檔案,然後修改後綴名為zip或者rar,之後解壓檔案,在解壓出來的檔案中,就會有一個AndroidManifest.xml的檔案,
Android Doze模式原始碼分析
轉自:https://www.cnblogs.com/l2rf/p/6373794.html 科技的仿生學無處不在,給予我們啟發。為了延長電池是使用壽命,google從蛇的冬眠中得到體會,那就是在某種情況下也讓手機進入類冬眠的情況,從而引入了今天的主題,Doze模式,Doze中
android基礎--API動畫學習與擴充套件
動畫效果一: AnimatorSet.Builderl: 這篇文章主要看的不是這個簡單的效果,大家來看下文章中的註釋與解釋吧 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24