SDK 集成

SDK 集成

测试信息

提示

SDK 不支持模拟器运行,需要使用真机调试

请联系运营人员获取正式的应用ID和广告位ID,测试广告位信息如下:

媒体IDapplicationId
Z2845395984com.zj.daylottery.addemo
类型ID类型ID
激励广告J9378481911视频内容J4961952628
半屏插屏J7208384505全屏插屏J1556676069
H5内容页J7513581444

引入原生 SDK

参照Android 接入文档#SDK 集成配置和导入原生 SDK 到原生工程中,并按照文档初始化 SDK

配置 Webview

在原生 SDK 的启动成功回调后调用ZjSdk#registerJSBridge(Activity,Object)方法将 WebView 注册到原生 SDK 中:

提示

当前版本registerJSBridge方法支持绑定android.webkit.WebViewcom.tencent.smtt.sdk.WebView.

当需要使用视图方式插入视频内容、新闻、小说等内容时,registerJSBridge方法传入的Activity需要为FragmentActivity,否则会在请求时返回错误。

Activity销毁时,需要调用ZjSdk#unregisterJSBridge(Object webView)方法解绑,防止内存泄漏

示例代码

@Override
public void onStartSuccess() {
    ZjSdk.registerJSBridge(MainActivity.this, webView);
    webView.loadUrl("file:///android_asset/uni/index.html");
}

@Override
public void onStartFailed(int i, @Nullable String s) {

}

@Override
protected void onDestroy() {
    super.onDestroy();
    ZjSdk.unregisterJSBridge(webView);
}

引入 zjJSBridge

下载zjJSBridge-240812.js并引入工程。

建议参照 Demo 在main.js中全局引入:

// main.js
import zjJSBridge from './static/zjJSBridge.js'
Vue.prototype.zjJSBridge = zjJSBridge

也可在单独的 vue 页面中引入:

<script>
    import zjJSBridge from '@/static/zjJSBridge.js'
    export default {
        data() {
            return {

            }
        },
        onLoad() {
            this.zjJSBridge.ready(() => {
                // setListener
            })
        },
    }
</script>

提示

调用zjJSBridge的方法和属性时,需要在zjJSBridge.ready()

对象名需要固定为zjJSBridge

获取原生SDK版本信息

// AndroidSDK版本号
this.zjJSBridge.sdkVersion

演示工程

演示工程提供了通过uni平台引入jsBridge并加载、展示广告的示例代码