JKBaseLib/README.md

2.9 KiB
Raw Blame History

BASE And AD模块集成指南

base-lib and ad 集成指南

项目gradle

maven {
    url "http://124.221.136.193:3000/app-lib/JKBaseLib/raw/master/maven"
    allowInsecureProtocol = true  // 允许HTTP
    metadataSources {
        artifact()  // 强制校验POM文件
    }
}

模块的gradle


implementation ('com.chuangketie.jk:base-lib:1.0.0@aar') {
    transitive = true  // 确保嵌套依赖被加载
}
implementation ('com.chuangketie.jk:ad-lib:1.0.0@aar') {
    transitive = true  // 确保嵌套依赖被加载
}

BASE

new LibraryApp.Builder(this)
.addSlot(LOG_PRINT, "log_print")
//ANIMATION_SKIP 0:默认从右向左弹出; 1:淡入Fade; 2://缩放+透明度Scale + Fade; 3:缩放+透明度; 4:缩放+旋转;
.addSlot(ANIMATION_SKIP,"0")    
.initialize();//初始化
参数 类型 必填 说明
context Context 应用上下文
LOG_PRINT String Log打印
ANIMATION_SKIP String 页面跳转动画

AD

基础配置(必填项)

new AdApp.Builder(this, Constants.APP_NAME, getChannel(), getAppSplash())
.addSlot(AD_APPID, "app_id")      // APPID
.addSlot(AD_CSJID, "csj_id")      // CSJID
.addSlot(AD_CODE_SPLASH, "splash_id")     // 添加横幅广告位
.addSlot(AD_CODE_REWARD, "reward_id")     // 激励视频广告位
.addSlot(AD_CODE_FEED1, "feed1_id")      // 信息流1广告位
.addSlot(AD_CODE_FEED2, "feed2_id")      // 信息流2广告位
.addSlot(AD_CODE_FEED3, "feed3_id")      // 信息流3广告位
.addSlot(AD_CODE_BANNER, "banner_id")     // banner广告位
.addSlot(AD_CODE_Draw, "draw_id")     // draw广告位
.addSlot(NO_AD,"true")      //强制不开启广告
.initialize();
参数 类型 必填 说明
context Context 应用上下文
APP_NAME String 应用名称
CHANNEL String 渠道
AppSplash int 启动页id
APPID String appid
CSJID String csjid
AD_CODE_* String 各类型广告位id

调试模式

// 开发阶段开启(正式环境需关闭)
- LogAd.setDebug(true);

最佳实践

  • 初始化时机在Application.onCreate()中完成初始化
  • 隐私合规‌:确保用户已同意隐私政策
  • 版本兼容最低支持Android 7.0(API 24)

广告开关初始化失败监听

// 重新请求广告开关
ADStateUtils.setSwitchRequestListener(new ADStateUtils.SwitchRequestListener() {
    @Override
    public void onSwitchRequestChanged() {
        AdUtils.getAdvFlag();
    }
});

注意事项

⚠️ 正式发布前确认:

  • 调试日志已关闭
  • 所有广告位ID已测试通过
  • 符合广告平台政策要求