diff --git a/app/build.gradle b/app/build.gradle
index 7d03af5..844eeaa 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -52,6 +52,12 @@ android {
buildConfigField 'String', 'BOOTPAY_APP_ID', '"64c35be1d25985001dc50c87"'
buildConfigField 'String', 'AGORA_APP_ID', '"e34e40046e9847baba3adfe2b8ffb4f6"'
buildConfigField 'String', 'AGORA_APP_CERTIFICATE', '"15cadeea4ba94ff7b091c9a10f4bf4a6"'
+ buildConfigField 'String', 'ADMOB_FREE_CONTENT_BANNER_UNIT_ID', '"ca-app-pub-1299501215847962/8351317711"'
+
+ // manifest
+ manifestPlaceholders["ADMOB_APP_ID"] = "ca-app-pub-1299501215847962~1110535210"
+
+ resValue 'string', 'admob_free_content_banner_unit_id', 'ca-app-pub-1299501215847962/8351317711'
}
debug {
@@ -63,6 +69,12 @@ android {
buildConfigField 'String', 'BOOTPAY_APP_ID', '"6242a7772701800023f68b2e"'
buildConfigField 'String', 'AGORA_APP_ID', '"b96574e191a9430fa54c605528aa3ef7"'
buildConfigField 'String', 'AGORA_APP_CERTIFICATE', '"ae18ade3afcf4086bd4397726eb0654c"'
+ buildConfigField 'String', 'ADMOB_FREE_CONTENT_BANNER_UNIT_ID', '"ca-app-pub-3940256099942544/6300978111"'
+
+ // manifest
+ manifestPlaceholders["ADMOB_APP_ID"] = "ca-app-pub-1299501215847962~3769074871"
+
+ resValue 'string', 'admob_free_content_banner_unit_id', 'ca-app-pub-3940256099942544/6300978111'
}
}
compileOptions {
@@ -148,4 +160,6 @@ dependencies {
annotationProcessor 'com.github.bumptech.glide:compiler:4.12.0'
implementation "com.michalsvec:single-row-calednar:1.0.0"
+
+ implementation 'com.google.android.gms:play-services-ads:22.3.0'
}
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 1489a00..5218050 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -135,5 +135,9 @@
android:name="com.google.firebase.messaging.default_notification_channel_id"
android:value="@string/default_notification_channel_id" />
+
+
diff --git a/app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt b/app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt
index 1d11857..0ef436e 100644
--- a/app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt
+++ b/app/src/main/java/kr/co/vividnext/sodalive/app/SodaLiveApp.kt
@@ -1,10 +1,14 @@
package kr.co.vividnext.sodalive.app
import android.app.Application
+import android.content.Context
import android.content.pm.ApplicationInfo
import android.content.pm.PackageManager
import android.os.Build
import androidx.appcompat.app.AppCompatDelegate
+import com.google.android.gms.ads.MobileAds
+import com.google.android.gms.common.ConnectionResult
+import com.google.android.gms.common.GoogleApiAvailability
import com.orhanobut.logger.AndroidLogAdapter
import com.orhanobut.logger.Logger
import kr.co.vividnext.sodalive.BuildConfig
@@ -26,6 +30,12 @@ class SodaLiveApp : Application() {
AppCompatDelegate.setDefaultNightMode(AppCompatDelegate.MODE_NIGHT_YES)
SharedPreferenceManager.init(applicationContext)
+
+ if (isGooglePlayServicesAvailable(this)) {
+ MobileAds.initialize(this) {
+ Logger.e("ADMOB 초기화 - ${it.adapterStatusMap}")
+ }
+ }
}
private fun isDebuggable(): Boolean {
@@ -47,4 +57,10 @@ class SodaLiveApp : Application() {
return debuggable
}
+
+ private fun isGooglePlayServicesAvailable(context: Context): Boolean {
+ val googleApiAvailability = GoogleApiAvailability.getInstance()
+ val resultCode = googleApiAvailability.isGooglePlayServicesAvailable(context)
+ return resultCode == ConnectionResult.SUCCESS
+ }
}
diff --git a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt
index bdfc722..c65ed05 100644
--- a/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt
+++ b/app/src/main/java/kr/co/vividnext/sodalive/audio_content/detail/AudioContentDetailActivity.kt
@@ -20,6 +20,7 @@ import coil.load
import coil.transform.CircleCropTransformation
import com.bumptech.glide.Glide
import com.bumptech.glide.request.RequestOptions
+import com.google.android.gms.ads.AdRequest
import com.google.gson.Gson
import kr.co.vividnext.sodalive.R
import kr.co.vividnext.sodalive.audio_content.AudioContentPlayService
@@ -95,6 +96,7 @@ class AudioContentDetailActivity : BaseActivity 0
+
+ if ((!it.existOrdered && it.price > 0) || it.price <= 0) setupAdMob()
}
viewModel.isContentPlayLoopLiveData.observe(this) {
diff --git a/app/src/main/res/layout/activity_audio_content_detail.xml b/app/src/main/res/layout/activity_audio_content_detail.xml
index 5b00db8..faa5ed4 100644
--- a/app/src/main/res/layout/activity_audio_content_detail.xml
+++ b/app/src/main/res/layout/activity_audio_content_detail.xml
@@ -1,5 +1,6 @@
+
+