【HarmonyOS NEXT】FAQ之应用框架(程序框架7)

1、如何获取设备上安装的应用列表数据

A:不允许查询设备应用列表数据,相关权限无法申请。

2、权限申请被拒绝后,再次申请权限,是否出现申请权限弹窗

A:通过设置页关闭权限后,再次申请该权限不会再次弹窗,返回值为-1。对于申请授权的返回值请参见:PermissionRequestResult

3、用户更新app后是否还会弹出权限申请弹窗

A:应用在应用市场更新后,之前已经申请的用户授权的权限,不会再次弹框。

4、请求精准定位权限申请注意事项

A:精确定位不可以单独申请,要先申请模糊定位权限后再去申请精确定位权限,而且对于精确定位权限申请的时候,必须和模糊定位权限一起申请。

5、如何判断当前应用程序是Debug包还是Release包

A:在编译构建时,Hvigor会生成BuildProfile类,可以通过该类在运行时获取编译构建参数,BuildProfile.BUILD_MODE_NAME即为编译模式。

6、UIAbility在内存不足的情况下是否会回收,若回收是否支持页面栈恢复?

A:当前系统还不支持页面栈恢复。

7、关于通过ResourceManager获取RawFile路径下的文件的问题

A:获取的是文件流,如果想要获取fd可以使用getRawFd。

可以通过getRawFileList获取文件夹下的所有文件。

8、HarmonyOS提供了两种页面加载方式,两者有何区别,怎么选择?
  1. page和page之间进行跳转速度更快。

  2. ability对内存会有一定消耗。

  3. ability实例对应一个任务实例,如果有多个ability的话,最近任务列表中也会看到多个任务。

A:基于上述三点,一般情况下推荐应用使用page去实现不同的页面和功能;涉及到不同模块需要做较大的功能区分的话,才推荐使用ability。

9、如何跨HSP包调用rawfile目录下的文件

A:建议通过导出资源的方式给另外一个模块使用,详见参考资料中的“导出HSP中的资源”。

10、HarmonyOS的服务为什么以进程的形式存在,而不是放在system server里面?

A:服务可以通过进程或线程承载。比起线程,进程方式虽然通信开销较大,但是承载内存独立、更安全、解耦性也好。

11、如何获取应用包的签名指纹信息,即“.p12文件”信息

A:建议通过IDE自动化签名后,在.p12文件右侧有个指纹按钮进行复制获取。

12、频繁调用createModuleContext读取跨包资源导致卡顿问题

A:createModuleContext涉及多次包信息查询、以及加载指定module的全部资源,本身就是时延较大的接口。如果需要多次使用,最好缓存context,避免反复创建。建议使用者在第一次初始化时,将context保存起来,直接初始化保存的context去获取对应的资源。

13、使用发布证书进行调试时出现安装错误: Install Failed: error: failed to install bundle.

A:应用市场发布的发布证书,无法通过非应用市场渠道安装,如果需要测试发布证书应用,请使用AGC->开放式测试

更多详情查看:文档中心

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值