diff --git a/StatisticReporter/build.gradle.kts b/StatisticReporter/build.gradle.kts index 209ed47..9f30770 100644 --- a/StatisticReporter/build.gradle.kts +++ b/StatisticReporter/build.gradle.kts @@ -36,11 +36,15 @@ dependencies { implementation(libs.androidx.core.ktx) implementation(libs.appcompat) implementation(libs.material) + implementation(project(":base")) testImplementation(libs.junit) androidTestImplementation(libs.androidx.test.ext.junit) androidTestImplementation(libs.espresso.core) + implementation(project(":core:architecture")) + implementation(project(":bill")) + api("com.adjust.sdk:adjust-android:5.5.0") api("com.android.installreferrer:installreferrer:2.2") // Add the following if you are using the Adjust SDK inside web views on your app diff --git a/StatisticReporter/src/main/java/com/gamedog/statisticreporter/adjust/AdjustManager.kt b/StatisticReporter/src/main/java/com/gamedog/statisticreporter/adjust/AdjustManager.kt index c60faee..a08303c 100644 --- a/StatisticReporter/src/main/java/com/gamedog/statisticreporter/adjust/AdjustManager.kt +++ b/StatisticReporter/src/main/java/com/gamedog/statisticreporter/adjust/AdjustManager.kt @@ -12,8 +12,12 @@ import com.adjust.sdk.AdjustEvent import com.adjust.sdk.LogLevel import com.adjust.sdk.OnAttributionChangedListener import com.ama.core.architecture.BaseApp +import com.ama.core.architecture.util.AndroidUtil import com.ama.core.architecture.util.SpUtil import com.gamedog.statisticreporter.adjust.AdjustManager.Companion.USER_TYPE_BUY +import com.remax.base.ads.AdRevenueData +import com.remax.base.ads.AdRevenueManager +import com.remax.base.ads.AdRevenueReporter import org.json.JSONException @@ -83,8 +87,27 @@ class AdjustManager private constructor() { } Adjust.initSdk(config) Adjust.enable() + + setReporter2Bill() } + private fun setReporter2Bill() { + AdRevenueManager.addReporter(object: AdRevenueReporter { + override fun reportAdRevenue(adRevenueData: AdRevenueData) { + reportAdRevenueInfo(adRevenueData) + } + } ) + } + + fun reportAdRevenueInfo(revenueValue: AdRevenueData) { + val adjustAdRevenue = AdjustAdRevenue(getRandomFixSourceStr()).apply { + setRevenue(revenueValue.revenue.value, revenueValue.revenue.currencyCode /*"USD"*/) // ad收益数值及单位 + setAdRevenueNetwork(revenueValue.adRevenueNetwork) // 渠道来源 + setAdRevenueUnit(revenueValue.adRevenueUnit) // ad收入来源单元 + setAdRevenuePlacement(revenueValue.adRevenuePlacement) // 位置 + } + Adjust.trackAdRevenue(adjustAdRevenue) + } /** * val event = AdjustEvent("g3mfiw") @@ -97,28 +120,6 @@ class AdjustManager private constructor() { Adjust.trackEvent(event) } - - fun reportAdRevenueInfo() { - val adjustAdRevenue = AdjustAdRevenue("applovin_max_sdk").apply { - setRevenue(1.00, "EUR") // ad收益数值及单位 - setAdImpressionsCount(10) // 展示数量 - setAdRevenueNetwork("network1") // 渠道来源 - setAdRevenueUnit("unit1") // ad收入来源单元 - setAdRevenuePlacement("banner") // 位置 - addCallbackParameter("key", "url") // 回调地址-一半是自己的数据统计服务器 - addPartnerParameter("key2", "value2") // 合作合办信息 - } - - Adjust.trackAdRevenue(adjustAdRevenue) - } - - fun reportAttributionInfo() { - Adjust.getAttribution {attribution -> - // read attribution - } - } - - fun isUserBuy(): Boolean { return mSpHelper.isUserBuy() } @@ -139,7 +140,10 @@ class AdjustManager private constructor() { } } - + private fun getRandomFixSourceStr(): String { + val randomInt = AndroidUtil.randomInt(1, 10) + return if (randomInt <= 2) "ironsource_sdk" else "applovin_max_sdk" + } diff --git a/app/src/main/java/com/gamedog/vididin/VidiDinApp.kt b/app/src/main/java/com/gamedog/vididin/VidiDinApp.kt index a7aa6c7..60bad36 100644 --- a/app/src/main/java/com/gamedog/vididin/VidiDinApp.kt +++ b/app/src/main/java/com/gamedog/vididin/VidiDinApp.kt @@ -4,6 +4,9 @@ import com.ama.core.architecture.BaseApp import com.gamedog.statisticreporter.adjust.AdjustManager import com.gamedog.vididin.core.login.login.AccountManager import com.gamedog.vididin.manager.TaskManager +import com.remax.base.ads.AdRevenueData +import com.remax.base.ads.AdRevenueManager +import com.remax.base.ads.AdRevenueReporter import dagger.hilt.android.HiltAndroidApp