这个月 6 / 15 — 6 / 30 日,我们将在线上组织一次 Node.js 后端应用开发训练营。 训练营地是用一款开源的 Node.js 应用(RocketChat)搭建的,微信可以留作备用方案。
其实用微信就完全够用,不过我还是想给大家寻找一些其它的解决方案,比如现在如果你需要快速搭建一套自己的公开或私有的即时沟通协作系统,想把自己开发的移动应用送进 App Store,我都可以跟你分享一下这次搭建训练营地的一点经验。
搭建即时沟通协作系统
快速运行 RocketChat 应用,可以通过 Docker 实现,我们在之前的课程里也介绍过用 Docker 快速运行其它类型的应用的方法,比如运行一个 WordPress 系统。
其本流程就是,在一个 Docker Compose 文件上写清楚运行 RocketChat 需要的服务,比如应该有 RocketChat 本身,还有一个它需要的数据库服务。把这个包含了服务定义的 Docker Compose 文件拿到一台安装了 Docker 与 Docker Compose 的服务器上,执行一条运行的命令就行了。
如果 Web 服务不是在 80 或 443 端口运行,我们还可以配置一个 Nginx 的反向代理,这样你就可以在同一台服务器上,运行多个 Web 服务了。Nginx 会把请求转发到指定的 Docker 服务上。
将应用送进 App Store
RocketChat 除了 Web 以外,还提供了桌面端与移动端。桌面版的应用是用 Electron 创建的,移动端有原生的,也有使用 ReactNative 创建的。我简单地定制了一下 ReactNative 版的移动应用,编译好以后把它送进了苹果的 App Store。
发布应用到 App Store,以后我会重点跟大家讲讲。制作一个相关的课程,详细地介绍一下整个流程,比如怎么生成各种证书,快速编译,上传测试版,如何提交审核正式版等等。在这个发布流程中,可以配合使用 Fastlane,这样很多工作都可以做到自动化。
大体流程是,用你的 Apple ID 登录到苹果开发者网站,需要加入它们的开发者计划。每年需要 ¥688 人民币,需要使用信用卡支付,以后汇率有变化,这个数字也可能会有一些变化。加入到开发者计划,你的 Apple ID 就可以用来做苹果平台的各种应用了,比如你可以把本地开发的移动应用安装在真实的设备上去调试。
下面是使用 Fastlane 定制的应用发布流程:
开发的差不多,想要发布了,需要在本地编译好应用,生成一个二进制的应用文件。把这个文件上传到 AppStoreConnect,上传以后,有测试权限的用户就可以立即安装测试你的应用了。
TestFlight 是 Apple 提供的一个测试应用的服务。把本地编译好的应用,上传到这里,你可以在 AppStoreConnect 里的 TestFlight 里面添加几个测试员,这些测试员在自己的设备上安装一个 TestFlight 应用,打开这个应用以后,他们就可以看到要测试的应用,点一下就能安装在自己的设备上。
注意测试员的数量是有限的,如果你想让更多人参与应用的测试,需要等待应用过了 Beta(测试)审核以后才行。Beta 审核通过,最多允许 10,000 人参与你的应用的测试。
测试的应用只能通过 TestFlight 这个应用的内部安装,并且只有被邀请的用户才能下载安装我们的应用。如果想让所有人可以通过 App Store 下载使用你的应用,需要申请审核发布正式版的应用。
你需要先填写一些跟应用相关的信息,上传应用在不同尺寸设备上的屏幕截图等等,准备好以后,提交审核。审核的速度还是非常快的,我头一天晚上提交审核,第二天上午就会得到审核结果,要么通过要么被拒绝。
我被拒绝了两次,第一次是他们觉得应用太简单了,没有提供基本的功能,建议直接使用 Web 应用,我修改了应用的几个地方,重新编译、上传,然后再次提交审核。注意审核的结果都是全英文的。
第二次被拒是因为他们有一些疑问,问我应用是否违反了上面列出的问题,如果违反可能会让应用下架,并且注销开发者资格。其实主要就是让我写个保证,确定一下自己的应用没有违反他们列出的问题,因为这些问题他们也不能确定。直接在拒绝的信息下面做一下回复,保证没有违反相关条例,他们就会继续审核。
正式版的应用审核通过以后,我又提交了一次小版本更新。这次审核用的时间久一些,中间隔了一天,第三天上午得到审核的结果,这也可能是我提交审核以后赶上了一个周末。我觉得 App Store 的审核速度还是相当快的。
还要注意,如果使用你的应用需要登录,你在提交审核的时候要提供一个测试的帐号。第一次通过审核,第二天才能够在 App Store 应用里搜索到。
测试训练营地
我提供了几个测试帐号,今天大家都可以登录到训练营地逛逛。这个系统是用的单台阿里云服务器提供的服务,有时候需要重新启动,每次重新需要花费 10 分钟左右的时间:)
测试帐号
- 用户:李白
- 密码:nnc2019
- 用户:杜甫
- 密码:nnc2019
- 用户:白居易
- 密码:nnc2019
地址
App
iPhone 用户可以打开 App Store,搜索 NinghaoCamp,然后安装一下这个应用。
正式报名
如果你想学一下怎么使用 Node.js 开发服务端应用,可以报名参加这次训练营。现在就去报名 →
评论
一共四期.
是每个阶段都是阶梯难度的提升
还是四个阶段是一个完整的课程
还是四期内容是一样的,既给不同时间的用户选择自己恰当时间又通过四期来让训练营的模式越来越成熟
5 年 4 个月 以前