uni-app 5+API错误代码
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 | 参数错误 | 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 | 定位服务不能用 |
在处理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调用中可能遇到的错误,从而提高应用的健壮性和用户体验。