背景

最近基于HarmonyOS在写一个通讯录的项目,已经完成了一个java版本的通讯录,通讯录数据全部存储在sqlite数据库中。现在在着手写一个JS版本的通讯录,这时候关于JS版本中数据的读取,我做了3个版本,一个版本是JS里面存储的静态数据,一个版本是java Springboot做了一个服务端进行http网络交互,前面两个是我们在Android或者Web开发中很常见的两种开发方式,第三种方式就是我后面要做的重头戏了,就是HarmonyOS特色的分布式任务调度开发,目前所有功能已基本开发完成,后续我会陆续推出所有的开发课程和开源所有代码。

在第三种方式中,主要是JS版本做页面呈现,所有数据来源于之前已经写好的JAVA版本中的数据库的数据,因此我需要在之前的java版本中创建一个PA用来提供数据访问,同时在JS版本的FA中调用PA的数据,由于之前JAVA版本中的数据库操作都已经被我以dao接口的方式封装完成,再编写出PA的代码SO EASY。

回归本篇文章要研究的问题,为何我这里要着重强调bundleName呢,那是因为博主在开发的时候被这个bundleName折腾了一会。因为我在开发一个项目或则课题研究的时候,使用DevEco Studio喜欢只创建一个Project,然后创建多个Module的方式,这样更方便我使用一个git进行管理起来。请看我下面的项目工程截图

这里我创建了3个Module,entry是自动创建的,我没有在里面写代码,addressbookbyjs和addressbookbyjava就是我分别编写的两个版本的通讯录app。

这个时候,由于我是做分布式任务开发,需要Java版本的app和JS版本的app进行通信,两个app我都需要安装到模拟器上,可是这个时候我发现,如果保持工程现状,我只能安装其它一个app到模拟器上,因为他们的bundleName相同,那么这个时候肯定有人会说将bundleName修改成不同或者再创建一个工程不就完事了?

是滴,创建一个工程并且换一个bundleName的名字肯定可以解决,但是这个不是我想要的。

我原有的工程的bundleName名称为com.example.wdproject,那么所有模块下自动都会是这个名称

于是我将其中JS版本的Module的bundleName修改一下,修改为com.example.myproject,以为就OK了,这个时候发现报错了,注意不是编译报错也不是运行报错而是安装报错,是已经编译出了HAP文件的,只是安装不上去。报错信息如下

解决方案:此时必须要把工程默认生成的entry模块的bundleName也同步修改成com.example.myproject才能生效,这个时候,JS版本的APP就可以成功安装上去了,那么再来安装JAVA版本的时候,又得将JAVA版本模块的和entry模块的bundleName修改成一致,并且还不能和之前的JS版本的一致,于是都将他们修改成为com.example.wdproject,那么这个时候两个app就都成功安装到模拟器上了,可以顺利的进行分布式调度的测试了。

注意:每次一定要记得同步修改entry的bundleName

成功安装之后的截图如下

作者:软通夏德旺

想了解更多内容,请访问: 51CTO和华为官方战略合作共建的鸿蒙技术社区https://harmonyos.51cto.com/

