Posted by Dom Elliott, Product Manager at Google Play
Since we launched the Android App Bundle in May 2018, we’ve seen our developer community embrace this new standard to benefit from streamlined releases and advanced distribution features. There are now over 1 million apps using app bundles in production, including the majority of the top 1,000 apps and games on Google Play such as Adobe, Duolingo, Gameloft, Netflix, redBus, Riafy, and Twitter.
To bring these benefits to more users and focus on modern Android distribution that benefits all developers, Google Play will start requiring new apps to be published with the Android App Bundle starting August 2021. This will replace the APK as the standard publishing format.
If you haven’t made the switch to app bundles yet, here are some of the benefits you’re missing:
TYPE OF RELEASE
REPLACED
REQUIRED AUG 2021
New apps
on Google Play
APK
Android App Bundle (AAB)
Expansion files (OBBs)
Play Asset Delivery or
Play Feature Delivery
Updates to existing apps
No change
New instant experiences
Instant app ZIP
Instant-enabled Android App Bundle (AAB)
Updates to instant experiences
As a reminder, the app bundle requirement applies to new apps. Existing apps are currently exempt, as are private apps being published to managed Google Play users. Thanks to the thousands of developers who have been a part of the app bundle journey. We look forward to bringing you more improvements and features soon.
- - -
Answers to some Android App Bundle FAQs
How much work is required to use an app bundle vs an APK?
For most apps, very little work is required to build an AAB instead of an APK. It’s mostly a matter of choosing a different option at build time and then testing as normal. The app bundle is an open source format supported by major build tools such as Android Studio, Gradle, Bazel, Buck, Cocos Creator, Unity, Unreal Engine, and other engines. Play Core Native and Play Core Java & Kotlin SDKs also make it easy to start using optional, advanced app bundle features, whatever your preferred coding environment.
Why aren't expansion files (OBBs) supported with app bundles? Why should games use Play Asset Delivery?
APKs require separate files (OBBs) to serve additional resources to users. However, because OBBs are not signed and are stored in the app’s external storage, they’re not very secure. With Play Asset Delivery (PAD), games larger than 150MB can replace OBBs by publishing the entire game as a single app bundle on the Play Store. Beyond offering a smoother publishing process and flexible delivery modes, PAD carries benefits over the legacy expansion files: its delta patching of assets is optimized for large apps meaning updates require dramatically less device storage than OBBs. As a result, fast-follow drives higher install rate and store conversion rate. Finally, with ASTC now supported on ~80% of devices, texture compression format targeting lets you serve ASTC to devices that support it. You can target the widest range of Android devices while making efficient use of the available hardware and device storage.
If I use app bundles, can I still publish through multiple distribution channels/app stores?
Yes, there are multiple ways to achieve this. You can either use the same app signing key everywhere or use unique app signing keys for different channels, including a unique app signing key for Google Play. You can either build and sign artifacts for all distribution channels locally or you can download distribution APKs from Google Play for use on other channels. Distribution APKs downloaded from Google Play via the app bundle explorer in Play Console are signed with the same key used by Play App Signing.
I’m launching a new app. Can I decide what my app signing key is?
Yes, this option is available in the Play Console. When creating a new app, you can choose one of the options to provide the app signing key that Google uses. This allows you to keep a copy of your app signing key locally, for example to generate signed versions for distribution through other channels using the same key as the Play version. Soon, the Play Console will make releasing an app for the first time a little easier by giving you the ability to change your app signing key if you make a mistake, as long as you do it before you publish to an open track the first time.
When distributing apps on Google Play, how do I ensure my app is delivered to users the way I intend?
At any time, you can download and inspect artifacts from the Play Store, from the app bundle explorer in the Play Console, and via the Play Developer API to verify your app. In addition, code transparency for app bundles is a new, optional feature that can be used to inspect that code running on a device matches the code that was originally built and signed by the developer.
I have an app published on Google Play already. Can I start using Play App Signing without providing a copy of my existing app signing key?
To use Play App Signing today you have to provide a copy of your existing app signing key because Google Play needs a copy of it to sign and deliver updates to your existing users. This suits most developers, over 1M apps are using Play App Signing in production. Soon, we will add an additional option for existing apps to opt in to Play App Signing by performing a key upgrade. Choosing this option means Play App Signing can use a new, unique key for all new installs and their updates. However, for this to work, when you upload an app bundle, you also need to upload a legacy APK signed with your old key so that Google Play can continue to deliver updates to your existing users.
Can I ever change my app signing key?
Yes, some apps can request an app signing key upgrade for new installs in Play Console. Google Play will use your new key to sign new installs and app updates while using your legacy app signing key to sign updates for users who installed your app before the key upgrade. Soon, Play App Signing key upgrade will also add support for APK Signature Scheme v3 key rotation. This will make key upgrade a possible option for more apps and help apps signed with upgraded keys reach more users.
Posted by Luke Jefferson, Product Manager at Google Play & Raz Lev, Product Manager at Google Play Trust and Safety
Over the past few years, Google Play has seen tremendous growth. Android apps and games have become a critical part of people’s lives, built by developers of all sizes from all over the world, whether professionally or just for fun.
To keep Google Play safe and secure and to better serve our developer community, we are introducing two new security measures: additional identification requirements and 2-Step Verification. These measures will help strengthen your account security and will help us better understand your needs.
Today, when you create a new Google Play developer account, we ask you for an email address and a phone number.
With this update, account owners of developer accounts will also be asked to provide:
Your contact information allows us to share important information and updates about your app. It also helps us make sure that every account is created by a real person with real contact details, which helps us keep the Play Store safe for all users.
This information will not be public-facing and is just to help us confirm your identity and communicate.
In addition to learning more about our developer community, we’re also taking steps to improve security and keep your accounts safer by mandating that users of Google Play Console sign in using Google’s 2-Step Verification. 2-Step Verification is an additional safeguard to help protect your account, your app, and your users.
Learn more about 2-Step Verification and how to set it up for your own account.
Starting today, developer account owners will be able to declare their account type and verify their contact details. For now, declaring an account type is optional, but it will be required for any account owners who want to update their contact details.
In August, all new developer accounts will need to specify their account type and verify their contact information at sign-up. We will also make 2-Step Verification a requirement for the owners of new developer accounts.
Later this year, all existing developer account owners will be required to declare their account type, provide the required information, and verify their contact details. We will also require developers to sign in using 2-Step Verification.
In addition to these changes, we’d like to remind you of some best practices to help keep your account in good health and make sure you don’t miss important information.
Posted by Luli Perkins, Developer Relations Program Manager
The final edition of #AndroidDevJourney spotlight features three Android developers, each with their own story to tell. Over the last six months we’ve heard from developers all over the globe who have shared their experiences in becoming Android Developers, their tips and favorite shortcuts, as well as advice for new developers entering the field.
Read all other profiles in this series:
January
February
March
April
May
Here are words of wisdom that were frequently mentioned:
If you’re looking for documentation, developer.android.com is the place to look. And if you’re searching for a community where you’ll be welcome regardless of where in the world you are, come find us on Twitter, YouTube, Reddit, Github, or a GDG meetup near you.
Tell me about your journey to becoming an Android Developer and how you got started.
My journey with Android started back in 2011 in a really unexpected manner. I was responsible for managing an Android workshop happening during our college tech festival. We had invited an external speaker to conduct the session and a few students had signed up for it. Unfortunately, since this was happening on a Saturday, not a single student showed up for the session.
Since the speaker had come all the way, the speaker decided to do his session anyway and share what he knew about Android with me being his only audience. I went home excited with the very basic Android fundamentals that I'd just learnt and created a scientific calculator app over the weekend. I launched it on the Google Play store as a paid app. What's more shocking is that the app had generated enough revenue in a couple days to take care of my expenses for the rest of the month. This event had a profound impact on my life and I'm so grateful that I found myself at the right place and the right time.
Since then, I've worked for some of the best engineering teams including Airbnb, Snapchat, Spotify, and Deloitte. I’ve lived across six cities in two countries, put myself through an Ivy League education on a partial scholarship, and made lifelong friendships. There was only one thing that was consistent throughout all those experiences and that is Android.
What’s one shortcut, tip, or hack you can’t live without?
One shortcut that I use every single day is the command to find other commands on Android Studio using CMD + Shift + A. This is extremely useful when you are trying to do an action on Android Studio but don't know where it's hidden in our favorite IDE. Using this command opens up the "Find Action" dialog and allows you to just type what you were looking for to begin with. This shortcut saves my day on a daily basis!
What's the one piece of advice you wish someone would have given you when you started on your journey?
Just ask. Early on in my career, I would often spend time trying to figure things out all by myself. While this certainly has some advantages, I would often be stuck on things longer than I should've. In a lot of cases, all I had to do was just ask someone who had more context and that would've allowed me to spend time on things that mattered. Given that we all have limited time in our day, it's critical that we choose our battles wisely.
When I started college, I was majoring in dance. A friend suggested that I try a computer science course because they thought I would enjoy the types of problems you solve in code, and they were right!
Fast forward, and I had the opportunity to take part in a computer science summer research program. Over the summer, I learned Android and helped build an app to help a student with cognitive disabilities ride the local bus. It was this project that showed me how I could use software to make a difference in people's lives.
While I continued studying both dance and computer science, I pursued an internship, and later a career, that would allow me to continue to improve the world using Android development.
The combination of the developer tool to keep the screen on while charging and a device stand on my desk. I save so much time not needing to reach for my testing device, turn the screen on (and probably unlock it) and finally see what I'm looking for. Instead, it loads right before my eyes.
You don't need to define yourself by the work you do or the company you work for. I felt really conflicted when I chose a software career over a dance career. But I still dance! I felt conflicted when I moved from one company to another, but that company didn't define who I am.
In 2010, I bought my first smart phone in the form of an HTC Nexus One. I was still in college back then and jumped into Android development as soon as I received the device. One of my first Android projects was a neat little keyboard / input method that took ideas from the old school T9 method and applied it onto a touch screen. Check out the video here and the Github repository here. It's been 11 years since; so much has changed. I'm now the CTO at a small startup Shuffle, yet I'm still working hard on Android development!
For debugging, use breakpoint logging instead of LogCat logging. Go to the line you want to log and add a breakpoint. Then right-click on the red dot of the breakpoint and deselect the Suspend checkbox. A more detailed view should suddenly open and let you select Log message to console. This avoids recompiling and rerunning the app, and is absolutely crucial in large projects that take a long time to recompile. The advanced breakpoint options can also be valuable for trickier situations.
I wish someone told me to browse the Android source code more often. I learned so much looking underneath the hood and developed an expertise far deeper than the average developer.
The Android Developer community prides itself in its inclusivity and welcomes developers from all backgrounds and stages of life. If you’re feeling inspired and want to learn more about how to become a part of our community, here are a few resources to help get you started.
Dive into developer.android.com
Follow us on Twitter
Subscribe to our YouTube channel
The Google Developer Groups program gives developers the opportunity to meet local developers with similar interests in technology. A GDG meetup event includes talks on a wide range of technical topics where you can learn new skills through hands-on workshops.
Join a chapter near you here.
Founded in 2014, Google’s Women Techmakers is dedicated to helping all women thrive in tech through community, visibility and resources. With a member base of over 100,000 women developers, we’re working with communities across the globe to build a world where all women can thrive in tech.
Become a member here.
The Google Developers Experts program is a global network of highly experienced technology experts, influencers and thought leaders who actively support developers, companies and tech communities by speaking at events, publishing content, and building innovative apps. Experts actively contribute to and support the developer and startup ecosystems around the world, helping them build and launch highly innovative apps.
Learn more about the program here.
Java is a registered trademark of Oracle and/or its affiliates.
Posted by Purnima Kochikar, VP of Play Partnerships
As we highlighted in March, our mission is to help all developers succeed and build sustainable businesses. Last month at Google I/O, we built on this by announcing updates aimed at helping more users discover your apps and games, opening enrollment for the new 15% service fee tier, and more.
But we’re always looking for ways to help developers of all types succeed on Google Play, and today we have even more to share.
Users expect compelling content no matter what device they’re on. With our recent launch of Entertainment Space for tablets, the announcement that Samsung watches are coming to Wear OS, the upgraded Android Auto platform, and a new discovery experience on Google TV, there’s more opportunity for developers to engage their users than ever.
On Play, we are excited to help developers scale their services beyond mobile and across all the form factors that are important to users. We've long offered programs to help you build innovative experiences and today, we are opening our Play Media Experience Program globally to enable even more developers to invest in best-in-class media experiences across devices, including:
Through these integrations, we enable new discovery and re-engagement opportunities for developers to accelerate their overall growth on Play and offer a service fee of 15% during the program term, all to help developers deliver premium experiences.
Developers can review program guidelines and express interest now and we’ll follow up with more information if you are eligible. The Play Media Experience Program joins our many other resources for developers, including, Subscribe with Google for news publishers, our existing enterprise programs, and our many other initiatives like Play Points and Play Pass that help us continually improve our offerings to users and meet the needs of developers.
Register now for the digital Google for Games Developer Summit on July 12 and 13 to hear the latest product updates from across Google. We’ll have over 20 sessions from Android, Play, Cloud, Firebase, and ads to help you build better games and reach your users.
As always we will continue to listen to your feedback and we look forward to looking for even more ways to support your business at every stage on Google Play.
Posted by Madan Ankapura, Product Manager
In April, we announced our first version of the Android for Cars App Library as part of Jetpack, reaching a milestone to let developers publish their navigation, parking, charging apps on the Google Play Store.
Today, we’re announcing that version 1.1 is in alpha, which brings the following features to developers:
For the entire list of changes, please see the release notes. To start building your app for the car, check out our updated developer documentation, car quality guidelines and design guidelines.
These library features are available for testing only with the Desktop Head Unit. We will announce when these features are available to run in cars in the future.
If you’re interested in joining our Early Access Program in the future, please fill out this interest form. You can get started with the Android for Cars App Library today, by visiting g.co/androidforcars.
Posted by Dan Saadati, Software Engineer, and Hanaa ElAzizi, Technical Program Manager
Introducing AppSearch in Jetpack, now available in Alpha. AppSearch is an on-device search library which provides high performance and feature-rich full-text search functionality.
With AppSearch, your application can:
In AppSearch, you need to create a database to manage structured data, called “documents”. You then define what the structure looks like using “schema types”. For instance, you can model a message as a schema type with properties such as subject, body, and sender.
Documents that are added to your database can be queried over. Querying for “body:fruit” will retrieve all documents with the term “fruit” in the “body” of the Message.
Diagram illustrating indexing and searching within AppSearch
To showcase how an application might integrate AppSearch, take this example of a grocery list application. Users can add grocery items to their list to refer to when they’re out shopping. Since AppSearch offers multi-language support by default, users can also include specialty ingredients for their global recipes. Users add an item by typing in the name and selecting the store and category it belongs to. The user can search by item name and select filters for store or category. AppSearch will return matching results for the application to display.
Ready to dive into using AppSearch to enrich your app’s search functionality? Check out the AppSearch guide and start using it in your app.
Help us make the library better: give us feedback on things you like, and issues or features you would like to see. If you find a bug or issue, feel free to file an issue.
Posted by Dave Burke, VP of Engineering
Just a few weeks ago at Google I/O we unwrapped the first beta of Android 12, focusing on a new UI that adapts to you, improved performance, and privacy and security at the core. For developers, Android 12 gives you better tools to build delightful experiences for people on phones, laptops, tablets, wearables, TVs, and cars.
Today we’re releasing the second Beta of Android 12 for you to try. Beta 2 adds new privacy features like the Privacy Dashboard and continues our work of refining the release.
End-to-end there’s a lot for developers in Android 12 - from the redesigned UI and app widgets, to rich haptics, improved video and image quality, privacy features like approximate location, and much more. For a quick look at related Google I/O sessions, see Android 12 at Google I/O later in the post.
You can get Beta 2 today on your Pixel device by enrolling here for over-the-air updates, and if you previously enrolled for Beta 1, you’ll automatically get today’s update. You can also get Android 12 Beta 2 on select devices from some of our device-maker partners like Sharp. Learn more at android.com/beta.
Visit the Android 12 developer site for details on how to get started.
Beta 2 includes several of the new privacy features we talked about at Google I/O, as well as various feature updates to improve functionality, stability, and performance. Here are a few highlights.
Privacy Dashboard - We’ve added a Privacy Dashboard to give users better visibility over the data that apps are accessing. The dashboard offers a simple and clear timeline view of all recent app accesses to microphone, camera, and location. Users can also request details from an app on why it has accessed sensitive data, and developers can provide this information in an activity by handling a new system intent, ACTION_VIEW_PERMISSION_USAGE_FOR_PERIOD. We recommend that apps take advantage of this intent to proactively help users understand accesses in the given time period. To help you track these accesses in your code and any third-party libraries, we recommend using the Data Auditing APIs. More here.
Privacy dashboard and location access timeline.
Mic and camera indicators - We’ve added indicators to the status bar to let users know when apps are using the device camera or microphone. Users can go to Quick Settings to see which apps are accessing their camera or microphone data and manage permissions if needed. For developers, we recommend reviewing your app’s uses of the microphone and camera and removing any that users would not expect. More here.
Microphone & camera toggles - We’ve added Quick Settings toggles on supported devices that make it easy for users to instantly disable app access to the microphone and camera. When the toggles are turned off, an app accessing these sensors will receive blank camera and audio feeds, and the system handles notifying the user to enable access to use the app’s features. Developers can use a new API, SensorPrivacyManager, to check whether toggles are supported on the device. The microphone and camera controls apply to all apps regardless of their platform targeting. More here.
SensorPrivacyManager
Clipboard read notification - To give users more transparency on when apps are reading from the clipboard, Android 12 now displays a toast at the bottom of the screen each time an app calls getPrimaryClip(). Android won’t show the toast if the clipboard was copied from the same app. We recommend minimizing your app’s reads from the clipboard, and making sure that you only access the clipboard when it will be expected by users. More here.
getPrimaryClip()
More intuitive connectivity experience - To help users understand and manage their network connections better, we’re introducing a simpler and more intuitive connectivity experience across the Status Bar, Quick Settings, and Settings. The new Internet Panel helps users switch between their Internet providers and troubleshoot network connectivity issues more easily. Let us know what you think!
New Internet controls through Quick Settings.
Visit the Android 12 developer site to learn more about all of the new features in Android 12.
At Google I/O we talked about everything that’s new in Android for developers - from Android 12 to Modern Android Development tools, new form factors like Wear and foldables, and Google Play. Here are the top 3 things to know about Android 12 at Google I/O.
#2 Performance - With Android 12, we made significant and deep investments in performance, from foundational system performance and battery life to foreground service changes, media quality and performance, and new tools to optimize apps.
#3 Privacy and security - In Android 12 we’re continuing to give users more transparency and control while keeping their devices and data secure.
For an overview of Android 12 for developers, watch this year’s What's new in Android talk, and check out Top 12 tips to get ready for Android 12 for an overview of where to test your app for compatibility. The full list of Android content at Google I/O is here.
With more early-adopter users and developers getting Android 12 beta on Pixel and other devices, now is the time to make sure your apps are ready!
To test your app for compatibility, install the published version from Google Play or other source onto a device or emulator running Android 12 Beta. Work through all of the app’s flows and watch for functional or UI issues. Review the behavior changes to focus your testing. There’s no need to change your app’s targetSdkVersion at this time, so when you’ve resolved any issues, publish an update as soon as possible for your Android 12 Beta users.
targetSdkVersion
With Beta 2, Android 12 is closing in on Platform Stability in August 2021. Starting then, app-facing system behaviors, SDK/NDK APIs, and non-SDK lists will be finalized. At that time, you should finish up your final compatibility testing and release a fully compatible version of your app, SDK, or library. More on the timeline for developers is here.
Today’s Beta release has everything you need to try the latest Android 12 features, test your apps, and give us feedback. Just enroll any supported Pixel device to get the update over-the-air. To get started developing, set up the Android 12 SDK.
You can also get Android 12 Beta 2 on devices from some of our top device-maker partners. Visit android.com/beta to see the full list of partners participating in Android 12 Beta. For even broader testing, you can try Android 12 Beta on Android GSI images, and if you don’t have a device you can test on the Android Emulator.
Beta 2 is also available for Android TV, so you can check out the latest TV features and test your apps on the all-new Google TV experience. Try it out with the ADT-3 developer kit. More here.
For complete details on Android 12 Beta, visit the Android 12 developer site.
Posted by The Android Team
At Google I/O this year, we talked about how your app can take advantage of Android's different screens, both large and small. But if you missed the show, here are the top things you should know:
It's more important than ever to design your app to work well on large screens — including tablets, foldables, and Chrome OS laptops. There are already over 250 million large screen Android devices in use today. Meanwhile, new foldable devices are making it easier for users to multitask, and opening up new experiences like tabletop mode for hands-free activities. See this example of Disney+ using tabletop mode on the Samsung Galaxy Z Fold2.
Fortunately, it's also easier than ever to design apps which seamlessly scale to adapt to any device size — including dynamically resizing on Chrome OS and foldable devices, taking advantage of Jetpack Compose or ConstraintLayout to build responsive layouts. We also studied how people interact with large screens, like where their fingers are placed, and we’re giving you APIs and Tools to make that experience easier:
We’ve also made updates to the Android platform, Chrome OS, and Jetpack WindowManager, so apps just work better by default. For example, many UI elements now have default Max Width values to make sure they look better on large screens, while changes to the Display API ensure that existing apps continue to render correctly on foldables even if they aren't using WindowManager to query window metrics.
Learn more about how we are helping you build for large screens with these I/O sessions:
For even more details, check out the what's new in foldables, tablets, and large screens article, or read the case study on how Google Duo sees increased engagement and improved ratings.
We announced our biggest update yet to the Wear platform, with new features, APIs and tools to help developers create beautiful, high quality wearable experiences.
There are new Jetpack APIs to help you streamline your development. The Tiles library gives users fast, predictable access to the information and actions they rely on most. Another notable addition is the Ongoing Activities API, which enables you to let your users return to your app after they’ve navigated away (to start some other task such as music playback). Both of these libraries are currently in alpha.
We also released a new set of APIs for health and fitness that act as an intermediary to the sensors and related algorithms on the device to provide apps with high-quality data related to activity, exercise, and health. The alpha of the Health Services platform is available to use today.
Download Android Studio Arctic Fox Beta to try out a developer preview of the new Wear system image and start preparing your apps for the new platform. Check out the I/O sessions below to learn more about these announcements:
You can also read more details on the latest changes to Wear, as well as learn about how Spotify is building on Wear.
Android TV OS now has over 80 million monthly active devices, with 80% growth in the US and is at the heart of the Google TV experience launched last fall. Meanwhile, Google TV itself can be found on streaming devices like the Chromecast with Google TV, smart TVs from Sony, and as an app on Android devices — including tablets.
This year at I/O, we announced several new tools and features to make developing for Android TV OS easier:
These releases make it easier to build and test applications across a range of device configurations, while bringing the latest Android 12, Googler Assistant, and Cast features to the TV. To learn more, watch the What's new in Android TV and Google TV session from I/O.
Android Auto allows applications to connect with the infotainment displays built into many modern vehicles. To make this even easier we recently made the Android for Cars App Library available as part of Jetpack. This library allows navigation, EV charging, and parking apps to integrate directly with compatible cars.
We plan to expand to more app categories in the future, so if you’re expressing interest in bringing your app to Android Auto please fill out this interest form. You can also get started with the Android for Cars App Library today, by visiting g.co/androidforcars. Watch the What’s new with Android for Cars session from I/O for even more detail, or the accompanying What's new with Android for Cars blog post.
Posted by Patricia Correa, Director, Global Developer Marketing
At Google Play we’re committed to helping all developers thrive, whether these are large multinational companies or small startups and indie game studios. They are all critical to providing the services and experiences that people around the world look for on their Android devices. The indie game developer community, in particular, constantly pushes the boundaries with their creativity and passion, and bring unique and diverse content to players everywhere.
To continue supporting indies, today we’re opening submissions for two of our annual developer programs - the Indie Games Accelerator and the Indie Games Festival. These programs are designed to help small games studios grow on Google Play, no matter what stage they are in:
This year the programs come with some changes, including more eligible markets and fully digital event experiences. Learn more below and apply by July 1st.
If you’re an indie developer, early in your journey - either close to launching a new game or recently launched a title, this is the program for you. We’ll provide education and mentorship that will help you build, launch and grow successfully.
This year we have nearly doubled the eligible markets, with developers from over 70 countries being eligible to apply for the 2021 program.
Selected participants will be invited to take part in a 12-week online acceleration program. During this time you’ll get exclusive access to a community of Google and industry experts, as well as a network of other passionate developers from around the world looking to supercharge their growth.
If you're an indie game developer who has recently launched a high quality game, this is your chance to have your game discovered by industry experts and players worldwide.
This year we will, again, host three competitions for developers from Japan, South Korea, and selected European countries.
Prizes include features on Google Play store, promotional campaigns worth 100,000 EUR, and more.