當前位置:首頁 » 文件管理 » android手機文件路徑可以映射嗎
擴展閱讀
可以看的電影網站有哪些 2025-01-15 09:54:14

android手機文件路徑可以映射嗎

發布時間: 2025-01-15 09:53:27

⑴ android src中.java、layout中.xml和AndroidManifest.xml文件是通過什麼聯系起來的起什麼作用

簡單說來就是映射。

你可以看到一個正常的android工程下面有個gen文件夾,其中有個包名.R.java,就類似於map的key-value,R.java中就是存放了一個個key值,比如R.drawable.a就對應了res/drawable/a.png文件,那麼我們通過此key就可以獲得此圖片文件的路徑,通過載入圖片的方法載入為圖片,當然有人有疑惑為什麼不載入res/drawable-hdpi/a.png,這個是框架層或者底層讀取機器的屬性(比如解析度、密度信息)分辨出究竟載入哪個文件夾下面的文件。

因為同屬於一個包,有規范的文件夾命名方式,如果你將values文件夾換成valuess,那麼就會報錯,這個就規定了路徑是寫死的,所以我們就可以通過id獲取寫死的路徑下面的文件載入。

對於AndroidManifest.xml中載入res中的資源的原理,跟src中的.java如何載入res中的文件是一個意思。

但是AndroidManifest.xml如何載入src中的.java,看圖片,這是一個apk中包含的文件,classes.dex是所有.java文件編譯過後組合的一個class文件集合,包括R.java編譯過後的class文件,resources.arsc中放的是匹配信息,就相當於map信息,哪個key(就是id)對應哪個value。

程序啟動的時候,先讀取AndroidManifest.xml文件,知道包名,那麼此程序的路徑就無所遁形,AndroidManifest.xml中有些R.drawable.icon的id,它是先讀取classes.dex中的Rclass文件,然後根據匹配表resources.arsc知道目標文件是在哪兒,那麼就可以載入了。當然classes.dex中某個控制項也想載入資源,那麼方式是一樣的。