通过resourceManager.getStringResource接口获取HSP资源文件报“Resource id invalid”错误

​通过this.resourceManager.getStringResource($r('app.string.PlayCount').id)获取hsp资源文件报错:

Error message:Resource id invalid

Error code:9001001

SourceCode:returnResource = this.context.resourceManager.getStringSync(id);

HarmonyOS
2024-03-17 11:50:16
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
LenZhong

未创建对应的context,传入的是一个不存在的id值。

根据模块名创建上下文Context:

let moduleContext = this.context.createModuleContext('entry');

然后通过getStringByNameSync获取指定资源名称对应的字符串,使用同步方式返回字符串。

import { BusinessError } from '@kit.BasicServicesKit'; 
 
try { 
  this.context.resourceManager.getStringByNameSync("test"); 
} catch (error) { 
  let code = (error as BusinessError).code; 
  let message = (error as BusinessError).message; 
  console.error(`getStringByNameSync failed, error code: ${code}, message: ${message}.`); 
}

已于2024-3-26 15:19:38修改
分享
微博
QQ
微信
回复
2024-03-17 21:43:11
相关问题
如何获取HSP资源文件
262浏览 • 1回复 待解决
如何通过资源ID拿到对应资源
5450浏览 • 3回复 待解决
鸿蒙如何获取资源文件种的路径
13728浏览 • 3回复 待解决
鸿蒙资源id哪里获取
4338浏览 • 1回复 待解决
如何动态根据资源获取资源id
6675浏览 • 1回复 已解决
ArkTS如何自定义资源文件
311浏览 • 1回复 待解决
自定义资源文件怎么读取?
261浏览 • 1回复 待解决
鸿蒙中的资源文件都又什么作用?
1866浏览 • 1回复 待解决
如何获取应用自身的源文件路径
260浏览 • 1回复 待解决
如何将Resource资源对象转成string类型
347浏览 • 1回复 待解决
用华为登录一直6003错误
5667浏览 • 1回复 待解决
DevEco Studio打开历史工程空指针错误
3134浏览 • 1回复 待解决