import{_ as s,o,c as e,a}from"./app.78a03919.js";const n={},p=a(`<h1 id="loggerfactory-kt" tabindex="-1"><a class="header-anchor" href="#loggerfactory-kt" aria-hidden="true">#</a> LoggerFactory <span class="symbol">- kt</span></h1><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.0</code> <code>\u6DFB\u52A0</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u8FD9\u662F <code>YukiHookAPI</code> \u7684\u65E5\u5FD7\u5C01\u88C5\u7C7B\uFF0C\u53EF\u5B9E\u73B0\u540C\u65F6\u5411 <code>Logcat</code> \u548C <code>XposedBridge.log</code> \u6253\u5370\u65E5\u5FD7\u7684\u529F\u80FD\u3002</p></blockquote><h2 id="loggertype-class" tabindex="-1"><a class="header-anchor" href="#loggertype-class" aria-hidden="true">#</a> LoggerType <span class="symbol">- class</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">enum</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">LoggerType</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u9700\u8981\u6253\u5370\u7684\u65E5\u5FD7\u7C7B\u578B\u3002</p></blockquote><p>\u51B3\u5B9A\u4E8E\u6A21\u5757\u4E0E (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4F7F\u7528\u7684\u6253\u5370\u65B9\u5F0F\u3002</p><h3 id="logd-enum" tabindex="-1"><a class="header-anchor" href="#logd-enum" aria-hidden="true">#</a> LOGD <span class="symbol">- enum</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F69D50;">LOGD</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u4EC5\u4F7F\u7528 <code>android.util.Log</code>\u3002</p></blockquote><h3 id="xposedbridge-enum" tabindex="-1"><a class="header-anchor" href="#xposedbridge-enum" aria-hidden="true">#</a> XPOSEDBRIDGE <span class="symbol">- enum</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F69D50;">XPOSEDBRIDGE</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u4EC5\u4F7F\u7528 <code>XposedBridge.log</code>\u3002</p></blockquote><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u53EA\u80FD\u5728 (Xposed) \u5BBF\u4E3B\u73AF\u5883\u4E2D\u4F7F\u7528\uFF0C\u6A21\u5757\u73AF\u5883\u5C06\u4E0D\u751F\u6548\u3002</p></div><h3 id="scope-enum" tabindex="-1"><a class="header-anchor" href="#scope-enum" aria-hidden="true">#</a> SCOPE <span class="symbol">- enum</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F69D50;">SCOPE</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5206\u533A\u4F7F\u7528\u3002</p></blockquote><p>(Xposed) \u5BBF\u4E3B\u73AF\u5883\u4EC5\u4F7F\u7528 <code>XPOSEDBRIDGE</code>\u3002</p><p>\u6A21\u5757\u73AF\u5883\u4EC5\u4F7F\u7528 <code>LOGD</code>\u3002</p><h3 id="both-enum" tabindex="-1"><a class="header-anchor" href="#both-enum" aria-hidden="true">#</a> BOTH <span class="symbol">- enum</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F69D50;">BOTH</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u540C\u65F6\u4F7F\u7528\u3002</p></blockquote><p>(Xposed) \u5BBF\u4E3B\u73AF\u5883\u4F7F\u7528 <code>LOGD</code> \u4E0E <code>XPOSEDBRIDGE</code>\u3002</p><p>\u6A21\u5757\u73AF\u5883\u4EC5\u4F7F\u7528 <code>LOGD</code>\u3002</p><h2 id="yukiloggerdata-class" tabindex="-1"><a class="header-anchor" href="#yukiloggerdata-class" aria-hidden="true">#</a> YukiLoggerData <span class="symbol">- class</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">YukiLoggerData</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">internal</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">constructor</span><span style="color:#ADBAC7;">(</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> timestamp</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Long</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> time</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> priority</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> packageName</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> userId</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> msg</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">,</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> throwable</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Throwable?</span></span>
<span class="line"><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.2</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u8C03\u8BD5\u65E5\u5FD7\u6570\u636E\u5B9E\u73B0\u7C7B\u3002</p></blockquote><h2 id="yukihooklogger-object" tabindex="-1"><a class="header-anchor" href="#yukihooklogger-object" aria-hidden="true">#</a> YukiHookLogger <span class="symbol">- object</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">object</span><span style="color:#ADBAC7;"> YukiHookLogger</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u8C03\u8BD5\u65E5\u5FD7\u5B9E\u73B0\u7C7B\u3002</p></blockquote><h3 id="inmemorydata-field" tabindex="-1"><a class="header-anchor" href="#inmemorydata-field" aria-hidden="true">#</a> inMemoryData <span class="symbol">- field</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> inMemoryData</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">HashSet</span><span style="color:#F47067;">&lt;</span><span style="color:#F69D50;">YukiLoggerData</span><span style="color:#F47067;">&gt;</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.2</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5F53\u524D\u5168\u90E8\u5DF2\u8BB0\u5F55\u7684\u65E5\u5FD7\u6570\u636E\u3002</p></blockquote><h3 id="contents-field" tabindex="-1"><a class="header-anchor" href="#contents-field" aria-hidden="true">#</a> contents <span class="symbol">- field</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> contents</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u83B7\u53D6\u5F53\u524D\u65E5\u5FD7\u6587\u4EF6\u5185\u5BB9\u3002</p></blockquote><p>\u5982\u679C\u5F53\u524D\u6CA1\u6709\u5DF2\u8BB0\u5F55\u7684\u65E5\u5FD7\u4F1A\u8FD4\u56DE\u7A7A\u5B57\u7B26\u4E32\u3002</p><h3 id="clear-method" tabindex="-1"><a class="header-anchor" href="#clear-method" aria-hidden="true">#</a> clear <span class="symbol">- method</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">clear</span><span style="color:#ADBAC7;">()</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u6E05\u9664\u5168\u90E8\u5DF2\u8BB0\u5F55\u7684\u65E5\u5FD7\u3002</p></blockquote><p>\u4F60\u4E5F\u53EF\u4EE5\u76F4\u63A5\u83B7\u53D6 <a href="#inmemorydata-field">inMemoryData</a> \u6765\u6E05\u9664\u3002</p><h3 id="savetofile-method" tabindex="-1"><a class="header-anchor" href="#savetofile-method" aria-hidden="true">#</a> saveToFile <span class="symbol">- method</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">saveToFile</span><span style="color:#ADBAC7;">(fileName</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u4FDD\u5B58\u5F53\u524D\u65E5\u5FD7\u5230\u6587\u4EF6\u3002</p></blockquote><p>\u82E5\u5F53\u524D\u672A\u5F00\u542F <code>Configs.isRecord</code> \u6216\u8BB0\u5F55\u4E3A\u7A7A\u5219\u4E0D\u4F1A\u8FDB\u884C\u4EFB\u4F55\u64CD\u4F5C\u3002</p><p>\u65E5\u5FD7\u6587\u4EF6\u4F1A\u8FFD\u52A0\u5230 <code>fileName</code> \u7684\u6587\u4EF6\u7ED3\u5C3E\uFF0C\u82E5\u6587\u4EF6\u4E0D\u5B58\u5728\u4F1A\u81EA\u52A8\u521B\u5EFA\u3002</p><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u6587\u4EF6\u8BFB\u5199\u6743\u9650\u53D6\u51B3\u4E8E\u5F53\u524D\u5BBF\u4E3B\u5DF2\u83B7\u53D6\u7684\u6743\u9650\u3002</p></div><h3 id="configs-object" tabindex="-1"><a class="header-anchor" href="#configs-object" aria-hidden="true">#</a> Configs <span class="symbol">- object</span></h3><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">object</span><span style="color:#ADBAC7;"> Configs</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u914D\u7F6E <code>YukiHookLogger</code>\u3002</p></blockquote><h4 id="tag-field" tabindex="-1"><a class="header-anchor" href="#tag-field" aria-hidden="true">#</a> TAG <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">const</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">TAG</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u6807\u7B7E\u3002</p></blockquote><h4 id="priority-field" tabindex="-1"><a class="header-anchor" href="#priority-field" aria-hidden="true">#</a> PRIORITY <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">const</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">PRIORITY</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u4F18\u5148\u7EA7\u3002</p></blockquote><h4 id="package-name-field" tabindex="-1"><a class="header-anchor" href="#package-name-field" aria-hidden="true">#</a> PACKAGE_NAME <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">const</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">PACKAGE_NAME</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5F53\u524D\u5BBF\u4E3B\u7684\u5305\u540D\u3002</p></blockquote><h4 id="user-id-field" tabindex="-1"><a class="header-anchor" href="#user-id-field" aria-hidden="true">#</a> USER_ID <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">const</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">val</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">USER_ID</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5F53\u524D\u5BBF\u4E3B\u7684\u7528\u6237 ID (\u4E3B\u7528\u6237\u4E0D\u663E\u793A)\u3002</p></blockquote><h4 id="isenable-field" tabindex="-1"><a class="header-anchor" href="#isenable-field" aria-hidden="true">#</a> isEnable <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> isEnable</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u662F\u5426\u542F\u7528\u8C03\u8BD5\u65E5\u5FD7\u7684\u8F93\u51FA\u529F\u80FD\u3002</p></blockquote><p>\u5173\u95ED\u540E\u5C06\u4F1A\u505C\u7528 <code>YukiHookAPI</code> \u5BF9\u5168\u90E8\u65E5\u5FD7\u7684\u8F93\u51FA\u3002</p><p>\u4F46\u662F\u4E0D\u5F71\u54CD\u5F53\u4F60\u624B\u52A8\u8C03\u7528\u4E0B\u9762\u8FD9\u4E9B\u65B9\u6CD5\u8F93\u51FA\u65E5\u5FD7\u3002</p><p><code>loggerD</code>\u3001<code>loggerI</code>\u3001<code>loggerW</code>\u3001<code>loggerE</code>\u3002</p><p>\u5F53 <code>isEnable</code> \u5173\u95ED\u540E <code>YukiHookAPI.Configs.isDebug</code> \u4E5F\u5C06\u540C\u65F6\u5173\u95ED\u3002</p><h4 id="isrecord-field" tabindex="-1"><a class="header-anchor" href="#isrecord-field" aria-hidden="true">#</a> isRecord <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> isRecord</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Boolean</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u662F\u5426\u542F\u7528\u8C03\u8BD5\u65E5\u5FD7\u7684\u8BB0\u5F55\u529F\u80FD\u3002</p></blockquote><p>\u5F00\u542F\u540E\u5C06\u4F1A\u5728\u5185\u5B58\u4E2D\u8BB0\u5F55\u5168\u90E8\u53EF\u7528\u7684\u65E5\u5FD7\u548C\u5F02\u5E38\u5806\u6808\u3002</p><p>\u9700\u8981\u540C\u65F6\u542F\u7528 <a href="#isenable-field">isEnable</a> \u624D\u80FD\u6709\u6548\u3002</p><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u8FC7\u91CF\u7684\u65E5\u5FD7\u53EF\u80FD\u4F1A\u5BFC\u81F4\u5BBF\u4E3B\u8FD0\u884C\u7F13\u6162\u6216\u9020\u6210\u9891\u7E41 GC\u3002</p></div><p>\u5F00\u542F\u540E\u4F60\u53EF\u4EE5\u8C03\u7528 <a href="#savetofile-method">YukiHookLogger.saveToFile</a> \u5B9E\u65F6\u4FDD\u5B58\u65E5\u5FD7\u5230\u6587\u4EF6\u6216\u4F7F\u7528 <a href="#contents-field">YukiHookLogger.contents</a> \u83B7\u53D6\u5B9E\u65F6\u65E5\u5FD7\u6587\u4EF6\u3002</p><h4 id="tag-field-1" tabindex="-1"><a class="header-anchor" href="#tag-field-1" aria-hidden="true">#</a> tag <span class="symbol">- field</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">var</span><span style="color:#ADBAC7;"> tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u8FD9\u662F\u4E00\u4E2A\u8C03\u8BD5\u65E5\u5FD7\u7684\u5168\u5C40\u6807\u8BC6\u3002</p></blockquote><p>\u9ED8\u8BA4\u6587\u6848\u4E3A <code>YukiHookAPI</code>\u3002</p><p>\u4F60\u53EF\u4EE5\u4FEE\u6539\u4E3A\u4F60\u81EA\u5DF1\u7684\u6587\u6848\u3002</p><h4 id="elements-method" tabindex="-1"><a class="header-anchor" href="#elements-method" aria-hidden="true">#</a> elements <span class="symbol">- method</span></h4><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">elements</span><span style="color:#ADBAC7;">(</span><span style="color:#F47067;">vararg</span><span style="color:#ADBAC7;"> item</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">Int</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.1.0</code> <code>\u65B0\u589E</code></p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u81EA\u5B9A\u4E49\u8C03\u8BD5\u65E5\u5FD7\u5BF9\u5916\u663E\u793A\u7684\u5143\u7D20\u3002</p></blockquote><p>\u53EA\u5BF9\u65E5\u5FD7\u8BB0\u5F55\u548C <code>XposedBridge.log</code> \u751F\u6548\u3002</p><p>\u65E5\u5FD7\u5143\u7D20\u7684\u6392\u5217\u5C06\u6309\u7167\u4F60\u5728 <code>item</code> \u4E2D\u8BBE\u7F6E\u7684\u987A\u5E8F\u8FDB\u884C\u663E\u793A\u3002</p><p>\u4F60\u8FD8\u53EF\u4EE5\u7559\u7A7A <code>item</code> \u4EE5\u4E0D\u663E\u793A\u9664\u65E5\u5FD7\u5185\u5BB9\u5916\u7684\u5168\u90E8\u5143\u7D20\u3002</p><p>\u53EF\u7528\u7684\u5143\u7D20\u6709\uFF1A<code>TAG</code>\u3001<code>PRIORITY</code>\u3001<code>PACKAGE_NAME</code>\u3001<code>USER_ID</code>\u3002</p><p><strong>\u529F\u80FD\u793A\u4F8B</strong></p><p>\u6253\u5370\u7684\u65E5\u5FD7\u6837\u5F0F\u5C06\u6309\u7167\u4F60\u8BBE\u7F6E\u7684\u6392\u5217\u987A\u5E8F\u548C\u5143\u7D20\u5185\u5BB9\u8FDB\u884C\u3002</p><blockquote><p>\u793A\u4F8B\u5982\u4E0B</p></blockquote><div class="language-kotlin ext-kt line-numbers-mode"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#ADBAC7;">elements(</span><span style="color:#F69D50;">TAG</span><span style="color:#ADBAC7;">, </span><span style="color:#F69D50;">PRIORITY</span><span style="color:#ADBAC7;">, </span><span style="color:#F69D50;">PACKAGE_NAME</span><span style="color:#ADBAC7;">, </span><span style="color:#F69D50;">USER_ID</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u4EE5\u4E0A\u5185\u5BB9\u5B9A\u4E49\u7684\u65E5\u5FD7\u5C06\u663E\u793A\u4E3A\u5982\u4E0B\u6837\u5F0F\u3002</p><blockquote><p>\u793A\u4F8B\u5982\u4E0B</p></blockquote><div class="language-text ext-text"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#adbac7;">[YukiHookAPI][D][com.demo.test][999]--&gt; This is a log</span></span>
<span class="line"><span style="color:#adbac7;"></span></span></code></pre></div><p>\u5982\u679C\u6211\u4EEC\u8C03\u6574\u5143\u7D20\u987A\u5E8F\u4EE5\u53CA\u51CF\u5C11\u4E2A\u6570\uFF0C\u90A3\u4E48\u7ED3\u679C\u53C8\u4F1A\u4E0D\u4E00\u6837\u3002</p><blockquote><p>\u793A\u4F8B\u5982\u4E0B</p></blockquote><div class="language-kotlin ext-kt line-numbers-mode"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#ADBAC7;">elements(</span><span style="color:#F69D50;">PACKAGE_NAME</span><span style="color:#ADBAC7;">, </span><span style="color:#F69D50;">USER_ID</span><span style="color:#ADBAC7;">, </span><span style="color:#F69D50;">PRIORITY</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre><div class="line-numbers" aria-hidden="true"><div class="line-number"></div></div></div><p>\u4EE5\u4E0A\u5185\u5BB9\u5B9A\u4E49\u7684\u65E5\u5FD7\u5C06\u663E\u793A\u4E3A\u5982\u4E0B\u6837\u5F0F\u3002</p><blockquote><p>\u793A\u4F8B\u5982\u4E0B</p></blockquote><div class="language-text ext-text"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#adbac7;">[com.demo.test][999][D]--&gt; This is a log</span></span>
<span class="line"><span style="color:#adbac7;"></span></span></code></pre></div><h2 id="loggerd-method" tabindex="-1"><a class="header-anchor" href="#loggerd-method" aria-hidden="true">#</a> loggerD <span class="symbol">- method</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">loggerD</span><span style="color:#ADBAC7;">(tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, msg</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, type</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">LoggerType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.0</code> <code>\u6DFB\u52A0</code></p><p><code>v1.1.0</code> <code>\u4FEE\u6539</code></p><p>\u65B0\u589E <code>type</code> \u53C2\u6570</p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5411 <code>Logcat</code> \u548C <code>XposedBridge</code> \u6253\u5370\u65E5\u5FD7\uFF0C\u7EA7\u522B <code>D</code>\u3002</p></blockquote><p><code>tag</code> \u7684\u9ED8\u8BA4\u53C2\u6570\u4E3A <code>YukiHookAPI.Configs.debugTag</code>\uFF0C\u4F60\u53EF\u4EE5\u8FDB\u884C\u81EA\u5B9A\u4E49\u3002</p><h2 id="loggeri-method" tabindex="-1"><a class="header-anchor" href="#loggeri-method" aria-hidden="true">#</a> loggerI <span class="symbol">- method</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">loggerI</span><span style="color:#ADBAC7;">(tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, msg</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, type</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">LoggerType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.0</code> <code>\u6DFB\u52A0</code></p><p><code>v1.1.0</code> <code>\u4FEE\u6539</code></p><p>\u65B0\u589E <code>type</code> \u53C2\u6570</p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5411 <code>Logcat</code> \u548C <code>XposedBridge</code> \u6253\u5370\u65E5\u5FD7\uFF0C\u7EA7\u522B <code>I</code>\u3002</p></blockquote><p><code>tag</code> \u7684\u9ED8\u8BA4\u53C2\u6570\u4E3A <code>YukiHookAPI.Configs.debugTag</code>\uFF0C\u4F60\u53EF\u4EE5\u8FDB\u884C\u81EA\u5B9A\u4E49\u3002</p><h2 id="loggerw-method" tabindex="-1"><a class="header-anchor" href="#loggerw-method" aria-hidden="true">#</a> loggerW <span class="symbol">- method</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">loggerW</span><span style="color:#ADBAC7;">(tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, msg</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, type</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">LoggerType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.0</code> <code>\u6DFB\u52A0</code></p><p><code>v1.1.0</code> <code>\u4FEE\u6539</code></p><p>\u65B0\u589E <code>type</code> \u53C2\u6570</p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5411 <code>Logcat</code> \u548C <code>XposedBridge</code> \u6253\u5370\u65E5\u5FD7\uFF0C\u7EA7\u522B <code>W</code>\u3002</p></blockquote><p><code>tag</code> \u7684\u9ED8\u8BA4\u53C2\u6570\u4E3A <code>YukiHookAPI.Configs.debugTag</code>\uFF0C\u4F60\u53EF\u4EE5\u8FDB\u884C\u81EA\u5B9A\u4E49\u3002</p><h2 id="loggere-method" tabindex="-1"><a class="header-anchor" href="#loggere-method" aria-hidden="true">#</a> loggerE <span class="symbol">- method</span></h2><div class="language-kotlin ext-kt"><pre class="shiki" style="background-color:#22272e;"><code><span class="line"><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">loggerE</span><span style="color:#ADBAC7;">(tag</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, msg</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">String</span><span style="color:#ADBAC7;">, e</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Throwable?</span><span style="color:#ADBAC7;">, type</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">LoggerType</span><span style="color:#ADBAC7;">)</span></span>
<span class="line"></span></code></pre></div><p><strong>\u53D8\u66F4\u8BB0\u5F55</strong></p><p><code>v1.0</code> <code>\u6DFB\u52A0</code></p><p><code>v1.1.0</code> <code>\u4FEE\u6539</code></p><p>\u65B0\u589E <code>type</code> \u53C2\u6570</p><p><strong>\u529F\u80FD\u63CF\u8FF0</strong></p><blockquote><p>\u5411 <code>Logcat</code> \u548C <code>XposedBridge</code> \u6253\u5370\u65E5\u5FD7\uFF0C\u7EA7\u522B <code>E</code>\uFF0C\u53EF\u643A\u5E26 <code>e</code> \u5F02\u5E38\u4FE1\u606F\uFF0C\u5C06\u6253\u5370\u5F02\u5E38\u5806\u6808\u3002</p></blockquote><p><code>tag</code> \u7684\u9ED8\u8BA4\u53C2\u6570\u4E3A <code>YukiHookAPI.Configs.debugTag</code>\uFF0C\u4F60\u53EF\u4EE5\u8FDB\u884C\u81EA\u5B9A\u4E49\u3002</p>`,199),l=[p];function c(t,r){return o(),e("div",null,l)}const i=s(n,[["render",c],["__file","LoggerFactory.html.vue"]]);export{i as default};
