A. 安卓app設計屏幕解析度適配問題怎麼解決
要解決這個問題,就要先知道屏幕適配的原理
不同解析度對應的文件夾
首先我們知道android工程目錄res下有四個文件夾,drawable-hdpi、drawable-mdpi、drawable-ldpi、drawable-xhdpi,主要是為了支持多解析度的圖片。如果你製作的游戲切圖是480x800的切圖,就應該放到drawable-hdpi目錄下,如果是320x480的切圖,就應該放到mdpi目錄下。如果是720x1280的,通常會放到xhdpi目錄下。
圖片預設時的處理方式
安卓系統在載入圖片的時候有一套嚴格的規則,它會事先判斷手機屏幕的解析度,然後根據解析度去載入對應文件夾里的圖片。如果找不到,則會從drawable或者其他drawable-*文件夾中尋找。找到圖片以後,系統會對圖片尺寸與手機屏幕進行比對,尺寸一致則會正常顯示,而遇到尺寸不一致的那麼系統會根據一定規律對圖片尺寸進行縮放,然後顯示在屏幕上。此時,由於圖片尺寸經過縮放,所以屏幕上的顯示效果會受到影響,因此通常在游戲測試階段,測試者應該准備好不同尺寸搭配不同解析度的設備進行多次校驗,如果是在上線前希望能進行大規模的手機游戲兼容性測試的話則可以嘗試使用諸如:TestBird這樣的第三方手游自動化測試平台。
不同比例的屏幕常見適配方式
通常成熟的游戲廠商針對不同比例以及不同解析度的屏幕,會有一套自有的解決方案。而對於中小規模的開發團隊或者個人開發者而言,往往沒有時間專門對不同尺寸的屏幕進行適配,比如常見的安卓設備屏幕比例為16:9,而像魅族的屏幕比例則為15:9,IPad則為4:3,這樣的情況下屏幕適配就變得異常麻煩。常見的圖片縮放在這樣的情況下會造成屏幕邊緣內容的丟失,通常最好的辦法是盡可能把圖片縮放到最大,保留部分沒有顯示的黑邊區域,而這樣的的好處是可以不丟失任何內容,但缺點是黑邊區域實際會影響到玩家的使用體驗。最早在IPad尚未普及時,為了保證游戲盡可能多的兼容IPad,因此大量的採用了這樣的適配方案。
另外值得一提的是,如果製作手游切圖的話母版可以盡可能用720P,因為目前主流機型的屏幕解析度是720P,720P在對圖片進行縮放的過程中放大到1080P時不會感到特別模糊,縮小到480P時也不會看不清內容。這是目前很常用的一個屏幕適配解決方案,但由於15年1080p將會開始普及,所以筆者認為很快情況就會有所變化了。
B. iphone 12 app不適配
iphone 12 app不適配解決方法:
1、一般來說遇到「此app與您的設備不兼容」,有可能是系統原因,例如:手機當前系統低於目前軟體支持的系統版本,那麼在下載應用時就會出現這種提示。
7、在一些蘋果其它應用中常常有一些軟體更新速度比蘋果App Store慢一些。如果這些應用上面還有留著舊的版本軟體,那麼趁著該軟體還沒有更新之前,趕緊通過這個途徑下載安裝蘋果舊版本軟體解決此app與您的設備不兼容的問題。
C. 怎麼給APP適配高版本的安卓系統
Android的最新版本會提供一些很棒的API,您的APP使用新版本API的同時也要兼容舊的Android版本,直到更多設備已更新到新版本的APP。本文檔將向您展示如何利用最新的API,同時繼續支持舊版本。
根據對訪問Google Play商店的設備數量的統計,平台版本分布表會進行定期更新,以顯示運行每個版本的Android設備的分布情況。一般來說,一個APP最好能支持大約90%的活動設備,同時使用最新的Android版本。
提示:為了在多個Android版本中提供最佳特性和功能,您應該在APP中使用Android Support Library,這樣可以在舊版本上使用幾種最新的平台API。
指定Minimum和Target API Levels
AndroidManifest.xml文件描述APP的詳細信息,並標識其支持的Android版本。具體來說,<uses-sdk>元素的minSdkVersion和targetSdkVersion屬性標識了APP兼容的最低和最高API級別。
隨著新版Android的發布,一些風格和行為可能會有所改變。為了讓您的應用程序能夠利用這些更改,並確保您的應用程序適合每個用戶設備的風格,您應該把targetSdkVersion的值設置為最新的Android版本。
在運行時檢查系統版本
Android在Build常量類中為每個平台版本提供了一個唯一的編碼。APP用這個編碼來確保只有系統支持高版本API時,才會執行依賴高版本API的代碼。
注意:解析XML資源時,Android會忽略當前設備不支持的XML屬性。因此,您可以安全地使用僅由較新版本支持的XML屬性,而不必擔心舊版本遇到該代碼時出錯。例如,如果您設置targetSdkVersion =「11」,則APP在Android 3.0及更高版本上默認包含ActionBar。如果要將menu項添加到action bar,您需要在menu資源XML中設置android:showAsAction =「ifRoom」。 在跨版本的XML文件中可以安全地執行此操作,因為較舊版本的Android只會忽略showAsAction屬性(即,不需要在res / menu-v11 /中添加一個單獨的menu資源)。
D. 一款app怎麼適配兼容華為手機
只要系統在安卓4.4以上,藍牙4.0以上就可以。不過還真的不像二樓說的支持主流手機,系統在安卓4.4以上的手機還真就不是那麼大眾,相信大多數手機的系統都是安卓4.0到4.3版本中間。
E. 安卓app設計屏幕解析度適配問題怎麼解決
想要Android應用適應不同尺寸的屏幕,思路如下:
不同的layout
Android手機屏幕大小不一,有480x320, 640x360, 800x480,讓app適應不同屏幕,需要在res目錄下創建不同的layout文件夾,比如layout-640x360,layout-800x480,所有的layout文件在編譯之後都會寫入R.java里,而系統會根據屏幕的大小自己選擇合適的layout進行使用。
hdpi、mdpi、ldpi
在之前的版本中,只有一個drawable,而2.1版本中有drawable-mdpi、drawable-ldpi、drawable-hdpi三個,這三個主要是為了支持多解析度。
drawable- hdpi、drawable- mdpi、drawable-ldpi的區別:
(1)drawable-hdpi裡面存放高解析度的圖片,如WVGA (480x800),FWVGA (480x854)
(2)drawable-mdpi裡面存放中等解析度的圖片,如HVGA (320x480)
(3)drawable-ldpi裡面存放低解析度的圖片,如QVGA (240x320)
系統會根據機器的解析度來分別到這幾個文件夾裡面去找對應的圖片。
更正:應該是對應不同density 的圖片
在開發程序時為了兼容不同平台不同屏幕,建議各自文件夾根據需求均存放不同版本圖片。
屏幕方向:
橫屏豎屏自動切換:
可以在res目錄下建立layout-port-800x600和layout-land兩個目錄,裡面分別放置豎屏和橫屏兩種布局文件,這樣在手機屏幕方向變化的時候系統會自動調用相應的布局文件,避免一種布局文件無法滿足兩種屏幕顯示的問題。
不同解析度橫屏豎屏自動切換:
以800x600為例 :
可以在res目錄下建立layout-port-800x600和layout-land-800x600兩個目錄
不切換:
以下步驟是網上流傳的,不過我自己之前是通過圖形化界面實現這個配置,算是殊途同歸,有空我會把圖片貼上來。
還要說明一點:每個activity都有這個屬性screenOrientation,每個activity都需要設置,可以設置為豎屏(portrait),也可以設置為無重力感應(nosensor)。
要讓程序界面保持一個方向,不隨手機方向轉動而變化的處理辦法:
在AndroidManifest.xml裡面配置一下就可以了。
加入這一行android:screenOrientation="landscape"。
例如(landscape是橫向,portrait是縱向):
以下是JAVA代碼:
<?xmlversion="1.0"encoding="utf-8"?>
<manifestxmlns:android="http://schemas.android.com/apk/res/android"
package="com.ray.linkit"
android:versionCode="1"
android:versionName="1.0">
<applicationandroid:icon="@drawable/icon"android:label="@string/app_name">
<activityandroid:name=".Main"
android:label="@string/app_name"
android:screenOrientation="portrait">
<intent-filter>
<actionandroid:name="android.intent.action.MAIN"/>
<categoryandroid:name="android.intent.category.LAUNCHER"/>
</intent-filter>
</activity>
<activityandroid:name=".GamePlay"
android:screenOrientation="portrait"></activity>
<activityandroid:name=".OptionView"
android:screenOrientation="portrait"></activity>
</application>
<uses-sdkandroid:minSdkVersion="3"/>
</manifest>
另外,android中每次屏幕的切換動會重啟Activity,所以應該在Activity銷毀前保存當前活動的狀態,在Activity再次Create的時候載入配置,那樣,進行中的游戲就不會自動重啟了!
有的程序適合從豎屏切換到橫屏,或者反過來,這個時候怎麼辦呢?可以在配置Activity的地方進行如下的配置android:screenOrientation="portrait"。這樣就可以保證是豎屏總是豎屏了,或者landscape橫向。
而有的程序是適合橫豎屏切換的。如何處理呢?首先要在配置Activity的時候進行如下的配置:android:configChanges="keyboardHidden|orientation",另外需要重寫Activity的 onConfigurationChanged方法。實現方式如下,不需要做太多的內容:
@Override
(ConfigurationnewConfig){
super.onConfigurationChanged(newConfig);
if(this.getResources().getConfiguration().orientation==Configuration.ORIENTATION_LANDSCAPE){
//landdonothingisok
}elseif(this.getResources().getConfiguration().orientation==Configuration.ORIENTATION_PORTRAIT){
//portdonothingisok
}
}
寫一個支持多分辨的程序,基於1.6開發的,建立了三個資源文件夾drawable-hdpi drawable-mdpi drawable-ldpi,裡面分別存放72*72 48*48 36*36的icon圖標文件。當我在G1(1.5的系統)上測試時,圖標應該自適應為48*48才對啊,但實際顯示的是36*36。怎麼才能讓其自適應 48*48的icon圖標呢 ?
解決辦法 drawable-hdpi drawable-mdpi drawable-ldpi改成drawable-480X320 drawable-800X480的多分辨支持的文件夾。
F. 一般的手機app是如何做手機適配的
這個就是軟體工程師需要做的事情了,他們專業的人用專業的適配程序就可以做到了。
G. app 怎麼適配android 5.0
開發者就可以利用SDK開發適配安卓5.0的App。
安卓5.0擁有大量全新特性,比如說使用了Material Design設計的界面、支持64位計算等等。此外,安卓5.0還引入了5000個全新的API,安卓App可以利用這些API實現更多功能。安卓5.0 SDK發布後,開發者即可利用開發工具給App加入更多安卓5.0的特性,提升App的用戶體驗。
H. 如何讓app快速適配蘋果iOS 12的系統
iOS
12此次更新不僅新增了表情、相機特效、增強現實、消息推送等多款功能,對於絕大多數iPhone,還將大幅提升系統流暢度;系統的更新對於app升級適配來說至關重要,無論是iOS還是安卓系統的每一次升級都是對開發者的一次考驗,但如果是APICloud開發者並且之前應用已經適配了iPhone
X,那麼現在的工作就簡單了,只需重新編譯一下你的應用即可,APICloud就可以完成所有的屏幕適配工作。
I. app開發怎麼適配android7.0
app開發適配android7.0必須注意三點:電池和內存、許可權更改、應用間共享文件。
android 7.0對開發者的影響:
一個應用在 Android N 上運行,但卻是針對更低 API 級別開發的,那麼在用戶更改顯示尺寸時,系統將終止此應用進程。
在密度發生更改時,系統不會自動終止面向 N 及更高版本的應用;不過,這些應用仍可能對配置變更做出不良響應。
Android N 上的應用應能夠正常處理配置變更,並且在後續啟動時不會出現崩潰現象。可以通過更改字體大小 (Setting > Display > Font size) 並隨後從最近使用記錄中恢復運行應用,來驗證應用行為。
J. 如何做好手機app的適配
不同手機的屏幕像素和解析度都不同,你要先注意。比如是iphone4 查資料查得是640*960px的 然後你設計的app界面就得是和它所一致的. 圖標的話電腦上的1像素在手機上是0.5像素 所以注意設計的icon尺寸要是偶數。
希望對你有所幫助。