LoginSignup
6
7

More than 5 years have passed since last update.

【iOS】「ベースといえば、◯◯ベース!」

Last updated at Posted at 2016-06-19

弊社エンジニア 「えむべーすの件なんですが」
弊社マネージャー「ああ、mBaaS(エムバース)ね」
弊社営業    「ベースといえば、ホワイトベース!」

30f1b3cc.jpg

きっかけ

先日のWWDCキーノートでの一番のインパクトだった、
"AppleMusicに歌詞がつく"というニュースを受け、
(あくまで個人の意見です。)
待ちきれず、ついにDevelopperProgramに登録してしまいました。

「せっかく登録したし、firebaseのプッシュ通知機能を試してみよう」
と思ったのが事の次第です。

ちなみにまだ歌詞は表示されないようです。。。

手順

①firebase上でプロジェクトを作成

②プロジェクトにiOSアプリを追加

③Xcodeプロジェクトにplistを追加

④AppDelegateを実装

⑤firebaseにp.12ファイルを登録

⑥送信!

①firebase上でプロジェクトを作成

firebase上のプロジェクトは、

project
├── iOS
├── Android
└── Web

といったように、複数のアプリケーションの総称です。
以下に従い、プロジェクトを作成します。

スクリーンショット 2016-06-19 21.25.30.png

②プロジェクトにiOSアプリを作成

「アプリを追加」からiOSを選択します。

スクリーンショット 2016-06-19 21.28.35.png

スクリーンショット 2016-06-19 21.30.08.png

ポイント:ここでのiOSバンドルIDはApp IDと同一のものです。

③Xcodeプロジェクトにplistを追加

firebaseでアプリを追加すると自動でplistファイルがダウンロードされるので、
firebaseの指示に従い、Xcodeプロジェクトにplistを追加します。

スクリーンショット 2016-06-19 21.31.55.png

④AppDelegateを実装

以下のように実装します。
firebaseに関わるのはimport含めたった3行です。

import UIKit
import Firebase

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {

    var window: UIWindow?


    func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {

        let types: UIUserNotificationType = [.Badge, .Sound, .Alert]
        let settings = UIUserNotificationSettings(forTypes: types, categories: nil)
        application.registerUserNotificationSettings(settings)

        FIRApp.configure()

        return true
    }

    func application(application: UIApplication, didRegisterUserNotificationSettings notificationSettings: UIUserNotificationSettings) {

        if notificationSettings.types != .None {

            application.registerForRemoteNotifications()
        }
    }

    func application(application: UIApplication, didRegisterForRemoteNotificationsWithDeviceToken deviceToken: NSData) {

        FIRInstanceID.instanceID().setAPNSToken(deviceToken, type: .Unknown)
    }
}

⑤firebaseにp.12ファイルを登録

Provisioning APNs SSL Certificates
を参考に、p.12ファイルを書き出し、

firebaseの
プロジェクトの設定->クラウドメッセージング
にp.12ファイルを登録します。

スクリーンショット 2016-06-19 21.36.55.png

⑥送信!

Notificationからメッセージを送信します。

IMG_0085.jpg

簡単!

終わりに

ささっとプッシュ通知が実装できるし、Androidの対応や解析もできる。
「ベースといえば、firebase!」
かもしれません。

以上です。
Cn0Ia.jpeg

参考

【iOS】Firebase の Notifications でプッシュ通知を送る
大変参考になりました。ありがとうございます。

6
7
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
6
7