鸿蒙篇——初次使用鸿蒙原生编译器DevEcoStudio创建一个鸿蒙原生应用遇到的坑--汇总(持续更新)

news/2024/11/9 10:09:46/

前言:欢迎各位鸿蒙初学者、开发者来本帖交流讨论,包含各位遇到的问题、鸿蒙的bug、解决方法等等,我会收集有效的内容更新到本文章中。

背景:2023年12月13日,使用DevEcoStudio 4.0.0.600版本,项目的compileSdkVersion是8。

一.提示类似于ohpm ERROR: NOTFOUND package "@ohos/hypium" not found from all the registries或者npm ERR! 404 '@ohos/hvigor@3.0.9' is not in this registry.的错误。

1.这里存在的第一个问题,无论怎么按照官方文档设置ohpm 和 npm的仓库(registry)都无法正常下载ohos下的hypium、hvigor等组件。这种情况下很有可能是权限问题,点击新建项目,如果新建项目的窗口黑屏,没有任何东西,那么就是没有用管理员权限运行DevEcoStudio。关闭DevEcoStudio,然后右键以管理员身份运行(为了一劳永逸,右键DevEcoStudio的快捷方式--属性--兼容性,勾选以管理员身份运行)。 重新进入DevEcoStudio后,发现新建项目窗口已经能够正常显示出内容了,并且重新构建工程,能够正常安装ohos相关的组件了。

2.这里存在的第二个问题,在问题一已经解决的情况下,运行程序的时候,提示hypium相关的错误,报错内容包含‘node_modules\@ohos\hypium\src\main\module.json5 ......’,这个通过多次验证,发现是hypinum版本的问题。新建项目给的hypinum的默认版本为1.0.11,试过几个版本,发现1.0.6版本运行正常

二.在设备管理器里面选择远程设备(环境为api=8,和我的工程一样)时,运行工程会提示Failure[INSTALL_FAILED_NO_BUNDLE_SIGNATURE] Open signing configs $ hdc shell rm -rf /sdcard/c18816c72e154e218df5022e2709ad4a Error while Deploying HAP的错误

1.问题1:尝试了自动签名和手动签名均无法运行,暂未找到原因(后续如果找到原因和解决版本会进行更新)。退而求其次,选择了远程模拟器,同样是api=8,发现可以自动签名并运行

2.问题2:在遇到问题1时,选择远程设备因为签名的原因无法运行,此时就想通过查看预览器来预览自己的代码效果,发现预览器无法使用,一点击预览器就自动关闭,并提示错误【当前项目同步失败,选择文件>同步和刷新项目,同步成功之后再启动预览】。这个时候按照它的提示,进行同步和刷新项目,提示同步和刷新项目完成,但是!!预览器还是闪退。于是选择远程模拟器成功运行一次程序之后,预览器恢复正常使用

交流区:

目前遇到其他的未解决的坑:

1.有时预览器会黑屏。

2.真机、远程真机调试无法签名安装。

3.有时点击签名配置界面Open signing configs,窗口出来之后,窗口内无任何内容。

4.本地模拟器无法启动(新建模拟器后,启动开始时提示需要安装Haxm,点击确定进行安装,然后提示推荐使用16GB及以上内存PC,最后模拟器窗口出来的时候,提示“模拟器启动失败,查看处理指导”,根据处理指导进行处理,仍然无法启动,和一开始一样)

当前阶段评价:国产系统生态建立任重而道远!资料真的太少,bug真的太多,槽点很多!

展望:希望鸿蒙系统能够在众多开发者的共同努力下变得更加成熟,让开发者能够少踩一些坑。


http://www.ppmy.cn/news/1272473.html

相关文章

springMVC-@RequestMapping

基本介绍 RequestMapping注解可以指定控制器/处理器的某个方法的请求的url, 示例 (结合springMVC基本原理理解) Controller public class UserHandler {RequestMapping(value "/login")public String login() {System.out.println("登…

《Kotlin核心编程》笔记:反射、注解和加锁

Kotlin 和 Java 反射 1)Kotlin 的 KClass 和 Java 的 Class 可以看作同一个含义的类型,并且可以通过.java和.kotlin方法在KClass和Class之间互相转化。2)Kotlin 的 KCallable 和 Java 的 AccessiableObject 都可以理解为可调用元素。Java 中构…

centos 修改账号密码

root用户修改 对于root用户来说&#xff0c;可以直接修改其他用户的密码&#xff1a; passwd <user_name> <密码> 此时会提示你输入密码&#xff0c;密码位数要大于7位&#xff0c;不能太简单。 普通用户修改 当前用户的密码修改&#xff0c;使用 passwd 命令可…

Java----冒泡排序、选择排序、插入排序、快速排序、堆排序

int[] arr {4, 2, 7, 1, 5, 9, 3, 6, 8}; 冒泡排序 for(int i 0; i < arr.length-1; i) //外循环是控制排序的次数n-1, 每次循环结束确定一个最大值{for(int j 0; j < arr.length - 1 - i; j) // 内循环是第i次循环中比较的次数n-i{if(arr[j] > arr[j1]){//前面一…

[论文笔记] 大模型主流Benchmark测试集介绍

自然语言处理(NLP)的进步往往通过在各种benchmark测试集上的表现来衡量。随着多语言和跨语言NLP研究的兴起,越来越多的多语言测试集被提出以评估模型在不同语言和文化背景下的泛化能力。在这篇文章中,我们将介绍几个主流的多语言NLP benchmark测试集,包括ARC Challenge、H…

微服务学习:Nacos配置中心

先打开Nacos&#xff08;详见微服务学习&#xff1a;Nacos微服务架构中的服务注册、服务发现和动态配置&Nacos下载&#xff09; 1.环境隔离&#xff1a; 新建命名空间&#xff1a; 记住命名空间ID&#xff1a; c82496fb-237f-47f7-91ed-288a53a63324 再配置 就可达成环…

FMETP STREAM 2.0

FMETPSTREAM简化了Unity3D中的直播,无需编码。设置和测试仅需5分钟。 "编码器模块"将Unity游戏视图、网络摄像头、桌面、声音和麦克风输入转换为字节数据,使其完美适用于各种流媒体场景。 优化的网络模块支持Server-clients连接类型,并允许您使用单个命令向 Serve…

vue3使用Mars3D写区块地图

效果图 引入相关文件 因为我也是第一次使用&#xff0c;所以我是把插件和源文件都引入了&#xff0c;能使用启动 源文件 下载地址&#xff1a; http://mars3d.cn/download.html 放入位置 在index.html中引入 <!--引入cesium基础lib--><link href"/static/C…