code-scanner icon indicating copy to clipboard operation
code-scanner copied to clipboard

Distribution

Open czlucius opened this issue 4 years ago • 11 comments

This app needs to be distributed to platforms and app stores to increase its reach

Suggested app stores:

  • Samsung Galaxy Store
  • Aptoide(via Catappult)
  • Apkpure
  • Uptodown

Other app stores (requires decoupling of ML Kit):

  • Amazon App Store
  • Huawei AppGallery
  • F-Droid

czlucius avatar Jun 08 '21 15:06 czlucius

App has been distributed to the Galaxy Store. View here

czlucius avatar Jul 03 '21 09:07 czlucius

App tested on API 23 emulator without Google Play Services and worked. Packaged ML Kit library removes need for GMS, but ML Kit is still closed source, hence app cannot be published to F-Droid due to closed source third party libraries.

czlucius avatar Jul 12 '21 11:07 czlucius

For F-Droid, there are 3 show-stoppers currently:

Offending libs:
---------------
* Android Vision (/com/google/android/gms/vision): NonFreeDep
* Google Mobile Services (/com/google/android/gms): NonFreeDep
* ML Kit (/com/google/mlkit): NonFreeDep

3 offenders.

These libraries are not libre. Is it possible to have a build flavor coming without them, and not losing too much functionality that way? Or else, to replace them (I see #2 may be an attempt to that)?

IzzySoft avatar Jul 30 '21 20:07 IzzySoft

Yes, I plan to add a build variant removing the need for these non free dependencies in the future.

czlucius avatar Jul 31 '21 02:07 czlucius

I will solve this in the future(probably this year), but right now I do not have much time to fix this.

czlucius avatar Jul 31 '21 02:07 czlucius

On a side note, where did you find the first 2 dependencies in this repo? (Android Vision and GMS)? I can't seem to find them in the repo, only ML Kit is used (to my knowledge)

czlucius avatar Jul 31 '21 09:07 czlucius

I didn't find them in the repo, but in the resulting APK file. The above is quoting results from my own library scanner, used by F-Droid's issuebot and in my repo as well. If you want to use it for yourself, the one from issuebot can be used more-or-less stand-alone (less dependencies than the full-fledged one I use), dependencies and an example call are contained at the head of the file (libsmali-java/testing seems to be required by the issuebot framework only, as the script works perfectly fine here without that package).

And to explain: those two are dependencies drawn in by the third. MLKit is based on Vision which in turn requires GMS, as you can tell by its package name.

IzzySoft avatar Jul 31 '21 10:07 IzzySoft

Thanks

czlucius avatar Jul 31 '21 11:07 czlucius

Code Scanner is now available on F-Droid through a custom repository.

Add https://czlucius.gitlab.io/czlucius-fdroid-repo/fdroid to the list of repositories in the F-Droid app.

czlucius avatar Feb 17 '22 04:02 czlucius

I will refactor the code to use zxing(for scanning) in the future so that it can be added to F-Droid's main repo, but I do not have the time now. Thanks

czlucius avatar Feb 17 '22 04:02 czlucius

ZXing returns scanned data as plain text, unlike ML Kit which provides it in structured form.

I'm trying to write a library to parse this data so I can detect the data types (e.g. URL, VCF, Email)

https://github.com/czlucius/codes-data-parsing

czlucius avatar Mar 01 '22 06:03 czlucius