本方案使用移动研发平台EMAS和研发协同平台云效来提供一站式App的开发、测试、运维、运营等应用全生命周期的管理能力,提升开发效率,降低运维成本。
体验本方案预计费用为30元(假设您配置的ECS和RDS与建议规格一致,为按量付费。使用云效基础版、移动研发平台仅使用免费的云构建和云发布功能。方案过程中产生流量在10GB以内。且体验时长不超过24小时。域名、证书、备案费用不包含在内。实际产生费用因规格、版本不同可能产生变化,以控制台显示为准)
App开发上线的核心步骤包括服务端和移动端的代码管理、构建、测试、部署发布,以及功能版本更新后的推送,本方案通过云效、移动研发平台EMAS实现了核心步骤的全覆盖,一站式高效完成App的构建与发布。
通过本方案开发的App应用相对本地开发可以帮助企业更专注于业务核心,同时减轻技术负担,加速产品的迭代更新。在开发阶段可以更规范地管理代码和版本,可以快速集成多种SDK,节省开发成本;在测试阶段在云上进行自动化测试和真机模拟测试,达到降本增效;在发布阶段还能实现自动推送更新和灰度发布。
使用阿里云移动研发平台帮助企业在云上构建和发布App。使用云效、云服务器、数据库等服务支撑服务端应用的构建与部署,最终帮助企业快速构建适用于多端的移动应用。
1.开发效率高
EMAS提供多种移动技术SDK,快速集成,降低开发成本。
2.部署便捷
通过云效搭建持续部署工作流,代码更新一键更新部署到服务器,提升部署效率。
3.运维成本低
可管理发布包版本,自动推送更新到用户。
在移动设备占主导地位的今天,企业开发移动应用App可以帮助企业更好地适应数字时代的挑战,企业可以通过App为用户提供更便捷、更具互动性和更个性化的服务,帮助企业扩宽市场渠道、获得数据反馈,从而增加收入和竞争优势。使用阿里云移动研发平台开发您的App,可以帮您减轻技术负担,让您能更专注于业务核心,快速构建高可靠、高性能的移动应用,并且可以高效迭代您的移动应用。
方案提供的默认设置完成部署后在阿里云上搭建的移动应用架构如下图所示。
本方案的技术架构包括以下基础设施和云服务:
开始部署前,请按以下指引完成账号申请、账号充值。
如果您还没有阿里云账号,请访问阿里云账号注册页面,根据页面提示完成注册并进行个人实名认证。阿里云账号是您使用云资源的付费实体,因此是部署方案的必要前提。
为阿里云账号充值。本方案的云资源支持按量付费,且默认设置均采用按量付费引导操作。如果确定任何一个云资源采用按量付费方式部署,账户余额都必须大于等于100元。
一键部署基于阿里云资源编排服务ROS(Resource Orchestration Service)实现,ROS模板已定义好脚本,可自动化地完成云资源的创建和配置,提高资源的创建和部署效率。ROS模板完成的内容包括:
操作步骤
您可以通过下方提供的ROS一键部署链接,来自动化地完成这些资源的创建和配置:
一键部署资源
1. 创建流水线
进入云效控制台,单击立即使用,按操作步骤创建您的企业、选择您的角色之后,点击开始工作。
进入流水线Flow,点击流水线->我的流水线
点击右上角新建流水线。在弹出面板中选择Java,顶部选择可视化编排,找到Java构建、部署到阿里云ECS/自有主机流水线。
点击创建流水线,进入流水线配置界面。
2. 配置流水线
云效支持多种流水线源,如多种代码仓库、已经编译好的代码包、对接Jenkins及另一个流水线的产出物。
进入流水线后,在左侧选择添加流水线源。
单击添加流水线源。
选择流水线源为代码源,选择Codeup。
点击新建代码仓库。
在代码管理页面右上角,单击导入库。
在导入代码库弹出框,选中URL导入,在源代码仓库地址填入https://atomgit.com/aliyun_solution/app-demo.git,单击确定。
回到流水线源配置页面,代码仓库选择刚刚创建的代码仓库,默认分支选择master。并点击添加,完成流水线源的配置。
配置Java构建上传,单击Java构建上传。
在右侧配置弹窗内,单击构建物上传,在打包路径下新增一个deploy.sh。
在页面右上角,单击仅保存。
配置环境变量,您需要将数据库连接地址和账号密码配置到流水线环境变量中。在页面顶部导航选中变量和缓存,在页面中的字符变量模块单击新增变量。
填入数据库相关信息,并设置成私密模式。相关数据可在数据库控制台,进入数据实例详情页面查看。
变量名称 | 默认值 |
---|---|
APPLETS_RDS_ENDPOINT | 数据库连接地址 |
APPLETS_RDS_USER | 数据库用户名 |
APPLETS_RDS_PASSWORD | 数据库密码 |
APPLETS_RDS_DB_NAME | 数据库名称 |
配置部署任务,单击主机部署。
制品:下拉选择上游构建阶段的产物,如制品名称.Artfacts_xxx。
配置主机组:
部署脚本填入如下脚本
tar zxvf /home/admin/app/package.tgz -C /home/admin
sh /home/admin/deploy.sh restart /home/admin/target/app-demo-0.0.1-SNAPSHOT.jar
单击流水线页面右上角保存并运行,在弹出的运行配置弹窗中单击运行。
3. 验证服务
登录ECS控制台,在实例列表中找到之前创建的ECS实例,在IP地址列,复制公网IP。
粘贴到浏览器地址栏访问,看到如下页面表示服务已经正常启动。
1.1 创建代码仓库
打开云效codeup,在代码管理页面右上角,单击导入库。
在导入代码库弹出框,选中URL导入,在源代码仓库地址填入https://atomgit.com/aliyun_solution/emas-android-demo.git,单击确定。
导入成功后,在页面右上角单击克隆/下载,复制HTTPS地址。
将代码克隆下载到本地。
1.2 创建项目
登录EMAS控制台。如果是第一次使用EMAS,单击立即创建项目,如果已有项目,单击左侧添加项目。在右侧弹出框中,输入项目名称和项目描述,单击创建并进入。
1.3 创建应用
进入项目详情页后,单击立即添加应用,输入应用名称、应用类型选择Native、平台选择Android,PackageName填入com.example.emas_android_demo,然后单击创建应用。
下载配置文件,按照提示添加到本地项目中。
添加SDK,示例代码中已完成项目配置修改,无需在修改项目配置代码。
修改代码中配置
打开本地项目,找到项目目录下app/src/main/assets下的appConfig.properties文件,填入appName、appKey和appSecret。serverUrl填入http://[云服务器公网IP]。
提交代码到远程仓库。
1.4 创建云构建
在项目概览页面,在右侧单击云构建。
在云构建页面,单击配置应用。
配置代码仓库
在指定代码仓库输入框中,粘贴之前创建的代码仓库地址。
单击新建代码访问权限。
在添加仓库权限页面,在账号输入框填入刚刚复制的账号名称。
在个人设置页面左侧菜单栏,单击个人访问令牌,然后单击创建访问令牌。创建完成后,复制令牌信息。
回到添加仓库权限页面,Token输入框粘贴令牌信息。
单击联通测试,若显示测试成功则表示操作成功。
单击保存。
在配置代码仓库页签下,单击联通测试,若显示测试成功则表示配置成功。
单击下一步。
配置证书:在证书配置页签下,上传Keystore证书,并按照表单输入如下信息。如果没有证书,可以访问地址在线生成。
选项 | 说明 |
---|---|
Keystore密码 | 用于输入Keystore文件的密码。 |
Key 别名 | 用于指定证书的名称。 |
Key 密码 | 用于输入证书的密码。 |
人员配置,默认包含主账号,单击确认。
在云构建流水线列表页面,找到刚刚创建的流水线,在右侧相关操作列,单击详情。
在右上角单击编辑,在编辑页面,单击构建应用模块。在左侧菜单选中JDK版本替换,将JDK版本修改为17。单击确定。
单击保存并运行。
运行成功后,可以在页面左侧产物,扫码或手动下载安装包到手机。
云发布配置
新建发布包流水线
在左侧菜单,选择云构建 > 流水线列表,单击新建流水线。
在新建流水线滑框内容,输入流水线名称,流水线类型选择发布包流水线,单击新建。
在流水线列表页面,单击刚刚创建的流水线的相关操作列详情,进入详情页面。
在右上角单击编辑,在编辑页面,单击构建应用模块。在左侧菜单中选中JDK版本替换,修改JDK版本为17。单击确定。
新建发布单
在左侧菜单,选择云发布 > 发布单列表,单击新建发布单。
在新建发布单滑框内,待发布产品来源选择云构建发布,关联流水线选择刚刚创建的发布包流水线。
单击新建。
推送更新
在发布单列表页,单击发布状态列更新推送。按照表单填写后,单击下一步。
在基本策略页面,填入表单信息。
查看手机上安装的App,可以看到更新提示。
官网相关地址直达:
1.更多阿里云方案查询:https://www.aliyun.com
2.阿里云服务器ECS相关活动:https://www.aliyun.com/daily-act/ecs/activity_selection
3.云小站(代金券发布平台):https://www.aliyun.com/minisite/goods