キャッチされない例外を処理してログファイルを送信する必要がある
更新:以下の「承認された」ソリューションを参照してください アプリが単に終了するのではなく、未処理の例外を作成する場合、まずユーザーにログファイルを送信する機会を与えたいと思います。ランダムな例外が発生した後にさらに作業を行うのは危険であると私は理解していますが、最悪の場合、アプリのクラッシュが終了し、ログファイルが送信されません。これは私が予想したよりもトリッキーであることが判明しています:) 機能:(1)キャッチされなかった例外をトラップし、(2)ログ情報を抽出してファイルに書き込みます。 まだ機能していないもの:(3)メールを送信するためのアクティビティを開始する。最終的に、ユーザーの許可を求める別のアクティビティがあります。メールアクティビティが正常に機能するようになれば、他のユーザーに問題が発生することはあまりありません。 問題の核心は、未処理の例外が私のApplicationクラスでキャッチされることです。これはアクティビティではないため、Intent.ACTION_SENDでアクティビティを開始する方法は明らかではありません。つまり、通常、アクティビティを開始するには、startActivityを呼び出し、onActivityResultで再開します。これらのメソッドは、アクティビティではサポートされていますが、アプリケーションではサポートされていません。 これを行う方法に関する提案はありますか? 以下は、開始ガイドとしてのコードの抜粋です。 public class MyApplication extends Application { defaultUncaughtHandler = Thread.getDefaultUncaughtExceptionHandler(); public void onCreate () { Thread.setDefaultUncaughtExceptionHandler (new Thread.UncaughtExceptionHandler() { @Override public void uncaughtException (Thread thread, Throwable e) { handleUncaughtException (thread, e); } }); } private void handleUncaughtException (Thread thread, Throwable e) { String fullFileName …