[ Android ] 如何開啟 Android 4.4 KitKat 的 ART!?

Title
現在 Nexus 5,Nexus 7 與 Nexus 10 都已經獲得 Android 4.4 KitKat 了(後兩者除了 OTA 以外,原生映象檔也放出來了)。裝好了你的 Android 4.4 KiKat 了嗎?想要開啟 ART 了嗎?注意,Nexus 7 2012 與 Nexus 10 都還沒有辦法啟用 ART。



Nexus 7 2012 與 Nexus 10 目前還沒辦法啟用 ART,推測原因應該是因為 Nexus 7 2012 使用的是 nVIDIA Tigra 3,而 Nexus 10 使用的是 Samsung Exynos。由於 ART 需要將 Dalvik 執行碼轉換成應用處理器的原生代碼,因此應該跟應用處理器有關係。目前 ART 應該僅支援 Qualcomm 的處理器吧。

接下來回歸主題!步驟超簡單的啦!

  1. 如果你還沒把隱藏的開發者選項打開來:進入《設定》,拉到最下面點擊【關於平板電腦】。如果你的裝置是 Nexus 5,那就是【關於手機】。然後一直狂點【版本號碼】,直到畫面說《你已經是開發人員了!》為止!然後回上一層。
  2. 進入【開發人員選項】。
  3. 看到【選取執行階段】:警告!Google 目前並不建議日常生活使用的裝置將執行階段換成 ART,這是一個實驗中的功能,可能會導致第三方程序崩潰!講是這樣講,但是你受不了想試試看了對吧!那就繼續吧!
  4. 畫面上會詢問你《使用 Dalvik》或是《使用 ART》。點《使用 ART》然後按【確定】。
  5. 接下來系統會重開機,之後會重新最佳化 Android。此時就是將已經安裝的程式逐一從 Dalvik 執行碼轉成原生代碼。因此這階段會很花時間。
  6. 等到桌面出現在螢幕上,就表示作業完成。恭喜你,開始體驗 ART 執行模式。



是不是切成 ART 執行模式,從此所有應用程式(app)的效率都突飛猛進呢?根據 Android Police 的實測,原本就是 100% 使用 SDK 編寫成的應用程式,執行效率上都有明顯的增加(有的增加得很誇張)。但是如果是純 NDK 編寫成的應用程式(NDK 就是 Google 為 Android 開發者提供的原生代碼解決方案。所以使用 NDK 編譯的部分就已經是原生代碼了)則反而比較差一點(他們在該篇文章中也不明白為什麼這種純 NDK 編寫的應用程式,在 ART 反而會表現的比較差)。如果是 SDK 與 NDK 混寫的,則有好有壞。
有興趣的朋友可以參考 Meet ART, Part 2: Benchmarks – Performance Won’t Blow You Away Today, But It Will Get Better
等我身體舒服點再翻譯這篇文章。