import{_ as s,o as n,c as a,a as l}from"./app.78a03919.js";const e={},o=l(`<h1 id="xposed-\u6A21\u5757\u4E0E\u5BBF\u4E3B\u901A\u8BAF\u6865" tabindex="-1"><a class="header-anchor" href="#xposed-\u6A21\u5757\u4E0E\u5BBF\u4E3B\u901A\u8BAF\u6865" aria-hidden="true">#</a> Xposed \u6A21\u5757\u4E0E\u5BBF\u4E3B\u901A\u8BAF\u6865</h1><blockquote><p>\u8FD9\u662F\u4E00\u4E2A\u4F7F\u7528\u7CFB\u7EDF\u65E0\u5E8F\u5E7F\u64AD\u5728\u6A21\u5757\u4E0E\u5BBF\u4E3B\u4E4B\u95F4\u53D1\u9001\u548C\u63A5\u6536\u6570\u636E\u7684\u89E3\u51B3\u65B9\u6848\u3002</p></blockquote><div class="custom-container danger"><p class="custom-container-title">\u9700\u8981\u6EE1\u8DB3\u7684\u6761\u4EF6</p><p>\u6A21\u5757\u4E0E\u5BBF\u4E3B\u9700\u8981\u4FDD\u6301\u5B58\u6D3B\u72B6\u6001\uFF0C\u5426\u5219\u65E0\u6CD5\u5EFA\u7ACB\u901A\u8BAF\u3002</p></div><h2 id="\u57FA\u672C\u7528\u6CD5" tabindex="-1"><a class="header-anchor" href="#\u57FA\u672C\u7528\u6CD5" aria-hidden="true">#</a> \u57FA\u672C\u7528\u6CD5</h2><blockquote><p>\u8FD9\u91CC\u63CF\u8FF0\u4E86 <code>wait</code> \u4E0E <code>put</code> \u65B9\u6CD5\u7684\u57FA\u672C\u4F7F\u7528\u65B9\u6CD5\u3002</p></blockquote><p>\u901A\u8FC7\u4F7F\u7528 <code>dataChannel</code> \u6765\u5B9E\u73B0\u6A21\u5757\u4E0E\u5BBF\u4E3B\u4E4B\u95F4\u7684\u901A\u8BAF\u6865\uFF0C\u539F\u7406\u4E3A\u53D1\u9001\u63A5\u6536\u7CFB\u7EDF\u65E0\u5E8F\u5E7F\u64AD\u3002</p><blockquote><p>\u6A21\u5757\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:#768390;">// \u4ECE\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait</span><span style="color:#F47067;">&lt;</span><span style="color:#6CB6FF;">String</span><span style="color:#F47067;">&gt;</span><span style="color:#ADBAC7;">(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;key_from_host&quot;</span><span style="color:#ADBAC7;">) { value </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// \u53D1\u9001\u7ED9\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).put(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;key_from_module&quot;</span><span style="color:#ADBAC7;">, value </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;I am module&quot;</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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><blockquote><p>\u5BBF\u4E3B\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:#768390;">// \u4ECE\u6A21\u5757\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.wait</span><span style="color:#F47067;">&lt;</span><span style="color:#6CB6FF;">String</span><span style="color:#F47067;">&gt;</span><span style="color:#ADBAC7;">(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;key_from_module&quot;</span><span style="color:#ADBAC7;">) { value </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// \u53D1\u9001\u7ED9\u6A21\u5757</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.put(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;key_from_host&quot;</span><span style="color:#ADBAC7;">, value </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;I am host&quot;</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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>\u4F60\u53EF\u4EE5\u4E0D\u8BBE\u7F6E <code>dataChannel</code> \u7684 <code>value</code> \u6765\u8FBE\u5230\u4EC5\u901A\u77E5\u6A21\u5757\u6216\u5BBF\u4E3B\u56DE\u8C03 <code>wait</code> \u65B9\u6CD5\u3002</p><blockquote><p>\u6A21\u5757\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:#768390;">// \u4ECE\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;listener_from_host&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// \u53D1\u9001\u7ED9\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).put(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;listener_from_module&quot;</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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><blockquote><p>\u5BBF\u4E3B\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:#768390;">// \u4ECE\u6A21\u5757\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;listener_from_module&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"><span style="color:#768390;">// \u53D1\u9001\u7ED9\u6A21\u5757</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.put(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;listener_from_host&quot;</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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u63A5\u6536\u65B9\u9700\u8981\u4FDD\u6301\u5B58\u6D3B\u72B6\u6001\u624D\u80FD\u6536\u5230\u901A\u8BAF\u6570\u636E\u3002</p></div><div class="custom-container tip"><p class="custom-container-title">\u5C0F\u63D0\u793A</p><p>\u66F4\u591A\u529F\u80FD\u8BF7\u53C2\u8003 <a href="../public/com/highcapable/yukihookapi/hook/xposed/channel/YukiHookDataChannel">YukiHookDataChannel</a>\u3002</p></div><h2 id="\u5224\u65AD\u6A21\u5757\u4E0E\u5BBF\u4E3B\u7248\u672C\u662F\u5426\u5339\u914D" tabindex="-1"><a class="header-anchor" href="#\u5224\u65AD\u6A21\u5757\u4E0E\u5BBF\u4E3B\u7248\u672C\u662F\u5426\u5339\u914D" aria-hidden="true">#</a> \u5224\u65AD\u6A21\u5757\u4E0E\u5BBF\u4E3B\u7248\u672C\u662F\u5426\u5339\u914D</h2><blockquote><p>\u901A\u8FC7\u901A\u8BAF\u6865\u529F\u80FD\uFF0C<code>YukiHookAPI</code> \u8FD8\u4E3A\u4F60\u63D0\u4F9B\u4E86\u5728\u7528\u6237\u66F4\u65B0\u6A21\u5757\u540E\uFF0C\u5224\u65AD\u6A21\u5757\u662F\u5426\u4E0E\u5BBF\u4E3B\u7248\u672C\u5339\u914D\u7684\u89E3\u51B3\u65B9\u6848\u3002</p></blockquote><p>\u6211\u4EEC\u53EA\u9700\u8981\u8C03\u7528 <code>checkingVersionEquals</code> \u65B9\u6CD5\uFF0C\u5373\u53EF\u5B9E\u73B0\u8FD9\u4E2A\u529F\u80FD\u3002</p><p>\u5728\u6A21\u5757\u4E0E\u5BBF\u4E3B\u4E2D\u53EF\u8FDB\u884C\u53CC\u5411\u5224\u65AD\u3002</p><p>\u4F60\u53EF\u4EE5\u5728\u6A21\u5757\u4E2D\u5224\u65AD\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B\u662F\u5426\u4E0E\u5F53\u524D\u6A21\u5757\u7684\u7248\u672C\u5339\u914D\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:#768390;">// \u4ECE\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).checkingVersionEquals { isEquals </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>\u4F60\u8FD8\u53EF\u4EE5\u5728\u5BBF\u4E3B\u4E2D\u5224\u65AD\u662F\u5426\u81EA\u8EAB\u4E0E\u5F53\u524D\u6A21\u5757\u7684\u7248\u672C\u5339\u914D\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:#768390;">// \u4ECE\u6A21\u5757\u83B7\u53D6</span></span>
<span class="line"><span style="color:#ADBAC7;">dataChannel.checkingVersionEquals { isEquals </span><span style="color:#F47067;">-&gt;</span></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><div class="custom-container warning"><p class="custom-container-title">\u65B9\u6CD5\u56DE\u8C03\u7684\u6761\u4EF6</p><p>\u5BBF\u4E3B\u3001\u6A21\u5757\u4FDD\u6301\u5B58\u6D3B\u72B6\u6001\uFF0C\u5E76\u5728\u6FC0\u6D3B\u6A21\u5757\u540E\u91CD\u542F\u4E86\u4F5C\u7528\u57DF\u4E2D\u7684 Hook \u76EE\u6807\u5BBF\u4E3B\u5BF9\u8C61\u3002</p></div><div class="custom-container tip"><p class="custom-container-title">\u5C0F\u63D0\u793A</p><p>\u66F4\u591A\u529F\u80FD\u8BF7\u53C2\u8003 <a href="../public/com/highcapable/yukihookapi/hook/xposed/channel/YukiHookDataChannel">YukiHookDataChannel</a>\u3002</p></div><h2 id="\u56DE\u8C03\u4E8B\u4EF6\u54CD\u5E94\u7684\u89C4\u5219" tabindex="-1"><a class="header-anchor" href="#\u56DE\u8C03\u4E8B\u4EF6\u54CD\u5E94\u7684\u89C4\u5219" aria-hidden="true">#</a> \u56DE\u8C03\u4E8B\u4EF6\u54CD\u5E94\u7684\u89C4\u5219</h2><p>\u8FD9\u91CC\u53EA\u5217\u51FA\u4E86\u5728\u6A21\u5757\u4E2D\u4F7F\u7528\u7684\u4F8B\u5B50\uFF0C\u5728\u5BBF\u4E3B\u4E2D\u76F8\u540C\u7684 <code>key</code> \u59CB\u7EC8\u4E0D\u5141\u8BB8\u91CD\u590D\u521B\u5EFA\u3002</p><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u5728\u6A21\u5757\u548C\u5BBF\u4E3B\u4E2D\uFF0C\u6BCF\u4E00\u4E2A <strong>dataChannel</strong> \u5BF9\u5E94\u7684 <strong>key</strong> \u7684\u56DE\u8C03\u4E8B\u4EF6<strong>\u90FD\u4E0D\u5141\u8BB8\u91CD\u590D\u521B\u5EFA</strong>\uFF0C\u82E5\u91CD\u590D\uFF0C\u4E4B\u524D\u7684\u56DE\u8C03\u4E8B\u4EF6\u4F1A\u88AB\u65B0\u589E\u52A0\u7684\u56DE\u8C03\u4E8B\u4EF6\u66FF\u6362\uFF0C\u82E5\u5728\u6A21\u5757\u4E2D\u4F7F\u7528\uFF0C\u5728\u540C\u4E00\u4E2A <strong>Activity</strong> \u4E2D\u4E0D\u53EF\u4EE5\u91CD\u590D\uFF0C\u4E0D\u540C\u7684 <strong>Activity</strong> \u4E2D\u76F8\u540C\u7684 <strong>key</strong> \u5141\u8BB8\u91CD\u590D\u3002</p></div><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:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">MainActivity</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">AppCompatActivity</span><span style="color:#ADBAC7;">() {</span></span>
<span class="line"></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onCreate</span><span style="color:#ADBAC7;">(savedInstanceState</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Bundle?</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#6CB6FF;">super</span><span style="color:#ADBAC7;">.onCreate(savedInstanceState)</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#768390;">// \u56DE\u8C03\u4E8B\u4EF6 A</span></span>
<span class="line"><span style="color:#ADBAC7;">        dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test_key&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">            </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">        }</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#768390;">// \u56DE\u8C03\u4E8B\u4EF6 B</span></span>
<span class="line"><span style="color:#ADBAC7;">        dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test_key&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">            </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">        }</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#768390;">// \u56DE\u8C03\u4E8B\u4EF6 C</span></span>
<span class="line"><span style="color:#ADBAC7;">        dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;other_test_key&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">            </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">        }</span></span>
<span class="line"><span style="color:#ADBAC7;">    }</span></span>
<span class="line"><span style="color:#ADBAC7;">}</span></span>
<span class="line"></span>
<span class="line"><span style="color:#F47067;">class</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">OtherActivity</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#6CB6FF;">AppCompatActivity</span><span style="color:#ADBAC7;">() {</span></span>
<span class="line"></span>
<span class="line"><span style="color:#ADBAC7;">    </span><span style="color:#F47067;">override</span><span style="color:#ADBAC7;"> </span><span style="color:#F47067;">fun</span><span style="color:#ADBAC7;"> </span><span style="color:#DCBDFB;">onCreate</span><span style="color:#ADBAC7;">(savedInstanceState</span><span style="color:#F47067;">:</span><span style="color:#ADBAC7;"> </span><span style="color:#F69D50;">Bundle?</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#6CB6FF;">super</span><span style="color:#ADBAC7;">.onCreate(savedInstanceState)</span></span>
<span class="line"><span style="color:#ADBAC7;">        </span><span style="color:#768390;">// \u56DE\u8C03\u4E8B\u4EF6 D</span></span>
<span class="line"><span style="color:#ADBAC7;">        dataChannel(packageName </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;com.example.demo&quot;</span><span style="color:#ADBAC7;">).wait(key </span><span style="color:#F47067;">=</span><span style="color:#ADBAC7;"> </span><span style="color:#96D0FF;">&quot;test_key&quot;</span><span style="color:#ADBAC7;">) {</span></span>
<span class="line"><span style="color:#ADBAC7;">            </span><span style="color:#768390;">// Your code here.</span></span>
<span class="line"><span style="color:#ADBAC7;">        }</span></span>
<span class="line"><span style="color:#ADBAC7;">    }</span></span>
<span class="line"><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 class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div><div class="line-number"></div></div></div><p>\u5728\u4E0A\u8FF0\u793A\u4F8B\u4E2D\uFF0C\u56DE\u8C03\u4E8B\u4EF6 A \u4F1A\u88AB\u56DE\u8C03\u4E8B\u4EF6 B \u66FF\u6362\u6389\uFF0C\u56DE\u8C03\u4E8B\u4EF6 C \u7684 <code>key</code> \u4E0D\u4E0E\u5176\u5B83\u91CD\u590D\uFF0C\u56DE\u8C03\u4E8B\u4EF6 D \u5728\u53E6\u4E00\u4E2A Activity \u4E2D\uFF0C\u6240\u4EE5\u6700\u7EC8\u56DE\u8C03\u4E8B\u4EF6 B\u3001C\u3001D \u90FD\u53EF\u88AB\u521B\u5EFA\u6210\u529F\u3002</p><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u4E00\u4E2A\u76F8\u540C <strong>key</strong> \u7684\u56DE\u8C03\u4E8B\u4EF6\u53EA\u4F1A\u56DE\u8C03\u5F53\u524D\u6A21\u5757\u6B63\u5728\u663E\u793A\u7684 <strong>Activity</strong> \u4E2D\u6CE8\u518C\u7684\u56DE\u8C03\u4E8B\u4EF6\uFF0C\u4F8B\u5982\u4E0A\u8FF0\u4E2D\u7684 <strong>test_key</strong>\uFF0C\u5982\u679C <strong>OtherActivity</strong> \u6B63\u5728\u663E\u793A\uFF0C\u90A3\u4E48 <strong>MainActivity</strong> \u4E2D\u7684 <strong>test_key</strong> \u5C31\u4E0D\u4F1A\u88AB\u56DE\u8C03\u3002</p><p>\u76F8\u540C\u7684 <strong>key</strong> \u5728\u540C\u4E00\u4E2A <strong>Activity</strong> \u4E0D\u540C\u7684 <strong>Fragment</strong> \u4E2D\u6CE8\u518C <strong>dataChannel</strong>\uFF0C\u5B83\u4EEC\u4F9D\u7136\u4F1A\u5728\u5F53\u524D <strong>Activity</strong> \u4E2D\u540C\u65F6\u88AB\u56DE\u8C03\u3002</p><p>\u5728\u6A21\u5757\u4E2D\uFF0C\u4F60\u53EA\u80FD\u4F7F\u7528 <strong>Activity</strong> \u7684 <strong>Context</strong> \u6CE8\u518C <strong>dataChannel</strong>\uFF0C\u4F60\u4E0D\u80FD\u5728 <strong>Application</strong> \u4EE5\u53CA <strong>Service</strong> \u7B49\u5730\u65B9\u4F7F\u7528 <strong>dataChannel</strong>\u3002</p><p>\u82E5\u8981\u5728 <strong>Fragment</strong> \u4E2D\u4F7F\u7528 <strong>dataChannel</strong>\uFF0C\u8BF7\u4F7F\u7528 <strong>activity?.dataChannel(...)</strong>\u3002</p></div><h2 id="\u5B89\u5168\u6027\u8BF4\u660E" tabindex="-1"><a class="header-anchor" href="#\u5B89\u5168\u6027\u8BF4\u660E" aria-hidden="true">#</a> \u5B89\u5168\u6027\u8BF4\u660E</h2><p>\u5728\u6A21\u5757\u73AF\u5883\u4E2D\uFF0C\u4F60\u53EA\u80FD\u63A5\u6536<u><strong>\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B</strong></u>\u53D1\u9001\u7684\u901A\u8BAF\u6570\u636E\u4E14\u53EA\u80FD\u53D1\u9001\u7ED9<u><strong>\u6307\u5B9A\u5305\u540D\u7684\u5BBF\u4E3B</strong></u>\u3002</p><div class="custom-container danger"><p class="custom-container-title">\u7279\u522B\u6CE8\u610F</p><p>\u4E3A\u4E86\u8FDB\u4E00\u6B65\u9632\u6B62\u5E7F\u64AD\u6EE5\u7528\uFF0C\u901A\u8BAF\u6570\u636E\u4E2D API \u4F1A\u81EA\u52A8\u6307\u5B9A\u5BBF\u4E3B\u548C\u6A21\u5757\u7684\u5305\u540D\uFF0C\u9632\u6B62\u5176\u5B83 APP \u76D1\u542C\u5E76\u5229\u7528\u5E7F\u64AD\u505A\u51FA\u8D85\u9650\u884C\u4E3A\u3002</p></div>`,39),p=[o];function t(c,r){return n(),a("div",null,p)}const d=s(e,[["render",t],["__file","xposed-channel.html.vue"]]);export{d as default};
