私はすでにCrittercismを使用しているiOSアプリを持っています。例外を完全に報告します。
私の問題は、これらの例外もバックエンドサーバーに記録することです。
私はそれを実現するために多くのことを試みましたが、役に立ちませんでした。これが私が試したもののリストです:
- 電話
NSSetUncaughtExceptionHandler(&myExceptionHandler);
これを行うと、例外はCrittercismで報告されません。
- 電話
NSSetUncaughtExceptionHandler(&myExceptionHandler);
例外をサーバーに送信します。次に、関数でCrittercismのコンストラクターを呼び出しmyExceptionHandler
、例外を再スローします。動作しません。
Crittercismのコンストラクターを呼び出し、続いて
NSSetUncaughtExceptionHandler(&myExceptionHandler);
andをmyExceptionHandler
呼び出します[Crittercism logHandledException:exception];
。どちらも動作しません。私の例外ハンドラーでは、例外オブジェクトをシリアル化し、ユーザー設定に保存します。ユーザーがアプリを再起動したら、呼び出し
[Crittercism logHandledException:exception];
てから、例外をバックエンドサーバーに送信します。これに関する問題は、文字列を例外オブジェクトに逆シリアル化できなかったことです。スタックトレースをNSString
形式で例外オブジェクトに入れることができませんでした。
私が試したかもしれないいくつかのこと:
crittercismに例外を処理させてから、次の再起動時
crittercismDidCrashOnLastLoad
に呼び出されます-しかし、例外情報が存在するのでしょうか、それともどこかからアクセスできますか?文字列を例外オブジェクトに逆シリアル化する必要がない場合があります。Crittercismも例外をjsonオブジェクトに変更し、このjsonオブジェクトをサーバーに送信していると思います。しかし、カスタムjsonオブジェクトをcrittercismに送信するために使用する関数を見つけることができません。
誰かが私に進め方を教えてもらえますか?