GnuCash-Pocket / gnucash-android

GnuCash Pocket – a mobile companion app for Gnucash desktop application (https://github.com/Gnucash/gnucash). Developed independently of GnuCash.
Apache License 2.0
87 stars 17 forks source link
budget budget-app budget-tracker finance finance-application finance-management

CI Build Nightly Build

Introduction

GnuCash Pocket is a companion expense-tracker application for GnuCash (desktop) designed for Android. It allows you to record transactions on-the-go and later import the data into GnuCash for the desktop.

This app is a continuation of codinguser's "Gnucash for Android", which is already abandoned.

Accounts Transactions Reports
Accounts List Transactions List Reports

The application supports Android 5 Lollipop (API level 21) and above.

Features include:

Installation

There are different ways to get the GnuCash Pocket app for Android – through the app store, from GitHub or by building it yourself.

App Store

Android app on Google Play

From GitHub

Download the .apk from Releases. Alternatively you can check latest CI Build action.

Building

With Gradle

This project requires the Android SDK to be installed in your development environment. In addition you'll need to set the ANDROID_HOME environment variable to the location of your SDK. For example:

export ANDROID_HOME=/home/<user>/tools/android-sdk

After satisfying those requirements, the build is pretty simple:

The app is configured to allow you to install a development and production version in parallel on your device.

With Android Studio

The easiest way to build is to install Android Studio v2.+ with Gradle v3.4.1. Once installed, then you can import the project into Android Studio:

  1. Open File
  2. Import Project
  3. Select build.gradle under the project directory
  4. Click OK

Then, Gradle will do everything for you.

However, this project uses Firebase and therefore relies on a google-services.json configuration file. This file is not included in this repo and every contributor is encouraged to generate its own.

When importing the project in Android Studio the build task will fail with the following error:

org.gradle.api.GradleException: File google-services.json is missing. The Google Services Plugin cannot function without it.

or something similar depending on the Android Studio version you're using.

In order to generate a google-services.json configuration file follow these steps (Note: it requires a Google account):

You can also follow these instructions.

Support

GitHub Issues

Contributing

There are several ways you could contribute to the development.

For development, it is recommended to use the Android Studio for development which is available for free. Import the project into the IDE using the build.gradle file. The IDE will resolve dependencies automatically.

License

GnuCash Pocket is free software; you can redistribute it and/or modify it under the terms of the Apache license, version 2.0. You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.