-
鸿蒙收集
目录 报错收集 三方库报错 其它报错收集 参考文档:HarmonyOS_Next 星河版迁移报错记录版本适配报错安装HAP时提示“compatibleSdkVersion and releaseType of the app do not match the apiVersion and releaseType on the device.”问题现象在启动调试或运行应用/服务时,安装HAP出现错误,提示“compatibleSdkVersion and releaseType of...…
-
待整理
目录 待整理 待整理2 待整理3待整理一、在原生端实现H5页面长按下载图片的功能js注入实现: 注入一段js代码,这段代码监控长按事件 检测到长按的元素是IMG时,通过jsbridge调用原生回调将url传回原生 原生回调内下载图片并保存到本地- (void)addLongPressSaveImgForXiaoC:(WKWebViewConfiguration*)configuration {// NSString *scriptSource = @"\// ...…
-
Configuration处理
目录 Json处理Sync failedCause: The project structure and configuration require an upgrade. Solution: 1 Use Migrate Assistant to auto-upgrade the project structure and configuration. 2 Manually upgrade the project structure and configurati...…
-
Json处理
目录 Json处理 map转json字符串Json处理 官方文档:@ohos.util.json (JSON解析与生成)map转json字符串 官方文档:如何将Map转换为JSON字符串可以将Map转成Record后,再通过JSON.stringify()转为JSON字符串。示例如下:let mapSource = new Map<string, string>(); mapSource.set('name', 'name1'); mapSource.set('widt...…
-
Date
目录 获取时间戳 时间格式化获取时间戳使用同步方式获取自Unix纪元以来经过的时间。import { BusinessError } from '@kit.BasicServicesKit';try { let time = systemDateTime.getTime(true)} catch(e) { let error = e as BusinessError; console.info(`Failed to get time. message: ${error.messa...…
-
AES实现
官方文档:加解密目录 AES介绍 代码实现AES介绍一、介绍AES是块加密,秘钥长度可变,有128/192/256三种长度,有ECB和CBC两种工作模式。需要注意的是:AES的块大小始终是128位(16字节),这是AES标准的一部分。虽然AES支持不同长度的密钥(128位、192位和256位),但块大小始终是128位。二、填充模式1、PKCS7PaddingAES是块加密,当最后一组无法对齐时就需要进行填充,以块128位(16字节)的块大小加密为例。 假如最后一个数...…
-
安全与发布
-参考文章1:安全目录 安全 发布安全一、应用隐私保护1、使用隐私声明获取用户同意2、减少应用的位置信息访问权限 模糊定位、精确定位 使用LocationButton获取位置信息3、减少使用存储权限 存储权限:app就可以偷偷的分析用户的文件和图片 Picker选择器选择图片,避免过量授权4、动态申请敏感权限 合理的权限范围 最小化权限申请 明确解释权限用途二、应用数据安全1、风险等级划分 设备等级划分:el...…
-
防截屏
-参考文章1:应用权限列表 -参考文章2:如何声明权限 -参考文章3:window.getLastWindow目录 原理 使用原理先申请权限在下面文件中添加权限 /df-flutter/ohos/entry/src/main/module.json5{"name": "ohos.permission.PRIVACY_WINDOW","reason": "$string:get_oaid","usedScene": { "abilities": [], "when"...…
-
31 鸿蒙安装Charles证书
目录 安装步骤 另一种安装方法安装步骤1、打开电脑端的Charles软件,并用鸿蒙手机设置好代理2、用鸿蒙手机访问下载Charles证书的网站 http://chls.pro/sslCharles会开启一个服务,手机要想正确解密https的报文,就需要这个服务器提供的证书3、将证书下载到指定的目录下在手机浏览器的下载列表内,打开下载的证书 -> 分享 - 复制 -> 打开文件管理器会弹出粘贴提醒 -> 粘贴到下载目录内4、运行下面指令,会打开证书管理APP(只能指...…
-
30 鸿蒙与Flutter
目录 介绍 编译运行 已经解决报错 未解决报错介绍一、flutter_flutter项目点击查看flutter_flutter项目由于Flutter官方并没有支持HarmonyOS,所以鸿蒙团队从Flutter的官方分支,分叉出一个分支进行HarmonyOS系统支持该仓库是基于Flutter SDK对于OpenHarmony平台的兼容拓展,可支持IDE或者终端使用Flutter Tools指令编译和构建OpenHarmony应用程序。现在工程使用的flutter_flutter项目...…
-
6 数据库
官方文档:通过关系型数据库实现数据持久化 官方文档:@ohos.data.relationalStore (关系型数据库)目录 数据库的一些重要概念 鸿蒙数据库数据库的一些重要概念SQLite 中有几个重要的概念,它们对于理解和有效使用 SQLite 数据库至关重要:1、数据库 (Database): 数据库是一个文件,其中包含一个或多个相关表的集合。在 SQLite 中,一个数据库通常对应一个文件,并且所有的表格和数据都存储在这个文件中。2、表格 (Table): 表格是数据...…
-
3 Flex
官方文档:Flex组件 官方文档:Flex布局目录 Flex组件 Flex布局 Row ColumnFlex组件以弹性方式布局子组件的容器组件。 可以包含子组件。接口 Flex(value?: FlexOptions)FlexOptions对象说明direction : FlexDirectionwrap : FlexWrapjustifyContent : FlexAlignalignItems : ItemAlignalignContent : FlexAlign示例代...…
-
鸿蒙web
目录 如何加载H5 遇到的问题如何加载H5遇到的问题在鸿蒙加载H5页面时,先登录何云的账号,打开邮箱(H5页面),退出后再登录的是limi的账号,打开邮箱(H5页面)显示的却是heyun的邮箱。同样的操作流程在苹果手机显示正常,在limi的账号下通过抓查看url,两个手机加载的url一模一样,querry参数也一模一样。原因: 经过排查,鸿蒙手机在heyun账号下和limi的账号下加载url时上送的cookie中session对应的value一样, 也就是说切换账号后sess...…
-
组件
Harmony自习室 - 鸿蒙UI开发快速入门 —— part02: 组件开发目录 Build函数Build函数一、介绍build()函数是所有UI组件开发都需要实现的方法,它主要负责对UI的描述定义,build()函数需要遵循一些规则,如下所述:@Entry 装饰的组件,其build()函数下的根节点唯一且必要,且必须为容器组件。@Components装饰的自定义组件,其build()函数下的根节点唯一且必要,可为非容器组件。两者中的ForEach禁止作为根节点。二、注意点buil...…
-
应用级状态管理
目录 LocalStorage 页面级UI状态存储 AppStorage 应用级UI状态存储 PersistentStorage:持久化存储UI状态 Environment:设备环境查询LocalStorage 页面级UI状态存储LocalStorage是ArkTS为构建页面级别状态变量提供存储的内存内的“数据库”。应用程序可以创建多个LocalStorage实例,LocalStorage实例可以在页面内共享,也可以通过getSharedLocalStorage接口,实现跨页面、跨...…
-
装饰器和UI描述
官方文档:管理组件拥有的状态 Harmony自习室 - 鸿蒙UI开发快速入门 —— part01: 装饰器&UI描述目录 @Entry装饰器 @Component装饰器:自定义组件 @Builder/@BuilderParam @Styles/@Extend @State装饰器:组件内状态 @Prop和@Link @Provide和@Consume @Observed和@ObjectLink LocalStorage和AppStorage UI描述学习UI...…
-
数据类型
目录 介绍介绍boolean类型// boolean类型Button('boolean类型').onClick(()=>{ const isBool: boolean = true console.log('lxy:this is',isBool)})number类型// number类型:整数和浮点都是number类型Button('number类型').onClick(()=>{ const a:number = 10 console.log('l...…
-
路由
目录 路由介绍 使用示例路由介绍使用示例在跳转目标模块的配置文件module.json5添加路由表配置:{"module" : { "routerMap": "$profile:route_map"}}路由映射表的路径ohos/entry/src/main/resources/base/profile/route_map.json路由映射关系{ "routerMap": [ { "name": "/modules/foundersc/about", "pa...…
-
生命周期
UIAbility组件生命周期 Harmony自习室 - 鸿蒙UI开发快速入门 —— part03: 组件的生命周期 官网:UIAbility组件生命周期 官网:页面和自定义组件生命周期目录 UIAbility组件生命周期 WindowStage生命周期 页面生命周期函数UIAbility组件生命周期当用户打开、切换和返回到应用时,应用中的UIAbility实例会在其生命周期的不同状态之间转换。 UIAbility的生命周期包括Create、Foreground、Backg...…
-
版本及适配介绍
应用兼容性说明目录 版本说明 适配版本说明一、在应用工程内,有如下参数配置与SDK版本相关: SDK版本属性 app.json5配置项 build-profile.json5配置项 说明 编译工程时的SDK版本 targetAPIVersion compileSdkVersion 取值默认为DevEco Studio内置的SDK版本。无需配置,如果配置,只能配置为当前...…