动态部署、远程 bundle 、单模块部署演示 | 学习笔记

简介: 简介:快速学习动态部署、远程 bundle 、单模块部署演示

开发者学堂课程【开源 Android 容器化框架 Atlas 开发者指南: 动态部署、远程 bundle 、单模块部署演示】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/392/detail/5021


动态部署、远程 bundle、单模块部署演示


内容介绍:

一、Atlas Demo Tpatch 构建

二、Atlas Demo 远程 bundle

三、Atlas Demo 单模块部署

一、Atlas Demo Tpatch 构建

参照 Tpatch.txt 文档

1、 app 的 build.gradle 的语句" version =

getEnWalue(""versionName"l"1.0.0");

"中修改想要生成的 app 的 versionName (默认为1.0.0)

app目录下执行./gradlew clean assembleDebug publish

(生成 apk 同时将跟 apk 同目录的 ap 文件发布到仓库)

2、 手机上安装 apk ,同时进到动态部署界面(侧边栏里面划开点击进入),且手机连接电脑 adb(确保 adb devices 可见)

3、 进行一些想要的修改(暂时不支持 manifest 的修改,会在近期上线)

4、 app工程目录下执行./gradlew clean assembleDebug -DapVersion=apVersion -DversionName=newVersion ,其中 apVersion 为之前打的完整apk的版本,newNersion为此次动态部署要生成的新的版本号

5、检查 build/output/tpatch-debug 目录下文件是否生成,然后执行下面的命令(以下为 mac 下的命令, windows 请修改文件分隔符)

adb push build/outputs/tpatch-debug/update.

json. /sdcard/Android/data/com.taobao.demo/cache/update.

json adb push build/outputs/tpatch-debug/patch-*.

tpatch /sdcard/Android/data/com. taobao . demo/cache

6、点击动态部署页面红色按钮执行动态部署

在 FirstBundleActivity 中添加一行

@Override

protected void onResume() {

super.onResume();

Toast.makeText(this,"first bundle. has .changed", Toast.LENGTH_LONG). show();

}

输入命令

ouiwatekiMacBook-Pro:app wangyan$ ../gradlew clean assembleDebug -DapVersion=1.0.0 -DversionName=1.0.1

base.apk 文件表示之前发布得机械版本的 apk 文件, new.apk 文件表示改动后生成的 apk 文件

在 update.json 文件

{

"baseVersion": "1.0.0",

"updateBundles": [

{

"dependency": [],

"isMainDex" : false,

"name" : " com.taobao-firstbundle",

"version" : ""1.0.0@unspecified"

},

{

"isMainDex":true,

"name"' : "com.taobao-maindex",

"version" : "1.0.0@1.0.1"

}

],

"updateVersion": "1.0.1"

}

输入命令调试:

ouiwatekiMacBook-Pro:tpatch-debug wangyan$ unzip patch-1.0.1\@1.0.0.tpatch -d unzippatch

输入命令,将文件推送到手机:

ouiwatekiMacBook-Pro:app wangyan$ adb push build/outputs/tpatch-debugfupdate.json/sdcard/Android/data/com.taobro.deno/ cache/update. Json

ouiwatekilacBook-Proapp wangyans adb push build/outputs/ tpatch-debug/patch-1.0.1\1.0.8.tpatch/sdcard/Android/data/com.taobao.demo/cache)


二、Atlas Demo 远程 bundle

远程 bundle 不会打包进 apk 中

adb push build/outputs/remote-bundles-debug/libcom_taobao_remote

bundle.so /sdcard/Android/dat

输入命令,将 Demo 推送到移动设备

ouinateailacEook-Prozapp wanyans adb push build/outputs/renote-tundles-debug/libcon_taobeo_remotebunle. so /sdcrd/Aadroid/data/com.taobo.demno/cache


三、Atlas Demo 单模块部署

营营可要重言 APP 生效

cd firstbundle

lgradlew.bat clean assemblePatchDebug

修改 Toast 提示:

@Override

protected void onResume(){

super.onResume();

Toast.makeText(this,"sigle bundle. publish",Toast.LENGTH_LONG).show();

}

输入命令并执行:

ouiwatekiMacBook-Pro:app wangyan$ cd ..

ouiwatekiMacBook-Pro:AtlasDemo wangyan$ cd firstbundle/

ouiwatekiMacBook-Pro:firstbundle wangyan$ ../gradlew clean assemblePatchDebug

