update mobile for Sentry

Signed-off-by: Jamin W. Collins <jamin.collins@gmail.com>
This commit is contained in:
Jamin W. Collins
2018-08-30 18:17:22 -06:00
parent 881bd7adf2
commit 05aac0e1cb
5 changed files with 34 additions and 7 deletions

View File

@@ -283,6 +283,7 @@
<fileset dir="${basedir}/../forge-gui/release-files/" includes="ISSUES.txt" /> <fileset dir="${basedir}/../forge-gui/release-files/" includes="ISSUES.txt" />
<fileset dir="${basedir}/../forge-gui/release-files/" includes="CHANGES.txt" /> <fileset dir="${basedir}/../forge-gui/release-files/" includes="CHANGES.txt" />
<fileset dir="${basedir}/../forge-gui/" includes="MANUAL.txt" /> <fileset dir="${basedir}/../forge-gui/" includes="MANUAL.txt" />
<fileset dir="${basedir}/../forge-gui-mobile-dev/" includes="sentry.properties" />
<fileset dir="${basedir}/../forge-gui/"> <fileset dir="${basedir}/../forge-gui/">
<include name="res/**" /> <include name="res/**" />
<exclude name="res/cardsfolder/**" /> <exclude name="res/cardsfolder/**" />

View File

@@ -25,13 +25,15 @@
-dontwarn java.awt.** -dontwarn java.awt.**
-dontwarn java.util.** -dontwarn java.util.**
-dontwarn java.lang.** -dontwarn java.lang.**
-dontwarn org.slf4j.**
-dontwarn javax.**
-keep class forge.** { *; } -keep class forge.** { *; }
-keep class com.thoughtworks.xstream.** { *; } -keep class com.thoughtworks.xstream.** { *; }
-keep class org.apache.commons.lang3.** { *; } -keep class org.apache.commons.lang3.** { *; }
-keep class com.google.guava.** { *; } -keep class com.google.guava.** { *; }
-keep class com.google.common.** { *; } -keep class com.google.common.** { *; }
-keep class io.sentry.event.Event { *; }
-keepclassmembers class com.badlogic.gdx.backends.android.AndroidInput* { -keepclassmembers class com.badlogic.gdx.backends.android.AndroidInput* {
<init>(com.badlogic.gdx.Application, android.content.Context, java.lang.Object, com.badlogic.gdx.backends.android.AndroidApplicationConfiguration); <init>(com.badlogic.gdx.Application, android.content.Context, java.lang.Object, com.badlogic.gdx.backends.android.AndroidApplicationConfiguration);
@@ -81,3 +83,8 @@
-keep class * implements android.os.Parcelable { -keep class * implements android.os.Parcelable {
public static final android.os.Parcelable$Creator *; public static final android.os.Parcelable$Creator *;
} }
-keepattributes LineNumberTable,SourceFile
# https://stackoverflow.com/a/32615580
-optimizations !class/unboxing/enum

View File

@@ -0,0 +1,14 @@
# ideally this should be using HTTPS, but this is fine for now
dsn=http://a0b8dbad9b8a49cfa51bf65d462e8dae@sentry.cardforge.org:9000/2
stacktrace.app.packages=forge
# where to store events if offline or can't reach the above server
buffer.dir=sentry-events
buffer.size=100
# allow ample time for graceful shutdown
buffer.shutdowntimeout=5000
async.shutdowntimeout=5000
# allow longer messages
maxmessagelength=1500

View File

@@ -29,11 +29,11 @@ public class BugReportDialog extends FScreen { //use screen rather than dialog s
Forge.openScreen(new BugReportDialog(title, text, showExitAppBtn)); Forge.openScreen(new BugReportDialog(title, text, showExitAppBtn));
} }
private final FTextArea lblHeader = add(new FTextArea(false, BugReporter.HELP_TEXT)); private final FTextArea lblHeader = add(new FTextArea(false, "Report Bug"));
private final TemplateView tvDetails; private final TemplateView tvDetails;
private final FButton btnReport = add(new FButton(BugReporter.REPORT)); private final FButton btnReport = add(new FButton(BugReporter.REPORT));
private final FButton btnSave = add(new FButton(BugReporter.SAVE)); private final FButton btnSave = add(new FButton(BugReporter.SAVE));
private final FButton btnContinue = add(new FButton(BugReporter.CONTINUE)); private final FButton btnDiscard = add(new FButton(BugReporter.DISCARD));
private final FButton btnExit = add(new FButton(BugReporter.EXIT)); private final FButton btnExit = add(new FButton(BugReporter.EXIT));
private BugReportDialog(String title, String text0, boolean showExitAppBtn) { private BugReportDialog(String title, String text0, boolean showExitAppBtn) {
@@ -43,7 +43,8 @@ public class BugReportDialog extends FScreen { //use screen rather than dialog s
btnReport.setCommand(new FEventHandler() { btnReport.setCommand(new FEventHandler() {
@Override @Override
public void handleEvent(FEvent e) { public void handleEvent(FEvent e) {
BugReporter.copyAndGoToForums(tvDetails.text); BugReporter.sendSentry();
Forge.back();
} }
}); });
btnSave.setCommand(new FEventHandler() { btnSave.setCommand(new FEventHandler() {
@@ -52,7 +53,7 @@ public class BugReportDialog extends FScreen { //use screen rather than dialog s
BugReporter.saveToFile(tvDetails.text); BugReporter.saveToFile(tvDetails.text);
} }
}); });
btnContinue.setCommand(new FEventHandler() { btnDiscard.setCommand(new FEventHandler() {
@Override @Override
public void handleEvent(FEvent e) { public void handleEvent(FEvent e) {
Forge.back(); Forge.back();
@@ -115,11 +116,11 @@ public class BugReportDialog extends FScreen { //use screen rather than dialog s
y += buttonHeight + PADDING; y += buttonHeight + PADDING;
} }
if (btnExit.isVisible()) { if (btnExit.isVisible()) {
btnContinue.setBounds(x, y, buttonWidth, buttonHeight); btnDiscard.setBounds(x, y, buttonWidth, buttonHeight);
btnExit.setBounds(x + buttonWidth + PADDING, y, buttonWidth, buttonHeight); btnExit.setBounds(x + buttonWidth + PADDING, y, buttonWidth, buttonHeight);
} }
else { else {
btnContinue.setBounds(x, y, 2 * buttonWidth + PADDING, buttonHeight); btnDiscard.setBounds(x, y, 2 * buttonWidth + PADDING, buttonHeight);
} }
} }

View File

@@ -78,6 +78,10 @@ public class SettingsPage extends TabPage<SettingsScreen> {
"Minimize on Screen Lock", "Minimize on Screen Lock",
"Minimize Forge when screen is locked (enable if you experience graphic glitches after locking your screen)."), "Minimize Forge when screen is locked (enable if you experience graphic glitches after locking your screen)."),
0); 0);
lstSettings.addItem(new BooleanSetting(FPref.USE_SENTRY,
"Automatic Bug Reports",
"Automatically send bug reports to the developers, without prompting."),
0);
//Gameplay Options //Gameplay Options
lstSettings.addItem(new CustomSelectSetting(FPref.UI_CURRENT_AI_PROFILE, lstSettings.addItem(new CustomSelectSetting(FPref.UI_CURRENT_AI_PROFILE,