drmoriarty / godot-applovin-max Goto Github PK
View Code? Open in Web Editor NEWAppLovinMax plugin for godot engine.
AppLovinMax plugin for godot engine.
Tried with Godot 3.4 stable
Applovin-max : 0.1.2
applovin-max-ironsource : 0.1.1
applovin-max-unityads: 0.1.1
> Could not resolve all files for configuration ':debugRuntimeClasspath'.
> Could not resolve com.applovin.mediation:ironsource-adapter:+.
Required by:
project :
> Failed to list versions for com.applovin.mediation:ironsource-adapter.
> Unable to load Maven meta-data from https://applovin.bintray.com/Android-Adapter-SDKs/com/applovin/mediation/ironsource-adapter/maven-metadata.xml.
> Could not get resource 'https://applovin.bintray.com/Android-Adapter-SDKs/com/applovin/mediation/ironsource-adapter/maven-metadata.xml'.
> Could not GET 'https://applovin.bintray.com/Android-Adapter-SDKs/com/applovin/mediation/ironsource-adapter/maven-metadata.xml'. Received status code 502 from server: Bad Gateway
> Could not resolve com.applovin.mediation:unityads-adapter:+.
Required by:
project :
> Skipped due to earlier error
> Failed to list versions for com.applovin.mediation:unityads-adapter.
> Unable to load Maven meta-data from https://dl.bintray.com/mobilap/maven/com/applovin/mediation/unityads-adapter/maven-metadata.xml.
> Could not get resource 'https://dl.bintray.com/mobilap/maven/com/applovin/mediation/unityads-adapter/maven-metadata.xml'.
> Could not GET 'https://dl.bintray.com/mobilap/maven/com/applovin/mediation/unityads-adapter/maven-metadata.xml'. Received status code 502 from server: Bad Gateway
Hello, I need callbacks, so I need to perform ad showing and scoring, but I don't understand how to do this.
For example I try (in applovin_max.gd):
func _on_rewarded_video_ad_loaded(id: String)-> void:
$debug.text = "ok : "+String(id)
func _on_rewarded_video_started(id: String)-> void:
$debug.text = "rewarded video ad started"
pass
func _on_rewarded_video_completed(id: String)-> void:
$debug.text = "rewarded video ad completed"
pass
func _on_rewarded(id: String, reward: String, amount: int)-> void:
$debug.text = "on rewarded"
pass
..
no results are returned.
I also tried the following in the ready() function.
ads.connect ( " on_rewarded_video_ad_loaded" self, " on_rewarded_video_ad_loaded")
ads.connect ( " on_rewarded_video_ad_failed_to_load" self, "_ on_rewarded_video_ad_failed_to_load")
ads.connect ( " on_rewarded_video_started" self, "_ on_rewarded_video_started")
ads.connect ( " on_rewarded_video_ad_closed" self,"_on_rewarded_video_ad_closed")
_ads.connect("_on_rewarded_video_completed",self,"_on_rewarded_video_completed")
_ads.connect("_on_rewarded",self,"_on_rewarded")
Buddha failed. I may be a little clumsy :) It would be nice if there was a small example of how to do it. Thank you
am using this
func _ready():
if CheckIfExist(): # chech if save game exist
LoadGame()
root = get_tree().get_root() # get the root of the application
progressBar = get_node("CanvasLayer/TextureProgress")
get_node("CanvasLayer/TextureRect").visible = false
progressBar.visible = false
func loadBanner() :
applovin_max.loadBanner("449d3e1f299a6c41",false ,self.get_instance_id())
func loadInetr() :
applovin_max.loadInterstitial("c2388c98f3bad91f", self.get_instance_id())
func removeBanner() :
applovin_max.removeBanner("449d3e1f299a6c41")
func _on_banner_shown(id: String):
yield(get_tree().create_timer(10),"timeout")
applovin_max.removeBanner(id)
func _on_banner_loaded(id: String):
applovin_max.showBanner(id)
func _on_interstitial_loaded(id: String) :
applovin_max.showInterstitial(id)
func _on_interstitial_failed_to_load(id: String, error: String):
get_tree().paused = false
func _on_interstitial_close(id: String) :
get_tree().paused = false
the problem is whenever I try to remove the banner its not work
I tried to useremoveBanner()
and hideBanner()
in every scene
I try to make it wait 10s after show and then remove it and hide it and it still appear
I try to use applovin_max.removeBanner(id)
and applovin_max.hideBanner(id)
in specific scene but still appear
hi there
i implement the plugin in my project and it start to show that error
"Failed to get modified time for: com.applovin.mediation:adcolony-adapter:+."
i installed the applovin-adcolony from the naitvelib
I'm trying to install this ad mediator as it seems to be the only one that woks on Android and iOS, but everytime I press Install
in the NativeLib UI plugin it gives me this error in the console:
ERROR: call: Command C:/Python39/python.exe, exit code 1
At: modules/gdscript/gdscript_functions.cpp:803
Checking project dependencies: [email protected]
Installing [email protected]
Traceback (most recent call last):
File "C:\Users\salam\Projects\Godot\just-jump\src\addons\NativeLib\nativelib", line 1172, in <module>
install_package(p, v)
File "C:\Users\salam\Projects\Godot\just-jump\src\addons\NativeLib\nativelib", line 941, in install_package
if not install_package(p, v):
File "C:\Users\salam\Projects\Godot\just-jump\src\addons\NativeLib\nativelib", line 946, in install_package
download_package(package_name, version, package_meta)
File "C:\Users\salam\Projects\Godot\just-jump\src\addons\NativeLib\nativelib", line 436, in download_package
path = download(f['url'], fname, home)
File "C:\Users\salam\Projects\Godot\just-jump\src\addons\NativeLib\nativelib", line 411, in download
(filepath, headers) = urlretrieve(url, os.path.join(path, filename), reporthook=_progress)
File "C:\Python39\lib\urllib\request.py", line 239, in urlretrieve
with contextlib.closing(urlopen(url, data)) as fp:
File "C:\Python39\lib\urllib\request.py", line 214, in urlopen
return opener.open(url, data, timeout)
File "C:\Python39\lib\urllib\request.py", line 523, in open
response = meth(req, response)
File "C:\Python39\lib\urllib\request.py", line 632, in http_response
response = self.parent.error(
File "C:\Python39\lib\urllib\request.py", line 561, in error
return self._call_chain(*args)
File "C:\Python39\lib\urllib\request.py", line 494, in _call_chain
result = func(*args)
File "C:\Python39\lib\urllib\request.py", line 641, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 403: Forbidden
I'm using Python 3.9.1 and Godot 3.3.2.stable.
How do i check for CCPA?
hi there
am trying to make a global ad manager so I can load ads and remove it in any scene
so it not crash if the current scene die .
I have the game scene that autoload and work globally so i include the call method in it
func _ready():
if CheckIfExist(): # chech if save game exist
LoadGame()
root = get_tree().get_root() # get the root of the application
progressBar = get_node("CanvasLayer/TextureProgress")
get_node("CanvasLayer/TextureRect").visible = false
progressBar.visible = false
func loadBanner() :
applovin_max.loadBanner("449d3e1f299a6c41",false ,self.get_instance_id())
func loadInetr() :
applovin_max.loadInterstitial("c2388c98f3bad91f", self.get_instance_id())
func removeBanner() :
if applovin_max.removeBanner("449d3e1f299a6c41") :
print("remove***")
elif applovin_max.hideBanner("449d3e1f299a6c41") :
print("hide****")
else :
print("not remove and not hide")
func _on_banner_loaded(id: String):
applovin_max.showBanner(id)
func _on_interstitial_loaded(id: String) :
applovin_max.showInterstitial(id)
and its work the app not crash anymore on iOS but got 1 issue
whenever I call the ads it work above the current scene
I tried to stop the scene until the ads finish but couldn't find way to do it
is there a way to make the current scene wait the ads until finish before it start
Hello first of all thank you for the module.
I'm developing Android games for kids under 13 years old. Google tells me "Can I revoke the permission android.permission.ACCESS_COARSE_LOCATION" that I have to revoke this permission. Can I do this I would be glad if you help.
I am having an issue when exporting for iOS.
When I export including all resources I get these errors:
core/os/dir_access.cpp:289 - Failed to open C:/Users/switc/Documents/New Game Project/exports/New Game Project/dylibs/addons/applovinmax-ios/applovin-max.xcframework/ios-arm64_armv7/applovin-max.framework/AppLovinSDKResources.bundle/ALDMultiAdViewController.storyboardc/3jf-B1-XNL-view-Iqa-CO-DFs.nib/objects-11.0+.nib
Failed to copy recursively.
Failed to copy recursively.
Failed to copy recursively.
Failed to copy recursively.
Failed to copy recursively.
platform/iphone/export/export.cpp:1406 - Condition "err" is true. Returned: err
platform/iphone/export/export.cpp:1441 - Condition "err" is true. Returned: err
And when I export including only selected scenes and dependencies, xcode gives me:
2022-05-26 14:44:26.695430-0700 New Game Project[2387:123630] at: _ready (res://scripts/applovin_max.gdc:15) - Attempt to call function 'new' in base 'NativeScript' on a null instance.
at: _ready (res://scripts/applovin_max.gdc:15) - Attempt to call function 'new' in base 'NativeScript' on a null instance.
Sir it has old sdk please update to latest one applovin max sdk 11.4.4
Hi there
am trying to implement the plugin in my app and i have a question what is the callback id
thanks
Hello,
When I export to iOS, there are no ads shown in Xcode. Android export works without any issue and I can run ads in Android Studio.
In Xcode I get the message below.
ERROR: does not have a library for the current platform.
at: init_library (modules/gdnative/nativescript/nativescript.cpp:1486) - Condition "lib_path.length() == 0" is true.
2022-04-04 17:44:11.206686+0200 Birds and Blocks[4910:75441] SCRIPT ERROR: Attempt to call function 'new' in base 'NativeScript' on a null instance.
2022-04-04 17:44:11.207326+0200 Birds and Blocks[4910:75441] at: _ready (res://scripts/applovin_max.gdc:15) - Attempt to call function 'new' in base 'NativeScript' on a null instance.
Expected: hide & show banner with the single function calls of the relevant names:
func _ready():
applovin_max.loadBanner(BannerID, true, self.get_instance_id())
applovin_max.hideBanner(BannerID)
...
applovin_max.showBanner(BannerID) # FAILS
Actual behavior: hide banner is irreversible and requires another load_banner call before showing the banner again:
func _ready():
# Show banner
applovin_max.loadBanner(BannerID, true, self.get_instance_id())
applovin_max.showBanner(BannerID)
...
# Hide banner
applovin_max.hideBanner(BannerID)
# Can also removeBanner()
...
# Show banner again, must reload
applovin_max.loadBanner(BannerID, true, self.get_instance_id())
applovin_max.showBanner(BannerID)
First off great work with Nativelibs! A lot of it is working surprisingly well and is quite easy to setup.
Maybe this is me misunderstanding how the callbacks are meant to work but it seems like they all just fire after i've finished a rewarded ad?
I am currently running in test mode if that makes a difference.
This is my logcat output.
10-26 14:32:24.465 8163 8212 I godot : pressed applovin max
10-26 14:33:16.386 8163 8212 I godot : open rewarded video ad
10-26 14:33:16.386 8163 8212 I godot : rewarded video ad started
10-26 14:33:16.387 8163 8212 I godot : rewarded video ad completed
10-26 14:33:16.387 8163 8212 I godot : on rewarded
10-26 14:33:16.828 8163 8212 I godot : rewarded video ad closed
Godot:
class RewardedAd:
signal reward_loaded(id)
func _on_rewarded_video_ad_loaded(id: String):
emit_signal("reward_loaded", id)
func _on_rewarded_video_ad_failed_to_load(id: String, error: String):
print("failed to loaded rewarded ad")
pass
func _on_rewarded_video_ad_opened(id: String):
print("open rewarded video ad")
pass
func _on_rewarded_video_ad_left_application(id: String):
print("rewarded ad left application")
pass
func _on_rewarded_video_ad_closed(id: String):
print("rewarded video ad closed")
pass
func _on_rewarded_video_started(id: String):
print("rewarded video ad started")
pass
func _on_rewarded_video_completed(id: String):
print("rewarded video ad completed")
pass
func _on_rewarded(id: String, reward: String, amount: int):
print("on rewarded")
pass
hi there
i use hideBanner(id: String)
to hide my banner ad
and i want to show it later and i tried showBanner(id: String)
but it not show
should i re load it and show it in callback function
Google has introduced a Data Safety check questionaire that asks if any information is sent by an App in non encrypted form.
It has also started complaining directly in the Release Prelaunch reports for apps that cleartextTrafficPermitted
is not supposed to be used in true
condition and in the Developer documents for Android it's noted that
" The guidance in this section applies only to apps that target Android 8.1 (API level 27) or lower. Starting with Android 9 (API level 28), cleartext support is disabled by default."
Would it be possible to include the default for Google as the default of the plugin on the next update?
<network-security-config>
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
should always be
<network-security-config>
<base-config cleartextTrafficPermitted="false">
<trust-anchors>
unless set differently by a user set plugin Adapter ?
As it stands now the above settings will not allow an app into production. Google Play console kicks out a RED warning :
Privacy - Cleartext traffic allowed for all domains
This is where the problem is I believe, even if one is not using AdColony and or Smaato their setup will be cleartextTrafficPermitted set to true
.
<!-- For AdColony and Smaato - all cleartext traffic allowed -->
<base-config cleartextTrafficPermitted="true">
<trust-anchors>
<certificates src="system"/>
</trust-anchors>
</base-config>
<!-- End AdColony cleartext requirement -->```
I'm unable to initialize the plugin on PC or Android as both result in the below error.
E 0:00:00.453 initialize: No library set for this platform
<C++ Source> modules/gdnative/gdnative.cpp:290 @ initialize()
Steps I have taken so far:
I'm happy to provide more accurate steps/info if needed.
Hi, when I try to export this plugin with Firebase Analytics, I get an error. Is it impossible to use both Firebase Analytics and Applovin Max plugins in the same project?
Find APPLOVINMAX in plugins list and press "Install" button.
But I don't see that in the plugins list, I only see "NativeLib".
Some sample code would be great on this repo. I am shooting in the dark with this implementation. I call load_banner
with a banner ID from AppLovin-Max because I don't know what a Zone ID is and the docs don't mention it, I'm almost 99% sure this is incorrect. None of the banner-related callbacks get triggered.
Using Godot 3.5.1, is this version supported? I tested with a debug APK and nothing seems to happen.
var BannerID = "applovin max banner Unit ID"
func _ready():
applovin_max.loadBanner(BannerID, true, self.get_instance_id())
applovin_max.showBanner(BannerID)
$AdDebugger.text = "Trying to load banner with ID %s" % BannerID;
$AdDebugger.show()
# Applovin callbacks
func _on_banner_loaded(id: String):
print("Banner loaded: %s" % id)
$AdDebugger.text = "Banner loaded: %s" % id;
func _on_banner_failed_to_load(id: String, error: String):
print("Banner failed to load: %s" % id)
$AdDebugger.text = "Banner failed to load: id %s, error %s" % [id, error];
func _on_banner_shown(id: String):
print("Banner shown: %s" % id)
$AdDebugger.text = "Banner shown: %s" % id;
Hello,
In Android Studio I set virtual device location to Germany and under Languages(Country/Region) updated everything for Germany, but isGdprApplies() method returns false. In real Android Phone behavior is also same.
After installing UnityAds adaptor, I keep getting those error messages in the Output console of the editor:
Failed to get modified time for: com.applovin.mediation:unityads-adapter:+
Failed to get modified time for: com.applovin.mediation:unityads-adapter:+
Failed to get modified time for: com.applovin.mediation:unityads-adapter:+
They appear every 3 seconds or so and flood the console.
Hi, I'm trying to show test ads in the android emulator. The way I have in mind is to get the GAID to add the device as test device in Applovin, but even if I export the app with debug option on, the applovin-max does not get the test mod on. Is there a reason why this line is commented?
Is there a better way to get test ads?
Thanks!
Hi.
I was using Firebase and other of your great plugins, and they work on Android and iOS (Godot 3.4).
But when i try to install AppLovin-Max, the process fails. I'm using NativeLib on Windows 8, and works great with other stuff.
The error only happens if i activate "iOS" installation. With Android it works properly.
As i said, its weird because i already installed other of your creations like Firebase plugins, and even the AppTracking Transparency on iOS.
I also tried deleting iOS, Android & Plugins folders (to do a fresh install) and dont work.
Here's what debugger saids when i press "Install" on NativeLib:
EDIT: I was doing some investigation and maybe it's related to codification UTF8. But if you look at my path, i dont use any special character or anything.
Installing [email protected]
Traceback (most recent call last):
File "F:\iki\Disenio y Desarrollo de Videojuegos\Colombia\Trivia Penalty Final 2\addons\NativeLib\nativelib", line 1174, in
install_package(p, v)
File "F:\iki\Disenio y Desarrollo de Videojuegos\Colombia\Trivia Penalty Final 2\addons\NativeLib\nativelib", line 943, in install_package
if not install_package(p, v):
File "F:\iki\Disenio y Desarrollo de Videojuegos\Colombia\Trivia Penalty Final 2\addons\NativeLib\nativelib", line 948, in install_package
download_package(package_name, version, package_meta)
File "F:\iki\Disenio y Desarrollo de Videojuegos\Colombia\Trivia Penalty Final 2\addons\NativeLib\nativelib", line 438, in download_package
path = download(f['url'], fname, home)
File "F:\iki\Disenio y Desarrollo de Videojuegos\Colombia\Trivia Penalty Final 2\addons\NativeLib\nativelib", line 413, in download
(filepath, headers) = urlretrieve(url, os.path.join(path, filename), reporthook=_progress)
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 241, in urlretrieve
with contextlib.closing(urlopen(url, data)) as fp:
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 216, in urlopen
return opener.open(url, data, timeout)
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 525, in open
response = meth(req, response)
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 634, in http_response
response = self.parent.error(
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 563, in error
return self._call_chain(*args)
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 496, in _call_chain
result = func(*args)
File "C:\Users\ikicapitan\AppData\Local\Programs\Python\Python310\lib\urllib\request.py", line 643, in http_error_default
raise HTTPError(req.full_url, code, msg, hdrs, fp)
urllib.error.HTTPError: HTTP Error 502: Bad Gateway
play console says me to remove location access from this plugin. i am using facebook for mediation with applovin. will you provinde me the facebook aar file without location access. please
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.