Skip to content

muety/anchr-android

master
Switch branches/tags
Code

Latest commit

 

Git stats

Files

Permalink
Failed to load latest commit information.
Type
Name
Latest commit message
Commit time
 
 
 
 
ios
 
 
lib
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Anchr for Android

Android client for Anchr.io link collections, built with Flutter

Prerequisites

  • A hosted instance of Anchr and a registered account.
  • Java >= 11 (JDK path defined in android/gradle.properties)
  • Flutter >= 2.5.3
  • Dart (tested with 2.14.4)
  • Android SDK (tested with v31)
  • Android Studio (or VSCode)
  • An Android device or emulator

How to run?

  1. Check out repository
  2. Make sure flutter doctor has no errors
  3. flutter packages get
  4. flutter run

Developer notes

  • State handling architecture inspired by vanilla.
  • Generate launcher icon: flutter packages pub run flutter_launcher_icons:main

Release

  • Have your keystore and password ready, e.g. ~/.android/keystore.jks
  • Make sure you have android/key.properties, which looks like so
storePassword=shhh
keyPassword=shhh
keyAlias=some_alias_eg_anchr
storeFile=/home/you/.android/keystore.jks
  • flutter build apk --release --flavor fmain to build an APK
  • flutter build appbundle --release --flavor fmain to build an AppBundle (recommended)

F-Droid

flutter build apk --flavor fdroid

To Do

There is still plenty of space for improvements. Those include:

  • Add ability to sign up
  • Add ability to share collections
  • Improve database helpers (e.g. hide one-to-many relation between collections and links from the outside)
  • Enhance offline mode
    • Show cached content while initial request is pending
  • Implement refresh tokens (requires backend changes)
  • Add tests
  • Clean up code

Feel free to contribute!

License

GNU General Public License v3 (GPL-3) @ Ferdinand MΓΌtsch