Google 2018 更新內容

Android開發人員博客

針對應用和遊戲開發者的最新Android和Google Play新聞。


加快項目高音的採用

2018年5月9日

由項目高音建築師Iliyan Malchev發佈

Android P Beta可在android.com/beta上找到

隨着Android的不斷髮展,操作系統的每個新版本都帶來了新功能,新用戶體驗以及更好的安全性。這些新版本儘快找到通向移動設備的途徑非常重要。

昨天,我們宣佈除了Pixel和Pixel 2之外,下列設備現在支持Android P Beta索尼Xperia XZ2,小米Mi Mix 2S,諾基亞7 Plus,Oppo R15 Pro,Vivo X21,OnePlus 6和Essential PH-1Android P Beta爲世界各地的開發者和早期使用者提供了嘗試最新的Android版本,測試他們的應用並提供反饋的機會。

在這篇文章中,我們提供了Project Treble的更新和技術,讓我們今年可以將Android Beta帶到更多手機。

建立基金會

Google,硅片製造商(SM),設備製造商(OEM)和運營商共同努力,將新的Android版本快速交付給用戶。這個過程在技術上具有挑戰性,並且需要調整我們的行業合作伙伴之間的時間表。

爲了減少技術難題,我們啓動了Project Treble作爲Android Oreo的一部分。

硅製造商

接下來,爲了充分利用我們建立的基礎,我們與硅片製造商密切合作,製造Android設備的旅程始終始於此。

任何帶有最新Android版本的設備都必須基於SoC以及適當的軟件支持。該軟件通常被稱爲板級支持包(BSP),不僅包含特定於芯片的供應商實現,還包含所有Android開放源代碼項目(AOSP)以及AOSP本身缺少的框架部分(例如,運營商特定的電話功能)。

Android Dessert發行版的生命週期通過硅製造商合作伙伴,設備製造商和運營商,直到最終用戶掌握爲止。

這些BSP是所有設備啓動的起點。原始設備製造商(OEM)將供應商實施調​​整到他們的硬件並添加他們自己的定製框架組件

雖然芯片製造商總是希望在他們的BSP中使用最新版本的Android,但成本一直很高。通過使更新的AOSP框架可以在已經發布的較早的供應商實現上運行,Project Treble顯着減少了對舊版芯片的持續投資以支持每個Android版本的需求。硅製造商只需要一次完成所有這些工作,而不是每次安裝新版本。

解決時間問題

不過,這還是第一次發生。下面是一個圖表,說明了各個角色在每次發佈時都花費的時間。您可以將其視爲隨着時間流逝的代碼流失或錯誤計數。

在Android,芯片支持和原始設備製造商之間重疊使用甜品的時間表和努力增加了將Android發佈出去的整體努力。

該圖表顯示了Google,硅片製造商和OEM廠商在這一年的時間很短。任何階段之間的重疊都會導致代碼流失並帶來重大的進度風險。對於定位於假日季節的原始設備製造商而言,在具有一年或更早的Android版本的舊BSP上啓動通常更安全。這一動態一直是最新Android版本發佈緩慢的核心,即使是在旗艦設備上。

高通,三星和聯發科與Android合作開發BSP。

爲了解決這個問題,我們與高通,聯發科和三星SLSI密切合作,共同開發他們的BSP,從Android P開始。他們的BSP現在已經準備好在Android P上加速計劃,大大減少了整體工作量。這些硅製造商現在能夠比以前更早地提供穩定的高質量版本,從而使原始設備製造商能夠將最新的Android創新技術帶給全球的客戶。

設備可以使用Project Treble作爲開發Android和芯片組支持重疊的時間線提前啓動。

這是加速採用Android版本的重要一步,爲我們的合作伙伴,用戶和Android開發人員帶來諸多好處。我們期待看到更多合作伙伴推出或升級Android P的設備。

Google提供的操作系統:AoG支持和新的增強型電池保護模式

2018年5月9日

開發人員倡導者,Hoi Lam發佈,由Google穿戴OS

在Google I / O上,我們通過Google開發人員預覽版2發佈了Wear OS。此更新增加了對Google操作(AoG)和更多電源相關增強功能的支持,其中包括新的節電模式。

此開發人員預覽包括更新的Android模擬器圖像以及華爲Watch Watch 2藍牙或華爲Watch Watch 2 Classic藍牙的可下載系統映像。此預覽版僅供開發人員使用,不適用於日常或消費者使用。因此,預覽版本只能通過手動下載和閃光進行。下載並刷新設備之前,請參閱發行說明以瞭解已知問題

支持Google上的操作

我們修改了Wear OS上Google Assistant,以支持諸如視頻卡,後續建議芯片和文本到語音的功能。對於開發人員,我們增加了對Google Wear上的Wear操作的支持,現有的Actions可以在Wear操作系統上使用。請務必遵守Google上採取行動的最佳做法,以獲得最佳效果,如簡短對話並採用視覺和聲音反饋。此功能不依賴於Android P,並正在向所有Wear 2.0用戶推出。

增強節電模式

在這個Android P開發人員預覽中,我們啓動了增強型電池保護模式。手錶處於此模式時,手錶將顯示節能錶盤,並關閉一系列服務,包括無線電,觸摸屏和傾斜喚醒。用戶可以通過按側面按鈕來獲得時間。長按允許用戶切換回完全操作模式,並執行諸如使用NFC付費或回覆消息等任務。開發人員應該假設他們的應用程序,錶盤和複雜數據提供程序在增強型節電模式下不可用。

節電功能更新

我們在最近的開發人員預覽中收到了很多有關節能功能的反饋。因此,我們對兩個功能進行了更新:

  • BT斷開時關閉Wi-Fi:爲了提高功耗,最後的開發人員預覽在與藍牙斷開連接時不會連接到Wi-Fi。仔細聽取用戶和開發人員的反饋後,我們決定回滾此更改。
  • 有限的後臺活動和前臺服務:許多健康和健身開發者表示,他們的應用需要全天監控用戶的運動和其他重要事件。開發人員表示,如果後臺服務無法設置警報和作業,他們的應用程序無法執行後臺監控。對於這些類型的特殊用例,我們建議應用程序使用前臺服務來錨定警報和作業。對於其他使用情況,開發人員應該查看前臺服務以及在手錶充電時限制工作和鬧鐘。我們仍在很好地調整此功能,您的反饋和使用案例將對幫助我們實現這一目標發揮最大作用。

針對橋接通知的智能回覆

一段時間以來,智能回覆功能已啓用來自用戶智能手機的橋接通知。通過最新的開發人員預覽,我們爲中國用戶推出簡體中文支持。此功能由使用TensorFlow Lite的設備型號驅動,該型號針對低內存,低功耗設備進行了優化。

要使用此功能,開發人員應將setAllowGeneratedReplies回覆操作設置爲true。下面是一個示例代碼片段,其中重要部分以粗體突出顯示:

NotificationCompat Action action = new NotificationCompat 行動助洗劑ř 抽拉ic_reply_white_24dp 
        replyLabel replyPendingIntent addRemoteInput remoteInput setAllowGeneratedReplies true // <--- true以啓用智能回覆//穿戴OS需要提示以內聯方式顯示回覆操作。擴展新的NotificationCompat 
     
        
         
        
         行動WearableExtender ()setHintDisplayActionInline true ))build ();
            
        

