Skip to content

Conversation

@Lukas-Sturm
Copy link

Description

This PR updates the app to make it installable on modern Android devices, as the Play Store currently blocks it on newer phones.

The App now works perfectly fine on modern Android

Changes

  • Updated dependencies to their latest releases.
  • Bundled OpenCV:
    • The OpenCV Manager app is deprecated, and downloading APKs from GitHub is likely not compliant with Google Play policies.
  • Updated target and compile SDK to 36.
  • Introduced MediaStore for handling all image and PDF storage:
    • PDFs on pre-Android Q devices still use raw files.
  • Added PermissionX to manage Camera and (on older devices) Storage permissions.
  • Removed all absolute file paths and replaced them with Uris:
    • Includes handling edge cases for sharing files with other apps using both file:// and content:// URIs.

Testing

  • ✅ Tested on emulators running SDK 25 and SDK 35.
    • ⚠️ UI appears broken on SDK 35 emulator, but I am unable to address it — I have no experience with layouting, and the UI is generated by a third-party library (I think).
  • ✅ Installed and tested on a physical device running SDK 33 — UI looks fine, so the issue may be emulator-specific.

Type of change

Just put an x in the [] which are valid.

  • Translation Contribution (non-breaking change which only adds or updates the translation to a language)
  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing functionality to not work as expected)

How Has This Been Tested?

Please describe the tests that you ran to verify your changes.

  • ./gradlew assembleDebug assembleRelease
    • ⚠️ shows lots deprecation warnings
  • ./gradlew checkstyle

Checklist:

  • My code follows the style guidelines of this project
  • I have performed a self-review of my own code
  • I have commented my code, particularly in hard-to-understand areas
  • I have made corresponding changes to the documentation
  • My changes generate no new warnings

License:

  • I hereby declare that all my contributions to this project is licensed using the GPL Version 3 License unless specified directly on source files

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant