当前位置: 首页 > 科技观察

HarmonyOS组件的分布式适配与应用想象

时间:2023-03-13 07:30:41 科技观察

更多内容请访问:与华为官方共建的鸿蒙技术社区https://harmonyos.51cto.com/#zz1什么是开发板级别,类似于51单机-芯片微电脑,ESP8266还是nanopi?答:本次直播抽奖WIFI物联网智能家居套件是一款可运行鸿蒙OS的开发版套件,采用3861芯片。比51单片机的计算能力强多了。2.绘制的组件是否有点击或触摸事件?答:点击或触摸事件需要通过ClickListner和TouchEventListner来实现。3.老师能帮忙梳理一下代码结构和前后横切的逻辑吗?谢谢你🙏答:是的,我会在近期把下面整理好发到论坛上。4、直接AI摄像头C++源码控制液晶显示有什么关系?答:抱歉,目前对这个问题了解不多,无法给出准确的回答。5、DevEcoStudio中用js写的UI需要用自定义组件实现吗?答:JSUI中也有很多预设的组件类型可以直接使用,但是对于一些特殊的需求,也可以通过自定义组件来实现组件功能。6、RoundProgressBar可以通过点击或拖动来调整吗?Answer:No.7.鸿蒙FA为什么要区分exampleAbility和exampleAbilitySlice,是基于什么思路设计的?答:Ablity和AbilitySlice是两个概念,有点类似于android中的Activity和Fragment,但又不完全一样。同一个界面只能显示一个AbilitySlice,而Fragment可以显示多个。能力是鸿蒙应用开发的基本单元。这种设计是将功能相关的接口组合成一个Ability,方便应用在多个设备之间相互调用。8、控件自绘的过程和Vc的gdi是不是一样的原理?答:原理不完全一样,不过好像可以这样比较。毕竟需要高级的绘图方法才能画出我们想要的界面功能。9、鸿蒙的界面开发与Android和web界面开发有什么异同?答:鸿蒙的UI开发分为两类:JavaUI和JavaScriptUI。JavaUI与AndroidUI开发非常相似。JavaScriptUI与Web界面开发非常相似。在技??术实现上,并没有太大区别,但是开发者还是需要熟悉鸿蒙UI中各个组件的使用方法。10、董先生您好,请问startAbility()中使用的ElementName和OperationBuilder有什么区别?答:ElementName和OperationBuilder都可以跳转能力,但是ElementName可以序列化,OperationBuilder不可以。11、据你了解,南北开发联合调研预计什么时候进行?答:这个估计没有确切的日期。12、“从https://harmonyos.51cto.com/posts/2798下载的代码无法运行,提示*Whatwentwrong:E??xecutionfailedfortask':entry:preBuild'.Checkif'storeFile'isconfiguredcorrectly,它不能为null或空。为什么?答:您可以尝试删除条目的build.gradle中的签名部分。我已经在上面的帖子中回答了这个问题,请查看。13、对于有多年嵌入式C开发基础,刚学JAVA,没有Android基础的开发者,鸿蒙应用开发有什么建议和注意事项?答:首先要学好Java语言,因为它毕竟不同于C语言Large(面向对象)。然后,你可以适当的学习和参考一些Android的资料。毕竟鸿蒙OS和Android在发展上还是比较相似的。14、鸿蒙应用沙盒与Android类似,但是官方文档没有描述如何通过类似的FileProvider与其他应用共享文件。现在访问SD卡的路径是没有权限的,不能直接通过文件路径生成的uri访问。还有什么别的方法吗?答:对不起,我暂时对这个问题了解不多,所以无法给出准确的回答。我会尽快调查并在论坛中回复您。15、是不是说JS写界面和Java写逻辑,哪个更兼容设备?答:可以说在一定程度上。比如在轻量级的可穿戴设备上,只能通过JS来设计用户界面,而不能直接运行Java的逻辑代码。此时可以通过分布式能力远程调用手机等其他设备的Java逻辑代码(Action)。16.地图是否可以集成各个地图服务商的SDK?怎么做?答:大部分地图服务提供者都是闭源的SDK,这种情况是无法集成的。但是,大多数服务商都以切片的形式提供地图接口,方便我们调用这些地图。17、鸿蒙的布局和组件相比安卓有哪些主要改进和优势?对应的软总线有哪些特点布局和部件?答:改进:提供了很多原子布局能力和自适应功能。比如AdaptiveBoxLayout可以用来自适应布局,很有特色。软总线是底层技术,不涉及布局和组件设计。18、Java和js在编程方式和应用领域方面的主要区别是什么?它们各自的优势是什么?答:Java提供细粒度的UI界面,采用命令式编程范式,提供最丰富的API。JavaScript提供高级UI描述并采用声明式编程范式。目前,其API相对有限。事实上,开发人员可以采用混合编程方法,同时使用Java和JavaScript进行应用程序设计。例如可以使用Java语言对功能模块进行编程实现业务逻辑,可以使用JavaScript语言进行界面编程实现数据内容的展示。19.一个简单的程序员制作了一个丑陋的应用程序。鸿蒙控有提供几套可以切换的皮肤吗?例如,亮皮肤和暗皮肤。老师,谢谢!答:鸿蒙OS中有主题(Theme)功能,但相关API目前似乎还没有完全公开,需要开发者拭目以待。20、老师您好,请问有没有C应用相关的课程,本次发行是否仅限于Java应用A:这里的C应用是指用C语言开发的应用程序。目前可用于鸿蒙OS应用开发的语言有Java、JavaScript和C++。但C++通常用于对性能要求较高的逻辑代码,不能设计用户界面。从UI层面,分布式能力不仅限于Java应用,也支持JavaScript应用。21.董老师,我看到qq群里很多人都想用js开发app。是不是java控件库少,js控件库多?答:目前Java和JavaScript都提供了基础组件(控件)库,但好像数量基本够用,但还不够丰富。我想大家可以根据自己的知识结构和喜好来选择Java和JS语言。但是目前JS语言的API并不全面,一些具体的功能还需要Java来实现。22、董老师,鸿蒙开发工具中有现成的控件库吗?答:鸿蒙SDK中提供了文本、按钮等常用组件类,即相对基础的组件(控件)库。23.老师有空给我们整个类Android的mvp或者mvcm吗?答:非常感谢。你的要求我已经写下来了,以后有机会再研究。24.MyText没有权重比例,只有text-weight。怎么了?答:权重比例只有在组件处于定向布局(Directionallayout)时才存在。25、我发现官方文档中的例子比较少,那么如何清楚地了解控件的属性和基本用法呢?我很期待能有一个根据上下文扩展常用用法的插件。就像aiXcoder一样,把这个类或方法的常用用法展示在一个类或方法上。答:目前关于鸿蒙OS开发的资料很少,但还是希望开发者能够理解。这是因为鸿蒙是一个全新的系统,很多资料还是需要所有开发者的共同努力。目前可以参考学院的课程和相关文章,希望对你有所帮助。26.老师,看懂这门课需要JavaScript基础吗?分布式应用就是编写一段代码,直接针对各种设备或者针对每个设备专门编写代码,如何适配?答:本课程主要介绍JavaUI,暂未涉及JavaScriptUI。分布式应用程序对所有设备都是通用的。一个分布式应用可以包含多个HAP(harmonyOSAbilityPackage),不可用的HAP可以对应不同的设备类型。在华为应用商店分发应用时,HAP是按需分发的。27、Java代码需要从头学到什么程度?答:语言知识学得越多越好。面向对象至少需要掌握三个特性:封装、继承和多态。然而,在学习Android开发的时候,只学到了很少的Java知识。但是你掌握的Java知识越多,你学习的信心和兴趣就会越大。如果时间充裕,还是希望先学Java再学鸿蒙OS。28、如果所有的软件功能都连接起来,软件就可以共享资源。比如在地图部分,各个软件调用同一个地图组件,在视频部分,各个软件也调用同一个视频软件。臃肿的问题。具有分布式处理功能的软件体积会比Android系统的软件体积大吗?目前,软件的体积非常臃肿。还有,两个设备上的软件功能应该是不一样的,软件的大小是不是不一样。但是如果你依赖屏幕投影或分布式处理,你不想安装那个软件是不是另一个设备?答:有统一的操作系统,但不同设备之间还是有很大差异的。是否会针对不同的设备进行新的软件适配?如果软件要在多个设备上运行,是否还需要重写软件的代码?鸿蒙OS可以解决应用臃肿的问题。一个分布式应用可以包含多个HAP(harmonyOSAbilityPackage),不同的HAP可以对应不同的设备类型。在华为应用商店分发应用时,HAP是按需分发的。另外,有些HAP在安装的时候不是直接下载的,而是需要的时候才下载。因此,如果相同的软件安装在不同的设备上,软件的大小可能会有所不同。不过,即使鸿蒙OS具备分布式能力,每台运行应用的设备仍然需要从应用市场拉取安装包,才能运行应用。在鸿蒙SDK中,很多组件都提供了适配性。比如AdaptiveBoxLayout可以用来自适应布局,很有特色。但是在一些复杂需求的情况下,还是需要针对不同的设备重新设计UI界面。了解更多请访问:与华为官方共建鸿蒙科技社区https://harmonyos.51cto.com/#zz