鸿蒙api和sdk匹配关系:
网站建设哪家好,找创新互联!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了托里免费建站欢迎大家使用!
1、需同时获取HarmonyOSSDK与OpenHarmonySDK配套使用。
2、配套JS/eTSSDK、NativeSDK,推荐使用JS/eTS进行应用开发。
3、OpenHarmonySDK新增APIVersion8Release接口。
参考 鸿蒙官方文档(点击传送门) ,做一下流程梳理简化,及踩坑记录
华为将真机调试分成物理真机和远程真机。这里说的都是物理真机(手机、平板)。鸿蒙真机调试巨复杂,不像Android那么容易方便。
贴一下官方的调试流程图:
总结一下:
上面这个流程可以忽略,没讲到重点。真机调试是需要在 AppGallery Connect 中创建应用的,调试应用需要的cer和p7b文件是从这里生成的。
先决条件:
1. 鸿蒙手机通过USB连接电脑,并开启USB调试。
2. 一个华为开发者账号,实名认证
3. APP开发工具DevEco-Studio
关键流程:
1. Studio创建应用
2. 如果未登录过,File Project Structure Project Signing Configs签名配置页,点击“Sign In”
3. AppGallery创建应用(包名和Studio创建的一样)
4. 官方文档到这在签名配置页就点Try Again可以自动签名,我试了不行,以下全是手动
5. Studio中Build Generate key and CSR 生成p12和csr文件
6. 获取手机udid,命令行hdc shell bm get -udid(下一步设备管理要用)
7. AppGallery主页 用户与访问 左侧设备管理添加udid的设备(生成p7b时要用)
8. AppGallery主页 用户与访问 左侧证书管理生成cer文件(生成p7b和签名配置要用)
9. AppGallery主页 我的项目 左侧HarmonyOS应用 HAP provision profile,生成p7b文件
10. 最后在签名配置页配好 p12、p7b、cer等参数,运行鸿蒙应用到真机就行了
议 题一 : 申请新建开源仓:third_party_cef—李征
结论:
同意新建third_party_cef仓,基于Chromium Embedded Framework (CEF)构建webview
议题二:申请新建开源仓:sfc—马尔利
结论:
线下与架构讨论并输出纪要并闭环
议题三:申请新建开源仓:ArkAsm—王帅
结论:
同意先建立孵化仓,待产品成熟后再考虑合入主干仓。
需要额外关注问题:
1.关注交互性能问题。
2.注意外部社区吸收,可能遇到的冲突等。
议题四:accessibility申请孵化毕业—赖癸仲
结论:
同意准出
遗留问题:要确认代码移除无需交付的对外接口,只提供内部子系统依赖接口,确认已完成整改后并入主线。
额外问题:后续版本要补充隐私问题的功能设计,找隐私、UX细化具体要求(该遗留问题不影响此次准出)。
议题五:新建SIG仓applications_filepicker—陈佳乐
结论:
同意建仓
遗留问题:应用1选择文件后私发给应用2如何控制;是否对每个拉起文件选择器选择的文件生成的uri都是唯一的,且仅改应用可用 ?
遗留问题答复: uri在被使用的时候有权限校验的;应用1发给应用2的是uri, uri都是只能通过helper打开的, 那应用2的helper拉起mediaLib的时候应该会进行MEDIA_RW权限校验
议题六:新建SIG仓:vendor_bananapi、device_board_bananapi—张韬庚
结论:
同意建仓
在sig上建立vendor_bananapi与device_board_bananapi代码仓
议题七:新建sig仓tee_client、tee_os、tee_tzdriver、tee_dev_kit.—张德耀
结论:
1.tee_os rom和ram填实际大小,占用内存不包含ta,占用rom为实际镜像占用大小。
2.tee_os运行框架和内核是否分开,需要评估一下。
闭环结论:
1. teeos rom和ram内存修改为只表示teeos系统运行时需要的内存,后续各产品使能tee,给tee系统配置安全内存和镜像分区大小时,还需要考虑该产品所包含的所有安全业务(TA/驱动/服务等)占用的大小。
2.tee_os部件拆分为两个部件:tee_os_kernel(rom: 2048KB ram: 8192KB), tee_os_framework(rom: 4096KB ram: 20480KB)
议题八:申请新建仓interface_native_h—时睿
结论:
同意新建interface_native_h仓,用于维护对外开放接口的.h文件。如会议汇报,该仓用于规范化.h文件中注释的写作、评审、翻译流程,同时需通过工具进行一致性校验,保证代码仓与API文档一致性。
在学习HarmonyOS的开发中,遇到TextField输入框被软键盘遮住的问题网上查找了一些解决方案,虽然效果也能达到,但是解决思路不正确,简单问题复杂化了,这里记录一下我发现的解决方法。
理论上软键盘与输入框应该是常用功能,不应该让用户自己去计算组件高度,监控软键盘是否弹出,所以按照Android的思路也应该有全局设置方法。
Android 解决方法
跟着这个思路去查询鸿蒙开发文档,找到了两个类似的属性和方法:
WindowManager.LayoutConfig里面的 INPUT_ADJUST_RESIZE
和Window里面的 setInputPanelDisplayType()
经过多次尝试,终于找到设置软键盘自适应的正确方法,在onStart()函数中设置:
解决问题的思路和方向一定要正确
我们做为程序员,日志打印是日常必备工具,见下面几种语言的打印日志
所以在HarmonyOS 开发中也是要熟悉打印日志的,官方文档对日志系统的介绍
官方日志示例如下
其中打印语句如下,
细心的你,你肯定发现了,有一个参数 LABEL ,这个参数是在最前面定义的,如下
其中第一个参数基本是固定的 HiLog.LOG_APP ,第二个,第三个参数,我们可以自定义的, 后面会使用它们作为过滤来筛选日志
在我们开发中,到处都需要使用到打印,如果像官方示例一样,在每一个需要使用的地方,都先定义一个LEBAL,然后再去调用,这样就不太方便了, 也就是说我们有100个不界面,每个界面都需要先定义一下LEBAL,然后再去使用,这样就比较麻烦了, 因此我们需要对HiLog进行封装,封装成一个工具类,方便整个项目后面的使用
现在我们来解释一下
上图中的LABEL,我们在上前面已经讲过了,这里不在赘述了.我们看一下 flag ,这个参数用来标记,如果是开发阶段,就置为fasle,让其能正常输出日志, 如果是生产阶段(产品上线),就置为true,让其不能输出日志
效果如下:
看到这里的小伙们,或者觉得文章对你有点帮助的话,请点赞加关注喽,您的反馈就是我们前进的动力。后续会分享更多关于鸿蒙开发(HarmonyOS)的干货。谢谢~~
售后响应及时
7×24小时客服热线数据备份
更安全、更高效、更稳定价格公道精准
项目经理精准报价不弄虚作假合作无风险
重合同讲信誉,无效全额退款