I want to upgrade my app to use ML Kit for QR Code scanning. Will I be able to share my app on F-Droid when I use ML Kit from Google or is there a licensing issue as it is not open source?
I would say, not allowed. However, go through this once, and @Licaon_Kter or @linsui who are more veteran may confirm if any further doubts.
for example, released under a GPL or Apache license.
To determine which licenses are FLOSS, We defer to widely trusted organizations that have a proven track record. Specifically, we acknowledge these standards: DFSG, FSF, GNU, and OSI (read a quick overview of them all on SPDX).
Although not ideal, “non-functional” assets (e.g. artwork) may be acceptable under less permissive licenses than functional code - an example would be artwork assets that are licensed only for use with that particular game. In any case though, they must be included under some kind of license, and not be copyright violations.
Thanks for your answer.
The Problem is that I get lots of complaints about QR code scanning problems. ZXing and ZBar QR Code libraries are really old ond no longer maintained.
I fully understand that The FOSS approach and think this is very important.
But F-Droid limits me to upgrade to a more modern Library and basically requires me to provide a bad user experience.
So maybe, as QR Code scanning is an important part of many apps, there can be found a solution how to tackle this issue?
Maybe add an exception for ML Kit in combination with a new Antifeature that makes it obvious to F-Droid Users ML Kit is used for QR Code Scanning?
Might I suggest: check the other main F-Droid repo QR apps and what do they use. Example the SECUSO one, and few others. F-Droid Search: qr
They all use ZXing. Secuso uses even the exact same Library that I use, which uses ZXing in the end.
Maybe the reason why I have more Problems and complaints is the kind of QR Codes that are scanned. In the Bitcoin Lightning realm the QR Codes are somtimes very dense. Small Standard QR Codes are also not a problem in my app.
Then maybe code from.one of these may help? F-Droid Search: bitcoin
Sorry, am not a developer, so my knowledge is limited.
No.
Zxing is still maintained.
No.
You can try zxing-cpp/wrappers/android/README.md at master · zxing-cpp/zxing-cpp · GitHub which is actively developed.
Wow, I did not know this was ported to c++ and actively maintained.
I just implemented it and oh boy! It is so much better than the original java implementation.
Much faster and no problems at all anymore with high density QR codes and inverted QR codes.
Thank you so much for the input! That is a big improvement in UX for my app.
MLKit should clearly be considered a tracker.