Code feedback on running app
I don't know anything about Android programming, so bear with me.

Unused variable

private AppCompatActivity activity = this;


This is unused - and even if it were used, you could just replace all references of it with this.

runPointsList is similarly unused.

Outer class this references

This code:

        @Override
        public void onClick(View v) {
            final Intent intent = new Intent(MainActivity.this, RunsListActivity.class);
            startActivity(intent);
        }


is justified in referencing MainActivity.this because it's an inner class. This code:

    permissionsHandler = new PermissionsHandler(this, MainActivity.this);


is not. You should be able to drop MainActivity. .

Multiple exceptions

This:

    } catch (JSONException e) {
        Log.e(Utils.getPackageName(MainActivity.this), "There was a JSONException whilst trying to save the journey points.");
        e.printStackTrace();
    } catch (IOException e) {
        Log.e(Utils.getPackageName(MainActivity.this), "There was an IOException whilst trying to save the journey points.");
        e.printStackTrace();
    }


should be able to have its two handlers collapsed to one with catch (JSONException|IOException e) syntax, since they do almost the same thing.