AppLovin / AppLovin-MAX-SDK-Android

Other
231 stars 102 forks source link

About Huawei Custom Adapter #214

Open BerkeCoban opened 2 years ago

BerkeCoban commented 2 years ago

Why there is no Huawei Banner Ad adapter ? is there a reason for it? or do you plan to add in the future?

thomasmso commented 2 years ago

@BerkeCoban - Do you have publishers waiting for this? If so, who? If you provide the docs, we can implement. (cc @alvarshahanji)

BerkeCoban commented 2 years ago

Hello again, thank you for your quick feedback, We are very pleased about this Huawei custom adapter, and it is an important solution for us.

official Huawei banner implementation link: https://developer.huawei.com/consumer/en/doc/development/HMSCore-Guides/publisher-service-banner-0000001050066915

Our previous custom adapter solutions: https://github.com/Explore-In-HMS/?q=mediation&type=all&language=&sort=

example banner ad implementation : https://github.com/Explore-In-HMS/huawei.ads.smartadsserver_mediation/blob/main/smart_mediation/src/main/java/com/hmscl/huawei/smart_mediation/SASHuaweiBannerAdapter.kt

I hope these links can help you to implement banner ads. If you need any help with this implementation , As Huawei ads team, we can gladly help.

Thank you.

thomasmso commented 2 years ago

Thank you. We'll have an update within a week.

BerkeCoban commented 2 years ago

Hello again,

Hope you are doing well. I have a small code block for the Huawei Custom Adapter. I will be glad if you add this code before the release of the new version with banner ads.

This code block sends TCF string to Huawei ads. You can check the gist below.

Gist Link: https://gist.github.com/BerkeCoban/447d08de0fa31afb253c64500a276471#file-example-kt

You can set the tcf string if any exists, using "adParamBuilder.setConsent(tcfString)" and make the ad request with that adParamBuilder.

Thank you :)

thomasmso commented 2 years ago

Thank you. @alvarshahanji is pushing a new adapter today.

alvarshahanji commented 2 years ago

@BerkeCoban we just released a new adapter with

  1. Banner support.
  2. Passing TCF string

Please note that we are calling pause() to disable auto-refresh, assuming auto-refresh is enabled by default

BerkeCoban commented 2 years ago

Hello guys,

I made some tests with the new version.

For the MREC ad type, there is no problem, but for the banner ad type, it seems there is a problem.

I debugged inside the adapter, and when the custom adapter class running the code somehow Applovin onadfailed triggers and the adapter code stops running.

If you can check this issue, It would be great.

Used demo app : https://github.com/AppLovin/AppLovin-MAX-SDK-Android/tree/master/AppLovin%20MAX%20Demo%20App%20-%20Kotlin

thomasmso commented 2 years ago

Could you enable our SDK's verbose logs and send those over?

BerkeCoban commented 2 years ago

log_Huawei_Banner.zip

thomasmso commented 2 years ago

I'm observing logs such as:

2022-03-21 16:44:40.251 15129-16941/com.applovin.enterprise.apps.demoapp E/AppLovinSdk: [MediationAdapterWrapper] Failed start loading MediatedAd{thirdPartyAdPlacementId=testw6vs28auh3, adUnitId=4fdf733436d1e025, format=BANNER, networkName='HuaweiMediationAdapter'} : java.lang.NullPointerException: Attempt to read from field 'android.os.MessageQueue android.os.Looper.mQueue' on a null object reference

Does your SDK require all calls to be made from the UI thread?

BerkeCoban commented 2 years ago

Hello again,

image

After that marked line, the adapter stops running. It does not reach if block.

For your question, the answer is no. I believe this issue is not about the Huawei Ads SDK, because I got the MREC ad without any problem. This ad type also uses Huawei Banner ad only the size is 300x250 instead of 320x50. ( it uses the same method loadAdViewAd())

If you can check it with the Huawei test ad unit id, it would be great.

alvarshahanji commented 2 years ago

I can take a look today

alvarshahanji commented 2 years ago

@BerkeCoban the new adapter(13.4.49.301.3) with the fix is live!

github-actions[bot] commented 16 hours ago

This issue is stale because it has been open for 30 days with no activity.