HarmonyOS分布式任务调度开发之--你必须知道的bundleName的更多相关文章

  1. 【vs调试】PDB 文件:每个开发人员都必须知道的

    [vs调试]PDB文件:每个开发人员都必须知道的 GDB:The GNU Project Debugger, 将会包含代码中符号(自定义变量, 数据类型), 还有函数调用或类引用的关联性, 有了pdb ...

  2. PDB文件:每个开发人员都必须知道的

    PDB Files: What Every Developer Must Knowhttp://www.wintellect.com/CS/blogs/jrobbins/archive/2009/05 ...

  3. Webservice WCF WebApi 前端数据可视化 前端数据可视化 C# asp.net PhoneGap html5 C# Where 网站分布式开发简介 EntityFramework Core依赖注入上下文方式不同造成内存泄漏了解一下? SQL Server之深入理解STUFF 你必须知道的EntityFramework 6.x和EntityFramework Cor

    Webservice WCF WebApi   注明:改编加组合 在.net平台下,有大量的技术让你创建一个HTTP服务,像Web Service,WCF,现在又出了Web API.在.net平台下, ...

  4. 前端开发必须知道的JS(二) 闭包及应用

    http://www.cnblogs.com/ljchow/archive/2010/07/06/1768749.html 在前端开发必须知道的JS(一) 原型和继承一文中说过下面写篇闭包,加之最近越 ...

  5. 前端开发必须知道的JS之闭包及应用

    本文讲的是函数闭包,不涉及对象闭包(如用with实现).如果你觉得我说的有偏差,欢迎拍砖,欢迎指教. 在前端开发必须知道的JS之原型和继承一文中说过下面写篇闭包,加之最近越来越发现需要加强我的闭包应用 ...

  6. C#刨根究底:《你必须知道的.NET》读书笔记系列

    一.此书到底何方神圣? <你必须知道的.NET>来自于微软MVP—王涛(网名:AnyTao,博客园大牛之一,其博客地址为:http://anytao.cnblogs.com/)的最新技术心 ...

  7. (转)【推荐】初级.NET程序员,你必须知道的EF知识和经验

    转自:http://www.cnblogs.com/zhaopei/p/5721789.html [推荐]初级.NET程序员,你必须知道的EF知识和经验   阅读目录   [本文已下咒.先顶后看,会涨 ...

  8. 《你必须知道的.NET》读书笔记二:小OO有大原则

    此篇已收录至<你必须知道的.Net>读书笔记目录贴,点击访问该目录可以获取更多内容. 一.单一职责原则 (1)核心思想:一个类最好只做一件事,只有一个引起它变化的原因 (2)常用模式:Fa ...

  9. MVC中你必须知道的13个扩展点

    MVC中你必须知道的13个扩展点 pasting 转:http://www.cnblogs.com/kirinboy/archive/2009/06/01/13-asp-net-mvc-extensi ...

随机推荐

  1. Shiro remeberMe反序列化漏洞复现(Shiro-550)

    Apache Shiro是一个强大易用的Java安全框架,提供了认证.授权.加密和会话管理等功能.Shiro框架直观.易用,同时也能提供健壮的安全性.在Apache Shiro编号为550的 issu ...

  2. LeetCode初级算法之数组:283 移动零

    移动零 题目地址:https://leetcode-cn.com/problems/move-zeroes/ 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺 ...

  3. 介质访问控制子层-Medium Access Control Sublayer:多路访问协议、以太网、无线局域网

    第四章 介质访问控制子层-Medium Access Control Sub-layer 4.1介质访问控制子层概述 MAC子层不属于之前提到的OSI或TCP/IP架构的任何一层,这也是为什么这一层被 ...

  4. pymysql出现的问题

    pymysql的使用bug 每次执行sql语句(增删改查)必须commit提交 当重复执行相同slq语句时,如果不commit,fetchall的结果会是上次执行的结果 或者打开pymysql的自动提 ...

  5. Int,String,Integer,double之间的类型的相互转换

    Int整数,String字符串之间的类型的转换 int转成String 结果为: String转成int类型 结果为: double转成String 结果为: String转成double 结果为: ...

  6. MySQL 5.7.29主从安装配置

    一.环境准备(关闭防火墙) 1.清除已安装数据库 [root@mysql01 ~]# rpm -qa | grep mariadb mariadb-libs-5.5.35-3.el7.x86_64 [ ...

  7. 搭建本地yum镜像源

    Blog:博客园 个人 目录 概述 语法说明 参数说明 部署 配置阿里云源 同步源 建仓 Nginx配置 配置定时计划 yum配置 概述 由于内网有大量机器不能访问公网,安装软件比较费劲,那么,如何让 ...

  8. 史上最全单链表的增删改查反转等操作汇总以及5种排序算法(C语言)

    目录 1.准备工作 2.创建链表 3.打印链表 4.在元素后面插入元素 5.在元素前面增加元素 6.删除链表元素,要注意删除链表尾还是链表头 7.根据传入的数值查询链表 8.修改链表元素 9.求链表长 ...

  9. 【C#】DockPanelSuite 中 DockState.Document 状态下子窗体控件不显示的解决方案

    DockPanelSuite 是 Winform 中优秀的布局控件,但是这次使用过程中却出了个问题. 我遇到的问题是这样的,主窗体是通过 ShowDialog 显示的,子窗体的停靠状态为 DockSt ...

  10. 用Wireshark对Android应用的网络流量进行抓包

    通过Wireshark.Charles.Burpsuite等工具分析网络流量的过程,又叫做抓包. 为何需要抓包 测试手机应用(如搜狗号码通.搜狗手机浏览器)的功能时,经常遇到与网络交互的场景,这时候我 ...