Merge branch 'fix/csj-privacy-issue' into 'dev'
fix: 处理穿山甲 SDK 的自动初始化问题,穿山甲 SDK 区分测试和正式 ID See merge request halo/android/assistant-android!1288
This commit is contained in:
@ -188,6 +188,7 @@ android {
|
||||
buildConfigField "String", "DEV_VAPI_HOST", "\"${DEV_VAPI_HOST}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${DEV_QUICK_LOGIN_APPID}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${DEV_QUICK_LOGIN_APPKEY}\""
|
||||
buildConfigField "String", "CSJ_APPID", "\"${DEV_CSJ_APPID}\""
|
||||
}
|
||||
|
||||
// publish, 发布时候使用的 flavor,接口仅包含正式环境
|
||||
@ -199,6 +200,7 @@ android {
|
||||
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
|
||||
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
|
||||
}
|
||||
|
||||
tea {
|
||||
@ -209,6 +211,7 @@ android {
|
||||
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
|
||||
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
|
||||
|
||||
manifestPlaceholders.put("APPLOG_SCHEME", "rangersapplog.byAx6uYt".toLowerCase())
|
||||
}
|
||||
@ -221,6 +224,7 @@ android {
|
||||
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
|
||||
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
|
||||
}
|
||||
|
||||
gdt {
|
||||
@ -231,6 +235,7 @@ android {
|
||||
buildConfigField "String", "DEV_VAPI_HOST", "\"${VAPI_HOST}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPID", "\"${QUICK_LOGIN_APPID}\""
|
||||
buildConfigField "String", "QUICK_LOGIN_APPKEY", "\"${QUICK_LOGIN_APPKEY}\""
|
||||
buildConfigField "String", "CSJ_APPID", "\"${CSJ_APPID}\""
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -17,6 +17,7 @@ import com.gh.common.exposure.ExposureManager
|
||||
import com.gh.common.util.DirectUtils.directToLinkPage
|
||||
import com.gh.common.util.LogUtils
|
||||
import com.gh.common.util.NewFlatLogUtils.logOpenScreenAdSkip
|
||||
import com.gh.gamecenter.BuildConfig
|
||||
import com.gh.gamecenter.MainActivity
|
||||
import com.gh.gamecenter.R
|
||||
import com.gh.gamecenter.common.base.activity.BaseActivity
|
||||
@ -159,7 +160,7 @@ object AdDelegateHelper {
|
||||
if (mIsCsjRequired && mCsjAdImpl == null) {
|
||||
mCsjAdImpl =
|
||||
ARouter.getInstance().build(RouteConsts.provider.csjAd).navigation() as? ICsjAdProvider
|
||||
mCsjAdImpl?.initSDK(context, HaloApp.getInstance().oaid)
|
||||
mCsjAdImpl?.initSDK(context, BuildConfig.CSJ_APPID, HaloApp.getInstance().oaid)
|
||||
// 监听亮色/暗色模式切换
|
||||
DarkModeUtils.registerModeChangeListener {
|
||||
val topActivity = CurrentActivityHolder.getCurrentActivity() ?: return@registerModeChangeListener
|
||||
|
||||
3
feature/csj_ad/proguard-rules.pro
vendored
3
feature/csj_ad/proguard-rules.pro
vendored
@ -18,4 +18,5 @@
|
||||
|
||||
# If you keep the line number information, uncomment this to
|
||||
# hide the original source file name.
|
||||
#-renamesourcefileattribute SourceFile
|
||||
#-renamesourcefileattribute SourceFile
|
||||
-keep class android.content.ContentProvider {<fields>;}
|
||||
@ -54,6 +54,12 @@
|
||||
android:authorities="${applicationId}.TTMultiProvider"
|
||||
android:exported="false" />
|
||||
|
||||
<provider
|
||||
android:name="com.bytedance.sdk.openadsdk.stub.server.MainServerManager"
|
||||
android:authorities="${applicationId}.pangle.servermanager.main"
|
||||
android:exported="false"
|
||||
tools:node="remove"/>
|
||||
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@ -12,20 +12,33 @@ import com.bytedance.sdk.openadsdk.TTAdNative.CSJSplashAdListener
|
||||
import com.bytedance.sdk.openadsdk.TTAdNative.NativeExpressAdListener
|
||||
import com.bytedance.sdk.openadsdk.TTAdSdk.InitCallback
|
||||
import com.bytedance.sdk.openadsdk.TTNativeExpressAd.ExpressAdInteractionListener
|
||||
import com.bytedance.sdk.openadsdk.stub.server.MainServerManager
|
||||
import com.gh.gamecenter.common.utils.PackageFlavorHelper
|
||||
import com.gh.gamecenter.common.utils.doOnFragmentDestroy
|
||||
import com.lightgame.utils.Utils
|
||||
import java.lang.reflect.Field
|
||||
|
||||
object CsjAdHelper {
|
||||
|
||||
const val TAG = "CsjAdHelper"
|
||||
|
||||
fun init(context: Context, oaid: String) {
|
||||
fun init(context: Context, csjId: String, oaid: String) {
|
||||
|
||||
try {
|
||||
val serverContentProvider = MainServerManager()
|
||||
val contextField: Field = serverContentProvider.javaClass.superclass.superclass.getDeclaredField("mContext")
|
||||
contextField.isAccessible = true
|
||||
contextField.set(serverContentProvider, context)
|
||||
serverContentProvider.onCreate()
|
||||
} catch (e: Exception) {
|
||||
e.printStackTrace()
|
||||
}
|
||||
|
||||
// 强烈建议在应用对应的Application#onCreate()方法中调用,避免出现content为null的异常
|
||||
TTAdSdk.init(
|
||||
context,
|
||||
TTAdConfig.Builder()
|
||||
.appId("5410486")// xxxxxxx为穿山甲媒体平台注册的应用ID
|
||||
.appId(csjId)// xxxxxxx为穿山甲媒体平台注册的应用ID
|
||||
.useTextureView(true) // 默认使用SurfaceView播放视频广告,当有SurfaceView冲突的场景,可以使用TextureView
|
||||
.appName("光环助手")
|
||||
.titleBarTheme(TTAdConstant.TITLE_BAR_THEME_DARK)//落地页主题
|
||||
|
||||
@ -10,8 +10,8 @@ import com.gh.gamecenter.core.provider.ICsjAdProvider
|
||||
|
||||
@Route(path = RouteConsts.provider.csjAd, name = "csj广告暴露服务")
|
||||
class CsjAdProviderImpl : ICsjAdProvider {
|
||||
override fun initSDK(context: Context, oaid: String) {
|
||||
CsjAdHelper.init(context, oaid)
|
||||
override fun initSDK(context: Context, id: String, oaid: String) {
|
||||
CsjAdHelper.init(context, id, oaid)
|
||||
}
|
||||
|
||||
override fun requestSplashAd(
|
||||
|
||||
@ -52,6 +52,9 @@ QUICK_LOGIN_APPKEY=002BAABA2C078342DA33BEAB0A4C6A25
|
||||
DEV_QUICK_LOGIN_APPID=300012281661
|
||||
DEV_QUICK_LOGIN_APPKEY=1BFAB6E349F1D69CC06ABAD9D7A43FB8
|
||||
|
||||
DEV_CSJ_APPID=5410486
|
||||
CSJ_APPID=5429125
|
||||
|
||||
# hosts
|
||||
DEV_API_HOST=https\://dev-and-api.ghzs.com/v5d5d0/
|
||||
API_HOST=https\://and-api.ghzs.com/v5d5d0/
|
||||
|
||||
@ -8,7 +8,7 @@ import com.alibaba.android.arouter.facade.template.IProvider
|
||||
|
||||
interface ICsjAdProvider : IProvider {
|
||||
|
||||
fun initSDK(context: Context, oaid: String)
|
||||
fun initSDK(context: Context, id: String, oaid: String)
|
||||
|
||||
fun requestSplashAd(
|
||||
activity: Activity,
|
||||
|
||||
Reference in New Issue
Block a user