android studio3.2預覽版本已經發布了,下面這些功能在最新的版本已經提供,但可能還沒有在測試版本中發佈渠道中提供。android
Android Studio 3.2有一個新的Assistant面板,能夠通知您有關Android Studio的最新更改。安全
若是檢測到有新信息要顯示,那麼當您啓動Android Studio時,該面板將打開。您還能夠經過選擇Help> Android Studio中的新增功能來打開「Assistant」面板 。bash
Android Jetpack經過組件,工具和指導來幫助加速Android開發,消除重複性任務,並使您可以更快,更輕鬆地構建高質量,可測試的應用程序。Android Studio包含如下更新以支持Jetpack。有關更多信息,請參閱Jetpack文檔。網絡
新的導航編輯器與Android Jetpack的導航組件集成,爲建立應用的導航結構提供圖形視圖。導航編輯器簡化了應用內目的地之間導航的設計和實現。session
要了解更多信息,請閱讀 導航編輯器文檔。編輯器
做爲Jetpack的一部分,咱們正在使用androidx命名空間將Android支持庫重構爲新的Android擴展庫。有關更多信息,請閱讀 AndroidX公告。ide
Android Studio 3.2經過新的重構功能幫助您完成此遷移。工具
要將現有項目重構爲AndroidX,請選擇「 Refactor」>「Refactor to AndroidX」。若是您有任何未遷移到AndroidX名稱空間的Maven依賴關係,Android Studio生成系統也會自動轉換這些項目依賴關係。佈局
Android Gradle插件提供了您能夠在gradle.properties文件中設置的如下全局標誌:測試
android.useAndroidX:設置true爲時,此標誌表示您但願從如今開始使用AndroidX。若是該標誌不存在,Android Studio的行爲就將該標誌已設置爲false。
android.enableJetifier:設置true爲該標誌時,表示您但願得到工具支持(經過Android Gradle插件)自動將現有的第三方庫轉換爲與AndroidX相同的庫。若是該標誌不存在,Android Studio的行爲就將該標誌已設置爲false。
若是您不想遷移,請將兩個標誌設置爲false。(這至關於文件中沒有標誌gradle.properties。)
當您使用Refactor to AndroidX命令或建立一個minSdkVersion設置爲「P」 的新項目時,這兩個標誌都會設置爲true。
重要提示:在當前的Android Studio 3.2 Canary版本中,存在一個已知問題,致使在android.useAndroidX使用「 建立新項目」嚮導時不設置標誌。目前,您須要在gradle.properties文件中手動設置標誌。
若是您想當即開始使用AndroidX庫,而且不須要轉換現有的第三方庫,則能夠將android.useAndroidX標誌設置 爲true,並將 android.enableJetifier標誌設置爲false。
Android App Bundle是一種新的上傳格式,其中包含應用程序的全部已編譯代碼和資源,但會延遲APK生成並登陸到Google Play商店。
Google Play的新應用服務模型稱爲動態投放,而後使用您的應用捆綁軟件爲每一個用戶的設備配置生成並提供優化的APK,所以每一個用戶只下載運行您的應用所需的代碼和資源。您再也不須要構建,簽名和管理多個APK,而且用戶能夠得到更小,更優化的下載。
此外,您能夠將動態功能模塊添加到您的應用程序項目中,並將其包含在應用程序包中。經過動態交付,用戶能夠根據須要下載和安裝應用的動態功能。
要構建一個包,請選擇Build> Build Bundle(s)/ APK(s)> Build Bundle(s)。
有關更多信息(包括構建和分析Android應用程序包的說明),請參閱Android應用程序包 入門。
許多Android佈局具備運行時數據,這使得在應用程序開發的設計階段難以可視化佈局的外觀和感受。您如今能夠在佈局編輯器中輕鬆查看您的視圖預覽,其中包含示例數據。添加視圖時, 在「Design」窗口中的視圖下方會出現一個設置按鈕 。點擊此按鈕設置設計時視圖屬性。您能夠從各類樣本數據模板中進行選擇,並指定用於填充視圖的樣本項目數。
要嘗試使用示例數據,請將其添加 RecyclerView 到新佈局,單擊設計視圖下方的設計時屬性按鈕 ,而後從樣本數據模板輪播中選擇一個選擇。
Silces提供了一種將Android應用程序的部分功能嵌入到其餘用戶界面表面的新方法。例如,Silces能夠在Google搜索建議中顯示應用功能和內容。
Android Studio 3.2具備內置模板,可幫助您使用新的Slice Provider API擴展您的應用程序以及新的lint檢查,以確保在構建切片時遵循最佳作法。
要開始使用,請右鍵單擊項目文件夾並選擇New > Other > Slice Provider。
要了解更多信息,包括如何測試Silces交互,請閱讀Silces入門指南。
在最新版本的Android Studio 3.2上嘗試如下新的Android Profiler功能。
Energy Profiler顯示應用程序的估計能源使用狀況的可視化。
當您在運行Android 8.0(API 26)或更高版本的鏈接設備或Android模擬器上運行應用程序時,Energy Profiler會顯示爲Profiler窗口底部的新行。
點擊Energy行,最大化Energy Profiler視圖。將鼠標指針放在時間線上的條形圖上,查看CPU,網絡和位置(GPS)資源以及系統事件(如喚醒鎖,警報和做業)的能源使用狀況。
您如今能夠將Profiler數據保存爲「會話」以便稍後從新訪問和檢查。(分析器會保留會話數據,直到您從新啓動IDE。)
經過從主菜單中選擇Run > Profile來部署應用程序後,經過單擊+並從下拉菜單中選擇一個應用程序進程來啓動一個新的會話 。
當您 錄製方法跟蹤或 捕獲堆轉儲時,IDE會將該數據(連同您的應用的網絡活動)做爲單獨條目添加到當前會話中,而且您能夠輕鬆地在錄製之間來回切換以比較數據。要中止向當前會話添加數據,請單擊stop。
在CPU profiler中,選擇新的 System Trace 配置以檢查設備的系統CPU和線程活動。此跟蹤配置基於 systrace 而且對於調查系統級問題(例如用戶界面異常)很是有用。
在使用這種新的跟蹤配置時,您能夠經過在Trace類中安裝代碼,直觀地在Profiler時間線中標記重要的代碼例程。
若是您將應用部署到運行Android 8.0(API級別26)或更高級別的設備,則如今可使用Memory Profiler檢查應用的JNI代碼的內存分配狀況 。
在您的應用程序運行時,選擇您想要檢查的部分時間軸,而後從班級列表上方的下拉菜單中選擇 JNI heap,而後,您能夠像日常同樣檢查堆中的對象,而後在「 Allocation Call Stack 」選項卡中雙擊對象以查看JNI引用在您的代碼中分配和釋放的位置。
您如今能夠在應用程序啓動期間記錄CPU活動:
從主菜單中選擇Run > Edit Configurations。
在所需運行配置的「Profiling」選項卡下,選中啓動時記錄方法跟蹤旁邊的複選框。
從下拉菜單中選擇要使用的CPU記錄配置。
經過選擇Run > Profile將應用程序部署到運行Android 8.0(API級別26)或更高版本的設備。
在使用CPU分析器記錄CPU活動以後,能夠將數據導出爲.trace文件以便與其餘人共享或稍後檢查。
在記錄CPU活動後導出軌跡,請執行如下操做:
右鍵單擊要從CPU時間軸導出的錄像。
從下拉菜單中選擇Export trace。
導航至要保存文件的位置,而後單擊保存。
您如今能夠導入並檢查.trace使用調試API或 CPU分析器建立的文件 。(目前,您不能導入系統跟蹤記錄。)
經過單擊Profiler的Sessions窗格中的Start new profiler session 導入您的跟蹤文件,而後選擇從Load from file。而後,您能夠在CPU分析器中檢查其數據,但有一些例外狀況:
CPU活動不是沿着CPU時間軸表示的。
線程活動時間線僅指示每一個線程可用的跟蹤數據的位置,而不是實際的線程狀態(如正在運行,正在等待或正在休眠)。
您如今能夠經過調試API來啓動和中止在CPU分析器中記錄CPU活動。將應用程序部署到設備後,配置程序會在應用程序調用時自動開始記錄CPU活動 startMethodTracing(String tracePath),而且配置程序在您的應用程序調用時中止記錄 stopMethodTracing()。在記錄使用此API觸發的CPU活動時,CPU分析器將調試API顯示 爲選定的CPU記錄配置。
爲了確保您的Java代碼與Kotlin代碼良好的互操做性,新的lint檢查會執行Kotlin Interop Guide中描述的最佳實踐 。這些檢查包括查找Nullability註釋的存在,使用Kotlin硬關鍵字,最後放置lambda參數等等。
除了上一節中介紹的Kotlin互操做性lint檢查以外,Android Studio 3.2還實現了20個新的lint檢查,以幫助您查找和識別常見代碼問題。這些新的檢查範圍從關於潛在可用性問題的警告到關於潛在安全漏洞的高優先級錯誤。
使用新的lintFixGradle任務將lint檢查建議的全部安全修復直接應用於源代碼。建議使用安全修復程序的皮棉檢查的一個示例是SyntheticAccessor。
各類元數據(如服務轉換檢查)已更新用於lint檢查,以與Android P Developer Preview一塊兒使用。
Lint如今記錄了一個基線記錄的變體和版本,而且若是您在與建立基線的變體不一樣的變體上運行它,lint會警告您。
Android Studio 3.2包含對現有lint檢查的許多改進。例如,資源循環檢查如今適用於其餘資源類型,而且翻譯檢測器如今能夠在編輯器中即時查找缺失的翻譯。
問題ID如今顯示在更多位置,包括「Inspection Results」 窗口中,使您更容易找到啓用或禁用特定檢查lintOptions的信息build.gradle。
Data Binding V2如今默認啓用而且與V1兼容。這意味着,若是您有使用V1編譯的庫依賴項,則能夠將它們與使用Data Binding V2的項目一塊兒使用。可是請注意,使用V1的項目沒法使用經過V2編譯的依賴項。
在Android Studio 3.1中,咱們將Dug工具做爲實驗性功能整合到了D8工具中,從而縮短了總體構建時間。如今,在Android Studio 3.2中,默認狀況下會打開D8的解除綁定。
R8是替代ProGuard的代碼縮小和混淆的新工具。您能夠經過在項目gradle.properties文件中包含如下內容來開始使用R8的預覽版本:
android.enableR8 = true
複製代碼
當創建多個APK每一個目標不一樣的ABI,插件再也不產生用於默認如下的ABI的APK: ,mips,mips64和armeabi。
若是您想構建以這些ABI爲目標的APK,則必須使用 NDK r16b或更低版本,並在build.gradle文件中指定ABI ,以下所示:
splits {
abi {
include 'armeabi', 'mips', 'mips64'
...
}
}
複製代碼
若是您使用CMake 將C和C ++代碼添加到項目中,那麼Android Studio如今包含改進的編輯器功能,同時編輯您的CMake構建腳本,例如:
語法突出顯示和代碼完成: IDE如今突出顯示並建議通用CMake命令的代碼完成。此外,您能夠經過在按下Control鍵(或MacOS上的命令)時點擊文件來導航到文件。
代碼從新格式化:您如今可使用 IntelliJ的代碼從新格式化選項 來將代碼樣式應用於您的CMake構建腳本。
安全重構: IDE內置的重構工具如今還能夠檢查您是否重命名或刪除了在CMake構建腳本中引用的文件。
在之前版本的Android Studio中使用Project窗口時,只能瀏覽和檢查屬於您從本地項目構建的庫的頭文件。經過此版本,您如今還能夠查看和檢查包含在導入到應用項目中的外部C / C ++庫依賴項的頭文件。
若是您的項目中已 包含C / C ++代碼和庫,請經過從主菜單中選擇View > Tool Windows > Projec並從下拉菜單中選擇Android,打開IDE左側的項目窗口。在cpp 目錄中,位於應用程序項目範圍內的全部頭文件都將在每一個本地C / C ++庫依賴項的include節點下進行組織。
新的ADB鏈接助手提供分步說明以幫助您經過Android調試橋(ADB)鏈接設置和使用設備。
要啓動助理,請選擇Tools > Connection Assistant。
ADB鏈接助手在「 Assistant」面板的一系列頁面中提供說明,上下文控制以及鏈接設備的列表。
您如今能夠隨時在Android模擬器中保存並加載AVD(Android虛擬設備)的快照,從而能夠快速輕鬆地將模擬設備返回到已知狀態進行測試。當您使用AVD管理器編輯AVD時,您能夠指定在AVD啓動時加載哪一個AVD快照。
用於保存,加載和管理AVD快照的控件如今位於模擬器Extended controls窗口的「 Snapshots」選項卡中。
更多文章請關注個人公衆號: