• 博客(1254)
  • 收藏
  • 关注

原创 【HarmonyOS】元服务和APP的相互跳转、相互成就

这些原生APP仿佛有一大堆话憋在肚子里,试图通过右上方的提示气泡呼唤用户,仿佛再说:点我,点我。随着鸿蒙生态的发展,各种类型的应用都已经可以在Harmony OS上无差异的运行,面对鸿蒙新兴元服务的兴起,各大厂家可能都在考虑一个问题:如果已经有APP了,有必要再开发一款元服务吗?(二)充分利用元服务的各种接入方式和免安装的特点抢先服务用户,抢占用户;(一)通过APP引导用户添加元服务到桌面,即可以让用户使用更加方便;有了元服务再逐步引导用户下载APP享用更丰富的APP能力,跟用户深度绑定;

2023-05-31 16:49:51 2154

原创 【HarmonyOS】hap包在多台设备中安装和HarmonyOS应用含多个module安装问题

若您的应用已在AGC上申请应用,需要使用手动签名方式,将应用appid与签名信息关联,在发布HarmonyOS应用前,建议您在本地进行调试,您需要提前申请相应的调试证书与调试Profile给HAP进行签名后,才可安装到设备上运行。注意:一个帐号最多可申请两个调试证书,您需要至少预留一个调试证书位置才可自动签名成功,若您自动签名失败,请检查您的帐号中“证书管理”是否已申请了两个调试证书。若您的应用创建多个module,需要同事安装多个模块的hap包到设备中,您可参考下方步骤配置后,再重新运行项目。

2023-05-30 14:34:03 3467

原创 【快应用】多语言适配案例

多个资源文件会按一定顺序进行匹配,例如:对于zh-CN,则按zh-CN -> zh -> zh-* -> defaults的顺序匹配,其中zh-*匹配到多个,则按字母升序区分大小写排序。快应用平台的能力会覆盖多个国家地区,平台支持多语言的能力后,可以让一个快应同时支持多个语言版本的切换,开发者无需开发多个不同语言的源码项目,避免给项目维护带来困难。使用系统默认的语言,开发者配置多语言的方式非常简单,只需要定义资源与引用资源两个步骤即可。1、资源文件的定义,即资源文件的创建。

2023-05-30 14:21:55 1377

原创 【HarmonyOS】初识低代码平台开发元服务

OK,通过上述几个步骤我们就已经完成了这个轮播图的低代码开发了。创建项目的过程这里就不再赘述了,详情可以参考上文中的指导文档。HarmonyOS、低代码平台、元服务开发、拖拽式开发。

2023-05-30 14:20:57 1747

原创 【AGC】云监控日志服务查询不到Logger日志相关问题

后来咨询了cp的项目ID和函数是事件函数,在后台查询到cp的云函数并没注册上去,在后台手动给注册上去了,解决问题。在使用云监控功能时,虽然创建项目后会自动开通云监控,但是需要cp先开通云函数,才能在云监控中看到Logger日志。开发者反馈在使用AGC云监控,填写了Logger日志,但是在云监控的日志服务查不到的问题。云函数按要求写了Logger日志,但是在云监控的日志服务页面查询不到,监控大盘页面也没有调用记录。但是cp反馈是有云监控权限的,排除这个可能性。

2023-05-29 14:34:04 1169

原创 【HMS Core】Health Kit关于获取历史数据问题

如果用户已授权一年的权限,则可以查询用户授权时间前一年内的健康数据。应用已经开通了历史数据访问权限,同时用户在授权页面已经勾选了”历史数据“项,然后我们是调用healthkit的rest接口查询健康数据,那么是否用户授权之前一年的健康数据都能被查询到呢?REST API 周的历史数据权限:https://www.huawei.com/healthkit/historydata.open.week。需要申请历史数据权限,使用历史数据权限,需要在认证鉴权时的scope参数中添加历史数据权限,供用户选择授权。

2023-05-29 14:34:03 1236

原创 【HarmonyOS】【FAQ】HarmonyOS应用开发相关问题解答(二)

不可以,申请LOCATION_IN_BACKGROUND权限必须同时申请LOCATION权限,两个权限一起申请的时候,弹出权限确认框,用户可以选择“仅在使用期间允许”和“始终允许”;海外版本较国内版本而言更新较慢,暂不推荐海外开发者使用国内较高版本,因为高版本相关SDK并未推送至海外,可能会导致部分SDK无法下载。此问题在API 9已解决,旧版本无法回合可采取其他方式规避,如:获取焦点软键盘弹起后,可将表单位置上移。此外,可以看下DataAbility功能,支持不同的应用间共享文件。

2023-05-26 15:06:05 1822

原创 【快应用】响应式布局适配横竖屏或折叠屏

当前开发者在开发快应用时,往往将designWidth设置为设备屏幕的宽度,这时,应用的内容会随着设备宽度的变大而拉伸显示,导致在大屏、横屏、折叠屏展开时显示效果不好。通过使用快应用的响应式布局能力开发新应用或者改造已有应用,可以使快应用在手机、平板、智慧屏等各种尺寸的设备都有良好的展示效果。根据屏幕的宽度来判断一行渲染几张图片,以下示例实现了根据屏幕宽度来控制list展示列数的效果。在折叠屏合起和展开的效果如下,可以看出页面各元素尺寸在展开时明显变大了。响应式布局、折叠屏、横竖屏。

2023-05-26 15:02:47 1455

原创 【HMS Core】【ML Kit】活体检测FAQ合集

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?网站下载自己应用的“agconnect-services.json”文件,拷贝到示例工程的应用级根目录下。修改示例工程中应用级“build.gradle”文件中的applicationId为您自己的应用包名。(具体何时更新,请关注官网动态)您可先扫描图片中二维码下载APK测试,动态活体检测需按照APK上述提示测试。活体检测暂不支持横屏、分配检测(后续是否支持,请持续关注官网动态)

2023-05-25 17:16:59 2047

原创 【HarmonyOS】低代码元服务开发中的地图实现