另外,對於通訊應用程序,我們建議開發人員使用MessagingStyle通知。這可以爲該算法提供一個更加結構化的數據集,以便根據這些數據集來推薦它

請給我們您的反饋意見

我們希望在最終的產品發佈前提供更多的更新。請提交Google問題跟蹤器通過Wear OS發現的任何錯誤您提交的越早,我們可以在最終版本中包含修復程序的可能性就越高。

Google I / O 2018:Android有什麼新功能

2018年5月8日

發佈者:Android產品管理總監Stephanie Cuthbertson

隨着Android在過去十年中呈指數級增長,我們也看到了我們的開發者社區急劇增長。在中國,印度和巴西等國家,使用我們IDE的開發人員數量幾乎增長了兩倍 - 僅用了兩年時間。隨着這種增長,我們感到投資開發者體驗的責任更大。在您的反饋意見的指導下,我們將工作重點放在快速簡便地進行移動開發,通過使應用程序大大縮小來幫助您獲得更多用戶,並提高參與度以保持用戶迴歸。我們也非常高興地看到Android的事情發展到1.0,爲您開發新的機會 - 從主要消費設備到涼爽的遙控車輛!隨着Google I / O的第1天開始,讓'我們仔細看看Developer Keynote中的這些主要主題

開發:使移動開發變得快速和簡單

  • Android Jetpack - 今天,我們宣佈推出Android Jetpack,旨在加速您的應用程序開發。Android Jetpack是下一代Android組件,將支持庫的好處 - 向後兼容性和即時更新 - 集合到更多的組件中,使構建健壯的高質量應用程序變得輕鬆快捷。Android Jetpack管理諸如後臺任務,導航和生命週期管理等活動,因此您可以消除樣板代碼並專注於使您的應用程序出色的功能。Android Jetpack旨在與Kotlin配合使用,爲Android KTX節省更多代碼。今天發佈的新型Android Jetpack組件包括WorkManager,Paging,Navigation和Slices。

  • Kotlin - 自從去年宣佈支持Kotlin以來,開發者社區已經接受了這種語言。最重要的是,95%的開發者告訴我們,他們對使用Kotlin進行Android開發非常滿意。而且,越多的開發者使用它,數量越多。使用Kotlin的Play商店應用數量在去年增長了6倍。專業開發人員有35%使用它,而且這個數字每個月都在增長。我們將繼續改進我們的庫,工具,運行時,文檔和培訓中的Kotlin開發人員體驗。Android KTX今天作爲Android Jetpack的一部分推出,以優化Kotlin開發者體驗。使用Android Studio,Lint支持和R8優化,工具不斷改進。我們甚至在Android P中調整了Android運行時(ART),因此使用Kotlin構建的應用程序可以運行得更快。我們在官方文檔中推出了Kotlin代碼片段,並且今天發佈了Kotlin版本的API參考文檔。本週早些時候,我們在Udacity上推出了一款新的Kotlin Bootcamp,這對於Kotlin新手的開發人員來說是一個很好的資源。最後,我們現在在Google開發者專家計劃中擁有Kotlin專長。如果你還沒有使用Kotlin,我希望你試試看。
  • Android Studio 3.2 Canary - Android Studio 3.2爲Android Jetpack提供工具,包括一個可視導航編輯器和新的代碼重構工具。該金絲雀版本還包括用於創建新的Android App Bundle格式的構建工具,用於快速啓動時間的Android模擬器中的快照,用於較小下載和安裝應用代碼大小的新R8優化器,用於測量應用對電池壽命的影響的新型Energy Profiler,和更多。您可以從金絲雀頻道下載頁面下載最新版本的Android Studio 3.2 

分佈:使應用程序從根本上變小

介紹Android App Bundle。
  • Android應用套件和Google Play動態傳遞 - 介紹Android的新應用模型。使用新的發佈格式 - Android應用程序捆綁軟件大幅降低應用程序大小。在Android Studio中,您現在將構建一個應用程序包,其中包含應用程序需要的所有設備的所有語言,每種設備屏幕大小以及每種硬件體系結構。然後,當用戶下載您的應用程序時,Google Play的新動態傳遞將提供與用戶設備匹配的代碼和資源。人們在Play商店中看到較小的安裝尺寸,可以更快地下載您的應用,並節省設備空間。通過傳統APK傳遞到設備的所有資源的一個示例,以及動態傳遞的一個示例,可以爲設備提供所需的服務。
    (左)通過舊版APK傳遞到設備的所有資源的示例。
    (右)動態傳遞的一個例子就是爲設備提供什麼。
  • 通過Android App Bundle的動態功能 - Android App Bundle還支持模塊化,以便您可以按需提供功能,而不是在安裝期間。您可以在最新的Android Studio canary版本中構建動態功能模塊。加入我們的測試版計劃,在Google Play上發佈。
  • 谷歌遊戲控制檯 -新功能,並在報告中播放控制檯將幫助您提高應用程序的性能和拓展業務。閱讀有關儀表板,統計信息,Android重要信息,預啓動報告,採集報告和訂閱儀表板的改進。您還可以使用我們的新發布格式(Android App Bundle)上傳,測試和發佈應用。
  • Google Play Instant - 在GDC 發佈測試版後,今天我們宣佈所有遊戲開發者都可以製作即時應用程序,我們非常高興地歡迎Candy Crush Saga通過Play商店,搜索,社交網站和大多數地方您可以點擊鏈接,全球超過10億個設備上都可以使用Google Play Instant。爲了讓即時應用程序更容易構建,本週我們將推出與Cocos創作者的Unity插件和測試版集成。最近,我們已開始測試Google Play與AdWords的即時兼容性,允許用戶直接從廣告中試用通過Universal App廣告系列覆蓋的所有渠道的遊戲

參與:讓用戶回來越來越多。


  • 切片 - 切片是UI模板,可在您的應用中顯示豐富的動態和交互式內容,適用於Android和Google表面。切片可以包含實時數據,滾動內容,內聯動作以及深入鏈接到您的應用程序,以便用戶可以從播放音樂到檢查預訂更新。切片還可以包含交互式控件,如切換和滑塊。您今天可以開始製作切片,並且他們很快就會開始向用戶展示。
用Slices檢查預訂。用切片控制音樂。使用切片調用Lyft。
  • 操作 - 操作是讓應用程序的功能和內容更易於訪問的一種新方式,以便人們可以在適當的時機輕鬆找到它。應用操作將根據使用情況和相關性在多個Google和Android界面(例如Google搜索應用,Play商店,Google智能助理和啓動器)中向用戶展示。應用操作將適用於所有開發者儘快試用,如果您希望收到通知,請在此註冊。您也可以選擇建立一個會話行動作爲伴隨體驗到你的應用程序。這適用於各種支持助理的設備,例如揚聲器和智能顯示器。這兩種類型的操作都使用的新的通用目錄意圖
操作是一種新的方式,使您的應用程序的功能和內容更易於訪問,以便人們可以在適當的時候輕鬆獲得。

