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