Sencha学习笔记2:打包您的第一个Sencha安卓应用apk安装包
通過上一篇翻譯的官方文章的介紹我們對sencha有了初步的印象,同時我們也通過該向?qū)闪说谝粋€示例應(yīng)用代碼框架,那么下一步可能很多人都覺得應(yīng)該根據(jù)該向?qū)崾镜娜タ匆幌乱粋€應(yīng)用是如何建立起來的詳細信息了,但我認為可以換一下學(xué)習(xí)的路徑。
天地會珠海分舵是一個比較急功近利的人,所以有了第一個自動生成的代碼示例后,他是比較急于想知道應(yīng)該如何將該示例打包成一個安卓的apk安裝包來安裝到目標(biāo)安卓機器上。劉備做得好,得隴就應(yīng)該望蜀,做人還是有點追求的好。
下面我們就嘗試通過一個HelloWorld的示例來看下應(yīng)該如何使用sencha命令來把sencha應(yīng)用打包成一個apk安裝包并安裝到目標(biāo)安卓設(shè)備上面。
第一步: 創(chuàng)建示例代碼
根據(jù)上一篇翻譯的官方文章《Sencha學(xué)習(xí)筆記1: Getting Started with Sencha Touch - 官方Sencha Touch入門指南》所介紹的方法,我們先定位到sencha sdk所在的目錄下面,然后執(zhí)行對應(yīng)sencha generate app命令來在sdk的父目錄生成對應(yīng)的應(yīng)用框架文件:
創(chuàng)建示例代碼的命令輸出結(jié)果如圖所示:
第二步:修改MVC模式的View文件app/view/Main.js以改變顯示內(nèi)容
這一步和第三步其實可以跳過,如果你百分之百確定新創(chuàng)建的示例應(yīng)用運行起來沒有任何問題的話,但畢竟天地會珠海分舵只是個初學(xué)者,我相信看官對本文感興趣的應(yīng)該也是如我一般是個初學(xué)者,所以建議還是多做幾步順便對sencha自動生成的代碼有些初步印象的好。
sencha命令生成的示例代碼框架中的app/view/Main.js就是MVC模式中的View,負責(zé)的士如何把ui呈現(xiàn)給用戶,所以我們可以通過修改其中的一些選項來修改ui的一些顯示。sencha默認生成的應(yīng)用是有兩個tab標(biāo)簽的應(yīng)用,下面我們將應(yīng)用的其中一個標(biāo)簽的標(biāo)題改成"My First Sench App",把其主體內(nèi)容改成"What an app!";并把另外一個標(biāo)簽的標(biāo)題改成"Woohoo":
修改之后進行保存,然后在下一步通過瀏覽器來檢查該修改是否成功。
第三步:通過sencha命令啟動web服務(wù)器
修改好MVC中的view顯示后,我們就需要在瀏覽器中先調(diào)試檢查下該修改是否已經(jīng)成功,我們可以用大部分流行的web服務(wù)器來訪問該示例應(yīng)用,但為了簡單起見,且我們的主要目的是為了去學(xué)習(xí)sencha touch,所以我們這里使用的sencha命令提供的web服務(wù)器來完成這個工作。下圖顯示了通過命令打開sencha自帶web服務(wù)器的過程,注意在執(zhí)行該命令前本人是先cd到應(yīng)用目錄下面的,這樣我們在瀏覽器中就不用制定額外的路徑來訪問該應(yīng)用了:
注意上圖最后一行打印出來的信息包含了訪問該示例應(yīng)用的端口信息:1841,我們下一步需要用到。
第四步:通過瀏覽器訪問應(yīng)用
最終通過瀏覽器定位到我們的應(yīng)用,相信這種通過web服務(wù)器加上瀏覽器訪問的方式主要是為了調(diào)試sencha touch應(yīng)用的方便而設(shè)計的,畢竟sencha touch要打造的就是基于瀏覽器或者混合應(yīng)用外殼的應(yīng)用,所以用瀏覽器調(diào)試應(yīng)該是最方便的。
下圖顯示了瀏覽器上通過本地ip和上一步提及的端口來訪問我們修改過的view所顯示的示例的內(nèi)容,從中可以看到我們修改的內(nèi)容已經(jīng)起效了:
第五步:確定sdk版本
這一步主要是要確定我們系統(tǒng)上下載的sdk版本,因為往下調(diào)用sencha命令來生成apk包的時候除了需要制定安卓sdk所在的位置之外還需要指定該sencha示例應(yīng)用所應(yīng)該編譯到的對應(yīng)的api level。
按照本人的經(jīng)驗,天地會珠海分舵認為應(yīng)該有兩個方法可以判斷當(dāng)前sdk支持的api level,第一種就是通過檢查sdk目錄下的platforms目錄下面有哪些api level的文件夾:
第二種就是我們可以通過"Android SDK Manager"來確定我們究竟安裝了哪些level的安卓api:
通過以上兩種方法我們就可以知道我們系統(tǒng)現(xiàn)在支持的是api level多少級別的安卓系統(tǒng)了,當(dāng)然,如果不滿足你的需要的話,你可以通過Android SDK Manager下載更多滿足要求的。這里我們會選取其中一個,比如我們這里選取api level 19。
第六步:修改應(yīng)用頂層目錄下的packager.json文件
該文件是一個指示sencha應(yīng)該如何打包應(yīng)用的文件,這里有幾個地方需要進行修改的。
首先,我們需要修改的是示例應(yīng)用的命名空間,其實在天地會珠海分舵看來,安卓上該命名空間就等同于應(yīng)用的包名,往下我們會進行驗證。請先看下圖顯示的命名空間applicationId選項的修改:
該選項的值修改之前是“HelloWorld",為了遵循安卓的包命名規(guī)則,我們需要把它修改成如下格式"com.sample.HelloWorld"。圖片顯示的其他格式先不要動,保留原來是什么值就什么值。
然后往下我們還需要修改簽名等相關(guān)的信息,如下圖所示:
首先platform應(yīng)該修改成Android,因為我們現(xiàn)在的示例是演示如何打包安卓的apk安裝包。其次就是把證書簽名相關(guān)信息設(shè)置好,這些信息可以從前面的步驟獲取到。最后就是指定安卓sdk的路徑和上一步獲得的api level了。修改后別忘記保存。
第七步:調(diào)用sencha命令生成apk安裝包
到了現(xiàn)在是萬事具備只欠東風(fēng)了,該如何打包的配置文件在上一步已經(jīng)完成,我們只需要執(zhí)行“sencha app build native"命令,如果不出意外的話就能生成對應(yīng)的apk安裝包了。如果這個過程中出現(xiàn)問題的話,建議仔細查看錯誤輸出提示,往往就是我們上一步的配置文件沒有配置好導(dǎo)致的問題。當(dāng)然,sencha除了提供“sencha app build native"命令來打包apk安裝包之外,還提供了其他的一些打包方法,但是這里我們先不用管,今后學(xué)習(xí)的過程中我覺得有必要的話自然會對其進行嘗試然后分享給大家的了。
請看下圖執(zhí)行sencha打包apk命令的部分輸出信息:
打包好的apk安裝包會保存在示例應(yīng)用頂層目錄下的build文件夾的相應(yīng)子目錄下面,具體請看下圖:
第八步:把安裝包安裝到目標(biāo)機器上并運行
有了該apk安裝包后我們就可以像對待其他普通安裝包一樣,通過"adb install"命令來把該安裝包安裝到目標(biāo)安卓設(shè)備上面了。安裝后該應(yīng)用的圖標(biāo)如下所示:
觸按該應(yīng)用圖標(biāo)后打開該示例應(yīng)用,大家可以看到其內(nèi)容跟前面通過瀏覽器訪問sencha示例應(yīng)用是一致的:
第九步:驗證應(yīng)用命名空間和示例應(yīng)用包名是同一回事
上面的第六步中我們在packager.json這個打包配置文件中把示例應(yīng)用的命名空間設(shè)置為“com.sample.HelloWorld“,當(dāng)時我跟大家斷言說該命名空間應(yīng)該就是該安卓應(yīng)用的包名,這里我們可以通過安卓的”pm list packages"這個專門列出所有安裝包的命令來進行驗證:
從上圖我們可以驗證前面所有的包名和命名空間其實就是同一回事。
| 作者 | 自主博客 | 微信 | CSDN |
| 天地會珠海分舵 | http://techgogogo.com | 服務(wù)號:TechGoGoGo 掃描碼:
| http://blog.csdn.net/zhubaitian |
總結(jié)
以上是生活随笔為你收集整理的Sencha学习笔记2:打包您的第一个Sencha安卓应用apk安装包的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 暗黑类游戏的设计概念
- 下一篇: 李开复写给女孩子们