2015-10-21 3 views
0
  1. Я хочу отправить почту отчет Крушения в фоновом режиме, но не в состоянии послать, потому что он использует ACTION_SEND Я использую код: formKey = "", mailTo = "[email protected]"Как реализовать Acra с пользовательским URL

  2. Как могу я введите URL-адрес, где отчеты могут быть сохранены на моем собственном сервере. Если можно использовать любой фиктивный URL-адрес, доступный для хранения или любую базу данных с открытым исходным кодом. Пожалуйста, рекомендую.

Благодаря

+0

У вас есть пользовательский класс, который реализует ReportSender? –

+0

@ ХариКришнан еще нет. Пожалуйста, пришлите мне ссылку. – Developer

+0

ОК. см. ниже ответ. вы можете использовать эти два класса для управления сбоями. –

ответ

1

Используйте этот пользовательский класс

public class AcraCustomSender implements ReportSender { 

Context activity; 



@Override 
public void send(Context context, CrashReportData errorContent) throws ReportSenderException { 
    activity=context; 
    String crashReport = ""; 

    try { 
     JSONObject object = errorContent.toJSON(); 
     Log.e("acra", object.toString()); 
     crashReport = object.toString(); 


    }catch (JSONReportBuilder.JSONReportException e) { 
     e.printStackTrace(); 
    } 

    //the string crashreport contains your crash log. you can pass it to your own backend. 

} 

}

создать еще один класс для приложения

public class YourApplication extends Application { 

@Override 
public void onCreate() { 
    try { 
     ACRA.init(this); 
     AcraCustomSender yourSender = new AcraCustomSender(); 
     ACRA.getErrorReporter().setReportSender(yourSender); 
     super.onCreate(); 
    }catch (Exception ex) { 
     ex.printStackTrace(); 
    } 
} 
} 

Теперь, когда приложение падает, вы можете получить его в Acra CustomSender и делать то, что вы хотите сделать (например, отправлять в свою собственную БД)

Смежные вопросы