在线观看www成人影院-在线观看www日本免费网站-在线观看www视频-在线观看操-欧美18在线-欧美1级

電子發燒友App

硬聲App

0
  • 聊天消息
  • 系統消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發帖/加入社區
會員中心
創作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內不再提示
電子發燒友網>電子資料下載>嵌入式開發>實例分析Android 平臺資源加載機制

實例分析Android 平臺資源加載機制

2017-10-26 | rar | 0.4 MB | 次下載 | 1積分

資料介紹

2007 年11 月,Google 公司發布基于Linux2.6 內核的移動終端操作系統- Android, 由于其開源性, 得到很多手機廠商的追捧和應用開發者的青睞。近年來智能手機發展迅速,運行速度、存儲容量和可靠性等指標有了顯著提高[1],當今的智能手機用戶對應用軟件的舒適性和美觀性有了更大的期望,應用程序界面友好性已經越來越重要。但是由于Android 的開源性,硬件廠商屏幕分辨率不統一,據統計目前市場上Android系統手機的分辨率有10 余種,分辨率分布如此廣泛使得開發者在處理多分辨率適應方面遇到了不少難題。文章首先介紹Android 平臺的系統架構及資源管理方法,之后介紹目前開發者在處理多分辨率時采用的方法,而后重點分析Android 平臺資源加載機制并且結合實例給出多分辨率的處理步驟及技巧,最后介紹測試多分辨率效果的方法。
  1 Android 平臺簡介
  Android 是一個包括操作系統、中間件和關鍵應用的移動設備軟件堆[2],Android 系統和其他系統一樣,采用分層的架構。由下至上依此為Linux 操作系統和驅動、程序庫及Android 運行時環境、應用程序框架層、應用層。 Android 應用程序的基本組件有Activity、Intent、BroadcaSTReceiver、Service 四種,各個組件的配置信息以及權限管理、版本管理等配置信息都保存在AndroidManifest.xml 中。
  1.1 Android 應用程序資源管理
  手機界面上加載的圖片是Android 資源的一種,除此之外還有XML 資源(anim.xml layout.xml 等) 以及原數據文件( 音視頻文件等)[3]。新建一個HelloAndroid 的Android 應用程序,默認生成的文件架構包含src,gen,assets,res 等文件夾,以及AndroidManifest.xml 配置文件。src 文件夾中保存的是Android 源代碼,res 文件夾代表應用程序需要使用到的資源文件,gen 包中包含R.java 文件。Res 文件夾中包含的所有資源文件都對應在R.java 中。
  當開發者在res/ 目錄中任何一個子目錄中添加相應類型的文件之后,ADT 會在R.java 文件中相應的匿名內部類中國自動生成一條靜態int 類型的常量,對添加的文件進行索引
  Android 系統采取這種架構使視圖等資源文件與控制代碼分離,實現松耦合。然而可以使用R.java 文件在代碼中對相應的資源文件進行存取,靈活操作。
  1.2 一般多分辨率處理方法及其缺點
  1.2.1 圖片縮放
  基于當前屏幕的精度,平臺自動加載任何未經縮放的限定尺寸和精度的圖片。如果圖片不匹配,平臺會加載默認資源并且在放大或者縮小之后可以滿足當前界面的顯示要求。例如,當前為高精度屏幕,平臺會加載高精度資源(如HelloAndroid中drawable-hdpi 中的位圖資源),如果沒有,平臺會將中精度資源縮放至高精度,導致圖片顯示不清晰。
  1.2.2 自動定義像素尺寸和位置
  如果程序不支持多種精度屏幕,平臺會自動定義像素絕對位置和尺寸值等,這樣就能保證元素能和精度160 的屏幕上一樣能顯示出同樣尺寸的效果。例如,要讓WVGA 高精度屏幕和傳統的HVGA 屏幕一樣顯示同樣尺寸的圖片,當程序不支持時,系統會對程序慌稱屏幕分辨率為320×480,在(10,10)到(100,100)的區域內繪制圖形完成之后,系統會將圖形放大到(15,15)到(150,150)的屏幕顯示區域。
  1.2.3 兼容更大尺寸的屏幕
  當前屏幕超過程序所支持屏幕的上限時,定義supportsscreens元素,這樣超出顯示的基準線時,平臺在此顯示黑色的背景圖。例如,WVGA 中精度屏幕上,如程序不支持這樣的大屏幕,系統會謊稱是一個320×480 的,多余的顯示區域會被填充成黑色。
  1.2.4 采用OpenGL 動態繪制圖片
  Android 底層提供了OpenGL 的接口和方法,可以動態繪制圖片,但是這種方式對不熟悉計算機圖形學的開發者來講是一個很大的挑戰。一般開發游戲,采用OpenGL 方式。
  1.2.5 多個apk 文件
  Symbian 和傳統的J2ME 就是采用這種方式,為一款應用提供多個分辨率版本,用戶根據自己的需求下載安裝相應的可執行文件。針對每一種屏幕單獨開發應用程序不失為一種好方法,但是目前Google Market 對一個應用程序多個分辨率版本的支持還不完善,開發者還是需要盡可能使用一個apk 文件適應多個分辨率。
  2 多分辨率處理方案詳解
  2.1 基本術語介紹
  2.1.1 屏幕尺寸
  真正的物理尺寸,屏幕對角線的長度,單位是英寸。為了簡化起見,Android 把支持的所有物理尺寸分成了4 組:small,normal, large, extra large.
  2.1.2 屏幕密度Density
  一定物理范圍的像素的個數,單位通常是dpi(dots perinch), 即每英寸的點數。例如一個低分辨率屏幕相對于高分辨率屏幕在一定的物理區域內包含的像素點要少。為了簡化起見,Android 將所有的屏幕密度分成四組:low, medium,high 和extra high.
  2.1.3 方向Orientation
  從用戶視角來看的屏幕的方向,Portrait 縱向和Landscape 橫向。
  2.1.4 分辨率Resolution
  屏幕上所有的像素點數目,一般用480*800 的形式來表示。密度無關像素dp: Android 平臺中虛擬的像素單位,定義成一種密度無關的形式,像素px 和dp 的轉換公式為 px =dp*(dpi/160)。在界面開發中應使用dp 作為像素單位,從而保證在不同的屏幕密度上控件所占的實際px 因密度而自動調整。
  2.2 手機屏幕的分類
  Android 采用兩種標準對屏幕進行分類。按照屏幕尺寸分為四組small, normal, large, extra large;按照屏幕密度分為四組 low, medium ,high 和extra high,其分界線如圖1所示。
  實例分析Android 平臺資源加載機制
  圖1 Android 中的屏幕分類
  為了優化程序UI,讓其適應多種分辨率并能清晰顯示,一般情況下需要為不同屏幕大小密度提供不同的圖片文件和對應的布局文件,在運行的時候,Android 系統會根據當前設備的屏幕大小及密度等信息,選擇加載其中一套匹配的資源加以運行,從而達到適應多分辨率的效果。
