{"version":"0.1.0","code":"0000","result":true,"message":"处理成功","errdetail":"","timestamp":1671508820064,"data":{"id":71712996,"title":"3.3.2 资源管理","slug":"tige01","format":"lake","bookId":26046811,"body":null,"body_draft":null,"body_html":"

卡片提供两种资源管理方式:合并文件资源管理普通文件资源管理


合并文件资源管理 是AutoSDK自研的一种资源管理方式,对于资源文件总数量多、单文件体积小、文件开关频繁的情况,在IO性能提升方面有优秀的表现。在Auto上的实践结果表示,这种资源管理方式在启动阶段减少了60.06%的IO时间。工具包请向项目同学获取,在打包阶段使用。

当然用户也可以选择不使用这种资源管理方式,使用普通文件资源管理

普通文件资源管理 即使用常规的文件目录结构,设置对应的资源根目录,通过相对路径来读取对应的资源。

场景图

\"image.png\"

说明:如图中的红绿灯图标,多备选标签背景图,及规划路线重点扎标都属于卡片管理的图片资源。

时序图

卡片服务初始化

卡片纹理生成

关键参数

com.autonavi.gbl.card.model.CmbLoaderInitParam

成员

含义

vecResPath

卡片Overlay资源根路径

strPkgName

合并资源文件名,非合并资源可以置空

isMergeRes

是否使用合并资源 

 1. true:  获取资源时仅需输入文件名。

 2. false: 获取资源时需要输入完整文件相对路径,包括从根目录开始的相对路径及文件扩展名。

cacheSize

资源缓存大小(暂未支持,置0)


    说明:函数详情,请复制函数名称到在线API搜索

调用示例

\n    // 构造卡片Overlay资源初始化参数\n    CmbLoaderInitParam loaderParamLiteObj = new CmbLoaderInitParam();\n    loaderParamLiteObj.cacheSize = 0;\n    loaderParamLiteObj.isMergeRes = true;\n    loaderParamLiteObj.strPkgName = "res.cmb";\n    loaderParamLiteObj.vecResPath.add("/data/");\n\n    // 构造卡片服务初始化参数\n    CardInitParam param = new CardInitParam();\n    param.setLoaderParam(loaderParamLiteObj);\n    ...\n\n    // 调用卡片服务初始化接口\n    boolean success = mCardService.init(param);\n\n\t...\n\n    //使用"/data/res/xx.png"生成静态纹理\n    StaticTextureParam staticTP;\n    staticTP.markerKey.imageName = "xx";\n    ...\n    int32_t markerId = mCardMgr.getTextureManager().addStaticTexture(staticTP);\n\n    staticTP.markerKey.imageName = "fullpath@/data/res/yy.png";\n\tmarkerId = mCardMgr.getTextureManager().addStaticTexture(staticTP);


\n    // 构造卡片Overlay资源初始化参数\n    CmbLoaderInitParam loaderParamLiteObj = new CmbLoaderInitParam();\n    loaderParamLiteObj.cacheSize = 0;\n    loaderParamLiteObj.isMergeRes = false;\n    loaderParamLiteObj.strPkgName = "";\n    loaderParamLiteObj.vecResPath.add("/data/");\n\n    // 构造卡片服务初始化参数\n    CardInitParam param = new CardInitParam();\n    param.setLoaderParam(loaderParamLiteObj);\n    ...\n\n    // 调用卡片服务初始化接口\n    boolean success = mCardService.init(param);\n\n\t...\n\n    //使用"/data/res/xx.png"生成静态纹理\n    StaticTextureParam staticTP;\n    staticTP.markerKey.imageName = "res/xx.png";\n    ...\n    int32_t markerId = mCardMgr.getTextureManager().addStaticTexture(staticTP);


","body_lake":null,"pub_level":null,"status":"0","updated_at":"2022-04-06 07:02:02","deleted_at":null,"nameSpace":"mnlcaa/v610","browseCount":75,"collectCount":0,"estimateDate":6,"docStatus":0,"permissions":true,"overView":false}}