更智能的設備:物聯網設備的強大平臺


  • Android Things 1.0 - Android Things是Google的託管操作系統,可讓開發人員按比例構建和維護物聯網設備。今年早些時候在美國消費電子展上,我們宣佈聯想,哈曼,LG和iHome都在開發基於Android Things的助手產品介紹Android Things 1.0!在開發者預覽了超過10萬個SDK的下載以及來自10,000多個開發者的反饋後,我們宣佈了Android Things 1.0本星期。該平臺現在支持四個新的模塊化系統(SoM),並保證三年的長期支持以及擴展支持的附加選項,從而更輕鬆地從原型轉向生產。爲了使產品開發比以往更加無縫,隨附的Android Things Console也準備投入生產。它可幫助開發人員使用Google提供的最新穩定性修補程序和安全更新輕鬆管理和更新設備。

要開始使用Android Things,請訪問我們的開發者網站和新的社區中心,以探索工具包,示例代碼,社區項目以及加入Google的物聯網開發者社區以保持更新。我們推出了一項有限的計劃,與Android Things團隊合作提供技術指導和支持構建您的產品。如果貴公司有興趣,請註冊我們的OEM合作伙伴計劃
除了所有這些新發展之外,我們還在140多個國家開展工作,通過女性技術人員和Google開發人員組(GDG等計劃發展壯大開發人員社區。我們正在投資培訓計劃Google Developers認證,通過Udacity和其他合作伙伴構建更多課程,幫助開發人員加深技術能力。今天,來自15個國家/地區的50家代理機構的 225位Google Developers Agency計劃成員獲得了Android認證。作爲Google開發者專家計劃的一部分,我們現在還在全球擁有90多位Android開發人員專家,積極支持開發人員,初創公司和公司構建和推出創新應用程序。
我們也繼續認可頂級應用和遊戲開發人員的出色工作。今年,我們舉辦了第三屆年度Google Play大獎。提名代表了Android上的一些最佳體驗,重點在於整體質量,強大的設計,技術性能和創新。查看獲獎者和提名人
Google I / O期間,與會者和觀衆有機會深入探索48個Android&Play分組會話。感謝您提供所有您的精彩反饋,並請繼續向我們提供您下一步要走的建議。

I / O 2018年:Google Play控制檯中的新功能

2018年5月8日


谷歌Play用戶和產品副總裁田林發佈

Google Play將蓬勃發展的開發者生態系統連接到全球使用超過20億個活躍Android設備的用戶。事實上,僅去年一年就已經從Google Play安裝了超過940億個應用。我們將繼續通過Play控制檯爲Android開發人員提供新功能,幫助您改善應用的性能並拓展業務。而且,在Google I / O 2018年,我們正在介紹我們對模塊化和動態化的全新Android應用程序模型的展望。



使用Android App Bundle可以節省大小

Android應用程序包 是Android的新的出版格式,使用它可以更輕鬆地實現在較小的應用程序大小的許多經驗,並優化了各種可用的Android設備和形式因素。應用程序包包含您的所有應用程序的編譯代碼和資源,但會延遲APK生成並登錄Google Play。您不再需要構建,簽名和管理多個APK。

Google Play的新應用服務模型稱爲動態投放,它使用您的應用捆綁軟件爲每個用戶的設備配置生成並提供優化的APK。這意味着人們只下載運行你的應用所需的代碼和資源。人們在Play商店中看到較小的安裝尺寸,可以更快地安裝您的應用,並節省設備空間。

(左)通過舊版APK傳遞到設備的所有資源的示例。
(右)動態傳遞的一個例子就是爲設備提供什麼。

藉助Android App Bundle,您還可以將動態功能模塊添加到您的應用中。通過動態交付,您的用戶可以按需下載應用程序的動態功能,而不必在初始安裝期間進一步降低應用程序的下載大小。要發佈帶有動態功能模塊的應用,請申請加入測試版

在最新的Android Studio canary版本中開始使用Android App Bundle在推向產品之前,使用Play控制檯中的測試曲目測試您的版本。觀看這些I / O會話,以便在團隊介紹新應用程序模型時收聽:

修復您的應用或遊戲中的質量和性能問題

去年Google進行的一項內部研究發現,Play商店中超過40%的一星評論提到了應用程序穩定性問題。相反,人們一致地獎勵評分和評論更好的表現最佳的應用,從而提高Google Play排名和更多安裝量。不僅如此,人們更傾向於投入更多精力,並願意花費更多時間和金錢在這些應用程序中。爲了幫助您瞭解和解決質量問題,我們正在改進Google Play控制檯中的許多功能。

  • 使用新的內部測試軌道,在您將應用程序發佈到alpha,beta或production之前,可以在幾秒鐘內將您的應用程序推送給多達100位內部測試人員。在推送您的應用程序的不同版本之前,您也可以爲其打開測試版或生產版。
  • 發射前的報告總結了您的應用程序的Alpha或Beta版本的基礎上,在火力地堡測試實驗室流行的設備自動化測試中發現的問題。有幾項新功能可幫助您測試抓取工具難以觸及的應用或遊戲部分:爲使用OpenGL編寫的遊戲創建演示循環,在Android Studio中記錄腳本以供測試爬蟲跟蹤,識別深層鏈接並提供登錄後面的憑據。除了報告崩潰,性能和安全問題以及抓取屏幕截圖之外,報告還將很快確定您應該修復的可訪問性問題,以確保爲最廣泛的受衆提供良好的用戶體驗。
  • 除了電池,渲染和穩定性之外,Android的重要功能現在還可以分析有關啓動時間和權限拒絕的數據。經過改進的儀表板強調了碰撞率,ANR率,過度喚醒和卡住喚醒鎖定:開發者應該關注的核心重要標誌。所有其他重要事件,如果適用於您的應用程序或遊戲類型,都應該進行監控以確保它們沒有負面影響。您還會看到任何生命體徵的異常情況,您應該注意到的突然變化以及基準,以便您可以將應用的性能與類似應用的性能進行比較。在維權中展示不良行爲會對您的應用中的用戶體驗產生負面影響,並可能導致Play商店中的評分較差和可發現性較差。

觀看這些I / O會話,介紹新功能並分享開發人員如何成功使用它們的示例:

提高您的商店性能和用戶獲取

Play控制檯提供工具和報告,可幫助您的整個團隊瞭解並改善應用的商店效果和商業指標。Play控制檯的訪問管理控制功能最近得到了改進,因此您可以更輕鬆地授予整個團隊的訪問權限,同時精確控制他們可以查看和使用哪些數據和工具。

  • 應用程序儀表板已得到改進,因此您可以快速消化需要了解的信息並採取措施。儀表板現在顯示更多數據,更易於閱讀,並且可以自定義。這應該是您瞭解圍繞您的應用或遊戲的最新活動的第一站。
  • 您現在可以配置統計報告以向您展示您的即時應用的表現。查看有多少人按不同尺寸啓動即時應用,以及有多少人會在設備上安裝完整應用。所有應用程序和遊戲開發人員都可以在今天建立即時體驗 即時應用文檔中瞭解更多信息
  • 收購報告書將開始向您展示人們如何找到你的應用程序,以及他們是否繼續進行安裝,並進行購買更多的數據。現在,您可以在收購渠道的每個狀態中看到每位用戶的平均收入和保留基準,以便將您的應用的性能與類似的應用進行比較。有機分解,即將推出,將通過搜索Play商店和那些通過瀏覽到達商店的人來分隔查找您的商店列表的人數。您還可以查看哪些搜索字詞能夠帶來最多的點擊量,轉化次數和購買次數。通過這些改進,您可以進一步優化您的努力,增長並保留有價值的觀衆。
  • 訂單管理也已更新,可讓您爲應用內商品和訂閱提供部分退款。

觀看這些I / O會話,介紹新功能並分享開發人員如何成功使用它們的示例:

發展並優化您的訂閱業務

訂閱量繼續顯着增長,Google Play用戶數同比增長超過80%。Google Play Billing爲開發者提供了獲取,吸引和留住訂閱者的有用功能,併爲用戶提供了一致且熟悉的購買流程。我們正在進行改進,以幫助您爲未來準備訂閱業務,併爲用戶提供更多關於訂閱的信息。

  • 藉助Google Play Billing Library,您可以輕鬆地將新功能 與最少的代碼結合起來。現在使用新發布的版本1.1,您可以升級訂閱而無需更改續訂日期。此外,您很快可以對現有SKU進行價格更改。
  • Google Play上的新訂閱中心可讓用戶管理其活動訂閱,包括修復付款問題或恢復已取消的訂閱。您可以創建深層鏈接,以便用戶可以直接訪問Play商店中的訂閱管理選項。很快,取消訂閱的用戶可以選擇留下反饋,說明您可以在Play管理中訪問的原因。
  • Play控制檯中的訂閱報告已更新,可幫助您更好地瞭解您在多個訂閱,時間和地區中的保留和流失率。您現在可以測量諸如免費試用,帳戶持有和寬限期等功能是否成功獲取和保留用戶。

觀看我們的I / O會話,在其中解釋新功能:

準備即將到來的Play目標API級別的播放要求

正如我們所宣佈的,Google Play將需要新的應用程序(從2018年8月開始)和應用程序更新(從2018年11月開始),以將API級別設爲26或更高。有關準備新要求的更多信息和實用指南,請觀看I / O會話,將現有應用遷移到Android Oreo及更高版本,並查看我們的遷移指南如果您開發開發人員使用的SDK或庫,請確保它已準備好針對Oreo並註冊以接收SDK提供商的新聞和更新

獲得更多資源,幫助您在Google Play上取得成功

要了解所有這些新功能的更多信息,瞭解最佳實踐,瞭解其他開發人員如何獲得成功,並聽取團隊建設這些功能,請參閱I / O 2018年Android&Play會議有關如何在Google Play上提高應用性能的更多開發者資源,請閱讀Google Play控制檯指南並訪問Android開發者網站最後,爲了保持最新狀態,請註冊我們的通訊,並在TwitterLinkedInMedium上關注我們,我們會定期發佈。

你覺得這篇博文有多大用處?

,流量, ,流量, ,流量, ,流量, ,流量,

Android Studio 3.2 Canary

2018年5月8日

今天在Google I / O 2018上,我們宣佈了Android Studio 3.2的最新預覽,其中包括一組支持Android P開發人員預覽,新的Android App BundleAndroid Jetpack的令人興奮的功能。 立即從我們的Canary發佈頻道下載 Android Studio 3.2,探索今年最具功能豐富的版本之一。

Android Jetpack是一套圖書館,開發人員工具和體系結構指南,可幫助您輕鬆快捷地構建優質的Android應用程序。它提供了常見的基礎架構代碼,因此您可以專注於使您的應用獨一無二的原因 Android Studio 3.2包含一系列支持Jetpack的工具,這些工具使用導航API,Android Slices API模板,重構工具遷移到Jetpack - AndroidX中新的Android支持庫,從而支持Jetpack。

Android Studio 3.2的Canary 14版本還支持新的Android應用程序模型,即APK格式Android App Bundle的演變。無需更改代碼,Android Studio 3.2將幫助您創建新的Android應用程序包並準備在Google Play上發佈。

此版Android Studio中有20個主要功能,從超快速Android模擬器快照,佈局編輯器中的示例數據到全新的Energy Profiler,以測量應用程序對電池的影響。如果這些功能中的任何一個聽起來很有趣,請立即下載 Android Studio 3.2的預覽版。

要查看這些演示中的功能並獲得我們正在開發的其他功能的高峯,請查看Google I / O 2018會話 - Android開發工具中的新增功能

Android開發工具 - Google I / O 2018中的新功能

以下是Android Studio 3.2中由關鍵開發人員流程組織的新功能的完整列表。

發展

  • 導航編輯器 - 作爲Jetpack的一部分,Android Studio 3.2提供了一種新的方式來設計應用程序屏幕之間的導航結構。導航編輯器是一個可視化編輯器,它允許您構建支持在Jetpack中使用新導航組件的XML資源。

導航編輯器



  • 支持AndroidX重構 - Jetpack的一個組件正在重新考慮並將Android支持庫重構爲新的Android擴展庫(AndroidX)命名空間。作爲AndroidX早期預覽的一部分,Android Studio 3.2可幫助您通過新的重構操作完成此遷移。要使用該功能,請導航至:重構 → 重構爲AndroidX。作爲重構過程的一個額外增強,如果您有任何未遷移到AndroidX名稱空間的Maven依賴關係,Android Studio構建系統也會自動轉換這些項目依賴關係。您可以通過切換android.enableJetifier = true標誌來手動控制轉換過程gradle.properties文件。儘管重構操作支持常見的項目配置,但我們建議您在重構之前保存項目的備份。 瞭解更多

AndroidX重構支持



  • 示例數據 - 許多Android佈局具有運行時數據,這使得在應用程序開發的設計階段難以可視化佈局的外觀和感覺。佈局編輯器中的示例數據允許您使用佔位符數據來幫助您設計應用程序。從RecyclerView,ImageView到TextView,您可以添加內置示例數據,以通過佈局編輯器中的彈出窗口填充這些視圖。要試用此功能,請將RecyclerView添加到新佈局,然後單擊新工具設計時屬性圖標,然後從樣本數據模板傳送帶中選擇一個選擇。

設計時間樣本數據



  • 材料設計更新 - 材料設計不僅繼續發展成爲設計系統,而且還在Android上實施。當您開始從Android設計支持庫遷移到新的MaterialComponents應用程序主題和庫時,Android Studio 3.2將爲您提供對BottomAppBar,按鈕,卡片,文本字段,新字體樣式等更新的新部件的訪問。 瞭解更多

新的材料設計組件



  • 切片支持 - 切片是在Android操作系統的其他用戶界面表面中嵌入部分應用內容的新方式。Slices向後兼容Android 4.4 KitKat(API 19),可讓您在Google搜索建議中顯示應用內容。Android Studio 3.2內置模板,可幫助您使用新的Slice Provider API以及新的lint檢查擴展您的應用程序,以確保您在構建切片時遵循最佳做法。要開始右鍵單擊項目文件夾,並導航到新建 → 其他 → 切片提供程序通過查閱入門指南,瞭解如何測試切片交互

切片提供商模板



  • CMakeList編輯支持 - Android Studio 爲您的應用程序的C / C ++代碼支持CMake構建腳本通過此版本的Android Studio 3.2,代碼完成和語法突出顯示現在可用於常見的CMakeList命令。

CMakeList代碼完成



  • 新增功能助理 - Android Studio 3.2有一個新的助手面板,可在更新後自動打開,以通知您有關IDE的最新更改。您還可以通過導航到幫助→Android Studio中的新功能來打開面板

什麼是新的助理



  • IntelliJ平臺更新 --Android Studio 3.2包含IntelliJ 2018.1平臺版本,其中包含許多新功能,如數據流分析,部分Git提交支持以及大量新的代碼分析增強功能。瞭解更多

建立

  • Android App Bundle - Android App Bundle是新的應用發佈格式,旨在幫助您向用戶提供更小的APK。Google Play有一個全新的動態投放平臺,可以接受您的Android應用套裝,並且只提供您在特定設備上需要的APK。Android Studio 3.2使您能夠創建和測試Android應用程序包。只要您運行最新的Android Gradle插件(com.android.tools.build:gradle:3.2.0-alpha14),您就可以重新構建代碼作爲應用程序包,並根據語言,屏幕密度和ABI獲得小型APK的好處,而不會更改您的應用程序代碼。要開始,請導航到Build → Build Bundle / APK 或Build → Generate Signed Bundle / APK 瞭解更多

構建Android應用程序包



  • D8 Desugaring - 在某些情況下,新的Java語言功能需要新的字節碼和語言API,但較舊的Android設備可能不支持這些功能。 Desugaring允許您在構建過程中通過替換舊的字節碼和語言API來在較舊的設備上使用這些功能。 Desugaring最初是作爲一個單獨的工具與Android Studio 3.0一起引入的,在Android Studio 3.1中,我們將脫鉤步驟作爲實驗功能集成到D8工具中,從而縮短了整體構建時間。現在Android Studio 3.2默認打開D8 desugaring。您現在可以使用大多數最新的語言更改,同時定位舊設備。
  • R8優化器 - 在應用程序構建過程中,Android Studio歷史上使用ProGuard來優化和縮小Java語言字節碼。從Android Studio 3.2開始,我們開始轉向使用R8作爲ProGuard的替代品。要試用R8,請添加android.enableR8=true到您的gradle.properties文件中。R8仍然是實驗性的,所以我們不建議使用R8發佈你的應用程序。 瞭解更多

在Android Studio中啓用R8


測試

  • 模擬器快照 隨着QuickBoot工具在Android模擬器,我們使你能夠啓動仿真器在不到6秒。藉助Android Studio 3.2,我們擴展了此功能,使您能夠在任何模擬器狀態下創建快照,並在2秒內啓動它們。在測試和開發您的應用程序時,您可以預先配置一個Android虛擬設備(AVD)快照,其中包含所需的預設,應用程序,數據和設置,然後重複回到同一快照。快照在2秒內加載,您可以從Android模擬器擴展控件面板,命令行(./adb emu avd snapshot load snap_2018-04-29_00-01-12)或Android Studio內啓動特定快照

Android模擬器快照



  • Android模擬器中 的屏幕記錄通常情況下,創建應用屏幕的屏幕錄製僅適用於Android 4.4 KitKat(API 19)及更高版本,無音頻,且僅限Android模擬器支持。使用最新的Android模擬器(v27.3 +),您可以在任何API級別上使用音頻進行屏幕錄製。此外,還有一個內置的轉換功能可以輸出到GIF和WebM。您可以通過Android模擬器擴展控件面板,命令行()和Android Studio觸發新的屏幕記錄功能。 ./adb emu screenrecord start --time-limit 10/sample_video.webm

Android模擬器中的屏幕記錄



  • 適用於Android模擬器的虛擬場景相機 -使用新的虛擬場景相機可以更輕鬆地開發和測試使用ARCore的應用程序,該相機可讓您在虛擬環境中迭代您的增強現實(AR)體驗。該仿真器經過校準可與AR應用程序的ARCore API一起使用,並允許您注入虛擬場景位圖圖像。虛擬場景攝像機也可以用作普通的HAL3兼容攝像機。在Android模擬器中打開內置的Android相機應用程序即可開始使用。默認情況下,新的虛擬場景攝像頭是使用Android Studio 3.2創建的全新Android虛擬設備的後置攝像頭。瞭解更多

Android模擬器中的虛擬場景相機



  • ADB連接助理 - 爲了幫助通過ADB排除Android設備連接的故障,Android Studio 3.2提供了一個新助手。ADB連接助理將引導您通過常見的故障排除步驟將您的Android設備連接到開發計算機。您可以從運行對話框中觸發助手,或導航到工具 → 連接助手

亞行連接助理



優化

  • 能量分析儀 - 電池壽命是許多手機用戶關心的一個關鍵問題,而且您的應用可能會比您意識到的更多地影響電池壽命。Performance Profiler套件中新增的Energy Profiler可幫助您瞭解應用程序對Android設備的能量影響。您現在可以查看系統組件估計的能源使用情況,並檢查可能導致電池消耗的背景事件。要使用能源分析器,請確保您已連接到運行Android 8.0 Oreo(API 26)或更高版本的Android設備或模擬器。瞭解更多

能源分析器

  • 系統跟蹤 - CPU Profiler中的新系統跟蹤功能使您可以檢查應用程序如何以細節細節與系統資源交互。檢查線程狀態的確切時間和持續時間,可視化所有內核中CPU瓶頸的位置,並添加自定義跟蹤事件以進行分析。要使用系統跟蹤,請開始分析您的應用程序,單擊進入CPU分析器,然後選擇系統跟蹤記錄配置。瞭解更多

系統跟蹤

  • Profiler Sessions - 我們現在會自動將Profiler數據保存爲“會話”,以便在Android Studio打開時重新訪問和檢查。我們還增加了導入和導出CPU記錄和堆轉儲的功能,以供以後分析或使用其他工具進行檢查。

分析器會話



  • 自動CPU記錄 - 您現在可以使用調試API自動記錄CPU活動將應用程序部署到設備後,配置程序會在應用程序調用時自動開始記錄CPU活動startMethodTracing(String tracePath),並在應用程序調用時停止記錄stopMethodTracing()同樣,您現在也可以通過在運行配置中啓用此選項來自動開始在應用程序啓動時記錄CPU活動。
  • JNI參考跟蹤 - 對於那些在Android應用程序中擁有C / C ++代碼的人,Android Studio 3.2現在允許您檢查Memory Profiler中JNI代碼的內存分配。只要您將應用程序部署到運行Android 8.0 Oreo(API 26)及更高版本的設備,您就可以從JNI參考中深入分配調用堆棧。要使用該功能,請啓動內存分析器會話,然後從“實時分配”下拉菜單中選擇JNI堆。

JNI參考跟蹤

回顧一下,Android Studio 3.2最新的Canary包含了這些新的主要功能:

發展
  • 導航編輯器
  • AndroidX重構
  • 樣本數據
  • 材料設計更新
  • Android切片
  • CMakeList編輯
  • 什麼是新的助理
  • 新的棉絨檢查
  • Intellij平臺更新

建立

  • Android應用程序包
  • D8 Desugaring
  • R8優化器

測試
  • Android模擬器快照
  • Android模擬器中的屏幕記錄
  • 虛擬場景Android模擬器相機
  • 亞行連接助理

優化

  • 能源分析器
  • 系統跟蹤
  • 分析器會話
  • 自動CPU記錄
  • JNI參考跟蹤

查看預覽版本說明以獲取更多詳細信息。

入門

下載

從canary頻道下載頁面下載最新版本的Android Studio 3.2 如果您正在使用之前的Android Studio加那利版本,請確保您更新至Android Studio Canary 14或更高版本。如果您想要維護穩定版本的Android Studio,則可以同時運行Android Studio的穩定版本和加那利版本。瞭解更多

要使用上述Android模擬器功能,請確保至少運行Android Emulator v27.3 +,並通過Android Studio SDK Manager下載。

我們非常感謝您提供有關您喜歡的事物的早期反饋,以及您希望看到的問題或功能。請注意,爲確保我們保持產品質量,您在Canary頻道中看到的功能可能無法在下一個穩定版本頻道中使用,直到它們可以穩定使用爲止。如果您發現錯誤或問題,請隨時提出問題請在我們的Google+信息頁或Twitter上與我們聯繫 - Android Studio開發團隊

使用Android Jetpack加速您的應用程序開發

2018年5月8日

由Chris Sells, Benjamin Poiesz,Android開發人員工具產品管理Karen Ng 發佈

今天,我們很高興地介紹Android Jetpack,這是下一代組件,工具和架構指南,可加速您的Android應用開發。

Android Jetpack受到支持庫的啓發,支持庫是一組組件,可以輕鬆利用新的Android功能,同時保持向後兼容性;目前Play商店中每個應用的99%都使用它。繼成功之後,我們推出了體系結構組件,旨在使面對更改和應用程序生命週期複雜性時處理數據變得更加輕鬆。自從我們在一年前在I / O上引入這些組件後,絕大多數人都採用了它們。諸如LinkedIn,Zillow和iHeartRadio等公司正在看到更少的錯誤,更高的可測試性以及更多時間專注於使其應用獨一無二的原因。

Android開發人員社區已經很清楚 - 您不僅喜歡我們對這些現有組件所做的工作,但我們知道您需要更多!你得到的東西也越多。

什麼是Android Jetpack?

Android Jetpack是一套組件,工具和指導,可以製作出優秀的Android應用程序。Android Jetpack組件將現有的支持庫和體系結構組件結合在一起,並將它們分爲四類:

Android Jetpack組件是作爲“非捆綁”庫提供的,它們不是底層Android平臺的一部分。這意味着您可以在自己的時間以自己的速度採用每個組件。當新的Android Jetpack功能可用時,您可以將其添加到您的應用中,將您的應用部署到Play商店,並在一天內爲用戶提供所有新功能(如果您快速的話)!非捆綁的Android Jetpack的圖書館已全部搬入新androidx.*的命名空間(如詳細描述在這個崗位)。

另外,您的應用程序可以在各種版本的平臺上運行,因爲Android Jetpack組件的構建是爲了提供獨立於任何特定版本的功能,從而提供向後兼容性。

此外,Android Jetpack建立在現代設計實踐之上,如關注點和可測試性分離以及Kotlin集成等生產力特性。這使得使用更少的代碼構建健壯,高質量的應用程序變得更加容易。雖然Android Jetpack的組件可以協同工作,例如生命週期感知和實時數據,但您不必全部使用它們 - 您可以集成解決問題的Android Jetpack部件,同時保留應用的各個部分那已經很好了。

我們知道這些好處對您來說很重要,因爲這樣的反饋:

“我們一直在考慮在我們的代碼庫中嘗試使用MVVM,Android Architecture Components爲我們提供了一個簡單的模板來實現它,這也有助於我們的代碼更好地測試;單元測試ViewModels的能力確實提高了代碼的健壯性。

Zillow高級工程師Sumiran Pradhan

如果您想了解更多關於公司如何使用Android Jetpack組件的信息,可以閱讀Android開發者網站上的開發者故事

最後,從上面的Android Jetpack圖表中可以看到,今天我們還宣佈了新組件。

什麼是新的

Android Jetpack包含五個新組件:

  • WorkManager Alpha版本
  • 導航alpha版本
  • 分頁穩定版本
  • 切片alpha釋放
  • Android KTX(Kotlin Extensions)alpha版本

WorkManager中

WorkMananager組件是一個功能強大的新庫,爲需要保證執行的基於約束的後臺作業提供一站式解決方案,取代了使用諸如作業或SyncAdapter之類的東西的需要。WorkManager提供了一個簡化的現代化API,可以在帶有或不帶有Google Play服務的設備上工作,可以創建工作圖形以及查詢工作狀態。早期的反饋非常令人鼓舞,但我們很樂意確保您的使用案例也得到了覆蓋。您可以看到我們目前爲止的內容,並在WorkManager組件上提供關於Alpha的反饋

導航

雖然活動是系統爲應用程序的用戶界面提供的入口點,但當它們在彼此之間共享數據和轉換時,它們的靈活性使其成爲構建應用程序內導航的理想架構。今天,我們將導航組件作爲構建應用內UI的框架加以介紹,重點在於將單個Activity應用作爲首選體系結構。通過對Fragments的開箱即用支持,您可以獲得Lifecycle和ViewModel等所有體系結構組件的好處,同時允許導航爲您處理FragmentTransactions的複雜性。此外,導航組件允許您聲明我們爲您處理的轉換,自動構建正確的向上和向後行爲,包括對深層鏈接的全面支持,並提供幫助將導航連接到相應的UI小部件,如導航抽屜和底部導航。但那不是全部!導航編輯器Android Studio 3.2允許您以可視方式查看和管理導航屬性:

導航組件也是阿爾法,我們期待您的反饋意見。

分頁

加載應用程序中顯示的數據可能很大並且代價高昂,因此一次避免下載,創建或呈現太多很重要。尋呼組件版本1.0.0可以很容易地加載和現在的大數據集與您RecyclerView快速,無限滾動。它可以從本地存儲,網絡或兩者加載分頁數據,並且可以讓您定義如何加載內容。它可以與Room,LiveData和RxJava一起使用。

最後,爲了完成Android Jetpack首次亮相的一系列新功能,它是Slices組件。作爲搜索的結果,“切片”是一種在Google智能助理內部展示應用UI的方法:

您可以瞭解有關Slices組件的所有信息,以及如何將它集成到Android開發人員網站上的應用程序中。

Android KTX

最後但並非最不重要的一點,Android Jetpack的一個目標是利用Kotlin語言功能,使您的工作效率更高。Android KTX 可讓您像這樣轉換Kotlin代碼:

查看viewTreeObserver addOnPreDrawListener 對象ViewTreeObserver OnPreDrawListener { 覆蓋樂趣onPreDraw ():布爾{ 
      viewTreeObserver removeOnPreDrawListener 
      actionToBeTriggered ()返回} });
     
      
       
    

