H5前端和原生交互-抖音 cps
<p>[TOC]</p>
<h3>1、前端调用客户端接口</h3>
<table>
<thead>
<tr>
<th>方法</th>
<th>参数</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>account_register</td>
<td><code>uid</code></td>
<td>账号注册 上报</td>
</tr>
<tr>
<td>account_login</td>
<td><code>uid</code>,<code>is_bind_dy</code>(1已经绑定抖音,0未绑定抖音)</td>
<td>账号登录 上报</td>
</tr>
<tr>
<td>role_register</td>
<td><code>uid</code>,<code>role_id</code>,<code>role_name</code>,role_level,<code>server_id</code>,<code>server_name</code></td>
<td>创建角色 上报</td>
</tr>
<tr>
<td>role_login</td>
<td>同上</td>
<td>角色登录 上报</td>
</tr>
<tr>
<td>pay_suc</td>
<td><code>uid</code>,role_id,<code>order_id</code>,<code>amount</code>(分),product_id,product_name,product_des</td>
<td>付费完成上报</td>
</tr>
<tr>
<td>logout</td>
<td>无</td>
<td>退出账号 清除抖音登录缓存</td>
</tr>
<tr>
<td>douyin_login</td>
<td><code>request_token</code>(init 返回的 token),<code>game</code>,<code>api_secret</code>(签名用)</td>
<td>调起原生抖音登录</td>
</tr>
<tr>
<td>reauthorize_douyin</td>
<td><code>game</code>,<code>login_token</code>(登录成功后的 token),<code>api_secret</code>(签名用)</td>
<td>授权过期后,再调起原生抖音登录重新授权,获取最新的抖音openid 和 token</td>
</tr>
<tr>
<td>bind_douyin</td>
<td><code>game</code>,<code>login_token</code>(登录成功后的 token),<code>api_secret</code>(签名用)</td>
<td>手机账号登录后,绑定抖音账号</td>
</tr>
<tr>
<td>get_click_id</td>
<td>无</td>
<td>获取头条 click_id</td>
</tr>
<tr>
<td>get_caid_json</td>
<td>无</td>
<td>获取caid 相关参数</td>
</tr>
</tbody>
</table>
<ul>
<li>iOS调用方法 <code>iosWebView</code> 为客户端监听的方法</li>
</ul>
<pre><code class="language-javascript">window.webkit.messageHandlers.iosWebView.postMessage({
method: &quot;role_register&quot;,
params: json,
});</code></pre>
<h3>2、客户端回调前端</h3>
<table>
<thead>
<tr>
<th>方法</th>
<th>参数</th>
<th>说明</th>
</tr>
</thead>
<tbody>
<tr>
<td>douyin_login_suc</td>
<td>open_id,token</td>
<td>原生抖音登录成功之后与服务端校验后的联运层 uid 和 token</td>
</tr>
<tr>
<td>douyin_expired</td>
<td>无</td>
<td>抖音登录授权信息已过期,需要重授权(玩家取消授权,则本次登录不回调客户端 reauthorize_douyin )</td>
</tr>
<tr>
<td>douyin_bind_suc</td>
<td>无</td>
<td>手机号登录绑定抖音账号成功,前端关闭页面</td>
</tr>
<tr>
<td>douyin_reauthorize_suc</td>
<td>无</td>
<td>更新抖音账号授权成功,前端关闭页面</td>
</tr>
<tr>
<td>click_id</td>
<td>json</td>
<td>返回 click_id //可能为空 {"click_id":""} or {"click_id":"123"}</td>
</tr>
<tr>
<td>caid_json</td>
<td>json</td>
<td>返回 CAID 相关参数</td>
</tr>
</tbody>
</table>
<h3>3、caid 返回给前端格式</h3>
<pre><code class="language-json">{&quot;carrierInfo&quot;:&quot;--&quot;,&quot;machine&quot;:&quot;iPhone13,2&quot;,&quot;mntId&quot;:&quot;84113528C61D89DAB2B3FFA396AFC1402A74A6A44FC5E5C3A74AB8F73AC98E1E@\/dev\/disk1s1&quot;,&quot;sysFileTime&quot;:&quot;1741611075.398366&quot;,&quot;countryCode&quot;:&quot;CN&quot;,&quot;deviceInitTime&quot;:&quot;1700809112.243688598&quot;,&quot;deviceName&quot;:&quot;867e57bd062c7169995dc03cc0541c19&quot;,&quot;timeZone&quot;:&quot;28800&quot;,&quot;memory&quot;:&quot;3866836992&quot;,&quot;disk&quot;:&quot;127870980096&quot;,&quot;language&quot;:&quot;zh-Hans-CN&quot;,&quot;systemVersion&quot;:&quot;18.3.1&quot;,&quot;bootTimeInSec&quot;:&quot;1741611062&quot;,&quot;model&quot;:&quot;D53gAP&quot;}</code></pre>