更新记录
1.0.0(2021-01-18) 下载此版本
init commit
平台兼容性
Vue2 | Vue3 |
---|---|
√ | × |
App | 快应用 | 微信小程序 | 支付宝小程序 | 百度小程序 | 字节小程序 | QQ小程序 |
---|---|---|---|---|---|---|
HBuilderX 3.0.7 app-vue | × | × | × | × | × | × |
钉钉小程序 | 快手小程序 | 飞书小程序 | 京东小程序 |
---|---|---|---|
× | × | × | × |
H5-Safari | Android Browser | 微信浏览器(Android) | QQ浏览器(Android) | Chrome | IE | Edge | Firefox | PC-Safari |
---|---|---|---|---|---|---|---|---|
× | × | × | × | × | × | × | × | × |
uni-app 日志文件写入与创建(实测可用)
-
主要实现功能,记录手机端的运行日志,并将内容写入到手机目录成 text 文件
-
手机存放目录/storage/emulated/0/
Android/data/应用包名/documents/app-log/2021-01-18log.text
小米与华为手机目录为 Android/data/应用包名/documents/app-log/2021-01-18log.text
其他机型没测试
环境配置
-
uni h5 模块配置
1、5+功能模块
"h5" : {
"permissions":{
"File": {
"description": "文件系统"
}
}
}
-
js 文件引入
将 log.js 文件引入到项目 common 或公共方法目录下 引入base64.js 加密文件(也可在当前跟目录下直接下载)
-
使用方式
// 日志方法引入
import log from "@/common/log.js";
// 使用方式
log.writeLog("日志内容写入测试", false);
主要代码,详细代码请下载本目录后查看
/**
* 日志内容写入
* @param {Object} params 写入内容
* @param {Object} encryption 是否加密
*/
function writeLog(params, encryption) {
let text = JSON.stringify(params)
plus.io.requestFileSystem(plus.io.PUBLIC_DOCUMENTS, function(fs) {
// 可通过fs操作PUBLIC_DOCUMENTS文件系统
// 创建日志文件夹
fs.root.getDirectory("app-log", {
create: true,
exclusive: false
}, function(dir) {
// 创建或写入文件
console.log("Directory Entry Name: " + dir.fullPath + getLogFileName().fileName);
dir.getFile(getLogFileName().fileName, {
create: true
}, function(fileEntry) {
// 找到文件准备写入操作
fileEntry.file(function(file) {
// create a FileWriter to write to the file
fileEntry.createWriter(function(writer) {
// Write data to file.
writer.seek(file.size - 1)
// 换行插入日志文件
if (encryption) {
writer.write(getLogFileName().newLine + " " + Base64.encode(text));
} else {
writer.write(getLogFileName().newLine + text);
}
}, function(e) {
console.error("日志写入错误", error)
});
});
});
}, function(err) {
console.error("文件夹创建失败", err)
});
}, function(error) {
console.error("文件系统进入错误", error)
});
}
writeLog 方法传参 API 文档
参数名称 | 参数作用 | 参数类型 | 是否必填 |
---|---|---|---|
params | 写入内容 | all | 是 |
encryption | 是否加密 | boolean | 否 |
参考资料
- uni-app 官方文档 https://uniapp.dcloud.io/README
- html5plus 官方文档 IO 文件系统接口文档 https://www.html5plus.org/doc/zh_cn/io.html