【关键字】
Asset / 24000008 / asset.query / asset.add
【问题描述】
在封装工具类时,使用了 Asset 服务中 asset.query() 与 asset.add() 函数,真机调试正常,但是将源码提供给项目组运行在其他真机上时,就会报 24000008 的错误码,文档显示是数据库访问异常,请问是什么原因?该如何解决?工程代码中,Asset 能力调用逻辑为:先调用 asset.query() 查找相应的资产是否存在,若返回 24000002 ,表示未找到该资产,再调用 asset.add() 添加对应资产。
【解决方案】
在查询asset时,如果从来没保存过某个资产,首次查询会抛出24000008(数据库操作失败)异常,因此在查询时除了判断取出的数组长度是否为0,还要专门处理这个异常码。