轉換成更簡潔的Kotlin代碼,如下所示:

查看doOnPreDraw { actionToBeTriggered ()} 

這只是將Kotlin支持帶給Android Jetpack組件的第一步; 我們的目標是讓Android Jetpack非常適合Kotlin開發人員(當然還有Java開發人員!)。您可以在Android Developer網站上閱讀有關Android KTX的更多信息

入門

您可以在developer.android.com/jetpack上開始使用Android Jetpack 您可以找到Android Jetpack的文檔和視頻,查看Android Jetpack組件的新功能,參與社區並向我們提供反饋。我們還創建了專門用於Android JetpackYouTube播放列表,因此您可以收聽有關Android Jetpack,組件,工具和最佳做法的信息。

Android Jetpack入門將告訴您如何將Android Jetpack組件帶入現有的應用程序,並幫助您開始使用新的Android Jetpack應用程序。Android Studio 3.2對Android Jetpack具有很好的工具支持。爲了構建新的應用程序,請使用可以從File |獲得的Activity&Fragment + ViewData活動 新增| Android Studio中的新項目:

下一步是什麼

藉助Android Jetpack,我們將利用支持庫和體系結構組件的優勢,將新組件,Android Studio集成和Kotlin支持帶入一個新高度。雖然Android Jetpack提供了下一代組件,工具和指導來加速您的Android開發,但我們還有更多想做的事情,我們希望得到您的幫助。請轉到developer.android.com/jetpack,讓我們知道我們可以做些什麼來使您的Android應用程序的體驗更加完美。

