Skip to content

Customization

santawho edited this page Aug 2, 2026 · 5 revisions

A properties file may be loaded into the app to override pre-defined resource values, such as strings, numbers, booleans and colors.

Disclaimer

Due to the way the Android framework behaves when loading and resolving XML resources, this customization method will not be able to affect resources used in layouts and drawables. As these make up 80% of the rendered user interface, the mileage of this customization method is very low. Sorry.

Steps

  • Prepare a text file (*.txt) where you define the names and values to be overridden.
  • You may want to edit the file on a desktop computer. If you do so, transfer the file to your mobile device, for example into the download folder.
  • Go to the Öffi NG app and open Settings - Customization .
  • Select Load customization from file.
  • Choose the file you have prepared and uploaded to the mobile device.
  • The app loads the file and restarts the app.

File Name

The file must have the ".txt" file name extension in order to be selectable by the system file selector.

File Format

The file must be a valid Java properties file. That is:

  • each line defines a name and the associated value if it is formatted like name = value .
  • lines starting with '#' are treated as comments and are ignored.

Each name must be the name of a resource value defined by the app's source code.

The value associated with a name must be formatted according to the respective resource type, e.g. if the name defined a color in the app's resources, then the value must be formatted like #804ac9 .

In order to support specific colors for day und night mode, you can specify 2 color values separated by a comma, where the first one is used for day mode and the second one for night mode.

Resource Names

For a list of applicable resource names you might want to browser the original resource definition files .

Example File

# the following line changes the action bar color of the first screen to red
bg_action_bar_directions = #FF0000

# change the heading line of the trip details view
trip_details_title = My Trip

# some more examples -> remove the '#' to enable these
#drivermode_announcement_next_stop = now arriving at %1$s
#navigation_event_speak_nav_start = Let's go

You may also create a template file containing all value defined by the app using the appropriate built-in function.

Clone this wiki locally