Using microG instead of Google Play Services for my apl

In the latest release of my app, I added QR code scanning using Google Play Services (ML Kit). Unfortunately, because of that, it cannot be published on F-Droid. I guess the least complicated way would be to replace the Google Play Services dependencies in my Gradle build script with microG dependencies. The problem is, I cannot find any documentation on what exactly I have to do, what I have to watch out for/change in my code and so on. Are there any useful links that explain it?

To answer your question: I’m not aware of a MicroG MLKit implementation.

But maybe you should ask yourself if you really need a proprietary machine learning library just to read QR codes, that were explicitly made to process via very simple image processing and not some AI powered stuff needed…

Try to find a fully open source library instead. :wink:

ZXING is a good Open Source barcode scanning library used by pretty much every single app on F-Droid that does some kind of barcode scanning as far as I can tell.

See GitHub - zxing/zxing: ZXing ("Zebra Crossing") barcode scanning library for Java, Android, GitHub - journeyapps/zxing-android-embedded: Barcode scanner library for Android, based on the ZXing decoder and any of the many many apps on F-Droid with some kind of barcode scanning support.

(Note: their GitHub talks about it being in maintenance mode, but in my honest opinion it gets more than enough love and care to be a good choice still, I use it in Catima and it has never failed me in any real way)

Thank you. I ended up using ZXing which works great. I probably should have used it in the first place - it is much easier to use and using Google Play Services with ML Kit is really “too much”.

2 Likes