Android P Beta中的新功能

2018年5月8日

發佈者Dave Burke,工程副總裁

android P標誌

今天早些時候,我們推出了Android P的下一個版本Android P的測試版。Android P將AI作爲操作系統的核心,專注於智能和簡單的體驗。您可以在這裏閱讀有關新用戶功能的更多信息

對於開發者來說,Android P beta提供了一系列利用這些新智能的方法,特別是當涉及到增加對應用程序的參與度時。

通過在此註冊,您可以在Pixel設備上獲得Android P測試版此外,感謝Project Treble,您現在可以從我們的合作伙伴那裏獲得頂級設備上的測試版- 基本版,諾基亞,OPPO,索尼,Vivo和小米,以及其他人。

訪問android.com/beta獲取設備的完整列表,以及如何在設備上獲取Android P beta的詳細信息。要開始使用Android P beta進行開發,請訪問developer.android.com/preview

智能智能手機,以機器學習爲核心

Android P使智能手機變得更加智能,幫助它學習並適應用戶。您的應用程序可以利用最新的機器智能來幫助您接觸更多用戶並提供新的體驗。

自適應電池

設置中的自適應電池

無論使用何種設備,電池都是我們從手機用戶那裏聽到的頭號優先事項。在Android P中,我們與DeepMind合作開發了一項新功能,我們稱其爲Adaptive Battery,可優化應用程序使用電池的方式。