2、这边我们将示例中的代码,拷贝到新建的文件demo.html中,将demo.html文件放置于HarmonyOS工程的资源目录下(entry/src/main/resources/rawfile/)。)集成了地图但是并没有通过SDK的方式导入的地图,使用的是WebView+本地html+腾讯Javascript API GL的方式实现的地图,下面给大家讲述一下具体实现的流程。然后我们需要实现的是WebView加载本地Html,在官网我们可以找到加载资源文件和本地文件的方法(这正好解决了我们的问题。

2023-05-25 17:15:02 1571

原创 【HMS Core】音频编辑服务音频分离一直提示1007模型文件下载失败

2、在AppGallery Connect中检查应用的视频编辑服务开关是否开启。如果未开启,请在AppGallery Connect中开启,开关开启后受缓存影响,需要等待一段时间才会生效。3、在AppGallery Connect中检查是否配置了签名信息,并确认打包Apk的签名信息是否与AppGallery Connect中配置的一致,重新添加签名信息后,受缓存影响,需要等待一段时间才会生效。1、在代码中检查鉴权信息是否已设置。4、检查素材数据是否已编排,请参见“编排素材”章节。

2023-05-24 14:32:48 441

原创 【快应用】如何实现地图位置点实时刷新

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?需要对地图上点的文本弹框做显示设置(把markers-callout子属性的display设置为always),并对坐标位置变化做回调弹出文本显示处理。如下图所示,地图上点的位置坐标已发生变化,但是文本弹框还显示在原位置,并没有显示在新位置。快应用map组件中,地图上点的文本弹框不能跟随点的位置变化。1、将markers第一个点的值赋给一个临时变量。

2023-05-24 14:30:29 558

原创 【AGC】云调试上传rpk包相关问题

建议开发者在使用AGC-云调试安装rpk包时,不安装快应用加载器(后台会自动安装),申请到设备后直接安装快应用安装包,以避免出现问题。开发者反馈在使用AGC云调试,上传rpk测试包时出现提示报错:安装失败,UNKNOWN_ERROR。这边使用开发者提供的测试包安装,按照正常步骤是可以正常安装。所以分析是开发者在云调试测试机上的安装步骤存在问题。出现故障的手机型号以及操作系统版本:华为nova4。在AGC-云调试使用云真机测试rpk包提示错误。使用真机测试包体能正常安装进入游戏。

2023-05-19 15:14:03 468

原创 【HarmonyOS】【JS】小白的鸿蒙学习之路2--小小的图片啊,动呀动起来

4、上面所有的组件都定义了class属性,它对应的样式都定义在index.css中。index.hml:此文件定义了index页面的布局、index页面中用到的组件,以及这些组件的层级关系。index.js:此文件定义了index页面的业务逻辑,比如数据绑定、事件处理等。en-US.json:此文件定义了在英文模式下页面显示的变量内容。zh-CN.json:此文件定义了在中文模式下页面显示的变量内容。index.css:此文件定义了index页面的样式。image组件、动画。

2023-05-19 15:13:00 1158

原创 【HarmonyOS】元服务混淆打包以及反混淆mapping文件生成

当我们使用混淆配置后,对外发布的应用运行在手机上时,发生异常的报错也不会是原来的包名和类名,都会变成a.b.c这种混淆后代码,行号也会发生变化。在HarmonyOS元服务开发中,我们也可以通过开启混淆提高应用的安全性和压缩包体积。Android中的mapping.txt 文件会在 模块/outputs/mapping/release/mapping.txt 中,但是通过相同的方法我们在DevEco Studio工程目录下是找不到mapping.txt,这是为什么呢?

2023-05-18 15:29:57 1724

原创 【HarmonyOS】DevEco Studio 3.1 Beta2下载SDK失败,报错error notarget No matching version found for @webassembl

DevEco Studio 3.1 Beta2版本,下载API 9 SDK时,npm install下载时报错"error notarget No matching version found for @webassemblyjs/ast@1.11.6.",如下图所示。可能原因:npm缓存机制导致找不到@webassemblyjs/ast@1.11.6版本,下载SDK时依赖@webassemblyjs/ast最新版本,下载@webassemblyjs/ast@1.11.6版本失败导致下载SDK失败。

2023-05-18 15:29:48 913

原创 【AGC】新版鸿蒙崩溃SDK集成使用方法

我们知道AGC的Crash SDK都是需要强制集成华为分析SDK的,在使用时的崩溃数据上报都要依靠分析服务来完成,这就容易受到限制,有时出现无数据的情况就要依次排查崩溃SDK与分析SDK,比较麻烦。而就在不久前,鸿蒙崩溃的SDK做了全面更新,上报信息不再依赖华为分析服务SDK,并且后台数据展示也做了更新。在项目列表中找到您的项目,在项目下的应用列表中选择您需要启用崩溃服务的应用。现在鸿蒙崩溃SDK后台数据展示界面也与现在的Android应用不同了,做出了更细致的更新,下面向大家展示上报的崩溃数据界面。

2023-05-18 15:28:50 1108

原创 【AGC】接入分发和运营分析相关问题

事件参数参考链接:https://developer.huawei.com/consumer/cn/doc/development/HMSCore-Guides/user-behavior-0000001050745157#section3491121008。4、参数下的值的个数是否有限制,从实时概览-今日事件数-具体参数统计-下载(步骤见附件)的表格里面只展示的50条参数值的数据,实际的参数值我上传了上1000条。还是说今日的数据只展示/下载这么多,明天看事件分析的时候能看到全部的参数值。

2023-05-16 09:55:37 575

原创 【HarmonyOS】这些HarmonyOS应用开发的问题你都了解吗?

{"alive":true,"densityDPI":480,"densityPixels":3,"height":2376,"id":0,"name":"内置屏幕","refreshRate":60.000004,"rotation":0,"scaledDensity":3,"state":2,"width":1152,"xDPI":461.318,"yDPI":457.2}信息也不是当前从设置中读取的,设置里面的宽高拿到的是物理设备的,和我们真是的设备是有区别的。如何获取正确的屏幕分辨率?

2023-05-16 09:53:32 863

原创 【HMS Core】Health Kit如何获取跑步锻炼记录的轨迹记录?

使用接口,"/healthkit/v1/activityRecords",可以正常获取跑步记录,但是里面没有附带轨迹数据,应该怎么获取每条记录的轨迹记录数据呢?

2023-05-16 09:51:11 757

原创 【HarmonyOS】小白的鸿蒙学习之路--DevEco Studio安装

3、在用户变量(建议设置在用户变量里,以免设置在系统变量里,对该PC其它的使用用户有影响)里新建变量名“NODE_PATH",值为“C:\Users\XXX\nodejs\node_modules”。工欲善其事必先利其器,想做好一件事,工具必须要趁手才行,鸿蒙应用开发的学习也是如此,今天就和大家分享一下,我在安装DevEco Studio时遇到的一个问题。2、命令行输入node -v,也显示不是内部命令。此时说明,开发环境连接是没有问题的,可能是安装node.js的时候,环境变量没有配置好。

2023-05-12 09:30:25 805 1

原创 【快应用】swiper组件内容切换动画实现

其中transform支持的属性有translate,translateX/Y,Scale,scaleX/Y,rotate,rotateX/Y。Swiper组件在1080版本之后推出了页面切换动画的样式,支持在swiper组件轮播时展示动画效果,比如缩小或者旋转之类的。Swiper组件内的items切换时,滑动的效果比较单调,是否可以在滑动时加入一个切换的动画效果呢?下面代码就对swiper组件内的内容切换时实现了一个缩放的动画效果。

2023-05-12 09:28:24 1351

原创 【HarmonyOS】轻量级智能穿戴应用如何在页面中实现数据传递与全局变量的使用

方式二:若您只需要在少数几个页面中进行数据传递,您可在页面路由跳转时,通过router.replace将参数传递到目标页面,轻量级智能穿戴应用开发与其他设备类型不同,不能使用router.getParams方式获取参数,传递和获取参数方式参考如下步骤。步骤2:chartPage.js文件中定义相同名称的变量:xAxisMin、xAxisMax、yAxisMin、yAxisMax,定义初始值,定义与页面传参时相同名称变量,会将传入参数值自动赋值到chartPage中定义参数;

2023-05-09 11:04:59 1381

原创 【HMS Core】Health Kit想要查看数据是来自用户的哪个设备,如何查看?

3、如果需要单独的某个权限进行取消授权,您可以引导用户在“华为运动健康App > 我的 > 隐私管理 > 数据分享与授权 > 帐号授权应用”选取您的想要取消授权的应用,进行手动取消授权。1. 用户授权了对应的健康数据权限后(比如身高、心率、血压),如果用户想变更授权项,改为只授权我们查询心率,那么有什么方式可以解除之前的授权呢?2. 用户是以登录的方式来授权的,如果用户会话未过期,即便我们再次返回授权页给用户,页面也会直接跳过登录,无法让用户再次授权,如何解决?

2023-05-09 11:03:41 477

原创 【快应用】一个for循环,教你实现批量包名检测功能

快应用中调用pkg.hasInstalled检测应用是否已安装时,填入一个包名时,是可以正确返回结果,当输入的包名参数是一个数组时就只返回第一个包名的检测结果,之后的就不再返回结果了。这种情形该如何处理?这是因为该接口的package参数为string类型,当填写为数组时,会把整个数组判断为一个包名去检测,导致返回的都是false,所以看起来只有一个结果。可以用for循环去遍历数组,来去对包名一个一个检测,这样就可以对每个包名实现检测的。包名检测,for循环。

2023-05-06 09:36:22 240

原创 【HarmonyOS】【FAQ】HarmonyOS应用开发相关问题解答(一)

本文档主要总结HarmonyOS开发过程中可能遇到的一些问题解答,主要围绕HarmonyOS展开,包括但不限于不同API版本HarmonyOS开发、UI组件、DevEco Studio、Gitee示例代码等,并将持续更新哦。1、Gitee开源社区中HarmonyOS示例代码运行说明方式1:通过git clone下载相关代码。

2023-05-06 09:34:35 660

原创 【AGC】applinking服务接入产生崩溃问题

一般情况下,正常接入applinking是不会产生崩溃问题的,在实际测试中,试图重现同样的错误,但无法复现问题,这个服务并没有问题。2、集成华为分析,并且使用了1.6.2及以上版本App Linking SDK,需要重新下载“agconnect-services.json”文件并集成到工程中。欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?开发者反馈在应用中集成了AGC的applinking服务,在打开app时遇到了一些问题。

2023-05-05 09:40:14 616

原创 【快应用】组件如何页面底部显示

方法二:设置postion为fixed,margin-top为屏幕的高度减去组件的高度。这种方法需要拿到屏幕高度才能进行设置,代码上更复杂一些,推荐使用第一种方式来实现。欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?可以通过设置postion为fixed,再设置margin-top属性和bottom属性来将组件在页面底部显示。方法一:设置postion为fixed,bottom为0px。

2023-05-05 09:37:59 274

原创 【HarmonyOS】自定义组件之ArkUI实现通用标题栏组件

华为开发者论坛现在很多朋友都已经转战ArkTS语言了,那么今天就来使用ArkTS实现一个同样的通用标题栏组件,样式选择还和之前保持一致,左侧文本按钮、中间文本、右侧图片按钮,关于样式,大家可以自行根据项目实际需求进行修改,废话不多说,下面进入代码实战吧!

2023-05-04 10:09:36 1694 1

原创 【HMS Core】获取用户信息接口,返回 session timeout

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?2)建议查看access_token里面是否包含%,包含%的格式就是不正确的。如果包含%这种字符,可以转化下,比如decode。1、如果是走的端测的比如OkHttpClient这种方式的是需要URLEncoder.encode的方式来处理的。1)此处获取的access_token是可以直接使用的,不需要再去URLEncoder。2、如果使用类似postman的请求方法的话。

