diff --git a/app/build.gradle b/app/build.gradle index 8a9b551..f18e887 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -63,6 +63,7 @@ android { resValue 'string', 'admob_following_channel_list_banner_unit_id', 'ca-app-pub-1299501215847962/9013979925' resValue 'string', 'admob_live_now_all_list_banner_unit_id', 'ca-app-pub-1299501215847962/7226255534' resValue 'string', 'admob_creator_channel_banner_unit_id', 'ca-app-pub-1299501215847962/4594592451' + resValue 'string', 'admob_message_banner_unit_id', 'ca-app-pub-1299501215847962/1161494343' } debug { @@ -85,6 +86,7 @@ android { resValue 'string', 'admob_following_channel_list_banner_unit_id', 'ca-app-pub-3940256099942544/6300978111' resValue 'string', 'admob_live_now_all_list_banner_unit_id', 'ca-app-pub-3940256099942544/6300978111' resValue 'string', 'admob_creator_channel_banner_unit_id', 'ca-app-pub-3940256099942544/6300978111' + resValue 'string', 'admob_message_banner_unit_id', 'ca-app-pub-3940256099942544/6300978111' } } compileOptions { diff --git a/app/src/main/java/kr/co/vividnext/sodalive/message/MessageFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/message/MessageFragment.kt index 1661312..75a2f79 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/message/MessageFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/message/MessageFragment.kt @@ -2,6 +2,7 @@ package kr.co.vividnext.sodalive.message import android.os.Bundle import android.view.View +import com.google.android.gms.ads.AdRequest import com.google.android.material.tabs.TabLayout import kr.co.vividnext.sodalive.R import kr.co.vividnext.sodalive.base.BaseFragment @@ -14,9 +15,29 @@ class MessageFragment : BaseFragment(FragmentMessageBind super.onViewCreated(view, savedInstanceState) setupView() + setupAdMob() changeFragment("message") } + override fun onResume() { + super.onResume() + binding.adView.resume() + } + + override fun onPause() { + binding.adView.pause() + super.onPause() + } + + override fun onDestroy() { + binding.adView.destroy() + super.onDestroy() + } + + private fun setupAdMob() { + binding.adView.loadAd(AdRequest.Builder().build()) + } + private fun setupView() { val tabs = binding.tabs tabs.addTab(tabs.newTab().setText("문자").setTag("message")) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/message/SelectMessageRecipientActivity.kt b/app/src/main/java/kr/co/vividnext/sodalive/message/SelectMessageRecipientActivity.kt index c0348d5..87cc9d8 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/message/SelectMessageRecipientActivity.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/message/SelectMessageRecipientActivity.kt @@ -7,6 +7,7 @@ import android.os.Bundle import android.view.View import androidx.recyclerview.widget.LinearLayoutManager import androidx.recyclerview.widget.RecyclerView +import com.google.android.gms.ads.AdRequest import com.jakewharton.rxbinding4.widget.textChanges import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers import io.reactivex.rxjava3.schedulers.Schedulers @@ -29,6 +30,7 @@ class SelectMessageRecipientActivity : BaseActivity( } bindData() + setupAdMob() } @SuppressLint("SetTextI18n") @@ -91,6 +93,25 @@ class TextMessageWriteActivity : BaseActivity( } } + override fun onResume() { + super.onResume() + binding.adView.resume() + } + + override fun onPause() { + binding.adView.pause() + super.onPause() + } + + override fun onDestroy() { + binding.adView.destroy() + super.onDestroy() + } + + private fun setupAdMob() { + binding.adView.loadAd(AdRequest.Builder().build()) + } + private fun bindData() { compositeDisposable.add( binding.etMessage.textChanges().skip(1) diff --git a/app/src/main/java/kr/co/vividnext/sodalive/message/voice/VoiceMessageWriteFragment.kt b/app/src/main/java/kr/co/vividnext/sodalive/message/voice/VoiceMessageWriteFragment.kt index 71d697d..d897770 100644 --- a/app/src/main/java/kr/co/vividnext/sodalive/message/voice/VoiceMessageWriteFragment.kt +++ b/app/src/main/java/kr/co/vividnext/sodalive/message/voice/VoiceMessageWriteFragment.kt @@ -22,6 +22,7 @@ import androidx.core.content.IntentCompat import androidx.core.content.res.ResourcesCompat import coil.load import coil.transform.RoundedCornersTransformation +import com.google.android.gms.ads.AdRequest import com.google.android.material.bottomsheet.BottomSheetBehavior import com.google.android.material.bottomsheet.BottomSheetDialog import com.google.android.material.bottomsheet.BottomSheetDialogFragment @@ -152,6 +153,7 @@ class VoiceMessageWriteFragment( loadingDialog = LoadingDialog(requireActivity(), layoutInflater) bindData() + setupAdMob() binding.ivClose.setOnClickListener { dismiss() } @@ -259,7 +261,19 @@ class VoiceMessageWriteFragment( } } + override fun onResume() { + super.onResume() + binding.adView.resume() + } + + override fun onPause() { + binding.adView.pause() + super.onPause() + } + override fun onDestroy() { + binding.adView.destroy() + if (mediaPlayer != null) { mediaPlayer!!.release() mediaPlayer = null @@ -286,6 +300,10 @@ class VoiceMessageWriteFragment( super.onDestroy() } + private fun setupAdMob() { + binding.adView.loadAd(AdRequest.Builder().build()) + } + private fun startRecording() { if (mediaRecorder == null) { // safety check, don't start a new recording if one is already going diff --git a/app/src/main/res/layout/activity_select_message_recipient.xml b/app/src/main/res/layout/activity_select_message_recipient.xml index 21a3f12..e5e5fe0 100644 --- a/app/src/main/res/layout/activity_select_message_recipient.xml +++ b/app/src/main/res/layout/activity_select_message_recipient.xml @@ -1,5 +1,6 @@ + + - + + diff --git a/app/src/main/res/layout/fragment_message.xml b/app/src/main/res/layout/fragment_message.xml index 026bb37..83df9a1 100644 --- a/app/src/main/res/layout/fragment_message.xml +++ b/app/src/main/res/layout/fragment_message.xml @@ -1,5 +1,6 @@ + + + + + ads:layout_constraintTop_toBottomOf="@+id/ad_view" + app:layout_constraintStart_toStartOf="parent" /> + ads:layout_constraintTop_toBottomOf="@+id/ad_view" + app:layout_constraintEnd_toEndOf="parent" />