下載該資料的人也在下載 下載該資料的人還在閱讀
更多 >

評論

查看更多

下載排行

本周

  1. 1TC358743XBG評估板參考手冊
  2. 1.36 MB  |  330次下載  |  免費
  3. 2開關電源基礎知識
  4. 5.73 MB  |  6次下載  |  免費
  5. 3100W短波放大電路圖
  6. 0.05 MB  |  4次下載  |  3 積分
  7. 4嵌入式linux-聊天程序設計
  8. 0.60 MB  |  3次下載  |  免費
  9. 5基于FPGA的光纖通信系統的設計與實現
  10. 0.61 MB  |  2次下載  |  免費
  11. 6基于FPGA的C8051F單片機開發板設計
  12. 0.70 MB  |  2次下載  |  免費
  13. 751單片機窗簾控制器仿真程序
  14. 1.93 MB  |  2次下載  |  免費
  15. 8基于51單片機的RGB調色燈程序仿真
  16. 0.86 MB  |  2次下載  |  免費

本月

  1. 1OrCAD10.5下載OrCAD10.5中文版軟件
  2. 0.00 MB  |  234315次下載  |  免費
  3. 2555集成電路應用800例(新編版)
  4. 0.00 MB  |  33564次下載  |  免費
  5. 3接口電路圖大全
  6. 未知  |  30323次下載  |  免費
  7. 4開關電源設計實例指南
  8. 未知  |  21548次下載  |  免費
  9. 5電氣工程師手冊免費下載(新編第二版pdf電子書)
  10. 0.00 MB  |  15349次下載  |  免費
  11. 6數字電路基礎pdf(下載)
  12. 未知  |  13750次下載  |  免費
  13. 7電子制作實例集錦 下載
  14. 未知  |  8113次下載  |  免費
  15. 8《LED驅動電路設計》 溫德爾著
  16. 0.00 MB  |  6653次下載  |  免費

總榜

  1. 1matlab軟件下載入口
  2. 未知  |  935054次下載  |  免費
  3. 2protel99se軟件下載(可英文版轉中文版)
  4. 78.1 MB  |  537796次下載  |  免費
  5. 3MATLAB 7.1 下載 (含軟件介紹)
  6. 未知  |  420026次下載  |  免費
  7. 4OrCAD10.5下載OrCAD10.5中文版軟件
  8. 0.00 MB  |  234315次下載  |  免費
  9. 5Altium DXP2002下載入口
  10. 未知  |  233046次下載  |  免費
  11. 6電路仿真軟件multisim 10.0免費下載
  12. 340992  |  191185次下載  |  免費
  13. 7十天學會AVR單片機與C語言視頻教程 下載
  14. 158M  |  183278次下載  |  免費
  15. 8proe5.0野火版下載(中文版免費下載)
  16. 未知  |  138040次下載  |  免費
主站蜘蛛池模板: 自拍偷拍综合网 | 欧美色图亚洲综合 | 亚洲天堂首页 | 国产女人水多白浆 | 高h细节肉爽文男男 | 欧美性猛交xxxx免费看久久 | 久久精品亚瑟全部免费观看 | 日本三级视频在线观看 | 99色在线视频 | 57pao成人永久免费视频 | 国产成人精品一区二区三区 | 免费高清一级欧美片在线观看 | 色综合小说天天综合网 | 久久精品国产精品亚洲人人 | 色噜噜噜噜 | 欧美黄色精品 | 中文字幕av一区二区三区 | xxx69日本hd| 女人牲交一级毛片 | 日本午夜大片a在线观看 | 欧美全免费aaaaaa特黄在线 | 四虎永久精品免费网址大全 | 最近新韩国hd视频 | 五月国产综合视频在线观看 | 看片免费黄 | 在线天堂中文新版www | 久久国产午夜精品理论片34页 | 都市激情亚洲综合 | semm亚洲欧美在线高清 | 精品国产高清在线看国产 | 成年全黄大色大黄 | 欧美一区亚洲二区 | 国产女同 | 亚洲福利一区福利三区 | 毛片免费看网站 | 黄色日屁 | 欧美丝袜一区 | 国产午夜精品久久久久免费视小说 | 免播放器av少妇影院 | 最新激情网 | 国产精品igao在线观看樱花日本 |