将 firstbundle 发布,修改 build.gradle 文件,拷贝命令文件并修改:

group = "com.tabao.android.atlasdemo '

version = "1.0.0";

apply plugin:'maven

apply plugin: " maven-publish'

publishing {

repositories i

mavenLocal()

}

}

publishing {

publications {

maven(MavenPublication) {

Artifact" $project.buildDir}/outputs/awb/siproject.name}-debug.awb"

artifactId "firstbundle"

}

}

}

执行发布命令:

ouiwatekiMacBook-Pro:firstbundle wangyan$ ../gradlew build publish

打开本地仓库查看:

ouiwatekiMacBook-Pro:firstbundle wangyan$ open ~/.m2/repository/

输入命令,进入到 APP 目录下执行构建:

ouiwatekiMacBook-Pro:firstbundle wangyan$ cd ..

ouiwatekiMacBook-Pro:AtlasDemo wangyan$ cd app/

ouiwatekiMacBook-Pro:app wangyan$ ../gradlew clean

执行构建

ouiwatekiMacBook-Pro:app wangyan$ ../gradlew assembleDebug

相关文章
|
6月前
|
JSON JavaScript API
如何使用Newman 命令行的方式去运行API脚本?
如何使用Newman 命令行的方式去运行API脚本?
如何使用Newman 命令行的方式去运行API脚本?
|
6月前
|
测试技术 API Android开发
Airtest新手升级:一个相对完整的纯.py脚本是怎样子的
Airtest新手升级:一个相对完整的纯.py脚本是怎样子的
107 0
|
iOS开发
完整版在xcode打测试专用ipa包流程​
完整版在xcode打测试专用ipa包流程​
|
2月前
|
机器学习/深度学习 算法 TensorFlow
演示视频 and 完整代码 and 远程安装
本项目展示了卷积神经网络(CNN)在图像处理中的应用,包括系统效果图片和演示视频。CNN通过局部连接、权重共享及层次化特征提取等特性高效处理图像数据。提供的示例代码展示了如何使用Keras构建一个简单的CNN模型,并进行了模型编译与结构输出。更多详情与完整代码,请访问:[链接](https://www.yuque.com/ziwu/yygu3z/pnrng41h0sg5f5tf)。
29 5
|
5月前
|
NoSQL Java Redis
若依如何使用(基本环境的配置)
若依如何使用(基本环境的配置)
|
5月前
|
前端开发 测试技术 API
vite项目怎么build打包成不同环境的代码?从而适配不同环境api接口
vite项目怎么build打包成不同环境的代码?从而适配不同环境api接口
342 0
|
6月前
|
移动开发 监控 小程序
mPaaS常见问题之uniapp ios端云打包的配置config文件如何解决
mPaaS(移动平台即服务,Mobile Platform as a Service)是阿里巴巴集团提供的一套移动开发解决方案,它包含了一系列移动开发、测试、监控和运营的工具和服务。以下是mPaaS常见问题的汇总,旨在帮助开发者和企业用户解决在使用mPaaS产品过程中遇到的各种挑战
185 0
|
Ubuntu 编译器 网络安全
RK3568开发笔记(七):在宿主机ubuntu上搭建Qt交叉编译开发环境,编译一个Demo,目标板运行Demo测试
在之前的博文中已经搭建好了一个比较完善的ubuntu宿主机,都很完善了但是发现没有Qt交叉编译开发环境,所以还需要搭建一套Qt交叉编译开发环境。
|
开发工具 开发者 iOS开发
​ 如何处理Xcode上传IPA文件后无法在后台架构版本中显示的问题?
1、ipa包符合要求,显示正在处理,这种就是成功上传,等待处理即可(根据包大小,一般处理几分钟到一两个钟都有可能) 2、ipa不符合要求,没有出现正在处理,或者刷新页面正在处理的版本消失 出现这种情况说明你上传的这个ipa包有问题,苹果会发送具体原因到邮箱(开发者账号就是邮箱地址,) 登录邮箱去查看反馈邮件(反馈邮件也可能在垃圾箱),修改错误重新再打包上传。
​  如何处理Xcode上传IPA文件后无法在后台架构版本中显示的问题?
|
Java 定位技术 语音技术
​如何处理Xcode上传IPA文件后无法在后台架构版本中显示的问题?
​如何处理Xcode上传IPA文件后无法在后台架构版本中显示的问题?
下一篇
无影云桌面