自適應電池使用機器學習爲用戶最關心的應用優先訪問系統資源。使用四個新的“應用程序備用存儲區”,從“活動”到“罕見” ,將運行的應用程序放入具有不同限制的組中應用會隨着時間的推移而改變存儲空間,而未處於“活動”存儲空間的應用將對作業,警報,網絡和高優先級的Firebase雲端消息具有限制。

如果您的應用程序針對打盹應用程序待機背景限制進行了優化,則自適應電池應該適合您的開箱即用。我們建議在四個存儲桶中的每一箇中測試您的應用程序。查看詳細信息文檔

應用操作

應用操作是一種新的方式,可以在用戶開始執行任務時提高應用的可見性。他們將應用程序的核心功能置於用戶面前,作爲處理其任務的建議,從啓動器和智能文本選擇,Google Play,Google搜索應用程序和助手等系統中的關鍵接觸點開始。

操作使用機器學習根據用戶的上下文或最近的交互來爲用戶展示恰當的應用程序。由於Actions會在最相關的時間和地點突出顯示您的應用,因此它們是接觸新用戶並重新與現有用戶互動的好方法。

App在所有應用程序屏幕中顯示應用程序的操作。

要支持應用程序操作,只需將您的應用程序的功能定義爲語義意圖即可。應用操作使用共同的同一目錄意圖作爲對話的行動爲谷歌助手,它表面上的聲控音箱,智能顯示器,汽車,電視,耳機等。App Actions不需要API表面,因此它們可以在任何受支持的Android平臺版本上運行。

