android-issue-reporter

Additional

Language
Java
Version
1.2.6 (Jul 19, 2016)
Created
Apr 5, 2016
Updated
Jan 15, 2017
Owner
Heinrich Reimer (HeinrichReimer)
Contributors
Heinrich Reimer (HeinrichReimer)
Paolo Rotolo (paolorotolo)
kabouzeid
rotolonico
patrick91
RiccardoBusetti
rosenpin
pinpong
8
Activity
Badge
Generate
Download
Source code
APK file

Promotion

android-issue-reporter

Based on Paolo Rotolo's Gitty Reporter

Is your Inbox full of bug reports and requests from your users?

android-issue-reporter is a new material designed library to report issues from your app directly to GitHub, even without an account.

Demo

A demo app is available on Google Play:

Screenshots

GitHub bot Include device info Demo

Dependency

android-issue-reporter is available on jitpack.io

Gradle dependency:

repositories {
    maven { url 'https://jitpack.io' }
}
dependencies {
    compile 'com.heinrichreimersoftware:android-issue-reporter:1.2.5'
}

Get the latest dependency at jitpack.io.

How to use

Just create a new Activity that extends IssueReporterActivity:

public class ExampleReporterActivity extends IssueReporterActivity {
    // Where should the issues go?
    // (http://github.com/username/repository)
    @Override
    public GithubTarget getTarget() {
        return new GithubTarget("username", "repository");
    }

    // [Optional] Auth token to open issues if users don't have a GitHub account
    // You can register a bot account on GitHub and copy ist OAuth2 token here. 
    @Override
    public String getGuestToken() {
        return "28f479f73db97d912611b27579aad7a76ad2baf5";
    }

    // [Optional] Include other relevant info in the bug report (like custom variables)
    @Override
    public void onSaveExtraInfo(ExtraInfo extraInfo) {
        extraInfo.put("Test 1", "Example string");
        extraInfo.put("Test 2", true);
    }
}

Your activity must have an Theme.IssueReporter theme declared in AndroidManifest.xml:

<style name="Theme.App.Light" parent="Theme.IssueReporter">
    <item name="colorPrimary">...</item><!-- required -->
    <item name="colorPrimaryDark">...</item><!-- required -->
    <item name="colorAccent">...</item><!-- required -->
</style>

You can use Theme.IssueReporter.Light or Theme.IssueReporter.Light.DarkActionBar as replacement if you want a light theme.

How to create a bot key

  1. Create a new GitHub account.
    (You have to use a unique email address.)

  2. Go to https://github.com/settings/tokens and create a new token using Generate new token.
    (You only need to give the bot the public_repo permission.)

  3. Copy the OAuth access token you get at the end of the setup.

  4. Override getGuestToken() in your reporter activity like this:

    @Override
    public String getGuestToken() {
        return "<your token here>";
    }

Limitations

  • You can't use two factor authentication.