Skip to content

die-tageszeitung/taz-neo

master
Switch branches/tags
Code

Latest commit

[#14372] Add explicit null handling to getStubLiveData

See merge request taz/taz-app!1287
a78f7f5

Git stats

Files

Permalink
Failed to load latest commit information.

taz/android-app

This repository contains an android reader app for the German newspaper taz. The project regards the app as the primary outlet/user interface instead of displaying digital byproducts of producing a newspaper.

Get it on F-Droid Get it on Google Play

Development

This repository is currently maintained by ctrl.alt.coop. We gratefully accept propositions and welcome discussions.

Consider the contribution guidelines.

Building

Before starting the build process it is necessary to initialize the mupdf-android-viewer submodule:

git submodule update --init --recursive

Additionally mupdf needs to be generated:

make -C mupdf-lib/jni/libmupdf generate

With that the build process can be started.

Non-free variant

The non-free variant includes firebase for push notification support. It also minifies sources and provides sentry mappings for efficient error reporting. It's distribution target is the Google Play Store and therefore requires additional files for a successful build that are not included in the repo. (Namely google credentials and sentry auth tokens to upload proguard mappings) Because of the missing sentry token all "release" and "non-free" builds will fail or won't function properly without those present.

The non-free app is published to the Google Play Store with the Gradle Play Publisher Plugin.

For internal development see [INTERNAL_DISTRIBUTION.md] for instructions to setup your development environment.

Free variant

Anyone can produce builds for the free variant without minification enabled. The following flavor creates a free release for Die Tageszeitung app:

./gradlew :app:assembleFreeTazUnminifiedProductionRelease

Be sure that your android sdk path is set correctly, for example by placing a local.properties file in the project root containing the following property:

sdk.dir=/home/me/Android/Sdk

Android Studio usually takes care of this if used.

Also be aware that this will produce an unsigned release. For signing during build please place a keystore.properties in project root providing information about the signing configuration:

keystorePath=keystore.jks
keyAlias=keyAlias

Releasing / Versioning

Our gradle build scripts automatically create versions based on the git tag. To reduce an integer we follow a strict pattern for release tags, that are a subset of semver: MAJOR.MINOR.PATCH[-PRE-RELEASE-TYPE].[PRE-RELEASE-VERSION]. Valid prerelease types are 'alpha', 'beta', 'rc' For example:

git tag -a 1.1.0 # ✓
git tag -a 1.1.1-alpha.1 # ✓
git tag -a 1.2.0 # ✓

The build script will possibly throw an error or generate garbage versions if the last tag is wrong like those bad examples:


git tag -a 1.2 # ✗
git tag -a 1.1.1-alpha-1 # ✗
git tag -a testtag # ✗

About

android reader app for the German newspaper taz

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages