クラッシュレポート拡張:Smart Crash Reports
多種多様な便利拡張モジュールを作っている unsanity のクラッシュレポート拡張モジュール Smart Crash Reports。OS 標準のクラッシュレポートに独自の連絡先を付加出来ます。こんな感じで
左下が標準の「アップルへ送信」ボタン、右下が拡張された「XXX とアップルへ送信」ボタン
この拡張はユーザさんに Smart Crash Reports の本体をインストールしてもらう必要があるのですが、アプリケーションへの導入はいたって簡単(プラグインとかだとちょっとコードを書かないといけないっぽい)。基本的には Info.plist に項目を追加するだけです。
SmartCrashReports_CompanyName | 会社名とか、ソフトウェアの製作元 |
---|---|
SmartCrashReports_EmailTicket | http://www.unsanity.com/goto/email-ticket/にて発行される自分のメールアドレスとの関連ID |
SmartCrashReports_URL | レポートを独自CGIなどで処理する場合のCGIのURL |
SmartCrashReports_CommentsTemplate | レポート送信時に付加されるコメントのテンプレート(オプション) |
SmartCrashReports_EmailTicket と SmartCrashReports_URL はどちらか一つは必ず指定してください。そして、設定はこれだけです。
前述のように、ユーザさんへのインストールを促す必要もありまして、そのためには実際に Smart Crash Reports をインストールした時についてくる SDK 内の SmartCrashReportsInstall.o をアプリケーションに組み込んで、アプリケーション起動時のソースコード(SmartCrashReportsInstall.h をインクルード)に以下を追加。
Boolean authenticationWillBeRequired = FALSE; if (UnsanitySCR_CanInstall(&authenticationWillBeRequired)) { UnsanitySCR_Install(authenticationWillBeRequired ? kUnsanitySCR_GlobalInstall : 0); }
これでアプリケーション起動時に Smart Crash Reports のインストールを促すダイアログが表示されます。
で、どんなレポートが飛んでくるかっていうと、基本的にはクラッシュログのそのまんま。なんですが、ハードウェアのスペックなんかも一緒に教えてくれます。そして、メール通知だけにしていてもウェブページもちゃんと用意してくれるようで、自分用の管理ページでレポートの一覧を管理出来たりするみたい(デモページがあります)。なんと無料でここまでやってくれるってすごいですよね。