poingstudios / godot-admob-ios

Godot's AdMob Plugin for iOS with support for Mediations.
https://poingstudios.github.io/godot-admob-plugin/
MIT License
89 stars 14 forks source link

[BUG] ad colony lib in 4.2.1 missing symbols #93

Closed ZhangWei-bi closed 5 months ago

ZhangWei-bi commented 5 months ago

Godot version

4.2.1

Plugin version

v3.1.0

Phone information

iphone x with ios 16

Issue description

I am trying to use the ad colony that was provided in v3.1.0 but it's not working when I export ios. I am getting this error:

Undefined symbols for architecture arm64:
  "_ADC_CCPA", referenced from:
      PoingGodotAdMobAdColonyAppOptions::set_privacy_framework_required(String const&, bool) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::get_privacy_framework_required(String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::set_privacy_consent_string(String const&, String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::get_privacy_consent_string(String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
  "_ADC_GDPR", referenced from:
      PoingGodotAdMobAdColonyAppOptions::set_privacy_framework_required(String const&, bool) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::get_privacy_framework_required(String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::set_privacy_consent_string(String const&, String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
      PoingGodotAdMobAdColonyAppOptions::get_privacy_consent_string(String const&) in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
  "_OBJC_CLASS_$_GADMAdapterAdColonyExtras", referenced from:
      objc-class-ref in poing-godot-admob-adcolony.a(AdColonyExtrasBuilder.o)
  "_OBJC_CLASS_$_GADMediationAdapterAdColony", referenced from:
      objc-class-ref in poing-godot-admob-adcolony.a(PoingGodotAdMobAdColonyAppOptions.o)
ld: symbol(s) not found for architecture arm64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

Steps to reproduce

Add the provided ad colony lib in v3.1.0, try to export in ios

Additional context

No response

ZhangWei-bi commented 5 months ago

Side note I am seeing here that ad colony is not being updated anymore, wondering if it's worth implementing then. https://developer.digitalturbine.com/hc/en-us/articles/12028624553244-AdColony-SDK-No-Longer-in-Operation

gumaciel commented 5 months ago

Hi, I saw you opened an Issue days ago about One Click Deployment: https://github.com/poing-studios/godot-admob-ios/issues/92

Are you testing with One Click Deployment or with the normal way of exporting?

Can you test in the normal way?


If still happens, if possible, send me a screenshot of your project like this one?

Screenshot 2024-01-16 at 20 21 36

ZhangWei-bi commented 5 months ago

@gumaciel Hi, this is when I export on iOS, not the one click deploy. The error happens in Godot. When I run Godot I run it in the terminal to see errors. I saw the error in the terminal.

ZhangWei-bi commented 5 months ago

@gumaciel Apologies, I forgot to add the adcolony sdk from the Google instruction and the ad colony adapter sdk. I no longer get the export error, but now I get a different error when I run. I followed all the instructions.

2024-01-16 23:12:21.663023-0500 AppName[3544:613583] AdColonyAdapter: Zones that are being configured: (zoneidwashere
2024-01-16 23:12:22.010416-0500 AppName[3544:613682] AdColony [Info] : AdColony library version: 4.9.0.0 64-bit production
2024-01-16 23:12:22.903703-0500 AppName[3544:613682] AdColony [Info] -[ADCJSCoreModule dealloc] Line 824 : dealloc called on ADCJSCoreModule with id: 1
2024-01-16 23:12:22.903784-0500 AppName[3544:613682] AdColony [Info] -[ADCModule dealloc] Line 82 : dealloc called on ADCJSCoreModule
2024-01-16 23:12:23.140728-0500 AppName[3544:613373] Key: GADMediationAdapterAdColony Latency: 1 Initialization Status: 0 Description: <GADAdapterStatus: 0x281e1eec0; state = Not Ready;Adapter failed to initialize. Failed to configure all zones.>
Key: GADMediationAdapterAdColony Latency: 1 Initialization Status: 0 Description: <GADAdapterStatus: 0x281e1eec0; state = Not Ready;Adapter failed to initialize. Failed to configure all zones.>
2024-01-16 23:12:23.140745-0500 AppName[3544:613373] Key: GADMobileAds Latency: 0 Initialization Status: 1 Description: <GADAdapterStatus: 0x281ed8180; state = Ready>
Key: GADMobileAds Latency: 0 Initialization Status: 1 Description: <GADAdapterStatus: 0x281ed8180; state = Ready>
2024-01-16 23:12:23.140761-0500 AppName[3544:613373] Key: GADMediationAdapterAdColony Latency: 1 Initialization Status: 0 Description: <GADAdapterStatus: 0x281e1eec0; state = Not Ready;Adapter failed to initialize. Failed to configure all zones.>
Key: GADMediationAdapterAdColony Latency: 1 Initialization Status: 0 Description: <GADAdapterStatus: 0x281e1eec0; state = Not Ready;Adapter failed to initialize. Failed to configure all zones.>
2024-01-16 23:12:23.140817-0500 AppName[3544:613373] Key: GADMobileAds Latency: 0 Initialization Status: 1 Description: <GADAdapterStatus: 0x281ed8180; state = Ready>
Key: GADMobileAds Latency: 0 Initialization Status: 1 Description: <GADAdapterStatus: 0x281ed8180; state = Ready>
2024-01-16 23:12:23.494953-0500 AppName[3544:613759] AdColony [*Warning*] : Tried to collect signals while AdColony is disabled.
ZhangWei-bi commented 5 months ago

@gumaciel Today I tried meta mediation and it inits properly. For some reason, ad colony does not init properly. I made sure to integrate all the required sdk's and the same versions that you have. I also mapped the adcolony zone id's with the admob id's. I have my device in test device of admob. My frameworks folder looks correct, it has all the extra libraries required listed here: https://developers.google.com/admob/ios/mediation/adcolony#manual_integration_2

IMG_1722

gumaciel commented 5 months ago

@ZhangWei-bi this seems not a problem with our plugin as you managed to see the output:

2024-01-16 23:12:23.140728-0500 AppName[3544:613373] Key: GADMediationAdapterAdColony Latency: 1 Initialization Status: 0 Description: <GADAdapterStatus: 0x281e1eec0; state = Not Ready;Adapter failed to initialize. Failed to configure all zones.>

Possible cause of problems:

If you are still with this problem, I recommend you to open a conversation in this link: https://groups.google.com/g/google-admob-ads-sdk

ZhangWei-bi commented 5 months ago

Archive.zip

@gumaciel I reviewed all the steps for ad colony, still same issue. I sent them an email but no response. I am curious if you will remove that mediation in the future if they don't support it anymore? If so I will not implement it. I am curious if you are able to init ad colony?

I got vungle working. Excluding interstitial won't load but banners and reward load correctly.

Meta sdk initialize ok, but I get no fill, no ad to show.

I double checked all the setup for each provider, added my device to test, made sure all the ads are mapped on admob, I also added payment method and got app approved on fb.

All the issues I am seeing happened with or without pods. I followed all your steps with a minimal project using pod.

I attached my code, wondering if you see anything off?

I also forgot to remove the --> in the gdpi for the SKAdNetworkItems, and re-exported but that did not help. I added all the SKAdNetworkItems required for each provider.

If you are not sure Ill try to contact fb.

Thanks!