導航:首頁 > 操作系統 > android密度適配

android密度適配

發布時間:2022-07-16 22:21:26

1. android dimens 怎麼適配

在res中建立不同的values—normal(large、xlarge)-m(h、xh)dpi分別對應不同的屏幕尺寸和不同的解析度(small和ldpi在手機上沒有可以不考慮),例如values-large-mdpi他對應的是手機尺寸在4到7寸之間屏幕密度在140到200之間的手機;或者你對某一款手機做精確適配就是values-w1080dp-h720dp-m(h、xh)dpi 不過一般推薦使用區間適配 有的時候我也不確定他會找哪一個文件下面的對應的dimens 不過一般他會找和自己最相近的那個values進行適配 你可以在android API裡面尋找 google大神們 會考慮這一點的 查看原帖>>

2. android適配布局,寫了個文件layout-1800x1080,結果改解析度的手機沒調用這個布局

  1. 屏幕適配默認調用最接近當前解析度的布局樣式,當前手機解析度是否為1800x1080,如果確定,查看當前手機的屏幕密度情況,TeachCourse使用模擬器調試,方便更改屏幕密度/屏幕解析度等參數

  2. 建議使用下面方法查看當前屏幕密度:

  3. floatdensity = context.getResources().getDisplayMetrics().density;

3. android屏幕適配做哪幾個尺寸

android屏幕適配尺寸有全屏模式、4:9、8:12多種。

android屏幕適配尺寸有多種,具體的要結合自己的興趣愛好和手機的自身的實際情況,具體設置標准如下:

1、不要使用絕對布局,這會限制你的手機屏幕的更換。

2、盡量使用match_parent ,從而保證屏幕的最大化利用。

3、盡量使用權重(android:layout_weight),保持手機屏幕合理布局。

4、盡量使用android的shape 自定義,形成純色背景。

5、可以在res目錄上新建layout-HxW.xml的文件夾進行在特定解析度下適配。


拓展資料:

由於筆記本電腦採用的液晶屏的大小和解析度是根據它的市場定位決定的,所以為了適應不同人群的消費能力和使用習慣,筆記本電腦的液晶顯示器的尺寸和解析度種類遠遠要比台式液晶顯示器多。

4. 適配Android N 需要注意什麼

1. Android 中 Java 的實現向 OpenJDK 8 遷移

android 是站在 Linux 和 Java 肩膀上快速成長的,在運行時依賴 Oracle JDK,早在 2010 年甲骨文就起訴谷歌侵權 Java。在 N 中 Google 採用 OpenJDK 8 作為 Java 的實現,在 Java 實現上的一些差別可能導致應用出問題。如:

(1) ArrayList 實現中的私有屬性 array 被移除

反射使用該屬性的需要注意下

(2) 隨機數種子調用可能出錯

Crypto 安全提供商在 OpenJDK 中不提供,而它在大家調用 SecureRandom.setSeed() 設置隨機種子時會用到,OpenJDK 中需要通過 SecretKeySpec 去直接載入原始密鑰或者使用真正的密鑰導出函數。

有了解 OpenJDK 8 與 oracle JDK 更多實現差別的歡迎留言。

2. JNI 中不允許調用非公有 API

JNI 中不允許調用非公有 API,由於命名空間的變化,在 Android N 上運行會崩潰,需要切換到對應公有 API。

3. 「老人機的適配」

Android N 允許用戶設置顯示密度,有點像老人機模式。需要測試 App 在 sw320dp 密度下顯示是否正常,及配置變更後應用是否會有異常。

4. 後台優化——三個廣播被禁止監聽或發送

(1) CONNECTIVITY_CHANGE 廣播

對 targetVersion 設置為 Android N 的 App,在後台時不再能接收到 CONNECTIVITY_CHANGE 廣播,前台不影響。

(2) ACTION_NEW_PICTURE 和 ACTION_NEW_VIDEO 廣播

所有運行在 Android N 上的 App 不能發送或是接收新增圖片(ACTION_NEW_PICTURE)和新增視頻(ACTION_NEW_VIDEO) 的廣播。

5. 許可權改動

(1) GET_ACCOUNTS 許可權被廢棄

對 targetVersion 設置為 Android N 的 App,GET_ACCOUNTS 許可權被廢棄。

(2) 增加 ACTION_OPEN_EXTERNAL_DIRECTORY 許可權

這個感覺就是對部存儲設備寫許可權的保護,需要用戶同意,說不定以後就慢慢廢棄 WRITE_EXTERNAL_STORAGE 許可權了。

6. 更嚴格的 Doze 模式

大家知道在 Android 6.0 中,在手機關屏且靜止時,Doze 模式通過推遲 CPU 和網路操作延長底池壽命。而 Android N 則在手機關屏時就會一定程度限制 CPU 和網路操作,進入 Doze 模式一段時間後進一步限制 WakeLock、Alarm、GPS 和 Wi-Fi 掃描等,做好迎接休眠狀態下更多功能受限導致的 bug 吧。

7. 自帶 ICU4J 庫的子集

更方便 App 的全球化了

5. Android 開發中 如何做到XML多屏幕適配

