本文主要介绍通过CLI工具链执行ace create project命令创建工程,生成联动编译脚本。使用Android Studio编译Android应用时,可联动编译ArkTS源码,并自动拷贝ArkTS产物到Android工程中。

其功能主要包括:

1.手动配置编译ArkTS源码开关

2.手动配置编译module

3.手动配置文件输出路径

编译配置说明

配置编译ArkTS脚本开关

在.arkui-x/android/app/build.gradle目录下设置configBuildFlag开关,可触发联动ArkTS源码编译脚本,默认为false,不执行编译ArkTS脚本文件。

//执行联动编译脚本开关.
def configBuildFlag = false task ArkTSBuildTask {
preBuild.dependsOn ArkTSBuildTask
doLast {
if (configBuildFlag) {
def os = System.getProperty("os.name").toLowerCase()
if (os.contains("win")) {
exec {
//Windows系统执行此命令触发联动编译
commandLine 'cmd', '/c', '.\\\\buildArkTs'
workingDir file( project.projectDir.getAbsolutePath() + '\\\\..' )
}
} else {
exec {
//Linux和Mac系统执行此命令触发联动编译
commandLine 'sh', '-c', 'chmod +x ./buildArkTs && ./buildArkTs'
workingDir file( project.projectDir.getAbsolutePath() + '/..' )
}
}
}
}
}

配置编译module

可手动在Android工程下的buildArkts脚本中添加跨平台module,默认编译entry,用于编译指定module文件。

例:moduleLists=entry,testmodule

moduleLists=entry

配置Android的arkuix输出路径

可手动在Android工程下的buildArkts脚本中修改Android应用中module的输出路径。

android_arkuix_path="$project_path/.arkui-x/android/app/src/main/assets/arkui-x"

配置Android的systemRes输出路径

可手动在Android工程下的buildArkts脚本中修改Android应用中systemRes的输出路径。

android_systemRes_path="$project_path/.arkui-x/android/app/src/main/assets/arkui-x/systemres"

编译脚本目录

.arkui-x/android目录,新增编译ArkTS脚本:

ArkUI-X与Android联动编译开发指南的更多相关文章

  1. 《Android插件化开发指南》面世

    本书在京东购买地址:https://item.jd.com/31178047689.html 本书Q群:389329264 (一)这是一本什么书 如果只把本书当作纯粹介绍Android插件化技术的书籍 ...

  2. 《Android插件化开发指南》勘误

    一些常识: 1)全书70个代码例子中,涉及到插件的例子,请先assemble插件的项目,这会在HostApp项目中生成assets目录,并在该目录下plugin1.apk.这样,HostApp才能正常 ...

  3. Android:cmake开发指南

    一.静态库与动态库构建 (.so)共享库,shared object:节省空间,在运行时去连接,如果执行机器上没有这些库文件就不能执行. (.a)静态库,archive:静态库和程序化为一体,不会分开 ...

  4. Android USB应用开发指南

    调试 USB接口被占用后使用wifi调试模式 详见:https://blog.csdn.net/u013758456/article/details/78911812 开发

  5. Android 插件化开发(四):插件化实现方案

    在经过上面铺垫后,我们可以尝试整体实现一下插件化了.这里我们先介绍一下最简单的实现插件化的方案. 一.最简单的插件化实现方案 最简单的插件化实现方案,对四大组件都是适用的,技术面涉及如下: 1). 合 ...

  6. Android 插件化开发(一):Java 反射技术介绍

    写在前面:学习插件化开发推荐书籍<Android 插件化开发指南>,本系列博客所整理知识部分内容出自此书. 在之前的项目架构的博文中,我们提到了项目插件化架构,提到插件化架构不得不提的到J ...

  7. 移动应用安全开发指南(Android)--完结篇(http://www.bubuko.com/infodetail-577312.html)

    1.认证和授权 概述 认证是用来证明用户身份合法性的过程,授权是用来证明用户可以合法地做哪些事的过程,这两个过程一般是在服务器端执行的,但也有的APP出于性能提升或用户体验等原因,将其做在客户端完成, ...

  8. 移动应用安全开发指南(Android)--完结篇

    如果IE显示格式不正常,请使用chrome浏览器 1.认证和授权 概述 认证是用来证明用户身份合法性的过程,授权是用来证明用户可以合法地做哪些事的过程,这两个过程一般是在服务器端执行的,但也有的APP ...

  9. Android SDK 开发指南

    Android SDK 开发指南 视频详解 以下视频是对融云 Android SDK 开发使用的详细讲解,您可以在阅读文档时配合学习.   更多视频教程如下: CSDN 融云 Android SDK ...

  10. 【文章内容来自《Android 应用程序开发权威指南》(第四版)】如何设计兼容的用户界面的一些建议(有删改)

    最近一直在看的一本书是<Android 应用程序开发权威指南>(第四版),十分推荐.书中讲到了一些用户界面设计的规范,对于初学者我认为十分有必要,在这里码给大家,希望对我们都有用. 在我们 ...

随机推荐

  1. docker 版本号说明

    17.03 版本以前 Docker CE 在 17.03 版本之前叫 Docker Engine, 版本说明参考这里 => Docker Engine release notes, 可以看到 D ...

  2. Zotero 设置坚果云同步(使用 WebDAV 的方法)

    1.坚果云设置 登录坚果云:官网,注册账号 1.建立个人文件夹:zotero 2.在网页打开右上角的 账户信息,并选择 安全选项 在页面下方选择 添加应用 并输入与前面文件夹对应的名称 zotero ...

  3. 工作日记-LED串口开发

    背景 公司最近的一个项目中需要使用LED显示屏实时显示一些数据,经过调研,项目经理选择了泰美泉公司的产品,前几日硬件设备到了之后,笔者负责的中间件组就马不停蹄的开始了实际的调研与测试工作,因为之前有过 ...

  4. C#元数据的概念,以及一个使用了lambda表达式的简单例子

    先看一个例子 假设你写了一个 C# 类库 MathUtils.dll: public class Calculator { public int Add(int a, int b) => a + ...

  5. Superfetch/SysMain

    卡的不要不要的 Windows 服务中有一个叫 Superfetch. 现在换了个马甲叫 SysMain 本意是好的,超级预读功能可以帮助大型软件极大提升启动加载时间,但是经常抽风至少我觉得 导致磁盘 ...

  6. javascript 字符串截取

    <script> //字符截取(需要的字符长度) function cut_str(need_str_length){     var bag_set = document.getElem ...

  7. FastAPI中的Pydantic密码验证机制与实现

    title: FastAPI中的Pydantic密码验证机制与实现 date: 2025/03/31 00:04:51 updated: 2025/03/31 00:04:51 author: cmd ...

  8. useDeferredValue的作用

    前言 useDeferredValue是react18新增的一个用于优化性能的一个hook,它的作用是延迟获取一个值,实际开发中的常规用法与我们之前所用的防抖和节流很相似,但是也有一定的区别.本篇文章 ...

  9. nginx代理静态页面添加二级目录

    location /wash { # root html; alias /home/cxq/wash-html/dist; index index.html index.htm; try_files ...

  10. Asp.net core基础(一)Entity FrameworkCore的增删查改

    一.EntityFramework Core的介绍 EntityFramework Core是.net core中的ORM(object relational mapping[对象关系映射])框架,它 ...