2015年9月15日,APICloud舉辦了一周年開源分享會,發布開源插件支持Sublime用戶開發跨平臺App,APICloud 開源技術負責人周興海分享了Sublime關于插件方面相關的內容。
Sublime是一款關注度很高的的開發工具,有以下幾個特點:
主流前端開發編輯器
體積較小,運行速度快
文本功能強大
支持編譯功能且可在控制臺看到輸出
內嵌python解釋器支持插件開發以達到可擴展目的
Package Control:ST支持的大量插件可通過其進行管理
接著,周興海對APICloud三款插件進行了展示:
• 第一個是Loader插件;
• 第二個是Snippet插件;
• 第三個是Package插件;
上述三個插件為大家在Sublime Text下基于APICloud開發App提供更多的便捷性,前兩款已經通過Package Control審核,現在可以直接通過Package Control下載使用。
他進一步強調:通過上述插件,首先在開發過程中可以自動提示補全代碼;開發后可以把應用widget包推送到安卓手機或海馬模擬器上,并通過loader對widget包進行真機同步的演示;最后可以對開發好的包按照APICloud上傳代碼的格式進行壓縮,便于用戶直接把代碼上傳到云平臺。
接下來主要講解了APICloudLoader的目錄文件及結構,關鍵文件如下:
• 首先是Load.apk,這是官方的loader,可以通過APICloud官網直接下載,名字必須是load.apk。Load.conf是相應的配置文件。Custor-Loader目錄中定義自定義Loader的相關信息,結構同官方loader類似,如果大家想裝一個自定義Loader的話,新建一個文件夾,放入相應的apk文件和配置文件即可。
? widget文件夾包含4個widget模板包,分別放置默認的widget項目、底部導航項目、首頁導航項目和側邊導航項目的模板,創建應用的時候,可以從菜單中選這四個選項中的一個,然后從模板里面拷貝代碼到目標目錄的工程,并把config.xml中的應用名稱做相應替換。
• Startinfo,因為APICloud官方Loader支持多個widget應用放到其中,默認啟動哪個應用需要從名稱為startinfo的文件進行讀取。這個文件會被自動推送到遠端設備。
接下來周興海在現場展示了如何基于Sublime Text做插件:
首先Sublime Text要有一個控制臺窗口,通過View->show console顯示出控制臺,這個控制臺很重要,要注意控制臺的輸出,通過控制臺可以了解插件python文件是否有語法錯誤以及相應的控制臺輸出。
SublimeText插件支持的命令類型有三種,分別是:
• ApplicationCommand
• WindowCommand
• TextCommand
活動現場還進行了真機同步實現原理及源碼相關講解,真機同步插件包含下面3個子命令,分別是:
• 新建APICloud項目
• 真機同步
• 壓縮widget包
真機同步插架所包含的Tools目錄中有一個adb命令,真機同步這個插件主要就是調用adb命令去把本地的包拷貝到遠程的設備上,啟動這個Loader,Loader會自動去找對應文件位置的這個widget包,然后根據widget包啟動應用。然后詳細講解了進行真機同步用到的幾個adb命令的詳細用法。
最后,為大家主要展示了真機同步子命令的源代碼的結構:
首先介紹了插架中is_enabled和is_visible兩個函數的使用方式和場景,然后介紹了詳細的代碼內容。真機同步中的命令主函數,主要是通過調用Load函數完成的,load函數封裝了所有adb命令的調用邏輯結構。其他的一些函數都是對adb命令的封裝。接著,對Load函數進行了講解:
• 首先檢測一下基本環境信息,比如adb命令是否存在,這個檢測通過以后,需要查看custom-loader下是否有待同步appId相同名稱的目錄。如果有的話就需要用自定義load的apk安裝包。
• 當把widget信息推送到遠端設備后,需要把當前設備已安裝的loader版本與本地loader版本信息進行對比。如果沒查到設備上loader版本信息,則說明設備loader沒有安裝,那需要安裝這個本地loader;如果設備上版本號比本地版本號小也要裝loader,首先要卸載設備上loader包,然后再裝新的loader,裝完以后,啟動遠程loader的就可以完成真機同步。
• 然后,創建應用這個子命令。新建APICloud項目這個操作主要用到了函數show_input_panel,這個是一個Sublime Text的api,它總共有五個參數,詳細可參考官方文檔。當用戶輸入用戶名后點擊回車后,會把相關模板拷貝到當前工程目錄并修改拷貝的工程項目名稱。
最后他也表示APICloud很鼓勵大家去做一些更適合自己開發的插件,希望大家能通過自己的插件和我們官方的插件一起使用更好的幫助大家在Sublime Text里面去開發基于APICloud的應用,提高大家的工作效率。
2015年9月15日,APICloud發布多種開發工具支持策略,使用任何你喜歡的HTML5工具,都可以開發APICloud應用,其中包括了類似Sublime Text3、Eclipse、Webstorm、Notepad++、VIM、Aptana Studio3以及微軟最新的Visual Studio Code等等一系列,促進中國移動平臺行業生態發展的合作心態,服務開發者和企業?!甘畮卓铋_源項目代碼共享在了基于Git的代碼托管與在線協作平臺GitCafe上,希望能通過在GitCafe上開源帶給開發者更多便利?!?/p>