Thanks for taking a look at MoPub! We take pride in having an easy-to-use, flexible monetization solution that works across multiple platforms.
Sign up for an account at http://app.mopub.com/.
You can find integration documentation on our wiki and additional help documentation on our developer help site.
To file an issue with our team visit the MoPub Forum or email support@mopub.com.
Please Note: We no longer accept GitHub Issues.
The MoPub SDK is available via:
-
jCenter AAR
The MoPub SDK is available as an AAR via jCenter; to use it, add the following to yourbuild.gradle
.repositories { jcenter() } dependencies { compile('com.mopub:mopub-sdk:4.8.0@aar') { transitive = true } }
To continue integration using the mopub-sdk AAR, please see the Getting Started guide.
-
Zipped Source
The MoPub SDK is also distributed as zipped source code that you can include in your application. MoPub provides two prepackaged archives of source code:
MoPub Android Full SDK.zip
Includes everything you need to serve MoPub ads and built-in support for Millennial Media third party ad network - Millennial Media - including the required third party binaries.Note: Millennial Media has updated their minimum supported version of Android to 4.1 (API level 16+). The MoPub Android Full SDK manifest and build.gradle files have been updated accordingly.
Note: Millennial Media has deprecated support for Ant/Eclipse; migrating users should use the MoPub Android base SDK and follow Millennial's Ant/Eclipse Integration Guide.
MoPub Android Base SDK.zip
Includes everything you need to serve MoPub ads. No third party ad networks are included.For additional integration instructions, please see the Getting Started guide.
-
Cloned GitHub repository
Alternatively, you can obtain the MoPub SDK source by cloning the git repository:
git clone git://github.com/mopub/mopub-android-sdk.git
For additional integration instructions, please see the Getting Started guide.
Please view the changelog for a complete list of additions, fixes, and enhancements in the latest release.
- Changed the behavior of
MoPubInterstitial#load()
while an interstitial is loading or has been successfully loaded. Previously, this would discard the currently-caching or cached interstitial -- now the interstitial will be unaffected and will remain in the cache. MoPubInterstitial
s can now be shown only once per successful ad load.- Modified a number of Native Ads APIs (manual integration) to accept Context instead of Activity. Affected classes/methods include:
MoPubNative
,AdapterHelper
,CustomEventNative#loadNativeAd()
, andMoPubAdRenderer#createAdView()
.
- Android 2.3.1 (API Version 9) and up
- android-support-v4.jar, r23 (Updated in 4.4.0)
- android-support-annotations.jar, r23 (Updated in 4.4.0)
- android-support-v7-recyclerview.jar, r23 (Updated in 4.4.0)
- MoPub Volley Library (mopub-volley-1.1.0.jar - available on JCenter) (Updated in 3.6.0)
- Recommended Google Play Services 7.8.0
In 3.3.0 a dependency on android-support-annotations.jar was added. If you are using Maven or Gradle to include the MoPub SDK, this dependency is included in the build scripts. For instructions on adding dependencies for Eclipse projects, see our Getting Started Guide
Version 4.4.0 of the MoPub SDK fixes a security issue identified by Google. Note that only publishers who received a message from Google are affected. While not all publishers are impacted, we recommend you upgrade to SDK 4.4.0+ ahead of Google's deadline (July 11, 2016) to avoid any issues submitting updates to your apps after the date. More information can be found in Google's support article.
If your app's target SDK is 23 or higher and the user's device is running Android 6.0 or higher, you are responsible for supporting runtime permissions, one of the changes introduced in Android 6.0 (API level 23). In addition to listing any dangerous permissions your app needs in the manifest, your app also has to explicitly request the dangerous permission(s) during runtime by calling method requestPermissions()
in the ActivityCompat
class.
- Dangerous permission
ACCESS_COARSE_LOCATION
is needed to pass network location data to MoPub. - Dangerous permission
ACCESS_FINE_LOCATION
is needed to pass GPS location data to MoPub.- Granting
ACCESS_FINE_LOCATION
also allows network location data to be passed to MoPub without the need to also grantACCESS_COARSE_LOCATION
.
- Granting
- Dangerous permission
WRITE_EXTERNAL_STORAGE
is needed for MRAID 2. - Note: The user can deny granting any dangerous permissions during runtime, so please make sure your app can handle this properly.
- Note: The user can revoke any permissions granted previously by going to your app's Settings screen, so please make sure your app can handle this properly.
- Android 6.0 Changes
- Requesting Permissions at Run Time
- Permissions Best Practices
- Normal vs Dangerous Permissions
- Permission Groups
We have launched a new license as of version 3.2.0. To view the full license, visit http://www.mopub.com/legal/sdk-license-agreement/.