애플리케이션(Kotlin)에 삽입 광고를 통합하여 광고 키트 시작하기
## 소개
이 기사에서는 애플리케이션에 Huawei Ads Kit를 통합하는 방법을 배울 수 있습니다. 전면 광고를 사용하겠습니다. 전면 광고는 앱의 인터페이스를 덮는 전체 화면 광고입니다. 이러한 광고는 사용자 경험을 방해하지 않으면서 사용자가 앱을 시작, 일시중지 또는 종료할 때 표시됩니다.
## 광고 키트
Huawei Ads Kit는 Huawei 장치의 방대한 사용자 기반과 Huawei의 광범위한 데이터 기능을 활용하여 게시자 서비스를 제공하여 트래픽을 수익화할 수 있도록 지원합니다.
HMS 광고 키트에는 7가지 유형의 광고 키트가 있습니다. 이제 이 애플리케이션에서 전면 광고를 구현할 수 있습니다.
## 요구 사항
## HMS 종속성 통합
또는 SHA256 CODE에 설명된 대로 cmd를 사용하십시오.
maven { url 'http://developer.huawei.com/repo/' }
classpath 'com.huawei.agconnect:agcp:1.6.0.300'
apply plugin: 'com.huawei.agconnect'
//화웨이 AGCimplementation 'com.huawei.agconnect:agconnect-core:1.6.0.300'
//광고 키트Implementation 'com.huawei.hms:ads-lite:13.4.40.301'
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<!--check wifi state-->
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
-keep class com.huawei.openalliance.ad.** { *; }
-keep class com.huawei.hms.ads.** { *; }
개발
이 예에서는 두 활동 사이에 전면 광고를 배치합니다. MainActivity(이 예의 첫 번째 활동)에서 "CLICK TO START TRANSACTION"버튼을 클릭하면 전면 광고가 먼저 표시된 다음 핀(이 예의 두 번째 활동)이 해당 위치에 표시됩니다.
Create an InterstitialAd object and use the setAdId() method of the InterstitialAd class to set a test ad unit ID
private var interstitialAd: InterstitialAd? = null
var nextPageBtn: Button? = null
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
nextPageBtn = findViewById(R.id.btTrans)
interstitialAd = InterstitialAd(this)
interstitialAd.setAdId(adId)
interstitialAd.setAdListener(adListener)
}
Call the loadAd() method of the InterstitialAd object to load an ad.
private fun loadInterstitialAd() {
...
// Load an interstitial ad.
val adParam = AdParam.Builder().build()
interstitialAd!!.loadAd(adParam)
...
}
Call the isLoaded() method to check whether an ad has been loaded. If the ad has been loaded, call the show(Activity activity) method of the InterstitialAd object to display the ad.
private fun showInterstitial() {
// Display an interstitial ad.
if (interstitialAd != null && interstitialAd.isLoaded()) {
interstitialAd.show()
} else {
startActivity(Intent(this@MainActivity, pin::class.java))
}
}
Call the setAdListener(AdListener adListener) method of the InterstitialAd class to add the ad event listener AdListener for the InterstitialAd object, and implement the methods in AdListener to listen to ad events.
fun adEvent() {
adListener = object : AdListener() {
fun onAdLoaded() {
// Called when an ad is loaded successfully.
super.onAdLoaded()
Toast.makeText(this@MainActivity, "Ad loaded", Toast.LENGTH_SHORT).show()
// Display an interstitial ad.
showInterstitial()
}
fun onAdFailed(errorCode: Int) {
// Called when an ad fails to be loaded.
Toast.makeText(
this@MainActivity, "Ad load failed with error code: $errorCode",
Toast.LENGTH_SHORT
).show()
Log.d(
TAG,
"Ad load failed with error code: $errorCode"
)
startActivity(Intent(this@MainActivity, pin::class.java))
}
fun onAdClosed() {
// Called when an ad is closed
super.onAdClosed()
Log.d(TAG, "onAdClosed")
startActivity(Intent(this@MainActivity, pin::class.java))
}
fun onAdClicked() {
// Called when an ad is clicked.
Log.d(TAG, "onAdClicked")
super.onAdClicked()
adListener.onAdClosed()
}
fun onAdOpened() {
// Called when an ad is opened.
Log.d(TAG, "onAdOpened")
super.onAdOpened()
}
fun onAdLeave() {
// Called when an ad leaves an app.
...
}
fun onAdLeave() {
// Called when an ad leaves an app.
...
}
}
}
Activity_mail.xml
<?xml version="1.0" encoding="utf-8"?>
<RelativeLayout
xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
tools:context=".MainActivity"
android:id="@+id/activity_main"
android:background="@color/purple_200">
<Button
android:id="@+id/btTrans"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/click_to_start_transaction"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintStart_toStartOf="parent"
tools:layout_editor_absoluteY="327dp" />
<TextView
android:id="@+id/textView"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:text="@string/welcome_to_world_s_best_bank"
android:textSize="20dp" />
<ImageView
android:id="@+id/imageView"
android:layout_width="match_parent"
android:layout_height="match_parent"
app:srcCompat="@drawable/hello" />
</RelativeLayout>
응용 프로그램에 따라 UI를 조정합니다.
결과
팁과 요령
결론
이 기사에서는 애플리케이션에서 Ads Kit의 통합에 대해 배웠습니다. 개발자에게 양질의 광고 콘텐츠를 사용자에게 제공할 수 있는 다양한 기능을 제공합니다.
참조
광고 키트: Documentation
Reference
이 문제에 관하여(애플리케이션(Kotlin)에 삽입 광고를 통합하여 광고 키트 시작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/ribhavmodi/kickstarting-ads-kit-by-integrating-interstitial-ads-in-application-kotlin-2neh텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)