2023-05-04 10:08:15 199

原创 【HarmonyOS】【JS】Tabs如何设置区分TabBar和TabContent的分割线不显示

分割线内部实现是放置在tab-bar元素内,可通过给tab-bar元素设置高度 & tab-bar中每个页签也设置同样高度,让页签元素的高度刚好为tab-bar元素高度,蓝色分割线不显示。使用JS开发HarmonyOS应用时,使用Tabs组件,默认自带TabBar和TabContent的蓝色分割线,由于蓝色分割线样式不可设置,若不想要此蓝色分割线,如何去除蓝色分割线?1、若JS使用Tabs,蓝色分割线为组件自带样式,暂不支持属性支持显示与隐藏,通过css或者其他方式都无法去除;【Tabs相关文档】

2023-04-28 10:33:25 943

原创 【HarmonyOS】元服务WebView组件 H5使用localstorage

在日常开发中我们会在应用种接入H5网页,localStorage作为H5本地存储web storage特性的API之一,主要作用是将数据保存在客户端中。获取到的值会在onReceive回调中返回,如上图可以看到我们获取到val的值时123456789,跟我们初始化设置的时候相同。以上就实现了WebView组件中启用H5 localStorage,以下是完整代码供大家参考。第三步、通过写入的key获取localStorage中的val值。第二步、写入localStorage值。