Android上面解決適配不同尺寸(解析度)和密度的問題,主要是通過以密度分類,再加上解析度的方式來減化適配不同尺寸屏幕的工作量.
一般來講,屏幕解析度越高,清晰度也應該越高,也即其密度也應該越大,否則會看起來很不清楚,比如4寸的屏幕只顯示100個像素,這就近距離看電影,或者看投影儀一樣,非常的粗糙和不清晰.所以,Android主要是以屏幕密度來區分不同的設備:
高密度: hdpi (High dots per inch)
中等密度: mdpi (Medium dots per inch)
低密度: ldpi (Low dots per inch)
並且布局中推薦使用密度無關單位dip或dp,來作為長度或者寬度的單位.這樣,從理論上來講,開發者只需要做:
1. 為不同的密度屏幕准備圖片資源
(圖片是沒辦法的,因為圖片的長度和寬度是固定的像素值,不能夠隨密度變化而變化,可以強行拉伸,但圖片會失真.當然也有9 Patch圖片可以解決隨意拉伸的問題.但普通的圖片的長度和寬度是固定的.
2. 用dip作為單位來指定長度或者寬度
就可以適配所有的設備,讓布局在所有的屏幕上都得到比較好的顯示效果.
當然,現實的生活沒有這么完美,各種設備千差萬別.但是總體仍可分為這三大類,為這三大類准備好圖片後,其他的只要與某一類較接近,即使稍有拉伸或失真,也不太明顯,是可以接受的.所以,對於一般性的應用程序,寫一個布局文件在layout中,為三種密度准備圖片drawable-hdpi, drawable-mdpi, drawable-ldpi,就足以應對80%的設備.
res/
drawable-hdpi/
ic_launcher.png
drawable-mdpi/
ic_launcher.png
drawable-ldpi/
ic_launcher.png
layout/
main.xml
(這里可能有點過時了,因為現在多了xdpi,而且很多設備也是xdpi的.)
但是光以密度屏幕來分類和處理還不夠.隨著設備的越來越多,以及屏幕尺寸越來越大,還有就是Tablet的出現,又會出現這樣的問題:設備的屏幕密度雖然不高,但其解析度很高.舉個簡單的例子:iPad2的解析度是1024x768,iPhone 4 960x640,但是iPhone 4的密度是326ppi,遠大於iPad2.但是,無論密度有多高它的屏幕就那麼,最多能顯示960x640個像素點,一個1024*768的圖片在iPad上可以看到全部,而iPhone上只能看到一大半!這也是為什麼用iPad來運行iPhone上的應用程序時,只是以屏幕中間的一部分來模擬顯示的原因.
對Android來說也是一樣的.如此一來,即使相同的dpi,假如其屏幕尺寸非常大,那麼為其准備的圖片將被拉伸很大或者顯示不全.UI元素也會被拉伸很長.這樣並不是很好的體驗.對於尺寸大的屏幕應該讓其顯示更多的內容,而不是把一部分元素拉伸很大.所以,很多手機安卓應用如果未經專門適配,在平板上直接使用體驗將會是非常差的.
為了解決這樣的問題,就還必須以屏幕尺寸來區分設備
主要有四種屏幕尺寸:small, normal, large and xlarge
這主要是配合屏幕密度來一起使用,比如,適配平板的圖片:
drawable-xlarge-hdpi/ic_launcher.png
這里就要提到了密度,尺寸和解析度的對應關系了. 屏幕解析度是隨設備變化最明顯的一個,上面的二種分類方法僅是對屏幕進行的大致的一個分類.雖然屏幕解析度與密度沒有直接的關系,但是所有的設備都基本上一致的:
ldpi QVGA 240*320 0.8
mdpi HVGA 320*480 1.0
hdpi WVGA 480*800 1.5
hdpi qHD 540*960 1.5
xdpi WXGA 720*1280 2

6. android開發,html5頁面怎麼適配不同手機解析度

按照比較普遍的最低解析度寫 其他的 兩邊留空白唄

閱讀全文

與android密度適配相關的資料

熱點內容
app怎麼交付 瀏覽:341
圖蟲app怎麼才能轉到金幣 瀏覽:173
如何做徵文app 瀏覽:444
用什麼app管理斐訊 瀏覽:167
安卓如何下載寶可夢劍盾 瀏覽:164
編譯器開發屬於哪個方向 瀏覽:938
megawin單片機 瀏覽:685
以色列加密貨幣監督 瀏覽:907
程序員前端現在怎麼樣 瀏覽:497
伺服器和介面地址ping不通 瀏覽:555
linux命令返回上級目錄 瀏覽:897
移動花卡寶藏版為什麼不能選免流app 瀏覽:255
速騰carplay怎麼用安卓 瀏覽:13
紅塔銀行app怎麼樣 瀏覽:564
農行app怎麼開網銀 瀏覽:651
java迭代器遍歷 瀏覽:303
閩政通無法請求伺服器是什麼 瀏覽:48
怎麼做積木解壓神器 瀏覽:205
王者榮耀解壓玩具抽獎 瀏覽:49
12位是由啥加密的 瀏覽:872