您好,登錄后才能下訂單哦!
Android Q 的新特征有哪些,相信很多沒有經驗的人對此束手無策,為此本文總結了問題出現的原因和解決方法,通過這篇文章希望你能解決這個問題。
2019年,移動創新比以往任何時候都更加強大,從5G到邊緣到邊緣顯示器甚至可折疊屏幕的新技術。Android正處于這一創新周期的中心,并且由于數十億設備的廣泛合作伙伴生態系統,Android有助于突破硬件和軟件的界限,為用戶帶來新的體驗和功能。
隨著移動生態系統的發展,Android專注于幫助用戶利用最新的創新,同時確保用戶的安全和隱私始終是首要任務。基于Google Play Protect和運行時權限等工作,Android Q為用戶帶來了許多額外的隱私和安全功能,以及可折疊的增強功能,用于連接的新API,新媒體編解碼器和相機功能,NNAPI擴展,Vulkan 1.1支持,更快的應用啟動等等。
Android在中心設計了安全和隱私。隨著Android的成熟,我們添加了一系列功能來保護用戶,例如基于文件的加密,需要應用程序在訪問敏感資源之前請求權限的操作系統控件,鎖定相機/麥克風后臺訪問,鎖定模式,加密備份,Google Play Protect(每天掃描超過500億個應用以識別可能有害的應用并將其刪除)等等。在Android Q中,我們進行了更多增強功能以保護用戶。其中許多增強功能都是我們在Strobe項目中工作的一部分。
讓用戶更好地控制位置
借助Android Q,操作系統可幫助用戶更好地控制應用何時獲取位置信息。與以前版本的操作系統一樣,只有在應用程序請求您許可后,應用程序才能獲取位置,并且您已授予該權限。
一個特別敏感的事情是應用程序未使用時(在后臺)應用程序訪問位置。Android Q允許用戶授予應用程序權限,以便永遠不會看到他們的位置,僅在應用程序正在使用(運行)時,或始終(在后臺)。
例如,要求用戶的食物遞送位置的應用程序是有意義的,并且用戶可能想要授予它執行該操作的能力。但由于應用程序可能不需要位于當前正在使用的位置之外,因此用戶可能不希望授予該訪問權限。Android Q現在提供更高級別的控制。閱讀開發人員指南,了解有關如何針對此新控件調整應用的詳細信息。尋找即將到來的Betas中更多以用戶為中心的改進。與此同時,我們的目標是非常敏感,始終通過這些更改盡可能多地給予開發人員注意和支持。
Android Q中的更多隱私保護
除了位置變化之外,我們還會進行進一步的更新,以確保透明度,讓用戶控制并保護個人數據。
在Android Q中,操作系統使用戶可以更好地控制應用程序,控制對共享文件的訪問。用戶將能夠通過新的運行時權限控制應用程序對照片和視頻或音頻集合的訪問。對于下載,應用必須使用系統文件選擇器,允許用戶決定應用可以訪問哪些下載文件。對于開發人員,應用程序可以在外部存儲上使用共享區域的方式發生了變化。請務必閱讀Scoped Storage更改以獲取詳細信息。
我們還看到,當應用程序意外跳轉到前臺并重新關注時,用戶(和開發人員!)會感到不安。為了減少這些中斷,Android Q將阻止應用在后臺啟動活動。如果您的應用程序處于后臺并且需要快速引起用戶的注意 - 例如來電或鬧鐘 - 您可以使用高優先級通知并提供全屏意圖。有關更多信息,請參閱文檔。
我們限制訪問不可重置的設備標識符,包括設備IMEI,序列號和類似標識符。閱讀最佳實踐以幫助您為用例選擇正確的標識符,并在此處查看詳細信息。我們還默認連接到不同的Wi-Fi網絡時隨機化設備的MAC地址 - 這是Android 9 Pie中可選的設置。
我們會盡早為您提供這些更改,因此您可以盡可能多地準備時間。我們還努力為開發人員提供詳細的信息,我們建議您查看有關隱私更改的詳細文檔,并立即開始測試。
吸引用戶的新方法
在Android Q中,我們正在啟用新方法,將用戶引入您的應用,并在從其他應用轉換時簡化體驗。
可折疊設備開辟了一些創新體驗和用例。為了幫助您的應用利用這些和其他大屏幕設備,我們在Android Q中進行了一些改進,包括對onResume和onPause的更改,以支持多重簡歷,并在重點關注時通知您的應用。我們還更改了resizeableActivity清單屬性的工作方式,以幫助您管理應用在可折疊和大屏幕上的顯示方式。為了開始構建和測試這些新設備,我們一直在努力更新Android Emulator以支持多顯示器類型切換 - 更多細節即將推出!
當用戶想要與另一個應用中的某人共享照片等內容時,該過程應該很快。在Android Q中,我們使用“共享快捷方式”讓用戶更快更輕松,這樣用戶就可以直接跳轉到另一個應用程序來共享內容。開發人員可以發布在其應用中添加內容的特定活動的共享目標,并在共享UI中向用戶顯示這些目標。因為它們是預先發布的,所以共享UI可以在啟動時立即加載。
共享快捷方式機制類似于應用程序快捷方式的工作方式,因此我們擴展了ShortcutInfo API,使兩個功能的集成更加容易。新的ShareTarget AndroidX庫也支持這個新的API。這允許應用程序使用新功能,同時允許pre-Q設備使用Direct Share工作。您可以在此處找到包含源代碼的早期示例應用。
您現在還可以通過新的設置面板API直接在應用程序的上下文中顯示關鍵系統設置,該API利用了我們在Android 9 Pie中引入的切片功能。
設置面板是一個浮動UI,您可以從應用程序調用該UI以顯示用戶可能需要的系統設置,例如Internet連接,NFC和音量。例如,瀏覽器可以顯示具有連接設置的面板,如飛行模式,Wi-Fi(包括附近的網絡)和移動數據。沒有必要離開應用程序; 用戶可以從面板中根據需要管理設置。要顯示設置面板,只需使用新的Settings.Panel操作之一觸發意圖。
連接
在Android Q中,我們擴展了您的應用程序可以使用Android的連接堆棧并添加新的連接API。
連接權限,隱私和安全性
我們用于掃描網絡的大多數API都需要COARSE位置權限,但在Android Q中,對于藍牙,移動電話和Wi-Fi,我們通過要求獲得FINE位置權限來增加對這些API的保護。如果您的應用只需要建立點對點連接或建議網絡,請查看下面改進的Wi-Fi API - 它們簡化了連接,不需要位置許可。
除了Android Q在連接到不同Wi-Fi網絡時提供的隨機MAC地址,我們還添加了新的Wi-Fi標準支持,WPA3和增強型開放,以提高家庭和工作網絡以及開放/公共網絡的安全性網絡。
改進了點對點和互聯網連接
在Android Q中,我們重構了Wi-Fi堆棧以改善隱私和性能,同時也改善了管理物聯網設備和建議互聯網連接等常見用例 - 無需位置許可。
通過網絡連接API,可以更輕松地通過本地Wi-Fi管理物聯網設備,實現配置,下載或打印等對等功能。應用程序通過將首選SSID和BSSID指定為WiFiNetworkSpecifiers來間接啟動連接請求。該平臺處理Wi-Fi掃描本身并在Wi-Fi選擇器中顯示匹配的網絡。當用戶選擇時,平臺會自動設置連接。
該網絡建議的API允許應用表面優選Wi-Fi網絡給用戶用于互聯網連接。應用程序通過提供網絡和憑據的排序列表來間接啟動連接,如WifiNetworkSuggestions。該平臺將在這些網絡的范圍內基于過去的性能無縫連接。
Wi-Fi性能模式
您現在可以通過啟用高性能和低延遲模式在Android Q中請求自適應Wi-Fi。如果低延遲對用戶體驗很重要,例如實時游戲,主動語音呼叫和類似用例,這些將是非常有益的。
要使用新的性能模式,請使用或調用WifiManager.WifiLock.createWifiLock()。在這些模式下,平臺與設備固件配合使用,以最低功耗滿足要求。WIFI_MODE_FULL_LOW_LATENCY``WIFI_MODE_FULL_HIGH_PERF
照片的動態深度格式
移動設備上的許多相機可以通過模糊相對于主體的前景或背景來模擬窄景深。它們捕獲圖像中各個點的深度元數據,并對圖像應用靜態模糊,然后丟棄深度元數據。
從Android Q開始,應用可以請求動態深度圖像,該圖像由與深度相關元素相關的JPEG,XMP元數據以及嵌入在廣告支持的設備上的同一文件中的深度和置信度圖組成。
請求JPEG +動態深度圖像使您可以在應用程序中提供專門的模糊和散景選項。您甚至可以在將來使用數據創建3D圖像或支持AR攝影用例。我們正在將Dynamic Depth作為生態系統的開放格式,我們正在與我們的設備制造商合作伙伴合作,使其在運行Android Q及更高版本的設備上可用。
新的音頻和視頻編解碼器
Android Q引入了對開源視頻編解碼器AV1的支持。這允許媒體提供商使用更少的帶寬將高質量的視頻內容流式傳輸到Android設備。此外,Android Q支持使用Opus(一種針對語音和音樂流優化的編解碼器)的音頻編碼,以及支持它的設備上的高動態范圍視頻的HDR10 +。
該MediaCodecInfo API引入了一個更簡單的方法來確定視頻渲染的Android設備的能力。對于任何給定的編解碼器,您可以使用VideoCodecCapabilities.getSupportedPerformancePoints()獲取支持的大小和幀速率列表。這允許您選擇要在任何給定設備上呈現的最佳質量的視頻內容。
原生MIDI API
對于使用C ++執行音頻處理的應用程序,Android Q引入了原生MIDI API,通過NDK與MIDI設備進行通信。此API允許使用非阻塞讀取在音頻回調內檢索MIDI數據,從而實現MIDI消息的低延遲處理。試試這里的示例應用程序和源代碼吧。
關于Vulkan的角度
為了使游戲和圖形開發人員更加一致,我們正在為Vulkan上構建的所有設備開發標準的,可更新的OpenGL驅動程序。在Android Q中,我們在Android設備上的Vulkan上添加了對ANGLE的實驗性支持。ANGLE是一個圖形抽象層,旨在實現跨實現的高性能OpenGL兼容性。通過ANGLE,使用OpenGL ES的許多應用程序和游戲可以充分利用Vulkan的性能和穩定性,并從Android設備上一致的,獨立于供應商的ES實施中受益。在Android Q中,我們計劃在路線圖中支持OpenGL ES 2.0,ES 3.0。
我們將通過更多OpenGL功能,錯誤修復和性能優化來擴展實現。有關Android當前ANGLE支持,如何使用以及我們未來計劃的詳細信息,請參閱文檔。您可以通過選擇“設置”中的開發人員選項來開始使用我們的初始支持進行測試。今天試一試!
到處都是Vulkan
我們將繼續擴大Vulkan對Android 的影響,這是我們為高性能3D圖形實現的低開銷,跨平臺API。我們的目標是讓Android上的Vulkan成為廣泛支持且一致的圖形開發人員API。我們正與我們的設備制造商合作伙伴共同努力,使Vulkan 1.1成為運行Android Q及更高版本的所有64位設備的要求,并推薦所有32位設備。展望未來,這將有助于為應用和游戲提供統一的高性能圖形API。
自2017年引入神經網絡API(NNAPI)以來,我們不斷擴展支持的操作數量并改進現有功能。在Android Q中,我們添加了60個新操作,包括ARGMAX,ARGMIN,量化LSTM,以及一系列性能優化。這為加速更大范圍的模型奠定了基礎 - 例如用于物體檢測和圖像分割的模型。我們正在與硬件供應商和流行的機器學習框架(如TensorFlow)合作,以優化和推出對NNAPI 1.2的支持。
ART表現
Android Q引入了ART運行時的幾項新改進,可幫助應用程序更快地啟動并消耗更少的內存,而無需開發人員的任何工作。
自Android Nougat以來,ART提供了配置文件引導優化(PGO),它通過識別和預編譯代碼中經常執行的部分來加速應用程序啟動。為了幫助初始應用啟動,Google Play現在提供基于云的配置文件以及APK。這些是匿名的聚合ART配置文件,讓ART在應用程序運行之前預編譯部分應用程序,從而為整個優化過程提供了重要的啟動。基于云的配置文件使所有應用程序受益,并且它們已經可用于運行Android P及更高版本的設備。
我們還在繼續改進ART本身。例如,在Android Q中,我們通過提前啟動應用程序進程并將其移至安全容器來優化Zygote進程,因此可以立即啟動。我們將更多信息存儲在應用程序的堆映像中,例如類,并使用線程來更快地加載映像。我們還在ART的Concurrent Copying(CC)垃圾收集器中添加了Generational Garbage Collection。分代CC更有效率,因為它分別收集年輕代對象,與全堆GC相比,成本更低,同時仍然可以回收大量空間。這使得垃圾收集整體上在時間和CPU方面更加高效,減少了jank并幫助應用程序在低端設備上更好地運行。
應用安全性
BiometricPrompt是我們的統一認證框架,用于支持系統級的生物識別。在Android Q中,我們擴展了對諸如face之類的被動身份驗證方法的支持,以及添加隱式和顯式身份驗證流程。在顯式流程中,用戶必須在身份驗證期間明確確認TEE中的事務。隱式流程設計用于具有被動身份驗證的事務的輕量級替代方案。我們還在需要時改進了設備憑據的后備。
Android Q增加了對TLS 1.3的支持,TLS 1.3是對TLS標準的重大修訂,包括性能優勢和增強的安全性。我們的基準測試表明,與TLS 1.2相比,使用TLS 1.3可以將安全連接的速度提高40%。默認情況下,為所有TLS連接啟用TLS 1.3。有關詳細信息,請參閱文檔。
通過公共API的兼容性
我們所關心的另一件事是確保應用程序在操作系統發生變化和發展時順利運行。使用非SDK API的應用程序可能會面臨用戶崩潰和開發人員緊急部署的風險。在Android Q中,我們將繼續我們在Android P中開始的長期努力,將應用程序轉移到僅使用公共API。我們知道,將您的應用從非SDK API移開需要時間,因此我們會提前 通知您。
在Android Q中,我們限制訪問更多非SDK接口,并要求您使用公共等效項。為了幫助您進行轉換并防止您的應用遭遇破壞,我們僅在您的應用定位到Android Q時才啟用限制。我們會根據您的要求繼續添加公共替代API; 如果沒有符合您用例的公共API,請告知我們。
測試應用程序以使用非SDK接口 非常重要。我們建議使用StrictMode方法detectNonSdkApiUsage()來警告您的應用程序何時通過反射或JNI訪問非SDK API。即使此時API被免除(灰名單),最好規劃未來并消除其使用以減少兼容性問題。有關Android Q中的限制的更多詳細信息,請參閱開發人員指南。
現代Android
我們正在努力讓所有應用程序充分利用最新版Android中的安全性和性能功能。今年晚些時候,Google Play會要求您在新的應用和更新中將應用的targetSdkVersion設置為28(Android 9 Pie)。根據這些更改,Android Q會在用戶首次運行面向API級別23(Android Marshmallow)之前的平臺的應用時向用戶發出警告。以下是幫助您遷移應用的資源清單。
我們還將生態系統推向了64位設備的準備狀態。今年晚些時候,Google Play將需要在所有應用中支持64位。如果您的應用使用原生SDK或庫,請記住,您需要提供這些SDK或庫的64位兼容版本。有關如何做好準備的詳細信息,請參閱開發人員指南。
開始使用Android Q Beta
由于可能會影響您的應用的重要隱私功能,我們建議您立即開始測試。特別是,您需要啟用和測試Android Q存儲更改,新位置權限狀態,后臺應用啟動限制以及設備標識符限制。有關詳細信息, 請參閱隱私文檔
要開始使用,只需將您當前的應用從Google Play安裝到運行Android Q Beta 的設備或Android虛擬設備上,然后完成用戶流程。該應用應該運行并且看起來很棒,并且正確處理所有應用的Android Q 行為更改。如果您發現問題,我們建議您在當前應用中修復它們,而不會更改定位級別。請查看有關步驟和建議時間表的遷移指南。
接下來,盡快將應用的targetSdkVersion更新為“Q”。這使您可以使用Android Q中的所有隱私和安全功能測試您的應用,以及針對Q的應用的任何其他行為更改。
探索新功能和API
準備就緒后,深入了解Android Q并了解可在應用中使用的新功能和API。以API diff報告,Android Q Beta API參考和開發人員指南為出發點。此外,在Android Q Beta開發人員網站上,您可以找到用于報告問題的發行說明和支持資源。
要使用Android Q構建,請將Android Q Beta SDK和工具下載到Android Studio 3.3或更高版本,并按照這些說明配置您的環境。如果您需要針對Android Q相關更改的最新修補程序,我們建議您使用Android Studio 3.5或更高版本。
我如何獲得Android Q Beta?
這很容易 - 您可以在這里注冊以在任何Pixel設備上通過無線方式獲得Android Q Beta更新(今年我們支持所有三代Pixel - Pixel 3,Pixel 2,甚至是原始的Pixel! )。這些設備的可下載系統映像也可用。如果您沒有Pixel設備,可以使用Android Emulator,并通過Android Studio中的SDK Manager下載最新的仿真器系統映像。
我們計劃在整個預覽期間定期更新預覽系統圖像和SDK。隨著Beta計劃的推進,我們將有更多功能可供分享。
一如既往,您的反饋非常重要,請告訴我們您的想法 - 我們越早聽到您的意見,我們就可以整合您的反饋意見。當您發現問題時,請在此處報告。我們有單獨的熱門列表來提交平臺問題,應用程序兼容性問題和第三方SDK問題。
看完上述內容,你們掌握Android Q 的新特征有哪些的方法了嗎?如果還想學到更多技能或想了解更多相關內容,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。