1. 程式人生 > >Android Studio 3.0 下載 使用新功能介紹

Android Studio 3.0 下載 使用新功能介紹

card offline sta 主目錄 index 執行 sources message tree

谷歌2017發布會更新了挺多內容的,而且也發布了AndroidStudio3.0預覽版,一些功能先睹為快。(英語一般,有些翻譯不太好)

下載地址

https://developer.android.google.cn/studio/archive.html

選擇顯示全部即可看到下載地址,這裏給出來了。

  • Windows (64-bit): android-studio-ide-171.4010489-windows.zip (702075896 bytes)
    https://dl.google.com/dl/android/studio/ide-zips/3.0.0.0/android-studio-ide-171.4010489-windows.zip

  • Windows (32-bit): android-studio-ide-171.4010489-windows32.zip (701541040 bytes)

  • Mac: android-studio-ide-171.4010489-mac.zip (701134644 bytes)
    https://dl.google.com/dl/android/studio/ide-zips/3.0.0.0/android-studio-ide-171.4010489-mac.zip

  • Linux: android-studio-ide-171.4010489-linux.zip (700534332 bytes)

    https://dl.google.com/dl/android/studio/ide-zips/3.0.0.0/android-studio-ide-171.4010489-linux.zip

安裝

可以和你之前安裝的穩定版共存的,把壓縮包的文件夾解壓放到別的目錄即可。

啟動studio64.exe(如果您運行的是 32 位計算機,則啟動 studio.exe)

變更您的更新方式
默認情況下,每個 Android Studio 安裝都會通過您最初下載時所用的渠道(Canary、測試版或穩定版)接收更新。 如果您希望變更某個安裝的更新渠道,請執行以下步驟:

  • 在 Android Studio 中,選擇 File > Settings (或者,在 Mac 上,選擇 Android Studio > Preference)。
  • 在左側面板中,選擇 Appearance & Behavior > System Settings > Updates。
  • 確保已選中 Automatically check for updates,然後從下拉列表中選擇一個渠道。

在您的渠道有新版本 Android Studio 可用時,您將在 IDE 中收到一個氣泡通知。 如果您最初選擇了忽略該通知,您也可以稍後通過點擊 Help > Check for Update(或者,在 Mac 上,點擊 Android Studio > Check for Updates)來檢查更新。

新功能

ide的改變

  • 更新了基礎ide到idea的2017.1版本,包括參數提示,語義突出顯示,搜索中的即時結果等等。
  • 更多新的lint檢查
  • Instant run修復了issue234401 的問題,如果程序在斷點上暫停,app就重新啟動,但是如果應用程序沒有在斷點上暫停,那麽當您只進行方法實現更改時,不應重新啟動並且熱插拔應該工作

kotlin語言支持

Android Studio 3.0包括對Kotlin語言的支持,通過將Java文件轉換為Kotlin(單擊Code>Convert Java File to Kotlin File)或通過使用new Project向導創建啟用Kotlin的新項目,可將Kotlin合並到項目中。點擊了解有關Kotlin和Android的更多信息

支持Java8

Android Studio 3.0引入了對Java 8庫和某些Java 8語言功能的內置支持,Jack不再是必需的,你首先應該禁止Jack使用改進的java 8支持內置的默認工具。點擊了解更多信息。 (以前是通過jack來支持java8的,現在可以拋棄了,自帶支持)

新的探查器