2023-04-28 10:32:18 1272

原创 【Serverless】云函数中调用云函数报错10602

出现10602的错误一般是因为AGCClient在Node.js中初始化一次后不会清除缓存,在后续测试时会出现重复初始化的情况便会报AGCClient已存在的错误,所以在初始化前做个判断,如果存在AGCClient实例便不再初始化。开发者希望在云函数代码中调用别的云函数,于是参考官方文档,编写Node.js的函数代码,导入到AGC控制台进行测试,返回结果总是会报下面这个错误。3.call()需要异步。

2023-04-27 09:44:25 314

原创 【AGC】质量服务数据分析问题

(从安装看,安装量=新安装+更新安装,新安装指从华为渠道安装的,如果在其他渠道下载的且在华为应用市场安装的,会被称为更新安装);而下载数,统计的是通过华为应用市场客户端下载的。3)使用以下至少3个AGC服务:认证服务、云函数、云数据库、云存储、Dynamic Ability、远程配置、App Linking、应用内消息、预测服务、性能管理服务、崩溃服务。2、AppGallery 是否可以协助我们获取颗粒度更加细的卸载数据,例如卸载率的计算,卸载来源等,帮助计算卸载率,并与行业进行对比。

2023-04-27 09:34:47 823

原创 【HMS Core】Health Kit取消授权接口怎么辨识是哪个用户取消授权呢?

欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?取消授权时,请求头中需要传入access_token,此access_token对应某个用户。应用如何判断华为运动健康服务关闭了,这样应用才能去给到提示。取消授权接口怎么辨识是哪个用户取消授权呢?

2023-04-25 11:30:17 233

原创 【HarmonyOS】自定义组件之JavaUI实现通用标题栏组件

平时我们在开发一个应用时,我们都知道一个完整的项目中会有很多个页面,而这些页面中会有许多通用的部分,比如通用标题栏、通用Dialog、通用下拉菜单等等,在Android开发中我们可以通过LayoutInflater.from(Context).inflate(layout,root,false)解析XML布局,从而将多个Android中内置的控件实现一个组合式的自定义View,以达到组件通用化,提高代码的复用性的效果。

2023-04-25 11:27:41 596

原创 【快应用】表单组件的model属性实际运用

model 指令本质上是一个语法糖,原理是在编译时为组件自动绑定了 change 事件,通过 change 事件为双向绑定的数据更新变更后的值,目前仅支持在input,select和textarea中使用。请勿在使用 model 指令时,再为组件手动绑定 change 事件,如果同时使用 toolkit 编译时,只会保留开发者定义的 change 事件,导致 model 指令失效。在使用表单组件时,往往需要同时绑定值和 change 事件动态更新数据,当表单交互较多的场景下会有大量与业务无关的代码。

2023-04-23 09:50:33 274

原创 【HMS Core】视频编辑服务报错method not allowed 20124、Parameter error. Error: appId is invalid

3、在AppGallery Connect中检查是否配置了签名信息,并确认打包Apk的签名信息是否与AppGallery Connect中配置的一致,重新添加签名信息后,受缓存影响,需要等待一段时间才会生效。如果未开启,请参考下方链接进行开启,开关开启后受缓存影响,一般需要等待一段时间才会生效。问题2:视频编辑sdkdemo的所有功能提示method not allowed 20124,后台已申请动态照片、一键微笑、AI着色、一键动效、一键染发的功能。

2023-04-23 09:49:31 246

原创 【FAQ】HarmonyOS跳转到应用市场详情页

3、ArkUI中使用Hyperlink组件跳转,通过Hyperlink可以设置应用图片,并且在点击的时候跳转应用详情页,如果是H5地址则会跳转至网页应用详情,deeplink地址可以直接跳转应用市场详情页。使用方法:通过传入scheme 为market:// 的链接,Android支持的标准的market协议,可拉起Android设备上的所有应用商店。欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?

2023-04-21 09:25:55 1032 1

原创 【快应用】list-item组件的正确隐藏

引擎list组件的实现就是这样的,show为false时只是将控件设置为隐藏,dom树中并未删除,所以在list-item中仍会留着所占有的空间。欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?list组件中给list-item使用show属性后,再设置为false后,会有一个空白位置留出,感觉位置好像还是被占据着,这种情形我们该如何处理?list组件 if/show。将原来的show改为if。

2023-04-21 09:25:07 355

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除