LoginSignup
10
9

More than 5 years have passed since last update.

Cocos2d-x v3.x プロジェクトにFirebaseのSDKをCocoapodsを使わずに導入する(iOS版)

Last updated at Posted at 2016-05-23

qiitaの使い方がわかりませんが、書きます。

Firebaseのサービスが一部無償化されましたが、公式ドキュメントでの導入方法としては
Cocoapodsの利用を推奨しています。

しかし、Cocos2d-xのプロジェクトとCocoaPodsの同居がいまいちわからなかったので、
SDKを直接インストールする方法を共有します。

SDKの取得

firebaseの公式ドキュメント
https://firebase.google.com/docs/ios/setup#prerequisites
こちらのURLの最下部に
スクリーンショット 2016-05-23 21.58.32.png

CocoaPodsを使わずにSDKをインストールする方法として、SDKのダウンロード先が記載されています。
https://dl.google.com/firebase/sdk/ios/3_2_0/Firebase.zip

現在時点での最新版はこちら。

これをダウンロードします。

SDKの導入

ダウンロードしたSDKを展開します。
これを
cocosproject/proj.ios_mac/ios フォルダあたりにコピーします。
その後、xcodeプロジェクトを開き、
iosフォルダー下あたりに入れましょう。
スクリーンショット 2016-05-23 22.01.26.png

一度、すべてのSDKをいれたあとで、使うやつだけを残して、後は Remove References で削除します。

基本機能はAnalyticsとCoreがあればいけると思いますが、AppIndexingとCrash(report)とDynamicLinksとRemoteConfigも無料で使える機能なので残します。
Invitesも無料機能ですが、これだけは謎のエラーで落ちてしまうので、削除しました。
(もしかしたら利用にAuthが必須なのかもしれません。)
Storageなどの機能はまだ利用していないので、ビルドに含んでいないですが、含めば使えるんじゃないかと思います。

次に、必要となるFrameworkですが、これはCocoaPodsから情報を得ます。
なぜかReadmeには書いてません。

OTHER_LDFLAGS = $(inherited) -ObjC -l"c++" -l"sqlite3" -l"z" -framework "AdSupport" -framework "AddressBook" -framework "AssetsLibrary" -framework "CoreGraphics" -framework "CoreLocation" -framework "CoreMotion" -framework "CoreTelephony" -framework "CoreText" -framework "FirebaseAnalytics" -framework "FirebaseAppIndexing" -framework "FirebaseCrash" -framework "FirebaseDynamicLinks" -framework "FirebaseInstanceID" -framework "FirebaseInvites" -framework "FirebaseRemoteConfig" -framework "GoogleAppUtilities" -framework "GoogleAuthUtilities" -framework "GoogleIPhoneUtilities" -framework "GoogleInterchangeUtilities" -framework "GoogleNetworkingUtilities" -framework "GoogleParsingUtilities" -framework "GooglePlusUtilities" -framework "GoogleSignIn" -framework "GoogleSymbolUtilities" -framework "GoogleUtilities" -framework "MessageUI" -framework "QuartzCore" -framework "SafariServices" -framework "Security" -framework "StoreKit" -framework "SystemConfiguration"

スクリーンショット 2016-05-23 22.07.47.png

上述されてるフレームワークでまだリンクされてないものを Link Binary With Library から追加しましょう。

後はBuildSettingsの中の Ohter Linker Flagsに "-ObjC"をなければ追加します。

利用方法

Firebaseの管理画面から作成したplistファイルをリンクします。
スクリーンショット 2016-05-23 22.10.19.png

その後
ios/AppController.mmに

#import "Firebase.h"

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {  

    .....

    [FIRApp configure];
    [[FIRAppIndexing sharedInstance] registerApp:(number)];

}

(number)はInt型でアプリケーションID(iTunes Connectから発行される)をいれます。

AnalyticsとAppIndexingの機能が動くようになってると思います。
取り急ぎ。

10
9
0

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
10
9