操作將很快提供給開發人員嘗試, 如果您希望收到通知,請在這裏註冊

切片模板示例

除App動作外,我們還推出了Slices,這是您的應用向用戶提供遠程內容的新方式。藉助切片,您可以在Google搜索和助理等地點展示豐富的,模板化的用戶界面。切片是互動的,支持動作,切換,滑塊,滾動內容等。

切片模板示例

切片是吸引用戶的一種很好的新方式,我們希望它們儘可能廣泛地提供。我們在Android P中添加了平臺支持,並且我們將開發者API和模板構建到Android Jetpack中,這是我們用於構建優秀應用程序的新庫和工具集。通過Jetpack,您的Slices實施可以將用戶一直定位到Kitkat - 跨95%的活動Android設備。我們還可以定期更新模板以支持新的用例和交互(如文本輸入)。

切片模板示例

查看“ 入門指南”以瞭解如何使用切片進行構建 - 您可以使用SliceViewer工具查看切片的外觀。隨着時間的推移,我們計劃擴大切片可以出現的位置數量,包括其他應用程序中的遠程顯示。

智能回覆通知

Gmail和Inbox中的智能回覆功能是機器智能如何積極改變應用體驗的絕佳示例。在Android P中,我們將帶有API的智能回覆帶到了通知中,以便您爲用戶提供此優化。爲了便於在通知中填入回覆,您很快就可以使用ML Kit了 - 詳情請參閱developers.google.com/mlkit

文本分類器

在Android P中,我們擴展了標識內容或文本輸入實體的ML模型,以支持日期和航班號等更多類型,並且我們正在通過TextClassifier API向開發人員提供這些改進。我們還在更新Linkify APIAPI可自動創建鏈接以充分利用這些TextClassification模型,並豐富了用戶用於快速執行操作的選項。開發人員將具有將TextClassifier服務所識別的任何實體鏈接起來的附加選項。 Smart Linkify在檢測和性能的準確度和精度方面有顯着的改進。

更好的是,這些模型現在可以直接從Google Play進行更新,因此您的應用可以利用使用相同API的模型改進。一旦安裝了更新的模型,所有的實體識別都將在設備上進行並且數據不會通過網絡發送。

簡單

我們特別強調Android P的簡單性,發展Android的UI以簡化和增強用戶任務。對於開發人員來說,這些更改有助於改進用戶查找,使用和管理應用程序的方式。

新的系統導航

我們在Android P中引入了新的系統導航,使用戶可以通過每個屏幕上的單個按鈕更輕鬆地訪問主頁,概覽和助手。新的導航功能簡化了多任務處理,並使得發現相關應用程序變得更容易。在概述中,用戶對他們離開每個應用程序時所做的操作有更大的看法,這使得查看和恢復活動變得更加容易。該概述還提供對搜索,預測應用程序和應用程序操作的訪問權限,並通過另一次刷卡將用戶帶到所有應用程序。

Android P中的新系統導航功能可以更快地訪問最新和預測的應用程序。

文本放大鏡

在Android P中,我們還添加了一個新的Magnifier小部件,用於更容易地選擇文本並操縱文本中的文本光標。默認情況下,擴展TextView的類會自動支持放大鏡,但是您可以使用放大鏡API將其附加到任何自定義視圖,這可以打開各種用途。

背景限制

Android P的電池限制

我們正在簡化用戶識別和管理在後臺使用電池的應用程序。從我們關於Android Vitals的工作中,Android可以檢測電量耗盡的應用行爲,例如過度喚醒鎖等。現在在Android P中,“電池設置”列出了這些應用程序,並允許用戶通過一次點擊即可限制其背景活動。

