
Build a test Android app that lists countries in a recycler view, fetches data with Retrofit from a remote API, and demonstrates MVP, ads, in-app billing, and subscriptions.
Understand Udemy's review system and how ratings affect course visibility in a competitive marketplace. The instructor invites constructive feedback to improve the course and earn 5-star reviews.
Explore Android monetization options including ads with AdMob, paid apps, and selling in-app digital products (one-time purchases and subscriptions), plus a comparison of their pros and cons.
Follow the course from start to finish, build the code on your local device, and test every line to learn by doing with banner ads and products.
Access the course resources via the GitHub repository and a zip archive, containing final code to reference and to fix your own code, or to build your project from scratch.
Install Android Studio on a Mac, set up a project, and create a Nexus 6 and 6P virtual device using Oreo or Lollipop images, with tips to rebuild when needed.
Install Android Studio on a Windows PC by downloading from developer.android.com/studio, then start a new project and create an Android emulator using Oreo and Lollipop images.
Enable developer options by tapping the build number, turn on USB debugging, and connect your device to Android Studio to run and test apps on a real device.
Create a new Android Studio project with an empty activity named Android monetization, configure Kotlin and minimum API, then declare internet permission in the Android manifest.
Configure the module build.gradle to include libraries like retrofit, rxjava, glide, and multidex, then sync and run the app to confirm the dependencies load correctly.
Preview the base Android app for monetization strategies, building a country list with recycler view, retrofit, and MVP architecture, then view country details using X Java and endpoint data.
This lecture guides building the main screen layout with a constraint layout and recycler view, plus a retry button and progress bar, wired with onClick for future backend data.
Create a reusable row layout for a country list in Android, including a flag image, country name, and capital, using a horizontal LinearLayout with weighted views and proper padding.
Create a Kotlin data class country as a data model with nullable fields, organize code into model and activity packages, and prepare to fetch country data from a backend api.
Build a country list adapter to connect backend data to the recycler view, using a country view holder, row layout, and binding logic before updating the list.
Assemble the model, country list, and adapter to display a scrollable country list in an Android Kotlin app, using a linear layout manager and updates to the adapter.
Implement a country click listener and pass it through the adapter and view holder to handle user clicks, then show a toast with the clicked country.
Set up network communication with retrofit to fetch countries via an api. Use rxjava single to return a list of countries and map json to models with serialized names.
Create the country presenter that fetches countries using RxJava 2 on a background thread and updates the view on the main thread with setCountries, while handling errors.
Display the real countries in a list by wiring up a countries presenter to fetch data, update the adapter, and handle errors with a retry option.
Load images from the backend with Glide, showing a per-image circular progress spinner until each image loads. Use a Kotlin ImageView extension loadImage with placeholders and an error image.
Design a country details screen with a vertical linear layout, including a flag image and fields for name, capital, area, population, and region, for later monetization.
Learn to open a detail activity from main screen by passing a Country via an intent, making Country Parcelable, and populate the UI with flag, capital, area, population, and region.
Learn to monetize Android apps with AdMob and Kotlin by integrating banner ads in a list, fullscreen and rewarded ads, using test IDs for debugging and real IDs for production.
Set up Google AdMob by creating or selecting your Android app, copy the app ID, and create banner, interstitial, and rewarded ad units for integration.
Implement banner ads within a country list by adding a banner ad as a separate list item, enabling a multi-type adapter with country and ad view holders.
Learn to implement banner ads with AdMob in a Kotlin Android app, including ad layout, library import, test ad units, and proper manifest configuration.
Master configuring debug and release environments with build variants and string resources to auto-select the correct banner ad IDs for production.
Implement interstitial ads as full-screen units, configure test and production IDs in strings, load with AdRequest, and display on the detail screen after user action.
Implement rewarded ads in kotlin with admob, defining the rewarded ad id and loading the ad, using the listener to grant access to country details only after completion.
Split your Android app into free and paid build variants and publish to the Play Store, using an internal test track to manage access and pricing options.
Learn to split an Android app into free and paid flavors using flavor dimensions, build types, and product flavors, then differentiate behavior in code with BuildConfig.
Explore how to publish an Android app via the Google Play Store console, including creating the app listing, uploading assets like icons and screenshots, and using the internal test track.
Publish your app by generating a signed Android app bundle, creating a keystore, and configuring internal testing in the Play Console, including pricing, testers, and content rating.
Publish your app on the Play Store and await background checks; then test using internal testers, consent-based invites, and free or paid versions via an app bundle.
Learn to sell products in your Android app with in-app billing, including consumables and subscriptions, and test the flow with a test environment before going live.
Set up a merchant account in Google Play Console to sell digital products, then enable license testing to simulate purchases without charging real cards.
Set up in-app billing by enabling Google Play Billing Library and manifest permission, and define managed products and subscriptions. Publish app bundle with product IDs country_view and countries_subscription.
Implement in-app billing with a billing agent that connects to Google Play, fetches available products, handles purchases via a callback, and consumes the purchase token to unlock country details.
Implement in-app billing for managed products in the main activity using a billing callback, handle asynchronous purchases, and navigate to the detail screen after token consumption.
Implement and manage a single in-app subscription using the billing client in Kotlin, including fetching available subscriptions, initiating the billing flow, and handling existing ownership for seamless access.
Apply monetizing concepts by experimenting with ads, products, and subscriptions in a small app. Publish it to the Play Store to solidify your understanding of end-to-end monetizing strategies.
Explore a curated list of resources to read more on this topic and further improve your knowledge of what we've discussed in Android monetisation, AdMob, and in-app billing with Kotlin.
Master Android monetization by implementing AdMob and in-app purchases with Kotlin, exploring banner, interstitial, and rewarded ads, digital products and subscriptions, and publishing apps via the Google Play Console.
Learn how to make money from your app with this complete course on Android Monetisation.
Most online resources show you one strategy and don't go into practical details about how to build that strategy into a real Android app in Kotlin.
This course will take you step by step and will show you how to implement all the strategies we talk about in a real world example app.
We will learn about:
AdMob
Banner Ads
Interstitial Ads
Rewarded Ads
How to publish an App to the Google Play Store
Free vs Paid Apps
Sell digital products
Sell subscriptions
The purpose of the course is to give you the knowledge and the confidence to make money from your application.
You have worked hard coming up with an idea for an app, designing it, developing it, maintaining and debugging it, marketing it and building an audience. Now it's time to be rewarded for your effort. This course will teach you how.
The more people make money from their apps, the more awesome apps there are out there, so it's a win for everyone.
Sign up now and let's learn how to monetise your Android App