bnorth app 开发

日期: 25 Dec 2018   

一般来说,移动 app 开发有三种方式,native 开发,hybird 混合开发和 react native 开发。bnorth 在 web 开发上积累较深,采用 hybird 混合开发方案。开发效率较高,但是页面性能较为普通,适合前期快速开发抢占市场,以及后期为可变部分嵌入开发,比如内置的广告,内置的游戏等等。bnorth 混合开发,实际上对 cordova 的结合,提供了脚手架和插件,屏蔽复杂概念,降低使用复杂度。

使用方法

bnorth cordova 是对 web app 的打包,首先 build bnorth 生成输出文件。然后执行 bnorth 包装的 cordova 命令。bnorth 实现了 cordova 工程的管理和配置,会自动同步 package.json 中的配置,杜绝多处配置的问题。

npm install @bnorth/cordova # 也可以安装到全局 npm install -g @bnorth/cordova
npx bnorth-cordova platform add android # 根据需要添加平台
npx bnorth-cordova requirements # 测试平台编译环境,根据提示,完成环境搭建
npx bnorth-cordova build android # 编译生成安装包

配置

基本配置

基本配置是应用的基本信息,其中一些信息与 web app 配置信息基本一致,bnorth 会同步 package.json 中的信息。包括:

  1. id :设置应用的 id
  2. name 与 displayName :设置应用的名称,displayName 优先级高于 name,由于 package.json name 设置有限制,带空格或者中文等特殊名称使用该字段
  3. version :应用版本号
  4. icon : 设置应用的桌面 logo

cordova 配置

对于其他高级 cordova 配置,比如参数设置等,可以配置根目录下的 cordova.xml 文件,执行任何 cordova 命令,将生成 cordova 工程,并在根目录下生成 cordova.xml 文件。支持全部 cordova 配置,具体参见 cordova 参考文档 。

环境

cordova 的编译,依赖 android (具体参见) 或者 ios (具体参见) 工具链,需要设置编译环境。

Android

Android 需要安装一些工具和设置环境变量。

工具:

  1. JDK 1.8 :点击安装
  2. Gradle :点击安装
  3. Android SDK :可以选择安装 Android IDE ,点击安装 Android Studio,或者选择安装命令行工具, 点击安装 Command line tools
  4. Adding SDK Packages :使用 Android Studio 的 sdk manager 工具,或者使用 Command line tools 中的 sdkmanager 命令下载 sdk

环境变量:

  1. JAVA_HOME : java 环境变量
  2. Gradle : gradle 环境变量
  3. ANDROID_HOME : android sdk 环境变量
  4. Android Path : 为了方便使用 android 的调试命令,可以添加如下 android sdk 目录下的路径到系统 Path 变量中,tools , tools/bin 和 platform-tools

本地环境配置文件:

TODO

IOS

安装 ios 编译环境

xcode-select --install # xcode 开发环境
npm install -g ios-deploy # ios 部署环境

平台

平台是 bnorth cordova 编译的目标,一般 bnorth cordova 针对 android 和 ios 两个开发平台。用户需要管理所使用的平台。

npx bnorth-cordova platform add android ios # 添加 android 和 ios 的最新平台
npx bnorth-cordova platform add android@^5.0.0 # 添加指定版本的 android 平台
npx bnorth-cordova platform rm android # 移除 android 平台

安装后的平台,就可以编译和运行。

编译生成安装包。可以选择平台,如果不指定,则编译全部平台。可以选择调试还是正式发布,调试支持远程调试。可以选择编译设备还是模拟器版本。

npx bnorth-cordova build [平台] [--debug|--release] [--device|--emulator]

获取当前的可用模拟设备和真机设备

npx bnorth-cordova run --list

编译并运行。可以选择平台,如果不指定,则为全部平台。可以选择调试还是正式发布,调试支持远程调试。可以选择编译设备还是模拟器版本和运行的指定设备。

npx bnorth-cordova run [平台] [--debug|--release] [--nobuild] [--device|--emulator|--target=设备]

例如:

npx bnorth-cordova build android # 编译 android 平台,生成 apk 安装包
npx bnorth-cordova run android # 运行 android 平台

sign

TODO

splash

TODO

Android hybird app 性能问题

Android 权限

TODO

插件

TODO

插件开发

TODO

常见问题

TODO

有用的插件

TODO