當應用程序受到限制時,其後臺作業,警報,服務和網絡訪問都會受到影響。要不在列表中,請注意Play管理中心中的Android Vitals儀表板,它可以幫助您瞭解性能和電池問題。

背景限制可確保開發人員爲跨設備和製造商構建的基線行爲。儘管設備製造商可以在覈心設備上添加限制,但他們必須通過電池設置提供用戶控制。

我們添加了一個標準API來讓應用程序檢查它們是否受限制,以及新的ADB命令,以便您可以手動將限制應用於應用程序進行測試。詳情請參閱文檔我們還計劃在未來向您的Play Console Android Vitals儀表板添加限制相關指標。

使用動態處理增強音頻

Android P在音頻框架中引入了新的動態處理效果,可讓開發人員提高音頻質量。通過動態處理,您可以分離特定的頻率,降低響度或增加柔和的聲音,以提高應用程序的聲音質量。例如,您的應用可以改善在大聲,遙遠或聲學極具挑戰性的環境中安靜地說話的人的聲音。

動態處理API,您可以訪問包括預均衡器,多頻段壓縮器,後均衡器和一個鏈接的限制器的多級,多頻帶動態處理的效果。它允許您修改Android設備發出的音頻,並根據收聽者的偏好或環境條件對其進行優化。頻段和激活階段的數量是完全可配置的,大多數參數可以實時控制,如增益,攻擊/釋放時間,閾值等。

要了解可以使用動態處理效果做什麼,請參閱文檔

顯示動態處理水平與標準可聽水平的圖表。

安全

生物識別提示

生物統計提示由系統顯示。

Android P爲越來越多的生物識別傳感器提供標準的身份驗證體驗。應用程序可以使用新的BiometricPrompt API,而不是顯示自己的生物特徵驗證對話框。這個新的API取代了DP1中添加的FingerprintDialog API。除了支持指紋(包括顯示內傳感器)之外,它還支持Face和Iris身份驗證,提供全系統一致的體驗。有一個USE_BIOMETRIC權限涵蓋了所有設備支持的生物識別技術。FingerprintManager和相應的USE_FINGERPRINT權限已被棄用,所以請儘快切換到BiometricPrompt

受保護的確認

Android P引入了Android Protected Confirmation,它使用可信執行環境(TEE)來保證給定的提示字符串被用戶顯示和確認。只有在成功的用戶確認後,TEE纔會簽署應用程序可以驗證的提示字符串。

更強大的私鑰保護

我們已經將StrongBox添加爲新的KeyStore類型,爲設備提供API支持,這些設備通過隔離的CPU,RAM和安全閃存提供防篡改硬件中的密鑰存儲。您可以設置您的密鑰是否應受KeyGenParameterSpec中 StrongBox安全芯片的保護

Android P Beta

爲用戶帶來新版Android需要谷歌,芯片製造商(SM),設備製造商(OEM)和運營商共同努力。這個過程在技術上是具有挑戰性的,需要時間 - 爲了更容易,我們去年推出了Project Treble作爲Android Oreo的一部分。從那以後,我們一直在與合作伙伴一起合作,現在我們看到了高音能夠做什麼的證據。

今天我們宣佈,我們的頂級合作伙伴中有6家加入我們,在其設備上發佈Android P Beta - 索尼Xperia XZ2,小米Mi Mix 2S,諾基亞7 Plus,Oppo R15 Pro,Vivo X21UD和X21以及基本PH-1。我們正在邀請世界各地的早期使用者和開發人員在任何這些設備上嘗試Android P Beta,以及Pixel 2Pixel 2 XL,PixelPixel XL。

您可以在android.com/beta上看到支持的合作伙伴和Pixel設備的完整列表對於每個設備,您都可以找到規範和指向製造商專用站點的下載,支持和報告問題的鏈接。對於Pixel設備,您現在可以將設備註冊到Android Beta程序中,並自動通過無線方式接收最新的Android P Beta。

立即在您最喜愛的設備上試用Android P Beta,並讓我們知道您的反饋!查看我們的帖子,瞭解更多詳細信息,以及更高速採用Project Treble

使您的應用程序兼容

隨着越來越多的用戶開始在他們的設備上獲得Android P Beta,現在是時候測試您的應用程序的兼容性,解決任何問題並儘快發佈更新。請參閱遷移指南瞭解步驟和建議的時間表。

要測試兼容性,只需將您當前的Google Play應用安裝到運行Android P Beta 的設備或模擬器上,然後處理用戶流。該應用應該運行並且看起來很棒,並且正確處理Android P 行爲更改尤其要注意自適應電池Wi-Fi權限更改, 後臺使用攝像頭和傳感器的限制,應用程序數據的更嚴格的SELinux策略以及默認啓用的TLS更改以及Build.SERIAL限制

通過公共API進行兼容

測試您的應用程序以使用非SDK界面非常重要。正如前面所提到的,在Android的P我們開始一個漸進的過程,以限制對選定的非SDK接口,要求開發商-包括谷歌內部應用團隊-使用公共等價物來代替。

如果您的應用使用私人Android界面和庫,則應該轉而使用Android SDK或NDK中的公共API。第一個開發人員預覽顯示了使用非SDK界面的敬酒警告 - 從Android P Beta開始,使用非豁免的非SDK界面會在您的應用程序中產生錯誤 - 因此您現在將會拋出異常的警告。

爲了幫助您識別非SDK API的反射使用情況,我們在StrictMode中添加了兩種新方法。您可以使用detectNonSdkApiUsage()來警告您的應用何時通過反射或JNI訪問非SDK API,並且可以使用permitNonSdkApiUsage()來禁止針對這些訪問的StrictMode警告。這可以幫助您瞭解您的應用對非SDK API的使用情況 - 即使此時可以免除這些API,最好爲未來做計劃並消除其使用。

如果沒有符合您使用情況的公開API,請立即通知我們我們希望確保初始部署隻影響開發人員可以輕鬆遷移到公共選擇的界面。關於限制的更多信息在這裏

測試與顯示剪影

使用顯示切口測試您的應用也很重要現在,您可以使用我們運行Android Beta的幾款合作伙伴設備,確保您的應用在顯示屏上保持最佳狀態。您還可以通過開發人員選項使用任何Android P設備上提供的模擬剪切支持。

開始使用Android P

準備就緒後,深入Android P並瞭解可在您的應用中使用的許多新功能和API。爲了便於探索新的API,請參閱API差異報告(API 27-> DP2DP1-> DP2)以及Android P API參考有關詳細信息,請訪問Developer Preview網站。還可以看看這個視頻,突出顯示 Android P Beta開發者的新功能。

要開始使用Android P,請將P Developer Preview SDK和工具下載到Android Studio 3.1或使用最新版本的Android Studio 3.2如果您沒有運行Android P Beta的設備,則可以使用Android模擬器運行並測試您的應用。

與往常一樣,您的反饋意見很重要,所以請讓我們知道您的想法 - 我們收到您的回覆越早,我們可以整合的反饋越多。當你發現問題時,請在這裏報告我們爲平臺問題應用程序兼容性問題第三方SDK問題提供單獨的列表

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章