Android Studio中3.0提供您的應用程序的活動的實時、統一的視圖。而Android Profiler窗口取代了Android的監控 窗口。要打開Android的探查器,請按照下列步驟操作:

  • View > Tool windows > Android Profiler (你也可以點擊工具欄中的技術分享
  • 選擇您想要從Android探查器工具欄配置的設備和應用程序,點擊network,CPU或MEMORY時間表打開每個探查的更詳細視圖。

技術分享

有關每個新的探查器的更多信息,請參閱下一篇文章

由於更新了這一部分,logcat已移至單獨的窗口

即時應用(Instant App)的支持

Android Studio 3.0允許您在項目中使用兩種新的模塊類型:即時應用模塊和功能模塊來創建即時應用

技術分享

Android Studio 3.0還包括一個新的重構模塊化操作和App Links Assistant,以幫助您實施即時應用。有關Instant Apps的詳細信息,請參閱Android Instant Apps

APK Debugger(APK調試者)

Android Studio 3.0中的新版APK調試器可讓您配置和調試APK,而無需從Android Studio項目中構建它們,只要它們是可調試的。 更多信息參閱Profile and Debug Pre-built APKs。

新的文件管理器

新的設備文件資源管理器工具窗口允許您與連接的設備的文件系統無縫交互。

技術分享

您可以點擊查看手機中的各種文件,並將文件復制到您的計算機。此功能取代了以前通過DDMS的文件系統管理。 這點非常贊,以前復制文件可是麻煩得一筆。

支持Andriod O 開發者預覽

ndroid Studio 3.0增加了對Android O的支持,其中包括:

  • 一個新的自適應圖標向導,允許您創建新的自適應啟動器圖標資源,並在不同的設備上進行預覽。啟動自適應圖標向導方法是: 右鍵你項目的res文件夾,然後點擊 New > Image Asset > Launcher Icons (Adaptive and Legacy).,更多信息請查看Adaptive Icons

  • 新的XML字體預覽,字體選擇工具以及對可下載字體的支持,更多信息請參閱Working With Fonts

新模板

Android Studio 3.0在新項目和新模塊向導中包含一組新的模板,因此您可以開始使用Android Things開發物聯網設備,更多請查閱Android Things

布局編輯器改進

Android Studio 3.0中的布局編輯器包含許多新的功能增強功能,其中包括:

  • 更新的組件樹,具有改進的拖放視圖插入
  • 新錯誤面板
  • 對視圖障礙和組的支持
  • 增強鏈創造 (這個我也沒懂意思)

布局檢索改進

Android Studio 3.0中的布局檢查器包括新的增強功能,可以更輕松地調試應用程序布局的問題。包括將屬性分組為常規類別,並在View Tree"Properties面板中將新的搜索功能分組。打開的方法為:Tools > Android > Layout Inspector

谷歌Maven倉庫

Android Support庫Maven依賴關系現在可以在新的Maven倉庫Android SDK Manager外部使用,結合命令行sdkmanager工具和Gradle,這種新的分發方法簡化了使用連續集成系統的Maven依賴關系管理,要使用新的Maven倉庫,請將URL添加到build.gradle文件的repository庫中,如下所示:

repositories {
  maven {
    url "https://maven.google.com"
  }
} 

更多信息參閱: Google Maven and offline repositories

APK分析器的改進

Android Studio 3.0對APK分析工具進行了以下改進:

  • 顯示除包之外的字段,類和方法之外的字段
  • 頂部顯示和隱藏字段和方法的新過濾選項
  • 在樹視圖中,以斜體顯示的節點是未在DEX文件中定義的引用
  • 對於啟用Proguard構建的APK,您可以加載向DEX查看器添加功能的Proguard映射文件,其中包括:
    • 粗體表示節點的節點不應該刪除,當收縮編碼
    • 啟用一個按鈕,使得在收縮過程中被刪除的節點可見
    • 啟用一個按鈕,顯示樹視圖中由Proguard混淆的節點的原始名稱

新的Gradle插件

Android plugin 3.0.0-alpha1及更高版本主要解決大量模塊的Android項目的構建性能問題。當使用這些項目的新插件時,您應該體驗到以下內容:

  • 更快的配置時間,因為延遲了依賴的解析。
  • Variant-aware依賴解決方案僅適用於您正在構建的項目和Variant。
  • 在對代碼或資源應用簡單更改時,加快增量構建時間。

新的Android模擬器功能

Android模擬器還包括許多新功能,包括以下內容:

  • 新的API Level 24系統映像和Android O Beta系統映像,包括Google Play商店,以促進您的應用程序的端到端測試,並幫助您保持Google Play服務與您的AVDs保持同步。
  • 支持Windows和Linux機器上的OpenGL ES 3.0系統圖像API級別24及更高版本,並在較老的模擬器系統映像上對OpenGL ES 2.0圖形性能進行顯著改進。

    • 提示:目前正盡最大努力使OpenGL ES 3.0能從英特爾、英偉達和AMD的所有gpu自動啟用,如果運行OpenGL ES 3.x應用程序時遇到問題,系統可能尚未自動啟用。您可以通過修改~/.android/advancedFeatures.ini進行手動啟用OpenGL ES 3.0。修改為:GLESDynamicVersion = true
  • 一種新的更簡單的方法來從Android模擬器生成您的應用的錯誤報告。

  • 個新的鏈接,可以在Android問題跟蹤器上為Android團隊快速提交與模擬器相關的錯誤(Emulator Tool Bar > Extended Controls > Help > Emulator Help > File a Bug)
  • 一個新的UI來配置Android模擬器使用的代理設置。Extended Controls > Settings > Proxy.
  • 在模擬器上支持Android Wear設備的旋轉輸入。

更多模擬器的升級,請查閱Android Emulator Release Notes.

探查器詳解(Android Profiler)

Android Studio 3.0中的新的Android Profiler窗口替代了Android Monitor工具,這些新的分析工具可為應用程序的CPU,內存和網絡活動提供實時數據。您可以執行sample-based的方法跟蹤代碼執行、捕獲堆轉儲、查看內存分配和檢查網絡傳輸文件的詳細信息。

要打開Android Profiler窗口,請按照下列步驟操作:

  • 點擊View > Tool Windows > Android Profiler(你也可以點擊工具欄的技術分享).
  • 在Android Profiler窗口的頂部,如圖所示,選擇設備①和您想要配置的應用程序②。
    如果您已通過USB連接設備但未看到它,請確保已啟用USB調試。
    • 如果您使用Android模擬器或已經Root的設備,Android Profiler將列出所有正在運行的進程,即使它們可能是不可調試的。當您啟動一個可調試的應用程序時,該進程是默認選擇的。

Android Profiler現在顯示了一個共享的時間線視圖(下圖),其中包括一個時間線,用於CPU、內存和網絡使用的實時圖。窗口還包括時間線縮放控件③,跳轉到實時更新的按鈕④以及顯示活動狀態,用戶輸入事件和屏幕旋轉事件的事件時間軸⑤。

技術分享

此共享時間軸視圖僅顯示時間線圖。要訪問詳細的分析工具,請單擊與您要檢查的性能數據相對應的圖表。例如,要訪問工具以檢查堆並跟蹤內存分配,請單擊MEMORY圖。

有關每個概要分析工具的更多文檔,請參閱以下內容:

  • Inspect CPU Activity and Method Traces with CPU Profiler
  • Inspect the Java Heap and Memory Allocations with Memory Profiler
  • Inspect Network Traffic with Network Profiler

開啟高級分析器功能

默認情況下並不是所有的分析數據都可見。如果您看到一條消息,說“Advanced profiling is unavailable for the selected process”,則需要在運行配置中啟用高級分析。

為了顯示高級分析數據,Android Studio必須將監控邏輯註入到已編譯的應用程序中。高級分析提供的功能包括:

  • 所有分析器窗口上的事件時間軸
  • 內存分析器中已分配對象的數量
  • 內存分析器中的垃圾收集事件
  • 有關Network Profiler中所有傳輸文件的詳細信息

要啟用高級概要分析,請按照下列步驟操作:

  • 選擇 Run > Edit Configurations
  • 在左窗格中選擇您的應用程序模塊。
  • 單擊Profiling選項卡,然後選中Enable advanced profiling.

現在再次構建並運行應用程序就可以訪問完整的概要分析功能集。但是,請註意,高級分析會降低您的構建速度,因此只有在您要開始對應用程序進行概要分析時,才應啟用它。

apk調試器

Android Studio 3.0允許您配置和調試APK,而無需從Android Studio項目中構建它們。但是,您需要確保使用了APK的調試版本。

要開始調試APK,從Android Studio歡迎屏幕上單擊Profile或debug APK。或者,如果你已經打開了一個項目,點擊 File > Profile 或者從工具欄點擊 debug APK。在下一個對話框窗口中,選擇想要導入Android Studio的APK,然後單擊OK。您應該會看到類似於下圖所示的內容。

技術分享

提示: 當您將APK導入Android Studio時,IDE會在您的主目錄中創建一個新項目,並制作目標APK的本地副本。

Project窗格中的Android視圖允許您檢查您的APK的以下內容:

  • APK file: 雙擊APK打開APK分析器。
  • manifests: 從APK中提取出來應用清單。
  • java: 包含Android Studio反匯編的Java代碼。你的APK的DEX文件中的smali文件對應一個Java類。
  • cpp: 如果你的app包含Native代碼,這個目錄包含了你的native庫(.so文件)。
  • External Libraries: 包含Android SDK。

您可以立即使用Android profiler來開始測試應用程序的性能,但是profiler目前只適用於app的Java進程。使用斷點來調試應用程序的Java和native代碼,您需要首先Attach Java sourcesattach native debug symbols

附加Java源(Attach Java sources)

默認情況下,Android Studio從您的APK中提取Java代碼,並將其保存為.smali文件。要使用斷點調試Java代碼,您需要將Java源附加到要調試的每個.smali文件中。

要附加Java源,請按照下列步驟操作:

  • Project窗格中雙擊.smali文件(使用Android視圖)。打開文件後,編輯器將顯示一個黃色警告橫幅,要求您選擇Java源,如上面的圖所示。
  • 單擊編輯器窗口頂部的Attach Java sources
  • 打開應用程序的java源文件的目錄,然後單擊open

Project窗口中,IDE將使用相應的.java文件替換.smali文件。您現在可以按照通常的方式添加斷點並調試應用程序。

附加Native調試符號(Attach native debug symbols)

如果你的apk文件包括so文件不包含斷點調試,IDE會在“Messages”窗口中顯示警告,類似於上圖所示。不附加可調試Native庫不能調試APK的Native代碼或斷點,如果您還沒有這樣做,請確保下載NDK和工具。

要附加可調試的Native庫,請按照下列步驟操作:

  • Project窗口的cpp目錄下,雙擊一個不包含調試符號的Native庫文件,編輯器會顯示APK支持的所有ABIs的表。
  • 點擊編輯器窗口右上角的ADD
  • 導航到包含要附加的可調試Native庫的目錄,然後單擊“OK”。
  • 如果APK和可調試的Native庫是使用不同的工作站構建的,那麽您需要通過以下步驟指定調試符號的本地路徑:
    • 在編輯器窗口的Path Mappings部分中編輯Local Paths列中的字段,添加本地路徑到缺失調試符號,如下圖所示。IDE自動將路徑映射到本地NDK下載中的路徑。
  • 點擊 Apply。

技術分享

現在您應該在Project窗口中看到本地源文件。就可以打開這些本機文件添加斷點,並像往常一樣調試應用程序。

設備文件管理器

Android Studio3.0 包括設備文件資源管理器,您可以在Android設備上查看,復制和刪除文件。當檢查由您的應用程序創建的文件或要將文件傳輸到設備或從設備傳輸文件時j就非常有用。

要查看硬件設備上的文件,必須先設置用於開發的設備,例如usb調試。有關更多信息,請參見在硬件設備上運行應用程序。

要使用設備的文件系統,請按照以下步驟操作:

  • Click View > Tool Windows > Device File Explorer , 或單擊工具窗口欄中的技術分享設備文件資源管理器按鈕打開設備文件資源管理器。
  • 從下拉列表中選擇一個設備。
  • 右鍵一個文件或目錄 可以創建一個新的文件或目錄、將選中的文件或目錄保存到您的機器上、上傳、刪除或同步。雙擊一個文件可以在Android Studio中打開它。

Android Studio會將您以這種方式打開的文件保存在項目外部的臨時目錄中,如果您對使用“Device File Explorer”打開的文件進行了修改,並希望將更改保存到手機,則必須手動將該文件覆蓋回手機。

技術分享

獲取設備的文件時,下目錄特別有用:

  • data/data/app_name/ 包含存儲在內部存儲上的應用程序的數據文件
  • sdcard/ 包含存儲在外部用戶存儲上的用戶文件(圖片等)

    在設備文件瀏覽器中,不是所有文件都是可見的。例如,在data/data/目錄中,與未調試設備上的應用程序對應的條目不能在設備文件瀏覽器中展開。

使用Java 8語言功能

Android Studio 3.0預覽1及更高版本支持所有Java 7語言功能和Java 8語言功能的一部分,這些功能因平臺版本而異。此頁面描述了可以使用的Java 8語言功能,如何正確配置項目以使用它們以及您可能遇到的任何已知問題。

在開發Android應用程序時,使用Java 8語言功能是可選的。您可以將項目的源和目標兼容性值保留為Java 7,但您仍然需要使用JDK 8進行編譯。

Android Studio現在提供內置支持使用某些Java 8語言功能和使用它們的第三方庫。如下圖所示,默認的工具實現了新的語言功能,通過執行字節碼轉換,稱為desugar,對javac編譯器的輸出。jack不再被支持,你首先應該關閉jack,使用改進的java 8支持內置的默認工具。

技術分享

要開始使用支持的Java 8語言功能,請將Android插件更新為3.0.0-alpha1(或更高版本),並將以下內容添加到模塊的build.gradle文件中:

android {
  ...
  compileOptions {
    sourceCompatibility JavaVersion.VERSION_1_8
    targetCompatibility JavaVersion.VERSION_1_8
  }
} 

如果Android Studio檢測到您的項目正在使用Jack,Retrolambda或DexGuard,則IDE會使用這些工具提供的Java 8支持。但是,請考慮遷移到默認工具內置工具

支持的Java8語言特性和API

Android Studio不支持所有Java 8語言功能,但將來會在IDE中添加更多功能。根據您正在使用的minSdkVersion,某些功能和API現在可以使用,如下表所述。

Java 8語言特性兼容的minSdkVersion
Lambda expressions 所有版本,但是只有當lambda的所有值都是可序列化的時,才支持lambda序列化。
Method References 所有版本
Type Annotations 所有版本.但是,類型註釋信息在編譯時可用,但在運行時不可用。此外,平臺支持API級別24和以下的類型,但不支持ElementTypeTYPE_USEElementType.TYPE_PARAMETER
Default and static interface methods 所有版本
Repeating annotations 所有版本
Java8語言API兼容的minSdkVersion
java.lang.annotation.Repeatable API level 24 or higher.
AnnotatedElement.getAnnotationsByType(Class) API level 24 or higher.
java.util.stream API level 24 or higher.
java.lang.FunctionalInterface API level 24 or higher.
java.lang.reflect.Method.isDefault() API level 24 or higher.
java.util.function API level 24 or higher.

除了對java語言和API 8以上,Android Studio3以及後面的版本會支持所有Android API級別使用try-with-resources

遷移到默認工具

如果Android Studio發現您的項目使用的是Jack、Retrolambda或DexGuard,那麽IDE將使用這些工具提供的Java 8支持。但是,與默認的工具鏈相比,這些工具少一些功能和支持。因此,請按照本節中的說明遷移到Android Studio的默認工具。

從Jack遷出
Jack工具已經被棄用了,按照 這個公告 , 如果您的項目使用了Jack,您應該遷移到使用Android Studio內置的Java8默認工具,使用默認工具還包括對使用Java 8語言功能的第三方庫的支持,Instant Run,和依賴於中間.class文件的工具。

要禁用Jack並切換到默認工具,只需從模塊的build.gradle文件中刪除jackOptions塊:

android {
    ...
    defaultConfig {
        ...
        // 移除下面這一塊
        jackOptions {
            enabled true
            ...
        }
    }

    // 保持以下配置
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_8
        targetCompatibility JavaVersion.VERSION_1_8
    }
} 

從Retrolambda遷移
與Android Studio的默認工具鏈相比,Retrolambda不支持使用Java 8語言功能的第三方庫。要遷移到默認工具鏈,請從項目級build.gradle文件中刪除Retrolambda依賴關系:

// 移除以下插件
apply plugin: ‘me.tatarka.retrolambda‘
...
// 遷移有用的配置後,刪除此塊。
retrolambda {
    ...
    //如果您有要保留的Java VM的參數
    // 將它們移動到項目的gradle.properties文件
    jvmArgs ‘-Xmx2048m‘
} 

禁用對Java 8語言功能的支持

如果您遇到與Java 8語言功能的新支持相關的問題,可以通過將以下內容添加到gradle.properties文件來禁用它:

android.enableDesugar=false

Android Studio 3.0 下載 使用新功能介紹