更新记录
1.0.1(2021-11-17) 下载此版本
此插件支持Banner、插屏广告
平台兼容性
Android | Android CPU类型 | iOS |
---|---|---|
适用版本区间:5.0 - 11.0 | armeabi-v7a:支持,arm64-v8a:支持,x86:支持 | 适用版本区间:9 - 14 |
原生插件通用使用流程:
- 购买插件,选择该插件绑定的项目。
- 在HBuilderX里找到项目,在manifest的app原生插件配置中勾选模块,如需要填写参数则参考插件作者的文档添加。
- 根据插件作者的提供的文档开发代码,在代码中引用插件,调用插件功能。
- 打包自定义基座,选择插件,得到自定义基座,然后运行时选择自定义基座,进行log输出测试。
- 开发完毕后正式云打包
付费原生插件目前不支持离线打包。
Android 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/android
iOS 离线打包原生插件另见文档 https://nativesupport.dcloud.net.cn/NativePlugin/offline_package/ios
注意事项:使用HBuilderX2.7.14以下版本,如果同一插件且同一appid下购买并绑定了多个包名,提交云打包界面提示包名绑定不一致时,需要在HBuilderX项目中manifest.json->“App原生插件配置”->”云端插件“列表中删除该插件重新选择
移卡Uni-app广告插件使用说明
一 、SDK导入
1.1 应用市场搜索插件
进入uni插件市场(https://ext.dcloud.net.cn/),搜索移卡原生广告插件,点击购买(0.00元)for云打包。
1.2 SDK导入到uni-app工程中
进入manifest.json文件的“App原生插件配置”项下点击“选择云端插件”,在列表中选择“移卡原生广告插件”。
二、初始化SDK
接口:
YK_registerSDKWithAppKey("appkey")
参数说明:
- appkey 当前应用的appkey,由运营人员分配,通常一个应用的Android和iOS端的appkey是一致
2.1引入Module
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
2.2 SDK初始化调用
//初始化SDK
let platform = uni.getSystemInfoSync().platform
if (platform === 'android') {
console.log('Android SDK初始化');
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_registerSDKWithAppKey('当前应用的AppKey');
} else if(platform === 'ios') {
console.log('iOS SDK初始化');
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_registerSDKWithAppKey('当前应用的AppKey');
}
注意:sdk初始化建议在程序启动的时候调用,可放在App的onLaunch方法中
三、加载广告
3.1 Banner广告
将banner标签添加到页面中
<YK-Banner @YK_uniAdBannerLoad="adBannerLoad"
@YK_uniAdBannerError="adBannerError"
iosAdid='ios广告位ID'
androidAdid='android广告位ID'
style="width:400px;height:200px; background-color: #007AFF;"></YK-Banner>
如上图,YK_Banner为自定义个广告Banner,仅支持nvue页面添加该组件.
参数说明:
- YK_uniAdBannerLoad 广告加载成功回调
- YK_uniAdBannerError 广告加载失败回调
- iosAdid ios端Banner广告位ID
- androidAdid android端Banner广告ID
- style 组件的样式,可根据需要自行设置
3.2 普通插屏广告
接口:
YK_showInterstitialAd('广告位ID', callback);
参数说明:
- 广告位ID:由运营人员根据广告类型分配
- callback:事件回调
3.2.1 引入module
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
3.2.2 展示插屏广告
//加载插屏
showInterstitialAd() {
let platform = uni.getSystemInfoSync().platform
if (platform === 'android') {
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_showInterstitialAd('Android端插屏广告位ID', res => {
console.log(JSON.stringify(res));
});
} else if (platform === 'ios') {
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_showInterstitialAd('iOS端插屏广告位ID', res => {
console.log(JSON.stringify(res));
});
}
}
3.3 倒计时插屏广告
接口:
YK_showSplashAd('广告位ID', callback);
参数说明:
- 广告位ID:由运营人员根据广告类型分配
- callback:事件回调
3.3.1 引入module
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
3.3.2 展示插屏广告
showSplashAd() {
let platform = uni.getSystemInfoSync().platform
if (platform === 'android') {
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_showSplashAd('Android端插屏广告位ID', res => {
console.log(JSON.stringify(res));
this.tip = JSON.stringify(res);
});
} else if (platform === 'ios') {
var ykUniModule = uni.requireNativePlugin("YK-UniAdPlugin")
ykUniModule.YK_showSplashAd('iOS端插屏广告位ID', res => {
console.log(JSON.stringify(res));
this.tip = JSON.stringify(res);
});
}
}
四、项目配置
4.1 Android 端配置
4.1.1 添加读写权限
"distribute" : {
"android" : {
"permissions" : [
"<uses-permission android:name=\"android.permission.READ_EXTERNAL_STORAGE\"/>",
"<uses-permission android:name=\"android.permission.WRITE_EXTERNAL_STORAGE\"/>"
],
},
4.2 iOS端配置
4.2.1 配置开启广告标识(IDFA)
在 manifest.json 文件的 “App常用其它设置” 中可勾选开启(注意HBuilder X 2.4以上为默认勾选),需提交云端打包才会生效
4.2 配置NSUserTrackingUsageDescription 隐私描述
开启广告标识(IDFA)后,云端打包默认隐私描述为“请放心,开启权限不会获取您在其他站点的隐私信息,该权限仅用于标识设备并保障服务安全与提示浏览体验”,也可以在 manifest.json 文件的 “App权限配置” 项的“iOS隐私信息访问的许可描述”下配置 NSUserTrackingUsageDescription 隐私描述
"ios" : {
"privacyDescription" : {
"NSUserTrackingUsageDescription" : "请放心,开启权限后不会获取您再其他站点的隐私信息,该权限仅用于标识设备并保障服务安全与提示浏览体验"
}
},