LoginSignup
8

More than 5 years have passed since last update.

Titanium で Crashlytics を導入する

Last updated at Posted at 2015-05-29

注意事項

  • Titanium が自動生成する Xcode プロジェクトに手を入れます
    • Titanium で Clean すると、やり直しです
  • Titanium SDK がバージョンアップすると、手を入れる箇所が変わる可能性があります
    • Titanium SDK 4.0.0.GA で試しています
  • SDK からコピーされていくる TiApp.m に手を入れます
    • ちゃんと確認して作業しないとビルドできなくなります
  • うまくいかなかったら Titanium で Clean するか、build フォルダを削除しましょう
    • 後腐れないです
  • モジュールが入っているとうまくビルドできないかもしれません
    • ぼくはできませんでした → 再度試したらできました(なんだったんだろ?)
  • そもそもモジュール化すれば良いんじゃ?
    • モジュールプロジェクトに入れようとしたら、Fabric さんに「アプリじゃないよね?」って怒られました
  • ころんでもなかない

Titanium プロジェクトを作ります

$ ti create --id be.k0suke.crashlytics --name Crashlytics --platforms ios --type app --url http:// --workspace-dir .

一旦ビルドしましょう

$ cd Crashlytics
$ ti build -p ios -T device -C XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXXXX

/path/to/Crashlytics/build/iphone/Crashlytics.xcodeproj として Xcode のプロジェクトが生成されます。

Fabric を起動します

スクリーンショット 2015-05-29 12.58.18.png

Select your Xcode Project には Crashlytics.xcodeproj が(たぶん)存在しないので、Browse... から /path/to/Crashlytics/build/iphone/Crashlytics.xcodeproj を選択します。

スクリーンショット 2015-05-29 13.08.png

選択すると Xcode が起動し、Titanium が生成したプロジェクトが開かれます。

Crashlytics をインストールします

スクリーンショット 2015-05-29 12.58.57.png

あらかじめ、2. の Paste in the following command にある Copy をクリックし、スクリプトをコピーしておきましょう。

スクリーンショット 2015-05-29 12.59.02.png

Fabric に従い、Build Phases を選択し、「+」から New Run Script Phase を選択してください。

スクリーンショット 2015-05-29 13.08.png
スクリーンショット 2015-05-29 13.09.02.png

Run Script を開き、Shell のところへ先ほどコピーしたスクリプトをペーストします。

スクリーンショット 2015-05-29 13.09.png

Cmd+B でビルドします。ビルドが終わると、Fabric が以下のような画面に遷移します。

スクリーンショット 2015-05-29 13.10.06.png

Xcode の Frameworks を開いておきましょう。

スクリーンショット 2015-05-29 13.32.41.png

Fabric のトランクアイコンを Xcode の Frameworks までドラッグ&ドロップし、Finish をクリックします。

スクリーンショット 2015-05-29 13.10.23.png

Framewroks の中に、Fabric.framework と Crashlytics.framework が追加されているのを確認して下さい。

スクリーンショット 2015-05-29 13.10.30.png

Fabric が以下の画面に遷移します。

スクリーンショット 2015-05-29 13.38.18.png

Xcode で Classes → API → TiApp.m を開きます。

スクリーンショット 2015-05-29 13.10.41.png

#import <Fabric/Fabric.h>
#import <Crashlytics/Crashlytics.h>

を、この辺りへコピーします。

#ifdef KROLL_COVERAGE
# import "KrollCoverage.h"
#endif

#import <Fabric/Fabric.h>
#import <Crashlytics/Crashlytics.h>

TiApp* sharedApp;

int TiDebugPort = 2525;

スクリーンショット 2015-05-29 13.10.51.png

[Fabric with:@[CrashlyticsKit]];

を、この辺りへコピーします。

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions_
{
    [Fabric with:@[CrashlyticsKit]];

    started = [NSDate timeIntervalSinceReferenceDate];
    [TiExceptionHandler defaultExceptionHandler];

スクリーンショット 2015-05-29 13.11.14.png

Cmd+R で実機にインストールされ、アプリが起動します。

スクリーンショット 2015-05-29 13.12.24.png

お疲れ様でした。

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
8