uni-app 5+API错误代码

发布于 1周前 作者 sinazl 来自 Uni-App

uni-app 5+API错误代码

5+ API通常通过错误回调(ErrorCallback)函数返回错误,并且在回调函数中包含Event错误信息:

interface Event {  
    readonly attribute Number code;         // 错误码  
    readonly attribute String message;     // 错误描述信息  
}
  • code 表示错误码,可以在下面列表中查询到对应的错误原因: 当code值为-100时,表示是使用第三方SDK时内部业务逻辑发生错误,此时需要查看message信息

  • message 表示错误描述信息,用于提示用户错误原因,当code值为-100时错误描述信息的格式为: [%模块名称%+%第三方SDK名称%: %第三方SDK错误码%]%错误描述信息% 如“[OAuth微信:-1]未知错误,…” 其中%第三方SDK错误码%参考:

  1. Maps(地图)
  2. Payment(支付)
  3. Share(分享)

通用错误

错误码 错误描述 备注
-1 参数错误 5+API传入的参数不正确
-2 用户取消 用户取消当前的操作
-3 此功能不支持 当前5+Runtime不支持此功能
-4 文件不存在 操作的文件或目录不存在
-5 IO错误 文件读写操作错误,如文件被其它程序占用等
-6 网络错误 无法连接到网络
-7 业务参数配置缺失 使用第三方SDK时缺失SECRET、APPID、APPKEY等数据
-8 客户端未安装 调用的第三方客户端未安装
-9 快捷方式已存在 创建快捷方式时快捷方式已存在,仅部分手机支持
-10 授权失败 用户拒绝该API访问
-99 未知错误 未定义的错误
-100 业务内部错误 使用的第三方SDK内部错误

OAuth(登录授权)

错误码 错误描述
-1001 未登录或登录已注销
-1002 获取Token失败

univerify(一键登录)

错误码 错误描述
1000 当前 uniAppid 尚未开通一键登录
1001 应用所有者账号信息异常,请检查账号一键登录服务是否正常
1002 应用所有者账号信息异常,请检查账号余额是否充足
4001 请求参数异常
4003 开发者账户appid 校验异常,联系官方人员
5000 服务器未知异常,联系官方人员
30001 当前网络环境不适合执行该操作
30002 用户点击了其他登录方式
30003 用户关闭验证界面
30004 其他错误
30005 预登录失败
30006 一键登录失败
30007 获取本机号码校验token失败
40004 应用不存在
40047 一键登录取号失败
40053 手机号校验失败
40201 源IP鉴权失败

Runtime模块错误

错误码 错误描述 备注
-1201 WGT/WGTU文件格式错误
-1202 WGT安装包中manifest.json文件不存在
-1203 WGT安装包中manifest.json文件格式错误
-1204 WGT安装包中manifest.json文件的appid不匹配
-1205 WGT安装包中manifest.json文件的version版本不匹配
-1221 WGTU安装包中update.xml文件不存在
-1222 WGTU安装包中update.xml文件格式错误
-1223 WGTU安装包中update.xml文件的appid不匹配
-1224 WGTU安装包中update.xml文件的version版本不匹配
-1225 WGTU安装包中www目录下manifest.json不存在
-1226 WGTU安装包中www目录下manifest.json文件格式错误
-1227 WGTU安装包中www目录下manifest.json文件的appid不匹配
-1228 WGTU安装包中www目录下manifest.json文件的version版本不匹配
-1229 HTML5+ Runtime缺少升级包manifest.json中配置的模块 这种情况下应该使用apk/ipa升级
-1250 uni-app编译模式切换不支持升级应用资源

Audio模块错误

错误码 错误描述 备注
-1301 文件播放格式错误
-1302 文件请求超时

Sqlite模块错误

错误码 错误描述 备注
-1401 数据库没有打开
-1402 数据库已经打开
-1403 WWW目录下的数据库只有读权限
-1404 其他错误

Geolocation模块错误

错误码 错误描述 备注
-1501 坐标地址解析失败
-1502 坐标地址获取失败
-1503 不支持某个提供者,如:不支持腾讯地图
-1504 坐标系类型不支持
-1505 定位服务不能用

1 回复

在处理uni-app中的5+API错误代码时,理解错误代码的具体含义和如何处理这些错误是非常重要的。5+API是DCloud公司为uni-app提供的原生扩展API,它允许开发者访问一些更底层的原生功能。在使用这些API时,可能会遇到各种错误,每个错误都有特定的错误代码。

下面是一个简单的示例,展示如何使用5+API并处理可能遇到的错误代码。在这个例子中,我们将尝试使用plus.io.resolveLocalFileSystemURL方法来访问本地文件系统,并处理可能发生的错误。

// 引入uni-app和5+API相关的模块
const plus = window.plus;

// 尝试访问本地文件系统的一个文件
plus.io.resolveLocalFileSystemURL('_www/test.txt', entry => {
    // 成功获取到文件入口对象
    console.log('文件入口对象:', entry);
    // 可以在这里进行进一步的文件操作,比如读取文件内容
    entry.file(file => {
        console.log('文件对象:', file);
        // 读取文件内容
        const reader = new FileReader();
        reader.onloadend = e => {
            console.log('文件内容:', e.target.result);
        };
        reader.readAsText(file);
    }, error => {
        // 获取文件对象时出错
        console.error('获取文件对象失败:', error.code, error.message);
    });
}, error => {
    // 解析文件URL时出错
    // 错误代码处理
    switch(error.code) {
        case 1:
            console.error('编码错误: URL编码不正确');
            break;
        case 2:
            console.error('无效参数: 提供的URL无效');
            break;
        case 3:
            console.error('路径不存在: 指定路径的文件或目录不存在');
            break;
        case 4:
            console.error('安全限制: 操作被安全策略限制');
            break;
        default:
            console.error('未知错误:', error.code, error.message);
    }
});

在上面的代码中,我们首先尝试解析一个本地文件的URL。如果成功,我们将获取到一个Entry对象,该对象可以用来进一步操作文件,比如读取文件内容。如果在解析URL或获取文件对象时遇到错误,我们将根据错误代码进行不同的处理。

注意,这里的错误代码(如1, 2, 3, 4)是假设的错误代码,实际的5+API错误代码可能会有所不同。你应该参考DCloud官方文档来获取准确的错误代码列表和它们的含义。

通过这种方式,你可以更精确地处理5+API调用中可能遇到的错误,从而提高应用的健壮性和用户体验。

回到顶部