- 博客(2216)
- 收藏
- 关注

原创 OpenHarmony开发案例【大合集】
为帮助开发者快速熟悉OpenHarmony的能力以及相关的应用开发流程,我们提供了一系列的基于趣味场景的应用示例,即Codelabs,开发者可以根据我们的文档一步步的学习和完成简单项目的开发。
2024-05-12 21:11:37
1571
原创 鸿蒙6.0开发常见问题【如何在webview中使用H5中的alert?】
摘要: 本文介绍了如何在ArkUI框架中使用Web组件捕获网页alert()弹窗事件,并通过AlertDialog实现自定义弹窗效果。代码示例展示了Web组件的onAlert属性监听H5页面alert事件,获取URL和消息内容后,使用showAlertDialog显示包含确认/取消按钮的弹框,同时处理用户操作响应。H5侧提供了触发alert的简单示例页面。该方案实现了原生与Web弹窗的交互控制。(150字)
2025-07-14 14:36:43
99
原创 鸿蒙6.0开发常见问题【Web组件使用rawFile加载离线html时,如何在url后拼接参数?】
摘要: 本文介绍了在鸿蒙应用中使用Web组件加载HTML文件时传递URL参数的方法。开发者在Web组件URL中直接拼接参数(如?key=value),H5页面通过解析window.location.search获取参数并进行处理。示例代码展示了鸿蒙侧如何加载带参数的离线HTML,以及H5侧如何解析参数并动态显示。该方法适用于Web与原生交互的场景,通过URL参数实现简单数据传递。 核心点: Web组件URL支持直接拼接参数 H5使用window.location.search解析参数 适用于离线HTML与原
2025-07-13 21:21:14
302
原创 鸿蒙6.0开发常见问题【Web加载的H5页面跳转后,如何避免原有页面注册的资源被清空?】
【摘要】对比两种WebView JavaScript注入方式发现:使用runJavaScript在页面跳转后注册资源会被清空,而javaScriptOnDocumentStart能持久保留。前者通过ArkTS按钮触发JS方法设置sessionStorage,但跳转至新页面后方法失效;后者在WebView初始化时注入脚本,使sessionStorage数据跨页面保持。解决方案推荐使用javaScriptOnDocumentStart进行全局脚本注入,确保H5页面跳转时资源可用性。
2025-07-13 20:11:16
320
原创 鸿蒙6.0开发常见问题【在Web组件的H5页面中,如何使用a标签实现打开各种页面?】
本文介绍了四种在OpenHarmony应用中实现页面跳转的方案:1) 使用Web组件的onLoadIntercept方法拦截URL并跳转本地ArkTS页面;2) 通过相对路径直接跳转本地H5页面;3) 通过startAbility跳转系统应用页面;4) 类似方案3实现三方应用跳转。每种方案都包含ArkTS和HTML代码示例,核心是通过URL协议识别目标页面类型(如native://、hmos://),并调用相应API(router.pushUrl或startAbility)完成跳转,展示了在Web与原生应用
2025-07-13 19:08:05
434
原创 鸿蒙6.0开发常见问题【如何判断Web滑动到了顶部/底部,并且把滑动事件传递给页面?】
本文介绍了Web组件的[onOverScroll]事件判断滑动位置的方法,以及如何通过[nestedScroll]属性实现Web组件嵌套滚动。主要内容包括: yOffset值判断:小于0表示到达顶端,大于0表示到达底端 代码示例演示了将Web组件嵌入Scroll容器,使用nestedScroll控制滚动行为 提供了完整的ArkUI框架实现代码,包括Web组件配置和HTML内容示例 展示了嵌套滚动中SELF_FIRST模式的应用场景 该方案适用于需要在滚动容器中嵌入Web内容并实现协调滚动的场景。
2025-07-12 21:11:34
236
原创 鸿蒙6.0开发常见问题【Web组件如何访问本地的资源文件,并添加查询参数?】
本文介绍了在HarmonyOS开发中加载本地资源文件的方法。资源文件需存放在"src/main/resources/rawfile"目录下,通过$rawfile()访问。文章提供了使用ArkWeb模块Web组件加载HTML的示例代码,并展示了通过window.location.href实现页面跳转的技术方案。包含两个HTML文件示例:index.html实现自动跳转功能,details.html作为目标页面显示内容。这种方法解决了本地HTML页面间传递参数的问题,为开发者提供了实用的本地
2025-07-12 20:07:39
329
原创 鸿蒙6.0开发常见问题【Web组件对H5页面、常用框架VUE、React的页面支持情况,包括本地和网络端的页面?】
本文介绍了Web组件支持加载H5页面、Vue和React框架的方法。主要包含三种加载方式:1) 加载网络页面;2) 通过resource协议加载本地页面;3) 加载HTML文本数据。文中提供了详细的示例代码,包括Web组件初始化、控制器使用和不同加载方式的实现。加载Vue/React项目时需先打包,然后通过本地或网络页面加载。同时还包含了完整的本地HTML文件示例和HTML文本加载的实现方法。
2025-07-12 19:03:50
246
原创 鸿蒙6.0开发常见问题【如何控制只在Web组件第一次加载url的时候触发onPageBegin,onPageEnd?】
本文介绍了在鸿蒙应用开发中使用onAppear事件控制仅在首次加载URL时触发onPageBegin和onPageEnd的方法。通过设置isFirst标志位,代码示例展示了如何确保事件只在WebView首次出现时执行。文章还强调了系统学习鸿蒙开发技术的重要性,并提供了包含ArkTS、ArkUI组件、Stage模型等核心技术的详细学习路线图(1236页开发手册+视频教程),帮助开发者从基础到实战掌握鸿蒙应用与系统底层开发。随着鸿蒙生态快速发展,掌握鸿蒙开发技术将成为开发者的重要竞争力。
2025-07-11 21:53:20
326
原创 鸿蒙6.0开发常见问题【登录信息的cookie应该在什么时机注入?如何确保刚刚打开的web能注入登录信息cookie?】
摘要:本文展示了如何使用ArkWeb的webview.once()方法订阅一次性Web事件回调。示例代码在Web初始化完成后注入回调函数,利用WebCookieManager为指定域名设置cookie。同时提供了一个基础的Web组件实现,包含WebviewController的初始化和页面构建方法。该示例适用于需要一次性处理Web初始化事件的场景,并可通过Web组件加载指定网页。
2025-07-11 20:38:43
354
原创 鸿蒙6.0开发常见问题【多个Cookie如何进行批量设置 ?】
摘要:鸿蒙开发文档介绍了WebCookieManager的configCookieSync和configCookie方法,用于同步/异步设置Cookie。目前不支持批量设置,需多次调用。
2025-07-11 19:30:00
279
原创 鸿蒙6.0开发常见问题【通过网络请求而来的 Cookie 如何同步配置到web中】
本文介绍了如何利用ArkWeb的WebCookieManager实现Cookie同步与异步设置,包括configCookieSync和fetchCookieSync方法的使用示例。
2025-07-11 17:24:22
402
原创 鸿蒙6.0开发常见问题【注册的自定义字体在 webview 中无效?】
摘要 在OpenHarmony开发中,注册的自定义字体在webview中显示异常。解决方法是将字体文件置于rawfile目录,在H5中使用@font-face声明字体样式,并设置DOM元素的font-family属性。通过这种方式,webview能正确加载并显示自定义字体。示例代码展示了如何在H5页面中定义和应用字体样式,确保"猫啃忘形圆"字体在webview中正常渲染。该方法绕过了原生接口的限制,直接通过web标准实现字体加载。
2025-07-11 15:56:35
229
原创 鸿蒙6.0开发常见问题【WebView中,双向交互可以使用JSBridge技术,也可以使用端口通信技术,这两者有什么区别?】
摘要:对比WebMessagePort与JSBridge两种通信方式,WebMessagePort适合双向实时通信及大文件传输,JSBridge适用于函数调用场景无需持续通道。鸿蒙开发需系统学习ArkTS、分布式开发等核心技术,相关资料包含1236页手册及实战教程。随着鸿蒙生态扩张(预计年底5000款原生应用),掌握鸿蒙开发技术将迎来职业机遇。开发者可根据需求选择通信方案,并参考完整学习路线提升技能。
2025-07-11 14:49:10
328
原创 鸿蒙6.0开发常见问题【Web组件中如何通过手势滑动返回上一个Web页面?】
本文介绍了如何自定义onBackPress函数来实现WebView页面的返回控制。通过WebViewController的accessStep(-1)方法判断当前页面是否有历史记录可后退,若有则调用backward()返回上一个Web页面并执行自定义逻辑;若无则执行系统默认返回操作。代码示例展示了在ArkUI框架中如何实现这一功能,包括WebView的初始化和返回逻辑处理。该方法适用于需要控制WebView导航行为的场景,可有效管理Web页面与原生页面的返回流程。
2025-07-11 13:47:26
374
原创 鸿蒙6.0开发常见问题【onInterceptRequest拦截URL并自定义HTML文件,页面加载失败?】
鸿蒙开发拦截器问题解决方案 在鸿蒙开发中,使用onInterceptRequest拦截Web页面请求并返回自定义HTML时,若脚本未加载,需检查响应头设置。需配置setResponseEncoding、setResponseMimeType及setResponseHeader等参数,确保内核识别为HTML文件。示例代码展示了完整的拦截器配置,包括编码、MIME类型和HTTP状态码设置。 鸿蒙学习资源推荐:涵盖ArkTS、Stage模型、多端部署等核心技术,提供系统学习路径及实战手册,助力开发者高效转型鸿蒙开
2025-07-10 21:44:14
311
原创 鸿蒙6.0开发常见问题【在多模块工程中,如何获取har/hsp中的rawfile资源?】
摘要:本文介绍了在OpenHarmony中获取har和hsp模块资源的方法。har资源可通过@ohos.resourceManager直接获取,而hsp资源需要使用createModuleContext创建模块上下文后获取。示例代码展示了如何通过UIAbilityContext创建hsp上下文,并同步获取hsp.txt文件内容。该方法涉及资源管理模块和异常处理,适用于跨模块资源访问场景。
2025-07-10 20:40:37
101
原创 鸿蒙6.0开发常见问题【如何将文件转换成字符串?】
本文介绍了如何将鸿蒙应用中的rawfile文件内容解码为字符串的示例代码。主要步骤包括:1)获取resources/rawfile目录下的文件内容;2)使用util模块的TextDecoder将Uint8Array字节数组解码为字符串;3)还展示了Base64编码的同步处理方法。代码示例详细演示了如何通过按钮点击事件完成文件内容读取和解码操作,并包含错误处理逻辑。文章最后指出鸿蒙开发的学习资源稀缺,推荐了一份系统性的鸿蒙开发学习资料,包含ArkTS、ArkUI组件、Stage模型等核心技术点,并提供了鸿蒙开
2025-07-10 19:32:20
434
原创 鸿蒙6.0开发常见问题【如何使用实现汉字转拼音?】
摘要:介绍使用HarmonyOS的i18n模块将汉字转换为拼音的方法。通过Transliterator的transform()方法,可实现汉字转拼音(如"中国"转为"zhōng guó"),并支持去除声调输出基本字母形式(如"zhong guo")。代码示例展示了获取Transliterator实例及两种转换方式的使用。
2025-07-10 16:51:50
218
原创 鸿蒙6.0开发常见问题【如何选择文件保存路径?】
摘要: 本文展示了如何使用ArkTS获取媒体文件内容并转换为PixelMap。代码示例演示了通过getMediaContent获取资源文件的ArrayBuffer数据,然后使用createPixelMap方法将其转换为可编辑的PixelMap对象。示例包含完整的组件结构,包括按钮触发转换和结果显示区域。关键步骤包括获取媒体内容、配置PixelMap初始化选项(如像素格式和尺寸)以及异步创建PixelMap对象。该代码适用于需要处理图像数据的应用场景。
2025-07-10 15:51:29
80
原创 鸿蒙6.0开发常见问题【如何读取rawfile中的xml文件并转化为String类型?】
本文介绍了在鸿蒙应用开发中使用resourceManager获取XML数据并解码为字符串的方法。代码示例展示了如何通过getRawFileContent接口获取XML文件内容,并使用util工具集的TextDecoder将其转换为UTF-8字符串。该过程涉及错误处理机制,通过try-catc
2025-07-10 14:47:47
302
原创 鸿蒙6.0开发常见问题【如何选择文件保存路径?】
摘要:本文介绍了使用HarmonyOS开发框架中的SaveButton控件保存文件到媒体库的方法。通过PhotoAccessHelper创建资源文件,利用FileIo模块进行文件操作,实现将图片资源写入媒体库的功能。代码示例展示了完整的保存流程:获取上下文、创建资源文件、打开文件、写入数据并关闭文件,同时包含权限管理和错误处理机制。该方法适用于需要将应用内资源保存到用户媒体库的场景,提供了10秒内创建资源的权限窗口。
2025-07-10 13:46:33
84
原创 鸿蒙6.0开发常见问题【关于导入图片的使用权限和问题?】
摘要: 文章描述了在鸿蒙开发中导入图片并传递至C++代码的技术问题及解决方案。当前设备不支持C侧直接打开公共路径文件,需通过TS侧获取文件描述符(fd)后传递。提供了将文件保存至沙箱路径并操作fd的参考代码。最后强调鸿蒙开发的重要性,指出其作为国产操作系统的发展前景,并推荐包含ArkTS、分布式开发等核心技术的《鸿蒙NEXT开发文档》学习资料,帮助开发者系统掌握鸿蒙应用与底层开发技能。文末附学习路线图和技术文档领取方式。(149字)
2025-07-09 21:43:47
299
原创 鸿蒙6.0开发常见问题【base64字符串如何转为图片并保存?】
该代码展示了如何将Base64字符串转换为文件并存储在本地。通过buffer.from将Base64数据转为Buffer对象,再使用fileIo.writeSync写入文件系统。主要步骤包括:获取应用沙箱路径、处理Base64头信息、转换数据格式、同步写入文件并返回URI。代码还包含异常处理和日志记录功能,适用于在ArkTS环境中处理图像等Base64数据的存储需求。
2025-07-09 20:37:24
95
原创 鸿蒙6.0开发常见问题【如何创建临时文件?】
《鸿蒙NEXT开发学习指南》摘要(150字) 本文提供鸿蒙应用开发核心学习路径,包含: 技术栈:ArkTS语言、Stage模型、分布式开发等全栈知识点 资源包:1236页开发手册+实战视频+环境搭建指南 学习路线:从南向/北向开发到项目实战的体系化进阶方案 行业前景:分析鸿蒙替代安卓趋势及人才需求爆发现状 资料获取方式:文末提示完整学习资源领取途径 适用于Android/Java开发者转型或新手系统学习鸿蒙生态开发技术。(150字)
2025-07-09 19:34:59
341
原创 鸿蒙6.0开发常见问题【如何读取指定文件内容,并转为具体对象?】
摘要:本文展示了如何使用ArkTS的resourceManager.getRawFileContent()方法读取JSON文件内容。代码示例提供了两种实现方式:异步回调方式和同步方式,最终将文件内容转换为ESObject对象。示例包含完整的组件结构,通过按钮点击触发文件读取操作,并处理可能的异常情况。该代码适用于HarmonyOS应用开发中需要读取rawfile目录资源文件的场景。
2025-07-09 17:59:13
71
原创 鸿蒙6.0开发常见问题【获取指定文件系统的剩余空间大小?】
本文介绍了如何获取鸿蒙系统指定文件系统的剩余空间大小(以字节为单位)。通过使用@kit.CoreFileKit中的statfs.getFreeSize()方法,可以异步获取文件系统的空闲字节数。示例代码展示了在一个ArkUI组件中创建按钮,点击后获取应用文件目录的剩余空间,并将结果打印到控制台。同时提供了错误处理机制,当获取失败时会输出错误信息。该方法适用于需要监控存储空间的使用场景,如应用需要检查可用空间进行文件操作等。
2025-07-09 16:28:45
272
原创 鸿蒙6.0开发常见问题【如何将数据持续写入文件内?】
摘要:本文展示了如何在OpenHarmony中使用fs.write方法实现文件追加写入功能。通过WriteOptions.offset参数指定写入位置,结合fs.read获取当前文件偏移量,可在现有数据末尾继续写入新内容。示例代码演示了读取文件后追加写入字符串的过程,包括文件打开、读取、带偏移量写入以及异常处理等完整流程,适用于需要保持文件内容连续性的场景。
2025-07-09 15:05:07
335
原创 鸿蒙6.0开发常见问题【报错“the parameters check fails this is fail path”如何解决?】
摘要: 代码问题涉及鸿蒙文件上传功能,因路径协议不支持导致失败,需改用"internal"协议并存储到cache目录。同时文档推荐了系统性的鸿蒙学习资料,包含ArkTS、分布式开发等核心技术,以及鸿蒙开发路线图,强调鸿蒙作为国产操作系统的发展前景和人才需求。开发者可获取1236页手册及视频教程进行系统学习。
2025-07-09 13:50:23
349
原创 鸿蒙6.0开发常见问题【如何获取到 resources下rawfile 的文件?】
本文展示了一个鸿蒙应用开发示例,演示如何读取资源文件并写入沙盒路径。代码通过resourceManager获取原始文件内容,使用fileIo模块将数据写入指定路径。同时文章指出鸿蒙开发学习资料稀缺,推荐了一份系统性的鸿蒙开发学习文档(包含ArkTS、分布式开发等核心技术),并强调鸿蒙作为国家重点发展的操作系统,人才需求将大幅增长,学习鸿蒙开发具有重要战略意义。文末提供了鸿蒙学习路线图和资料获取方式。
2025-07-08 22:17:48
425
原创 鸿蒙6.0开发常见问题【如何从一个二进制文件中读取其字节数组?通过fs.createStreamSync只能获取到ArrayBuffer,如何转成numb?】
该代码展示了一个ArkTS组件实现ArrayBuffer到数组的转换。组件创建时(aboutToAppear),会初始化指定长度的ArrayBuffer,通过DataView读取数据并存入临时数组(tempData),最终在UI(Text组件)中显示数组内容。布局使用RelativeContainer居中显示文本,字体大小为50且加粗。该示例演示了二进制数据(ArrayBuffer)的处理和界面渲染的基本流程,适用于需要处理二进制数据的移动应用场景。
2025-07-08 20:37:49
102
原创 鸿蒙6.0开发常见问题【如何校验文件一致性?】
摘要:本文介绍了使用MD5哈希算法校验文件一致性的方法,通过计算文件的MD5值进行比对。代码示例展示了如何在ArkTS环境中实现文件MD5计算:打开文件后分块读取数据,使用cryptoFramework模块的MD5算法处理数据块,最后输出十六进制格式的哈希值。这种方法适用于验证文件传输或存储过程中的完整性,确保文件未被篡改。
2025-07-08 19:30:27
87
原创 鸿蒙6.0开发常见问题【如何存储文件才不会跟随app卸载而删除?】
本文介绍了在OpenHarmony系统中保存用户文件的解决方案,建议将文件存储在公共目录以避免应用卸载时被删除。文章提供了使用@ohos.file.picker模块保存文件的参考代码示例,展示了如何创建文件并写入内容。最后强调鸿蒙开发的重要性,指出鸿蒙作为国产操作系统的发展机遇,并提供了鸿蒙开发学习资料和路线图,包括技术文档、视频教程等资源,帮助开发者系统性地学习鸿蒙应用开发与系统底层开发技术。
2025-07-08 16:56:19
259
原创 鸿蒙6.0开发常见问题【如何保存faultLogger?】
本文介绍了鸿蒙(HarmonyOS)开发中的日志处理工具类,通过代码示例展示了如何查询和上传故障日志。文章还指出鸿蒙作为国产操作系统的重要地位,并提供了系统性的鸿蒙学习资料,包括开发文档、视频教程和技术路线图,涵盖从基础到实战的各类技术点。随着鸿蒙生态快速发展,掌握相关技术将为开发者带来广阔的职业机会。文末提供了获取完整学习资料的途径。
2025-07-08 15:50:27
346
原创 鸿蒙6.0开发常见问题【如何根据fd对应的mode来判断是否有对应的操作权限?】
摘要 在使用 fs.open 打开文件后,通过 fs.stat 获取的 mode 值(如 432/八进制660)反映的是文件本身的权限而非打开模式。开发者误将其用于判断文件操作权限,但实际应直接使用用户已知的打开模式参数。系统不提供获取文件打开方式的接口,建议开发者自行维护打开模式信息,或通过其他方式验证操作权限。需注意区分文件权限(mode)与应用程序的操作权限逻辑。
2025-07-08 14:39:40
121
原创 鸿蒙6.0开发常见问题【怎么获取应用已使用的缓存大小,如何使用API清理缓存?】
本文介绍了在OpenHarmony系统中管理应用缓存的方法,包括获取缓存大小和清理缓存的操作步骤。通过调用storageStatistics和fileIo接口,开发者可以获取当前应用的缓存数据并执行清理操作。文章提供了完整的代码示例,展示了如何写入测试文件、获取缓存统计信息以及递归删除缓存目录内容。此外,还推荐了系统的鸿蒙开发学习资料,包含从基础到实战的全面内容,帮助开发者掌握鸿蒙应用与系统开发的核心技术。
2025-07-08 13:39:53
328
原创 鸿蒙6.0开发常见问题【如何修改沙箱路径下json文件的指定内容?】
鸿蒙文件操作示例与学习路线 摘要:本文展示了鸿蒙系统(OpenHarmony)中通过fileIo模块进行JSON文件读写操作的代码示例,包括创建、读取、修改和保存文件内容。同时提供了鸿蒙开发的学习路线建议,包含ArkTS、Stage模型、分布式开发等核心技术点。针对开发者转型鸿蒙的需求,推荐了包含1236页开发手册、实战指南和白皮书在内的系统学习资料,强调鸿蒙作为国产操作系统的发展前景和人才需求机遇。
2025-07-07 22:07:41
356
原创 鸿蒙6.0开发常见问题【如何解决文件的中文乱码问题?】
该代码片段展示了如何使用ArkTS读取和解码文件内容。首先创建/打开文件并写入"Hello, world"内容,然后通过createStreamSync读取数据到ArrayBuffer。使用TextDecoder将二进制数据解码为UTF-8格式的字符串,ignoreBOM参数忽略字节顺序标记。最后输出解码后的文件内容。整个过程涵盖了文件操作、二进制数据处理和字符编码转换等关键步骤。
2025-07-07 20:47:27
123
原创 鸿蒙6.0开发常见问题【ValuesBucket是否有可动态添加字段的方式?】
摘要: 本文介绍了鸿蒙(Harmony NEXT)开发的技术要点与学习资源。首先展示ValuesBucket的实现与动态字段添加方法,随后强调系统性学习的重要性。文中推荐了由阿里工程师编写的《鸿蒙NEXT开发文档》,涵盖ArkTS、分布式开发等核心技术,并提供了学习路线图与1236页手册。鸿蒙作为国产操作系统,高校与企业正积极布局,未来人才需求巨大,学习鸿蒙势在必行。
2025-07-07 19:30:24
402
原创 鸿蒙6.0开发常见问题【跨模块、跨进程时如何保证正常读取首选项中数据?】
摘要:针对跨模块和多进程场景下的数据访问问题,提出两种解决方案。跨模块场景建议在EntryAbility中使用单例类存储全局context,或采用应用级context。跨进程场景则指出只有同沙箱进程才能访问同一preference文件,可通过dataGroupId实现多进程间的preference文件共享。两种方案分别解决了不同场景下的数据访问限制问题。
2025-07-07 17:22:45
83
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人