Android SDK, SQLite, Android Room, Runnables, Google Vision API
The app makes managing receipts for the tax declaration more accessible. The end user can manage, and import the relevant receipts, as well as export the metadata and the files in a pdf file. This file contains all receipts in a given time period.
Thie application has a dashboard, in which the user can get an overview of the collected receipts.
On top of that, the user can navigate to the overview-, profile-, settings- and export-page.
In order to insert a new receipt, the user needs to grant the following permissions to the application:
- Access to contacts
- Access to images
- Access to the storage
- Access to the internet
After granting the permissions, the user needs to specify a Google account for the Google Vision API. After that, the user can import the receipt and crop it.
After the insertion of the receipt, the user will be redirected to a form.
Ther, the metadata of the receipt can be inserted. The Google Vision API predicts values for the title and the total amount. On top of that, a preview of the scan is shown in the bottom of the page. The user now has the possibility to save or cancel the receipt. After that, the overview page appears, in which all receipts are shown.
In the profile page, the user can specify his/her first and last name. When the user has not yet specified that data, he will automatically be redirected to this page while starting the app.
In the settings page, the user can specify the business year and the theme of the app (light / dark mode). On top of that, the Google Vision API can be enabled / disabled. This data is saved in the shared preferences of the application
In the settings page, the user can create a pdf-file out of the receipts. For this functionality, the user must specify, whether the application should create a single file containing all receipts or one file for every receipt. Further, a time period must be specified.
After clicking the download button, the file can be shared or viewed.
The Google Cloud Vision API is used to predict a title and the total amount of a scanned receipt. To map the JSON data from the API into actual predictions, the following Concept was implemented: https://blog.mi.hdm-stuttgart.de/index.php/2019/08/31/using-googles-cloud-vision-api-to-create-a-receipt-analyzer/
- iText 7: https://mvnrepository.com/artifact/com.itextpdf/itext7-core/7.1.3
- PDFBox Android: https://github.com/TomRoush/PdfBox-Android
- ScanLibrary: https://github.com/jhansireddy/AndroidScannerDemo
- MPAndroidChart: https://github.com/PhilJay/MPAndroidChart
- Google Cloud Vision API: https://cloud.google.com/vision/docs/quickstart-client-libraries
Attribution for the logo: https://www.flaticon.com/free-icon/fox_4065958?related_id=4065958&origin=search