-
Couldn't load subscription status.
- Fork 0
Home
Android application that allows signing containers with Mobile-ID, Smart-ID and ID-card (via USB reader or NFC) and encrypting/decrypting containers with ID-card.
Application is developed using single-activity approach using declarative UI framework Jetpack Compose and Material Design, Kotlin programming language and MVVM Architecture pattern.
Architecture is based on MVI (Model-View-ViewModel) paradigm and relies heavily on Couroutines.

The application uses FLAG_SECURE flag, to prevent window content to be shown on screenshots and video recordings. When developing the software, please use the FLAG_SECURE when creating new screens. More info about FLAG_SECURE window leaks is here
Several modules are being developed along with the mobile application that can be used separately.

-
app - basic application module
-
buildSrc - Libdigidocpp and Libcdoc update plugin
- This is the location of the Libdigidocpp update plugin (LibdigidocppPlugin) which contains the UpdateLibdigidocppTask Gradle command needed to pull a new version of Libdigidocpp from the local folder and install the libdigidoc-lib module into the libs folder.
./gradlew libdigidoc-lib:updateLibdigidocpp --dir=../Downloads/libdigidocppFiles # path to zip artifacts files (arm, x64, x86_64) e.g.: libdigidocpp.androidarm.zip, libdigidocpp.androidarm64.zip, libdigidocpp.androidx86_64.zip../gradlew libcdoc-lib:updateLibcdoc --dir=../Downloads/libcdocFiles # path to zip artifacts files (arm, x64, x86_64) e.g.: libcdoc.androidarm.zip, libcdoc.androidarm64.zip, libcdoc.androidx86_64.zip. -
commons-lib - Shared and Commons module
-
config-lib - Central Management Configuration module
-
crypto-lib - Encryption library module
-
id-card-lib - ID-card support (NFC, USB-reader) library module
-
libdigidoc-lib - Libdigidocpp library support module
-
mobile-id-lib - Mobile-ID signing support module
-
smart-id-lib - Smart-ID signing support module
-
networking-lib - Networking and Service support module
-
utils-lib - Support utilities module
-
Additional support things - In addition to the components of the modules in the project are also included additional support things:
- The
/scriptsfolder containing the commandline scripting repository that could be installed to return Git pre-commit hooks, commit content in Kotlin Lint to parse to make sure that the version control content goes into version control without any static code errors. - The
/gradlefolder, which contains the Gradle wrapper with updated versions, and the libs.versions.toml file which contains the versions of all the project's techs and plugin dependencies and references to Maven repos.
- The