1. 环境准备
- 安装 nodejs
- 安装 nativescript
或者下载 github 上项目代码进行构建 (不推荐)
- 安装 java JDK
jdk 是 Java 运行开发环境,按 android 开发必须的开发的环境
测试方法:java -version
- 安装 Apache ant
Apache Ant, 是一个将软件编译、测试、部署等步骤联系在一起加以自动化的一个工具,大多用于 Java 环境中的软件开发。由 Apache 软件基金会所提供。这里用到的的是用于 android 签名证书等打包 (android 开发过程中 ide 使用 gradle 配置打包,早期都是用的 ant 打包,这里使用的方法比较原始)
http://ant.apache.org/bindownload.cgi 上下载最新版 apache-bin(可选择安装型或压缩包型),然后添加系统环境变量
测试方法:ant -version
- 安装 Android sdk
下载最新的 adk,http://developer.android.com/sdk/installing/index.html 下载后解压到某个目录 (例如 D 盘),然后添加系统环境变量
测试方法:android
必须掌握的两个命令:abd start-server/ adb kill-server,用于启动 android debug 服务,adb 使用与启动模拟器或是通过手机的自动安装调试,并可以看到 log 信息。这两个命令会经常用到
然后 命令行运行一下 tns,如果看到以下提示信息,就可以开始第一个开发了。
2. 开始项目
- 创建项目
从项目的结构可以看出,项目代码使用的 mvvm 结构,而且它的 viewmodel 是通过方法操作的。
- 配置移动平台
如果没问题的话就可以看到手机或模拟器上启动了应用程序
来自: http://docs.nativescript.org/hello-world/hello-world-ns-cli.html
3. 项目分析与实例
分析一下页面主要的代码结构
- app.js,页面的预处理入口,表示启动 main-page 这个页面
- main-page.js 页面的数据绑定处理,将 vm 和方法绑定,也可认为是把 vm 和对象关联绑定
- main-view-model.js 页面的 vm 定义模块,申明方法和数据
- app.css
main-page.xml android 上布局的文件,类似 vm 模板,注意,是 xml 的,不是 html
4. 总结分析
- 核心是用 JavaScript 来写代码,然后预处理成 android/ios 项目进行打包安装
- 开发模式基本遵循前端的 mvvm 思想来实现,只是实现和表现不一样
- 参考文档完善,整理来说是一个不错的 native 开发方案
- 开发使用 commonJs 的规范,容易理解
- 但是不足之处也很明显,很难做现有单页面的改造,迭代不方便,功能上线必须像客户端那样发布审核,某些程度上还是需要 web 页面的支持
当然这次只分析了个简单的例子,后面自己搞个复杂的例子来分享下,敬请期待 (类似的还有 samurai-native 和 react-native,坐等 android 支持)~