注意事項
- 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 を起動します
Select your Xcode Project には Crashlytics.xcodeproj が(たぶん)存在しないので、Browse... から /path/to/Crashlytics/build/iphone/Crashlytics.xcodeproj
を選択します。
選択すると Xcode が起動し、Titanium が生成したプロジェクトが開かれます。
Crashlytics をインストールします
あらかじめ、2. の Paste in the following command にある Copy をクリックし、スクリプトをコピーしておきましょう。
Fabric に従い、Build Phases を選択し、「+」から New Run Script Phase を選択してください。
Run Script を開き、Shell のところへ先ほどコピーしたスクリプトをペーストします。
Cmd+B でビルドします。ビルドが終わると、Fabric が以下のような画面に遷移します。
Xcode の Frameworks を開いておきましょう。
Fabric のトランクアイコンを Xcode の Frameworks までドラッグ&ドロップし、Finish をクリックします。
Framewroks の中に、Fabric.framework と Crashlytics.framework が追加されているのを確認して下さい。
Fabric が以下の画面に遷移します。
Xcode で Classes → API → TiApp.m を開きます。
#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;
[Fabric with:@[CrashlyticsKit]];
を、この辺りへコピーします。
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions_
{
[Fabric with:@[CrashlyticsKit]];
started = [NSDate timeIntervalSinceReferenceDate];
[TiExceptionHandler defaultExceptionHandler];
Cmd+R で実機にインストールされ、アプリが起動します。
お疲れ様でした。