动态部署、远程 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

相关文章
|
传感器 编解码 5G
Unity配置Android开发环境与第一个Demo
ARFoundation之路-环境配置(Android)
594 0
Unity配置Android开发环境与第一个Demo
|
5月前
|
机器学习/深度学习 算法 TensorFlow
演示视频 and 完整代码 and 远程安装
本项目展示了卷积神经网络(CNN)在图像处理中的应用,包括系统效果图片和演示视频。CNN通过局部连接、权重共享及层次化特征提取等特性高效处理图像数据。提供的示例代码展示了如何使用Keras构建一个简单的CNN模型,并进行了模型编译与结构输出。更多详情与完整代码,请访问:[链接](https://www.yuque.com/ziwu/yygu3z/pnrng41h0sg5f5tf)。
44 5
|
前端开发 iOS开发 开发者
iOS逆向小知识:批量部署插件(搭建私有Cydia源)
iOS逆向小知识:批量部署插件(搭建私有Cydia源)
639 0
|
开发工具 iOS开发 git
iOS 开发 - 亲身经历告诉你如何把自己的库通过pod导入(详细步骤)
iOS 开发 - 亲身经历告诉你如何把自己的库通过pod导入(详细步骤)
340 0
iOS 开发 - 亲身经历告诉你如何把自己的库通过pod导入(详细步骤)
|
测试技术 Android开发 开发工具
Android程序测试(1)——新建一个简单的测试工程来测试已有的工程
因为程序测试方面是程序开发中非常重要的一方面,这里结合官方教程,来了解下Android程序是怎样进行测试的。
1058 0
|
9月前
|
XML Java API
Android 浅度解析:系统框架层修改,编译,推送相关操作
Android 浅度解析:系统框架层修改,编译,推送相关操作
334 0
|
Android开发 数据格式 XML
|
JavaScript
移动端也能兼容的web页面制作1:MDBootstrap演示Demo运行演示
移动端也能兼容的web页面制作1:MDBootstrap演示Demo运行演示
280 0
|
API 开发工具 Android开发
Android 应用程序集成Google 登录及二次封装
谷歌登录API:  https://developers.google.com/identity/sign-in/android/ 1、注册并且登录google网站        https://accounts.
1422 0

热门文章

最新文章