最近一兩天Google內部的團隊推出了一套新的程式框架可以讓大家開發Android的應用,
而這項新框架《Sky》主要是利用Google自己的網頁開發語言Dart所開發出來,
Tako跟Bear嘗試瞭解了一下,這套新框架目的是讓整個Android的應用運行速度、效率給提高,
例如說從60FPS的流暢度提高到120FPS來避免應用不順被人詬病的問題!
而這項新框架《Sky》主要是利用Google自己的網頁開發語言Dart所開發出來,
Tako跟Bear嘗試瞭解了一下,這套新框架目的是讓整個Android的應用運行速度、效率給提高,
例如說從60FPS的流暢度提高到120FPS來避免應用不順被人詬病的問題!
>>點選前往SKY SDK Github介紹<<
關於Sky,Tako簡單在此說明一下,
他主要是一款還在實驗性質,著重強調在UI架構高效能體驗的框架,來達到說App的使用者動畫交替效果能到120FPS
(正常Android框架的標準是60FPS)
Sky的核心框架包含兩部分:
關於Sky,Tako簡單在此說明一下,
他主要是一款還在實驗性質,著重強調在UI架構高效能體驗的框架,來達到說App的使用者動畫交替效果能到120FPS
(正常Android框架的標準是60FPS)
Sky的核心框架包含兩部分:
- Sky 核心引擎:以C++撰寫完成,是整個Sky系統的核心框架,提供基本原始的排程、繪圖系統等工具。
- Sky 框架(framework):利用Sky提供的API來完成使用者介面元件,包含按鈕、無限長的listView、動畫,核心引擎是採用Dart,整個元件的組成與程式風格是受到Facebook 所提供的 React的啟發 (點我瞭解React是什麼)
目前Sky的核心引擎假設你的程式進入點是透過main這個function開始,
而程式也是從一個main.sky的檔案作為App的起始點(Tako:是不是很類似C++呢?)
語法的內容嘛,則是很像是XML跟C的混合體,
上下被<script>包圍起來,但是要用到哪些package則是要用import等方式進行
而程式也是從一個main.sky的檔案作為App的起始點(Tako:是不是很類似C++呢?)
語法的內容嘛,則是很像是XML跟C的混合體,
上下被<script>包圍起來,但是要用到哪些package則是要用import等方式進行
那麼,我們要如何導入這套Sky SDK到新的專案開發上呢?
其實只需要依循以下三個步驟:
把上述四個步驟完成即可!
其實只需要依循以下三個步驟:
- 安裝好Dart SDK (https://www.dartlang.org/tools/download.html)
- 安裝Android Adb tool (https://developer.android.com/sdk/installing/index.html)
- 安裝Sky SDK ( 在終端機下指令:git clone https://github.com/domokit/sky_sdk.git )
- 在你的.bashrc 或是.bash_profile內設定你的Dart SDK路徑 ($DART_SDK)以及adb的路徑
把上述四個步驟完成即可!
整個程式的運行要部署到Android手機上呢,只能支援Android 5.0以上的裝置,
同時現在沒有類似eclipse這樣IDE的介面,整個工具要等到今年2015的Dart高峰會才會提供出來
Tako蠻喜歡Sky這樣的框架設計,開發上顯得輕量,整個SDK也不像Android SDK那麼大 (大約42MB)
接下來也會做一些應用嘗試,之後大家在開發App上也許會有新選擇喔!
同時現在沒有類似eclipse這樣IDE的介面,整個工具要等到今年2015的Dart高峰會才會提供出來
Tako蠻喜歡Sky這樣的框架設計,開發上顯得輕量,整個SDK也不像Android SDK那麼大 (大約42MB)
接下來也會做一些應用嘗試,之後大家在開發App上也許會有新選擇喔!
Tako補充:iOS的FPS其實也約略60FPS,那為何Android的動畫效能不能與iOS相比呢?
根據前Google成員所述,iOS的UI在渲染的程序處理上有所不同,當iOS的裝置偵測到有觸控事件時,
他會停下其他的process並集中在呈現UI上,而Android裝置本身並不做這樣的處理,造成在效能上的影響,
附帶一提,Windows Phone 7也是類似iOS的處理方式,在動畫效果上就比較順。 (資料來源)
根據前Google成員所述,iOS的UI在渲染的程序處理上有所不同,當iOS的裝置偵測到有觸控事件時,
他會停下其他的process並集中在呈現UI上,而Android裝置本身並不做這樣的處理,造成在效能上的影響,
附帶一提,Windows Phone 7也是類似iOS的處理方式,在動畫效果上就比較順。 (資料來源)