This is a post about Krita 5.3.3 on Android, where we added the ability to support Krita through the application directly. At the time of writing, that version isn’t rolled out to everybody yet. So if you don’t see anything different, you’re probably not yet on that version. This post makes more sense if you actually see what it’s talking about first.
In short:
- There’s a lot of Android development resources needed for Krita.
- To get more resources, we’d like to let people donate to Krita through the Android app.
- Google doesn’t allow donations, applications must offer something in return for a purchase. We obviously don’t want to lock application features behind a paywall to appease that.
- Instead, we just added a convenience feature: you can get select resource bundles directly in the Android app if you support Krita through it.
- We might be able to expand this further in the future to provide some stuff people have been asking for. Read more below.
Long version follows. If you want to complain or give other feedback, please read that first, it might already be answered.
Frequently Asked Questions
(None yet, will edit this post once there’s been questions. We also keep an eye on other places, so the questions might come from outside the forum.)
Android Costs
Providing Krita on Android costs quite a lot of development resources. For example:
- Developing a mobile user interface.
- Making video exports for animations and timelapses work on Android (this one just got finished).
- Changing recovery and file handling so that they work better on Android.
- Making Krita 6 work on Android, which requires making the Qt 6 framework work on it.
- Having to add special support for individual devices. Many Android tablets use non-standard inputs or have bugs that need special workarounds in Krita. We have to purchase those devices and write special code for each one.
- Google constantly updating the Android platform and forcing us to update to the latest release, despite Krita using none of the features.
- Getting plugins to work somehow, without getting banned from the Play Store for someone running a “bad” plugin, like one that doesn’t properly show a data protection notice before accessing an external website.
All of this costs time and money. Having some more of the latter would be nice because of that. However, currently the Android app basically has no way to support Krita and the only Google-approved way to do so is to go through the Google Play system.
All Play
Google does provide a nice interface for people to buy stuff from within the Android app. You can buy stuff once or regularly and it uses the same payment information you’re using for other services. Aside from the fees that Google forks off, this would be pretty much ideal for donations… but that’s not allowed. You can only offer purchases and subscriptions, both of which are required to give you some kind of “product” in return. And “supporting Krita” isn’t enough of a product.
Now, obviously we don’t want to lock any Krita features behind a paywall to appease Google’s system. When discussing this, we immediately ruled out anything in that regard and don’t plan on doing that in the future.
However, giving some extra convenience features on top seems like a fine option. This already exists if you buy Krita through stores (Steam, Epic, Mac Store, Microsoft Store) in the form of giving you auto-updates in return for supporting Krita or letting you use the Steam Cloud. It’s just something nice to have extra, but not important to any actual work. So that’s what we went with.
Supporter Benefits
In return for supporting Krita through the Android app, you will be able to download some select resource bundles through the app itself. This includes the Digital Atelier bundle, which is something that is also sold separately.
You can still download and install resource bundles manually, we didn’t remove that, it’s just a convenience feature you get on top. And especially Android users sometimes struggle a bit with manually loading up bundles (if you’re a regular on the forum you’ve probably seen the question crop up), so maybe this scratches an itch in that regard for some folks.
The way you’ll be able to support Krita is via a single purchase or via a monthly subscription, similar to one-time and regular donations. Currently, they both give you the same stuff, but we plan on having the subscription always give you access to everything and the one-time purchases to have a fixed set of benefits.
Krita will offer you these supporter options on the splash screen while Krita is loading and there’s a picture at the bottom of the welcome screen in place of the usual message there. If you purchased something, those will go away. If you have a degoogled device or are using a debug or nightly package outside of the Play Store, it just shows you real donation links instead.
Future Work
There’s some ideas we have on what we could do with this system. There aren’t any plans set in stone yet though, this is mostly just spitballing.
Of course we can add more resource bundles to it. If you want to offer bundles that you made available, feel free to comment in this thread in that regard. Adding color schemes or other customization here would also be an option.
Since people sometimes ask to change their splash screen to something more “professional” because they intensely dislike the art or because they want to show their own brand instead, we might also offer that as an option. The cost of it is surely small enough that any professional could shoulder it.
Making these features available on other platforms than Android somehow would also be nice, but we don’t really have ideas for it yet. It probably would make sense to give you some of these features if you purchase Krita through Steam and friends. It could conceivably also be used as a basis for a “resource store” in Krita, which people ask for pretty regularly. The problem with it has always been that it would cost too much time and money.
Lastly, probably the coolest thing would be to get Python plugins working on Android this way. This also requires some technical work, since we have to make Python work on Android, but after that it’s only a “policy” problem. Letting people run any plugin runs afoul of Google Play policies and plugins not made for Android may misbehave, possibly to the point where it makes Krita unusable and giving you no way to fix it other than completely uninstall Krita and losing all your settings. But we could potentially provide a set of “vetted” plugins on Android this way and if you want to use others you’ll have to install the APK manually.
And of course it’d be nice if we could offer some of this stuff for free as well. However, resource bundles are quite large, so unleashing millions of Krita users on the system could easily end up with significant infrastructure costs, not to mention the AI scrapers that will squeeze out anything they can get their claws on and are already regularly taking down our systems. So this is something that needs some more consideration and measuring first. We don’t want to start offering it for free and then do a rug-pull because it costs too much.
If you have further ideas in these regards, post in this thread about them. Same with any other feedback.