COMPANY SERVICE STAFF BLOG NEWS CONTACT

STAFF BLOG

スタッフブログ

TECHNICAL

テクログ

2014.06.16

Objective-C | Google Analytics SDK for iOS v3 で _sqlite3 エラー

テクログ

Mac,iPhone,Objective-C 全て利用歴6ヶ月の新米プログラマーが送る

自分が使って役立ったmethod&Tips集

参考場所はありますが単なるコピペを紹介してるわけではありません。

ちゃんと自前で作ってます。(謎のアピール)

シリーズ第16弾です。

Google Analytics SDK for iOS v3 の実装とエラー対処についてです

iOS版の実装は搦め手ですがわかりやすいのでコチラをどうぞ

■はやとも工業所

【iOS】Google Analytics iOS SDK v3をものすごく簡単に設置する方法

さて、本来ならこれで終わりです。

しかしどういうわけか、以下のようなエラーが出てしまいます。

Undefined symbols for architecture i386: “_sqlite3_bind_blob”, referenced from: -[TAGDataLayerPersistentStoreImpl writeEntriesToDatabase:expireTime:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) “_sqlite3_bind_int”, referenced from: -[TAGDataLayerPersistentStoreImpl deleteEntries:] in libGoogleAnalyticsServices.a(TAGDataLayerPersistentStoreImpl.o) “_sqlite3_bind_int64”, referenced from: …

ちょいちょいっと検索するとやっぱり、stackoverflowが出てきます。

Google Analytics SDK 3.0 _sqlite3 linker errors in iOS

それによると、

GAI.h
GAIDictionaryBuilder.h
GAIFields.h
GAILogger.h
GAITrackedViewController.h
GAITracker.h
libGoogleAnalyticsServices.a

と一緒に libsqlite3.0 を Targets(General)->Linked Frameworks and Librariesへ追加すればOK

マクロ方式であっても無くてもエラー出るのはどうしてか不明です。

サンプルはlibsqlite3.0使ってないけどエラーは出ないのに・・・。

これで終わるとほらコピペじゃんってなるので、ちょっと改造

サンプルではクラスが名固定でアクティブスクリーンに表示されてしまうので、

画面名を任意に変える方法について。

Xcodeのマクロ情報が少なくてどこ調べればいいかわからないのですが、見よう見まねで修正してます

一番下から2行目をコピーして、画面名を引数で貰うようにします。

クラス名が表示したい場合は今まで通りの書き方でクラス名が表示可能です。

○○-Prefix.pch

#define GA_TRACK_CLASS  GA_TRACK_PAGE(NSStringFromClass([self class]));
#define GA_TRACK_CLASS_PAGE(page, ...)  GA_TRACK_PAGE(page);  // ページごとの画面名
#define GA_TRACK_METHOD GA_TRACK_EVENT(NSStringFromClass([self class]), NSStringFromSelector(_cmd), @"", nil);

抜粋してます

ViewController.m

- (void)didReceiveMemoryWarning
{
    [super didReceiveMemoryWarning];
    // Dispose of any resources that can be recreated.
}

- (void)viewDidAppear:(BOOL)animated
{
    // GoogleAnalyticsServices
    GA_TRACK_CLASS_PAGE(@"最初の画面"); // 画面名を指定
}

どなたかXcodeのマクロの書き方がわかりやすく載ってるサイト教えてくださいw

そのほかのObjective-C関連の記事をお探しならコチラをどうぞ

今週か来週あたりに新アプリリリースします。ゲームと消費税計算機です。
よろしくお願いします!

BreakShapes

弊社から出している拙作スケジュールのアプリです。
スケジュールというかちょっとした予定を入力して、社長、同僚、家族がどこ行った??っていうときに第三者が確認するためのアプリです
是非ダウンロードして感想をお聞かせ下さい。

『Team Scheduler』 概要
▼アプリ価格: 無料
▼対応OS: iOS(iPhone/iPod Touch)、Android
▼カテゴリ: 仕事効率化(App Store)、ビジネス(Google Play)
▼対応言語: 日本語
▼推奨環境:
iOS版: iPhone4以降、iOS6. 0以降
Android版: Android OS 2. 3以降
▼ダウンロード:
App Storeからダウンロード
Google playで手に入れよう

この記事を書いた人

core-corp

入社年

出身地

業務内容

特技・趣味

テクログに関する記事一覧

TOP