diff --git a/docs-source/src/en/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md b/docs-source/src/en/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
index 3fe6b3a0..609b0ca7 100644
--- a/docs-source/src/en/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
+++ b/docs-source/src/en/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
@@ -193,6 +193,28 @@ val contents: String
:::
+### contents - method
+
+```kotlin:no-line-numbers
+fun contents(data: ArrayList): String
+```
+
+**Change Records**
+
+`v1.1.5` `added`
+
+**Function Illustrate**
+
+> 获取、格式化当前日志文件内容。
+
+如果当前没有已记录的日志 (`data` 为空) 会返回空字符串。
+
+::: danger
+
+获取到的日志数据在 Hook APP (宿主) 及模块进程中是相互隔离的。
+
+:::
+
### clear - method
```kotlin:no-line-numbers
@@ -218,13 +240,17 @@ fun clear()
### saveToFile - method
```kotlin:no-line-numbers
-fun saveToFile(fileName: String)
+fun saveToFile(fileName: String, data: ArrayList)
```
**Change Records**
`v1.1.0` `added`
+`v1.1.5` `modified`
+
+新增 `data` 参数
+
**Function Illustrate**
> 保存当前日志到文件。
diff --git a/docs-source/src/zh-cn/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md b/docs-source/src/zh-cn/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
index c4adf3d5..8c2eb1f0 100644
--- a/docs-source/src/zh-cn/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
+++ b/docs-source/src/zh-cn/api/public/com/highcapable/yukihookapi/hook/log/LoggerFactory.md
@@ -185,6 +185,28 @@ val contents: String
:::
+### contents - method
+
+```kotlin:no-line-numbers
+fun contents(data: ArrayList): String
+```
+
+**变更记录**
+
+`v1.1.5` `新增`
+
+**功能描述**
+
+> 获取、格式化当前日志文件内容。
+
+如果当前没有已记录的日志 (`data` 为空) 会返回空字符串。
+
+::: danger
+
+获取到的日志数据在 Hook APP (宿主) 及模块进程中是相互隔离的。
+
+:::
+
### clear - method
```kotlin:no-line-numbers
@@ -210,13 +232,17 @@ fun clear()
### saveToFile - method
```kotlin:no-line-numbers
-fun saveToFile(fileName: String)
+fun saveToFile(fileName: String, data: ArrayList)
```
**变更记录**
`v1.1.0` `新增`
+`v1.1.5` `修改`
+
+新增 `data` 参数
+
**功能描述**
> 保存当前日志到文件。
diff --git a/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/log/LoggerFactory.kt b/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/log/LoggerFactory.kt
index 258323c1..7528ab69 100644
--- a/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/log/LoggerFactory.kt
+++ b/yukihookapi/src/api/kotlin/com/highcapable/yukihookapi/hook/log/LoggerFactory.kt
@@ -147,18 +147,28 @@ object YukiHookLogger {
* - ❗获取到的日志数据在 Hook APP (宿主) 及模块进程中是相互隔离的
* @return [String]
*/
- val contents: String
- get() {
- var content = ""
- inMemoryData.takeIf { it.isNotEmpty() }?.forEach {
- content += "${it.head}$it\n"
- it.throwable?.also { e ->
- content += "${it.head}Dump stack trace for \"${e.current().name}\":\n"
- content += e.toStackTrace()
- }
+ val contents get() = contents()
+
+ /**
+ * 获取、格式化当前日志文件内容
+ *
+ * 如果当前没有已记录的日志 ([data] 为空) 会返回空字符串
+ *
+ * - ❗获取到的日志数据在 Hook APP (宿主) 及模块进程中是相互隔离的
+ * @param data 日志数据 - 默认为 [inMemoryData]
+ * @return [String]
+ */
+ fun contents(data: ArrayList = inMemoryData): String {
+ var content = ""
+ data.takeIf { it.isNotEmpty() }?.forEach {
+ content += "${it.head}$it\n"
+ it.throwable?.also { e ->
+ content += "${it.head}Dump stack trace for \"${e.current().name}\":\n"
+ content += e.toStackTrace()
}
- return content
}
+ return content
+ }
/**
* 清除全部已记录的日志
@@ -178,10 +188,11 @@ object YukiHookLogger {
*
* - ❗文件读写权限取决于当前宿主、模块已获取的权限
* @param fileName 完整文件名 - 例如 /data/data/.../files/xxx.log
+ * @param data 日志数据 - 默认为 [inMemoryData]
* @throws ErrnoException 如果目标路径不可写
*/
- fun saveToFile(fileName: String) {
- if (inMemoryData.isNotEmpty()) File(fileName).appendText(contents)
+ fun saveToFile(fileName: String, data: ArrayList = inMemoryData) {
+ if (data.isNotEmpty()) File(fileName).appendText(contents(data))
}
/**