Type Library Revision Release 2024.3703 Keywords ads, advertising, Appodeal Platforms Android, iOS
The Appodeal plugin allows developers to monetize their mobile app with Appodeal banner, static interstitial, video interstitial, and rewarded video ads.
Be warned that plugin builds for Amazon store are restricted at the moment. We are working on the appropriate SDK/plugin update and the ability to publish your apps, which includes Appodeal modular plugin, to Amazon store should become available as soon as possible.
Appodeal contains various SDKs for the ad providers it mediates. This means that you can not use Appodeal in conjunction with AdColony, AppLovin, AdMob, Chartboost, Facebook Audience Network, Flurry Analytics, InMobi, Unity Ads, or Vungle.
Beta version of Appodeal plugin is now available! Check latest note in Project Settings section to learn more.
Current plugin versions are:
3.4.0
for both Android and iOS.Check out new hasUserConsent
init parameter to enable GDPR data collection restrictions.
Before you can use this plugin, you must register with Appodeal.
local appodeal = require( "plugin.appodeal" )
To use this plugin in modular mode, your plugins
table of build.settings
should look like this:
settings = { iphone = { plist = { GADApplicationIdentifier = "[YOUR_ADMOB_APP_ID]", -- replace with your app id. See: https://googlemobileadssdk.page.link/admob-ios-update-plist NSAppTransportSecurity = { NSAllowsArbitraryLoads=true }, MinimumOSVersion = "10.0", -- Needed to avoid build errors NSLocationWhenInUseUsageDescription = "The app needs your location for analytics and advertising purposes", NSCalendarsUsageDescription = "The app needs your calendar to provide personalised advertising experience tailored to you", NSUserTrackingUsageDescription = "This identifier will be used to deliver personalized ads to you.", SKAdNetworkItems = { { SKAdNetworkIdentifier = "4pfyvq9l8r.skadnetwork" }, { SKAdNetworkIdentifier = "6g9af3uyq4.skadnetwork" }, { SKAdNetworkIdentifier = "4fzdc2evr5.skadnetwork" }, { SKAdNetworkIdentifier = "2fnua5tdw4.skadnetwork" }, { SKAdNetworkIdentifier = "ydx93a7ass.skadnetwork" }, { SKAdNetworkIdentifier = "cg4yq2srnc.skadnetwork" }, { SKAdNetworkIdentifier = "v72qych5uu.skadnetwork" }, { SKAdNetworkIdentifier = "mlmmfzh3r3.skadnetwork" }, { SKAdNetworkIdentifier = "pwdxu55a5a.skadnetwork" }, { SKAdNetworkIdentifier = "c6k4g5qg8m.skadnetwork" }, { SKAdNetworkIdentifier = "wg4vff78zm.skadnetwork" }, { SKAdNetworkIdentifier = "g28c52eehv.skadnetwork" }, { SKAdNetworkIdentifier = "523jb4fst2.skadnetwork" }, { SKAdNetworkIdentifier = "294l99pt4k.skadnetwork" }, { SKAdNetworkIdentifier = "hs6bdukanm.skadnetwork" }, { SKAdNetworkIdentifier = "prcb7njmu6.skadnetwork" }, { SKAdNetworkIdentifier = "m8dbw4sv7c.skadnetwork" }, { SKAdNetworkIdentifier = "9nlqeag3gk.skadnetwork" }, { SKAdNetworkIdentifier = "cj5566h2ga.skadnetwork" }, { SKAdNetworkIdentifier = "u679fj5vs4.skadnetwork" }, { SKAdNetworkIdentifier = "a7xqa6mtl2.skadnetwork" }, { SKAdNetworkIdentifier = "g2y4y55b64.skadnetwork" }, { SKAdNetworkIdentifier = "wzmmz9fp6w.skadnetwork" }, { SKAdNetworkIdentifier = "yclnxrl5pm.skadnetwork" }, { SKAdNetworkIdentifier = "4468km3ulz.skadnetwork" }, { SKAdNetworkIdentifier = "t38b2kh725.skadnetwork" }, { SKAdNetworkIdentifier = "7ug5zh24hu.skadnetwork" }, { SKAdNetworkIdentifier = "rx5hdcabgc.skadnetwork" }, { SKAdNetworkIdentifier = "5lm9lj6jb7.skadnetwork" }, { SKAdNetworkIdentifier = "9rd848q2bz.skadnetwork" }, { SKAdNetworkIdentifier = "n6fk4nfna4.skadnetwork" }, { SKAdNetworkIdentifier = "7rz58n8ntl.skadnetwork" }, { SKAdNetworkIdentifier = "ejvt5qm6ak.skadnetwork" }, { SKAdNetworkIdentifier = "275upjj5gd.skadnetwork" }, { SKAdNetworkIdentifier = "kbd757ywx3.skadnetwork" }, { SKAdNetworkIdentifier = "9t245vhmpl.skadnetwork" }, { SKAdNetworkIdentifier = "n9x2a789qt.skadnetwork" }, { SKAdNetworkIdentifier = "44jx6755aq.skadnetwork" }, { SKAdNetworkIdentifier = "tl55sbb4fm.skadnetwork" }, { SKAdNetworkIdentifier = "2u9pt9hc89.skadnetwork" }, { SKAdNetworkIdentifier = "8s468mfl3y.skadnetwork" }, { SKAdNetworkIdentifier = "klf5c3l5u5.skadnetwork" }, { SKAdNetworkIdentifier = "ppxm28t8ap.skadnetwork" }, { SKAdNetworkIdentifier = "74b6s63p6l.skadnetwork" }, { SKAdNetworkIdentifier = "kbmxgpxpgc.skadnetwork" }, { SKAdNetworkIdentifier = "44n7hlldy6.skadnetwork" }, { SKAdNetworkIdentifier = "5l3tpt7t6e.skadnetwork" }, { SKAdNetworkIdentifier = "uw77j35x4d.skadnetwork" }, { SKAdNetworkIdentifier = "6964rsfnh4.skadnetwork" }, { SKAdNetworkIdentifier = "84993kbrcf.skadnetwork" }, { SKAdNetworkIdentifier = "pwa73g5rt2.skadnetwork" }, { SKAdNetworkIdentifier = "mtkv5xtk9e.skadnetwork" }, { SKAdNetworkIdentifier = "e5fvkxwrpn.skadnetwork" }, { SKAdNetworkIdentifier = "gta9lk7p23.skadnetwork" }, { SKAdNetworkIdentifier = "r45fhb6rf7.skadnetwork" }, { SKAdNetworkIdentifier = "3rd42ekr43.skadnetwork" }, { SKAdNetworkIdentifier = "ludvb6z3bs.skadnetwork" }, { SKAdNetworkIdentifier = "737z793b9f.skadnetwork" }, { SKAdNetworkIdentifier = "mls7yz5dvl.skadnetwork" }, { SKAdNetworkIdentifier = "w9q455wk68.skadnetwork" }, { SKAdNetworkIdentifier = "p78axxw29g.skadnetwork" }, { SKAdNetworkIdentifier = "6xzpu9s2p8.skadnetwork" }, { SKAdNetworkIdentifier = "ggvn48r87g.skadnetwork" }, { SKAdNetworkIdentifier = "3sh42y64q3.skadnetwork" }, { SKAdNetworkIdentifier = "f38h382jlk.skadnetwork" }, { SKAdNetworkIdentifier = "24t9a8vw3c.skadnetwork" }, { SKAdNetworkIdentifier = "cstr6suwn9.skadnetwork" }, { SKAdNetworkIdentifier = "zmvfpc5aq8.skadnetwork" }, { SKAdNetworkIdentifier = "feyaarzu9v.skadnetwork" }, { SKAdNetworkIdentifier = "5a6flpkh64.skadnetwork" }, { SKAdNetworkIdentifier = "glqzh8vgby.skadnetwork" }, { SKAdNetworkIdentifier = "424m5254lk.skadnetwork" }, { SKAdNetworkIdentifier = "av6w8kgt66.skadnetwork" }, { SKAdNetworkIdentifier = "s39g8k73mm.skadnetwork" }, { SKAdNetworkIdentifier = "lr83yxwka7.skadnetwork" }, { SKAdNetworkIdentifier = "22mmun2rn5.skadnetwork" }, { SKAdNetworkIdentifier = "su67r6k2v3.skadnetwork" }, { SKAdNetworkIdentifier = "4w7y6s5ca2.skadnetwork" }, { SKAdNetworkIdentifier = "dzg6xy7pwj.skadnetwork" }, { SKAdNetworkIdentifier = "y45688jllp.skadnetwork" }, { SKAdNetworkIdentifier = "hdw39hrw9y.skadnetwork" }, { SKAdNetworkIdentifier = "4dzt52r2t5.skadnetwork" }, { SKAdNetworkIdentifier = "5tjdwbrq8w.skadnetwork" }, { SKAdNetworkIdentifier = "32z4fx6l9h.skadnetwork" }, { SKAdNetworkIdentifier = "xy9t38ct57.skadnetwork" }, { SKAdNetworkIdentifier = "54nzkqm89y.skadnetwork" }, { SKAdNetworkIdentifier = "9b89h5y424.skadnetwork" }, { SKAdNetworkIdentifier = "79pbpufp6p.skadnetwork" }, { SKAdNetworkIdentifier = "s69wq72ugq.skadnetwork" }, { SKAdNetworkIdentifier = "k674qkevps.skadnetwork" }, { SKAdNetworkIdentifier = "578prtvx9j.skadnetwork" }, { SKAdNetworkIdentifier = "f73kdq92p3.skadnetwork" }, { SKAdNetworkIdentifier = "x44k69ngh6.skadnetwork" }, { SKAdNetworkIdentifier = "mp6xlyr22a.skadnetwork" }, { SKAdNetworkIdentifier = "qqp299437r.skadnetwork" }, { SKAdNetworkIdentifier = "3qcr597p9d.skadnetwork" }, { SKAdNetworkIdentifier = "97r2b46745.skadnetwork" }, { SKAdNetworkIdentifier = "6p4ks3rnbw.skadnetwork" }, { SKAdNetworkIdentifier = "rvh3l7un93.skadnetwork" }, { SKAdNetworkIdentifier = "zq492l623r.skadnetwork" }, { SKAdNetworkIdentifier = "x8uqf25wch.skadnetwork" }, { SKAdNetworkIdentifier = "b9bk5wbcq9.skadnetwork" }, { SKAdNetworkIdentifier = "bxvub5ada5.skadnetwork" }, { SKAdNetworkIdentifier = "krvm3zuq6h.skadnetwork" }, { SKAdNetworkIdentifier = "c3frkrj4fj.skadnetwork" }, { SKAdNetworkIdentifier = "v9wttpbfk9.skadnetwork" }, { SKAdNetworkIdentifier = "n38lu8286q.skadnetwork" }, { SKAdNetworkIdentifier = "3qy4746246.skadnetwork" }, { SKAdNetworkIdentifier = "v4nxqhlyqp.skadnetwork" }, { SKAdNetworkIdentifier = "8c4e2ghe7u.skadnetwork" }, { SKAdNetworkIdentifier = "r26jy69rpl.skadnetwork" }, { SKAdNetworkIdentifier = "8m87ys6875.skadnetwork" }, { SKAdNetworkIdentifier = "488r3q3dtq.skadnetwork" }, { SKAdNetworkIdentifier = "52fl2v3hgk.skadnetwork" }, { SKAdNetworkIdentifier = "m5mvw97r93.skadnetwork" }, { SKAdNetworkIdentifier = "89z7zv988g.skadnetwork" }, { SKAdNetworkIdentifier = "hb56zgv37p.skadnetwork" }, { SKAdNetworkIdentifier = "6v7lgmsu45.skadnetwork" }, { SKAdNetworkIdentifier = "m297p6643m.skadnetwork" }, { SKAdNetworkIdentifier = "3l6bd9hu43.skadnetwork" }, { SKAdNetworkIdentifier = "vcra2ehyfk.skadnetwork" }, { SKAdNetworkIdentifier = "a2p9lx4jpn.skadnetwork" }, { SKAdNetworkIdentifier = "238da6jt44.skadnetwork" }, { SKAdNetworkIdentifier = "v79kvwwj4g.skadnetwork" }, { SKAdNetworkIdentifier = "f7s53z58qe.skadnetwork" }, { SKAdNetworkIdentifier = "gta8lk7p23.skadnetwork" }, }, }, }, android = { minSdkVersion = "16", applicationChildElements = { [[ <meta-data android:name="com.google.android.gms.ads.APPLICATION_ID" android:value="[YOUR_ADMOB_APP_ID]"/> -- replace with your app id. See: https://goo.gl/fQ2neu ]], }, }, plugins = { -- Base ['plugin.appodeal.base'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.Amazon'] = {publisherId = 'com.coronalabs'}, ['plugin.appodeal.Bidmachine'] = { publisherId = 'com.coronalabs' }, -- Note you need all adatper for this adapter to build properly ['plugin.appodeal.GoogleAdMob'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.AppLovin'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.FacebookAudience'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.MyTarget'] = { publisherId = 'com.coronalabs' }, ["plugin.appodeal.Pangle"] = {publisherId = 'com.coronalabs'}, ['plugin.appodeal.Unity'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.Vungle'] = { publisherId = 'com.coronalabs' }, ['plugin.appodeal.Yandex'] = { publisherId = 'com.coronalabs' }, ["plugin.appodeal.InMobi"] = {publisherId = 'com.coronalabs'}, }, }
Make sure to include Base
block for a plugin to work correctly. Then you can just comment out unnecessary ad types blocks, so that unneded adapters are not downloaded and linked to your project.
Important
If building for iOS, you must bypass App Transport Security (ATS) by adding the following to the plist
table of build.settings
. While we do not blindly encourage this approach for all developers and projects, bypassing ATS is required in certain cases. For more information on ATS, please see the Managing App Transport Security guide.
settings = { iphone = { plist = { NSAppTransportSecurity = { NSAllowsArbitraryLoads=true }, }, }, }
For Android, the following permissions/features are automatically added when using this plugin:
"android.permission.INTERNET"
"android.permission.ACCESS_NETWORK_STATE"
"android.permission.WRITE_EXTERNAL_STORAGE"
In addition, if you wish to receive targeted ads in your app and increase your chances for higher revenue, you can include any or all of the following permissions:
"android.permission.GET_ACCOUNTS"
"android.permission.ACCESS_COARSE_LOCATION"
"android.permission.ACCESS_FINE_LOCATION"