1、如何获取系统时间戳
A:可以通过systemDateTime.getTime()方法获取当前的系统时间和时区。
2、使用zip模块解压文件,解压接口返回解压成功,进入设备查看解压路径未找到解压后的文件
A:使用的文件管理file.fs.copyfile接口拷贝项目/resource/rawfile/文件到设备后,与源文件不一致导致的解压失败。可以通过getRawFileContent接口拿到uint8array,然后转arraybuffer,用file.fs.write写进设备中。具体可参考如下代码:
import { BusinessError } from '@kit.BasicServicesKit'; try { this.context.resourceManager.getRawFileContent("test.txt").then((value: Uint8Array) => { let rawFile = value; let buffer: ArrayBuffer = rawFile.buffer.slice(0); }).catch((error: BusinessError) => { console.error("getRawFileContent promise error is " + error); }); } catch (error) { }
3、HarmonyOS应用的安全性如何?是否可能被逆向分析?
A:HarmonyOS反编译安全性当前提供基础的应用加固安全能力,包括混淆、加密和代码签名能力,保护代码反编译和反调试。高级混淆暂不提供,由三方支持。
4、HAP包中的“--Begin Certificate--”是什么格式的数据
A:证书签名时,支持DER和PEM的格式,“--Begin Certificate--”是DER格式的数据,可以直接使用。
5、C/C++是否提供有OpenSSL库
A:C/C++没有OpenSSL的接口,ArkTS提供的有JS OpenSSL的接口。
6、是否支持获取用户手机上所有的App列表
A:不支持获取设备所有App信息。
7、eventId一样时,Emitter多次调用on是否能注册多个回调?
A:针对同一个eventid多次注册订阅时,若关联的回调对象为同一个,则只会生效第一次注册的回调对象,若关联的回调对象不同,则多个回调对象均生效,由on的顺序决定回调顺序,同时off注销时,eventid与回调对象需配对,否则回调注销失败。
8、HarmonyOS软件需要加壳吗
A:官方不提供加壳功能;HarmonyOS有应用加密功能,本身会对所有的abc、so文件进行加密,一定程度上可以替代加壳,因此不需要再加壳了。
9、系统设置里应用的权限设置只展示应用申请过的权限
A:该特性是系统规格,只有在调用requestPermissionsFromUser这个接口,并且用户选择是否授予权限之后,才会在应用详情页显示该权限开关。该设计特性考量:这个可以让用户看到一个更干净的权限管理页面,一个用户从来没有打开过的应用,进入应用详情页面却有一大堆权限,用户也会不大理解。
10、如何获取系统时间,并且在切换时区时,时间戳一直保持北京时间
A:使用systemDateTime.getTime()可以获取自Unix纪元以来经过的时间。getTime获取的是Unix时间戳,Unix时间戳和时区无关,在任何时区返回的值都是一致的。
11、上传文件的uploadConfig中,internal开头的路径是否可以换成其他路径
A:internal对应在cache目录下,当前只支持上传应用自己沙箱路径的文件,暂不支持uri。
12、request.downloadFile 使用报错, err number = 8属于什么问题
A:目前err num=8表示未知错误,更多错误码详情请参见错误码。
更多详情查看: