4

Application-Class で、これらの注釈を使用して ACRA を定義しました

@ReportsCrashes(formKey = "",
            mailTo = "my@email.de",
            mode = ReportingInteractionMode.DIALOG,
            //resToastText = R.string.crash_toast_text, // optional, displayed as soon as the crash occurs, before collecting data which can take a few seconds
            resDialogText = R.string.crash_dialog_text,
            resDialogIcon = android.R.drawable.ic_dialog_info, //optional. default is a warning sign
            resDialogTitle = R.string.crash_dialog_title, // optional. default is your application name
            resDialogCommentPrompt = R.string.crash_dialog_comment_prompt, // optional. when defined, adds a user text field input with this text resource as a label
            resDialogOkToast = R.string.crash_dialog_ok_toast // optional. displays a Toast message when the user accepts to send a report.
)
public class AttachApplication extends Application implements OnSharedPreferenceChangeListener{

これは正常に機能しますが、ユーザーがエラーレポートを手動で送信できるボタンもアプリにあります。そのために、モードを変更して、ダイアログの代わりに電子メールのみが送信されるようにします。

public void startSendErrorAction(View view) {
    Log.d( TAG, "sending error to srs" );
    ACRAConfiguration config = ACRA.getConfig();
    int prevDialogTitle = config.resDialogTitle();
    int prevDialogText = config.resDialogText();
    config.setResDialogTitle( R.string.manual_error_title );
    config.setResDialogText( R.string.manual_error_text );

    ACRA.setConfig( config );
    ACRA.getErrorReporter().handleException(null);

    config.setResDialogText( prevDialogText );
    config.setResDialogTitle( prevDialogTitle );
    ACRA.setConfig( config );
}

ダイアログ ボックスのテキストとタイトルだけを変更しようとしましたが、うまくいきません。注釈で構成されているものを常に使用します。

これらの値を上書きすることは可能ですか? ありがとう

4

1 に答える 1

1

あなたは ACRAのようなものを望んでいると思います: ある時は対話報告で、ある時は無言の報告ですが、「反対の」方向です。そのため、最初に構成で SILENT を使用し、構成を設定する前に DIALOG でリセットしてください。

于 2013-01-17T17:03:41.790 に答える