package com.demo.library_dp; import android.app.Application; import android.util.Log; import com.bytedance.novel.pangolin.NovelConfig; import com.bytedance.novel.pangolin.NovelSDK; import com.bytedance.novel.pangolin.PangolinDocker; import com.bytedance.novel.pangolin.data.NormalFontType; import com.bytedance.novel.pangolin.data.ReaderFontType; import com.bytedance.sdk.dp.DPSdk; import com.bytedance.sdk.dp.DPSdkConfig; import com.demo.lib.common.util.ManifestDataUtil; import com.demo.lib.common.util.common.PackageUtils2; import com.demo.lib.common.widget.MyViewPager; import androidx.viewpager.widget.ViewPager; public class DPUtil { private static final String TAG = "DPUtil"; /** * 小说初始化 * * @param application * @param settingFileName */ public static void initNovel(Application application, String settingFileName) { NovelConfig config = new NovelConfig.Builder() .appName(application.getString(R.string.app_name)) //接入小说SDK的App的英文名 必填 .appVersionName(PackageUtils2.getVersionName(application)) //接入小说SDKApp的版本名称 必填 .appVersionCode(PackageUtils2.getVersionCode(application)) //接入小说SDK App的版本号 必填 .channel(ManifestDataUtil.getAppMetaData(application, "UMENG_CHANNEL")) //渠道号维度。开发者自定义字符串即可(建议不要包含test)。选填 .initInnerApplog(true) // 是否使用小说sdk来初始化applog sdk。默认为false,需要开发者在App中单独初始化applog sdk,且必须在小说sdk之前初始化。 .initInnerOpenAdSdk(true) //是否使用小说sdk来初始化广告sdk,如果为true,需要设置siteId。默认为false,需开发者在App中单独初始化广告sdk并在小说sdk之前初始化。 .jsonFileName(settingFileName)//json配置文件的名称 必填 .normalFontSize(NormalFontType.NORMAL) //全局字号大小 可选 .readerFontSize(ReaderFontType.TWO) //阅读器字号大小 可选 .build(); NovelSDK.INSTANCE.attach(new PangolinDocker(config), application); } public static void initDPSDK(Application application, String settingFileName, DPSdkConfig.InitListener initListener) { if (initListener == null) { initListener = new DPSdkConfig.InitListener() { @Override public void onInitComplete(boolean b) { Log.i(TAG, "DP初始化完成:"+b); } }; } DPSdkConfig.Builder configBuilder = new DPSdkConfig.Builder() .debug(true) .needInitAppLog(false) .initListener(initListener) //接入了红包功能需要传入的参数,没有接入的话可以忽略该配置 // .luckConfig(new DPSdkConfig.LuckConfig().application(application).enableLuck(false)) // .liveConfig(new DPSdkConfig.LiveConfig()) ;//若您需要接入直播,参考「直播接入文档」;否则可忽略此参数。 DPSdk.init(application, settingFileName, configBuilder.build()); } }