appodeal.*

Type Library
Revision Release 2024.3703
Keywords ads, advertising, Appodeal
Platforms Android, iOS

Overview

The Appodeal plugin allows developers to monetize their mobile app with Appodeal banner, static interstitial, video interstitial, and rewarded video ads.

Important

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.

Important

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.

Important

Beta version of Appodeal plugin is now available! Check latest note in Project Settings section to learn more.

Version info

Current plugin versions are:

  • Stable plugins is 3.4.0 for both Android and iOS.
Important

Check out new hasUserConsent init parameter to enable GDPR data collection restrictions.

Registration

Before you can use this plugin, you must register with Appodeal.

Syntax

local appodeal = require( "plugin.appodeal" )

Functions

appodeal.init()

appodeal.show()

appodeal.hide()

appodeal.load()

appodeal.isLoaded()

appodeal.setUserDetails()

appodeal.getRewardParameters()

appodeal.getVersion()

appodeal.setSegmentFilter()

appodeal.canShow()

appodeal.trackInAppPurchase()

appodeal.set728x90Banners()

Events

adsRequest

Project Settings

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 },
        },
    },
}
Note

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"

Sample project