SlideShare una empresa de Scribd logo
1 de 20
Descargar para leer sin conexión
Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved
Swiftアプリに
プッシュ通知を組み込もう!
-【番外編】SDKのインポート方法-
• CocoaPodsの「use_frameworks!」が利用不可の場合
 CocoaPodsでインストールしたSDKをブリッジファイルを用いて読み込む方法
 frameworks形式でインストールしたSDKをブリッジファイルを用いて読み込む方法
120160524作成(20160615更新)
Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved
CocoaPodsでインストールしたSDKを
ブリッジファイルを用いて読み込む方法
2
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
不要なファイル・フォルダを消します
• Podfile
• Podfile.lock
• Pods
• SwiftPushApp.xcworkspace
プロジェクトファイル内にある
次のファイル・フォルダを削除します
3
※引き続きこちらを使います
コードのコピペ用画面(GitHub)
https://goo.gl/Liyq9d
残ったのは
これだけ!
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
CocoaPodsを使ってSDKをインストールする
4
ターミナルを起動する
• ディレクトリを移動する
プロジェクト
「SwiftPushApp.xcodeproj」と同じディレクトリ
に移動します
$ cd [ディレクトリ]
$ ls
• ディレクトリに確認をする
「SwiftPushApp.xcodeproj」があればOK!
例) $ cd /Users/******/Documents/push/SwiftPushApp
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
CocoaPodsを使ってSDKをインストールする
5
• Podfile(インストールするライブラリを指定する
ファイル)の作成
$ pod init
「SwiftPushApp.xcodeproj」の
ディレクトリを開いて
Podfileが出来ていることを確認します
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
CocoaPodsを使ってSDKをインストールする
6
• Podfileの編集
Podfileを開いて下記のコードに書き換えます
# Uncomment this line to define a global platform for your project
platform :ios, '8.0'
# Uncomment this line if you're using Swift
# use_frameworks!
target 'SwiftPushApp' do
pod 'NCMB', :git => 'https://github.com/NIFTYCloud-mbaas/ncmb_ios.git'
end
Podfile
ファイルを更新したら「Command + s 」で保存をします
※コピペ用ページから
コピペしてください
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
CocoaPodsを使ってSDKをインストールする
7
⑧ Podfileに書いた内容をインストールする
$ pod install --no-repo-update
Podfileと同じディレクトリに
「SwiftPushApp.xcworkspace」
が作成されていればOK!!
上記ファイルをダブルクリックしてXcodeを開くきます
ターミナルはここまで!
閉じてOK!
SDKがインストールされました
※少し処理が早くなるようなコマンドになっています
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
「AppDelegate.swift」
で右クリック
「New File...」を
クリックします
SDKを読み込む
8
プロジェクトフォルダを開いて、AppDelegate.swiftと同じディレクトリに
ヘッダーファイルを作成します
「Header File」
をクリックして
「Next」を
クリック
「Save As:」
にヘッダー名を
入力して「Create」
をクリック
ヘッダー名は
「SwiftPushTestApp-Bridging-Header.h」を入力
Xcode
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
9
作成したヘッダーファイルに追記します
#import <NCMB/NCMB.h>
SwiftPushApp-Bridging-Header.h
ファイルを更新したら「Command + s 」で保存をします
ここに追記します
Xcode
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
10
ヘッダーファイルのディレクトリを登録します
プロジェクトを選択 >「Build Settings」を選択 >「Objective-C Bridging Header」を表示します
検索欄に
入力すると
すぐ出てきます
ここと書いてあるところをダブルクリックすると吹き出しがでてくるので、
ここに作成したヘッダーファイルをドラッグ&ドロップします
ここ
Xcode
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
11
こんな感じで入ればOKです!
SwiftでmBaaSが使えるようになりました!
シュミレーターでビルドして
エラーが出ないことを確認しましょう!
Xcode
…それでも上手くいかない場合は次の方法へ
Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved
frameworks形式で
インストールしたSDKを
ブリッジファイルを用いて読み込む方法
※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります
12
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
不要なファイル・フォルダを消します
• Podfile
• Podfile.lock
• Pods
• SwiftPushApp.xcworkspace
プロジェクトファイル内にある
次のファイル・フォルダを削除します
13
※引き続きこちらを使います
コードのコピペ用画面(GitHub)
https://goo.gl/Liyq9d
残ったのは
これだけ!
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
framework形式のSDKをインストールする
GitHubのリリースページから
framework形式の最新版SDKをダウンロードします
https://github.com/NIFTYCloud-mbaas/ncmb_ios/releases
最新版の
「NCMB.2.1.0.zip」
をダウンロード
※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります
解凍した
「NCMB.framework」
をプロジェクトと
同じディレクトリに
おきます
14
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
framework形式のSDKをインストールする
「SwiftPushApp.xcodeproj」をダブルクリックして
プロジェクトを起動します
「Build Phases」>「Link Binary With Libraries」の「+」をクリックします
※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります
15
「NCMB.framework」を選択、
「Open」をクリックします
一覧には
出てこないので、
「Add Other...」を
選択します
これで
インストールは
完了です
表示されれば
OK
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
16
「AppDelegate.swift」
で右クリック
「New File...」を
クリックします
プロジェクトフォルダを開いて、AppDelegate.swiftと同じディレクトリに
ヘッダーファイルを作成します
「Header File」
をクリックして
「Next」を
クリック
「Save As:」
にヘッダー名を
入力して「Create」
をクリック
ヘッダー名は
「SwiftPushTestApp-Bridging-Header.h」を入力
Xcode
※先ほど作成している場合はこの作業は不要です
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
17
作成したヘッダーファイルに追記します
#import <NCMB/NCMB.h>
SwiftPushApp-Bridging-Header.h
ファイルを更新したら「Command + s 」で保存をします
ここに追記します
Xcode
※先ほど作成している場合はこの作業は不要です
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
18
ヘッダーファイルのディレクトリを登録します
プロジェクトを選択 >「Build Settings」を選択 >「Objective-C Bridging Header」を表示します
検索欄に
入力すると
すぐ出てきます
ここと書いてあるところをダブルクリックすると吹き出しがでてくるので、
ここに作成したヘッダーファイルをドラッグ&ドロップします
ここ
Xcode
※先ほど作成している場合はこの作業は不要です
Copyright @ NIFTY Corporation All Rights Reserved
色見本3
SDKを読み込む
19
こんな感じで入ればOKです!
SwiftでmBaaSが使えるようになりました!
シュミレーターでビルドして
エラーが出ないことを確認しましょう!
Xcode
※先ほど作成している場合はこの作業は不要です
Copyright @ NIFTY Corporation All Rights Reserved 20

Más contenido relacionado

La actualidad más candente

La actualidad más candente (8)

Nifty cloud jtf2014ハンズオン資料
Nifty cloud jtf2014ハンズオン資料Nifty cloud jtf2014ハンズオン資料
Nifty cloud jtf2014ハンズオン資料
 
Hacker wars mbaas
Hacker wars mbaasHacker wars mbaas
Hacker wars mbaas
 
自宅インフラの育て方 第2回
自宅インフラの育て方 第2回自宅インフラの育て方 第2回
自宅インフラの育て方 第2回
 
GitLabで始めるDevOps入門
GitLabで始めるDevOps入門GitLabで始めるDevOps入門
GitLabで始めるDevOps入門
 
OMA GotAPI 標準化作業状況アップデート
OMA GotAPI 標準化作業状況アップデートOMA GotAPI 標準化作業状況アップデート
OMA GotAPI 標準化作業状況アップデート
 
Androidプログラミング入門
Androidプログラミング入門Androidプログラミング入門
Androidプログラミング入門
 
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
VSCode Remote Container & GitHub Codespacesで拓く次世代のJava開発体験
 
ngCore engine for mobage platform
ngCore engine for mobage platformngCore engine for mobage platform
ngCore engine for mobage platform
 

Destacado

Reep Insights - Soft Drinks
Reep Insights - Soft DrinksReep Insights - Soft Drinks
Reep Insights - Soft DrinksJonathan O'Grady
 
COMUNIDAD VIRTUAL
COMUNIDAD VIRTUALCOMUNIDAD VIRTUAL
COMUNIDAD VIRTUALAlegordi
 
Importancia De Los Controladores y Uso De Sofware De Verificacion
Importancia De Los Controladores y Uso De Sofware De VerificacionImportancia De Los Controladores y Uso De Sofware De Verificacion
Importancia De Los Controladores y Uso De Sofware De VerificacionWilmar_990519
 
Diploma of Associate Engineer Certificate
Diploma of Associate Engineer CertificateDiploma of Associate Engineer Certificate
Diploma of Associate Engineer CertificateAhsan Khan
 
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRA
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRAPK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRA
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRASofie Zahra
 
Medios de transmision
Medios de transmisionMedios de transmision
Medios de transmisionEdwin López
 
Materiales e insumos_para_pcs2
Materiales e insumos_para_pcs2Materiales e insumos_para_pcs2
Materiales e insumos_para_pcs2Wilmar_990519
 
Herramientas del sistema
Herramientas del sistemaHerramientas del sistema
Herramientas del sistemaTatiana103
 
Enterprise VR: The New Reality
Enterprise VR: The New RealityEnterprise VR: The New Reality
Enterprise VR: The New RealityJames Watson
 
AR & VR at the Science Museum - REMIX 2017
AR & VR at the Science Museum - REMIX 2017AR & VR at the Science Museum - REMIX 2017
AR & VR at the Science Museum - REMIX 2017Dave Patten
 
FSI PotPourri Quiz Prelims with Answers
FSI PotPourri Quiz Prelims with AnswersFSI PotPourri Quiz Prelims with Answers
FSI PotPourri Quiz Prelims with AnswersTauseef Warsi
 
Fundamentos do Turismo (I): planejamento 2017
Fundamentos do Turismo (I): planejamento 2017Fundamentos do Turismo (I): planejamento 2017
Fundamentos do Turismo (I): planejamento 2017Aristides Faria
 

Destacado (15)

Reep Insights - Soft Drinks
Reep Insights - Soft DrinksReep Insights - Soft Drinks
Reep Insights - Soft Drinks
 
COMUNIDAD VIRTUAL
COMUNIDAD VIRTUALCOMUNIDAD VIRTUAL
COMUNIDAD VIRTUAL
 
La comunicación
La comunicaciónLa comunicación
La comunicación
 
My future vacations
My future vacationsMy future vacations
My future vacations
 
Importancia De Los Controladores y Uso De Sofware De Verificacion
Importancia De Los Controladores y Uso De Sofware De VerificacionImportancia De Los Controladores y Uso De Sofware De Verificacion
Importancia De Los Controladores y Uso De Sofware De Verificacion
 
Diploma of Associate Engineer Certificate
Diploma of Associate Engineer CertificateDiploma of Associate Engineer Certificate
Diploma of Associate Engineer Certificate
 
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRA
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRAPK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRA
PK-53_Tugas154_Presentasi CV_Ganesha KENANGA_SOFIE ZAHRA
 
Medios de transmision
Medios de transmisionMedios de transmision
Medios de transmision
 
Materiales e insumos_para_pcs2
Materiales e insumos_para_pcs2Materiales e insumos_para_pcs2
Materiales e insumos_para_pcs2
 
Herramientas del sistema
Herramientas del sistemaHerramientas del sistema
Herramientas del sistema
 
Lesioni muscolari
Lesioni muscolariLesioni muscolari
Lesioni muscolari
 
Enterprise VR: The New Reality
Enterprise VR: The New RealityEnterprise VR: The New Reality
Enterprise VR: The New Reality
 
AR & VR at the Science Museum - REMIX 2017
AR & VR at the Science Museum - REMIX 2017AR & VR at the Science Museum - REMIX 2017
AR & VR at the Science Museum - REMIX 2017
 
FSI PotPourri Quiz Prelims with Answers
FSI PotPourri Quiz Prelims with AnswersFSI PotPourri Quiz Prelims with Answers
FSI PotPourri Quiz Prelims with Answers
 
Fundamentos do Turismo (I): planejamento 2017
Fundamentos do Turismo (I): planejamento 2017Fundamentos do Turismo (I): planejamento 2017
Fundamentos do Turismo (I): planejamento 2017
 

Similar a Swiftアプリにプッシュ通知を組み込もう!-【番外編】SDKのインポート方法-

Scalaコーディングの準備
Scalaコーディングの準備Scalaコーディングの準備
Scalaコーディングの準備Yusuke Arakaki
 
Xcode4 project template (slide)
Xcode4 project template (slide)Xcode4 project template (slide)
Xcode4 project template (slide)Wataru Kimura
 
SwiftとCocoaPodsで始めるサクサクiOS開発!
SwiftとCocoaPodsで始めるサクサクiOS開発! SwiftとCocoaPodsで始めるサクサクiOS開発!
SwiftとCocoaPodsで始めるサクサクiOS開発! Koji Shiraishi
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しAkira Nagata
 
[20130624]最近の開発環境について話してみる sakata
[20130624]最近の開発環境について話してみる sakata[20130624]最近の開発環境について話してみる sakata
[20130624]最近の開発環境について話してみる sakataVOYAGE GROUP
 
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来Kazuto Kusama
 
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-Saki Homma
 
Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Kazuto Kusama
 
Macアプリのインストーラ作成ツールSwift版
Macアプリのインストーラ作成ツールSwift版Macアプリのインストーラ作成ツールSwift版
Macアプリのインストーラ作成ツールSwift版Akira Hayashi
 
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)TIS Inc.
 
20130817 Titanium勉強会(午前2)
20130817 Titanium勉強会(午前2)20130817 Titanium勉強会(午前2)
20130817 Titanium勉強会(午前2)Toshiro Yagi
 
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Shogo Kawahara
 
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~Saki Homma
 
Adobe XDプラグインをつくってみよう
Adobe XDプラグインをつくってみようAdobe XDプラグインをつくってみよう
Adobe XDプラグインをつくってみようYoshiki Takeoka
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Daisuke Hiraoka
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShiftEtsuji Nakai
 

Similar a Swiftアプリにプッシュ通知を組み込もう!-【番外編】SDKのインポート方法- (20)

Scalaコーディングの準備
Scalaコーディングの準備Scalaコーディングの準備
Scalaコーディングの準備
 
Xcode4 project template (slide)
Xcode4 project template (slide)Xcode4 project template (slide)
Xcode4 project template (slide)
 
SwiftとCocoaPodsで始めるサクサクiOS開発!
SwiftとCocoaPodsで始めるサクサクiOS開発! SwiftとCocoaPodsで始めるサクサクiOS開発!
SwiftとCocoaPodsで始めるサクサクiOS開発!
 
Keep a diary
Keep a diaryKeep a diary
Keep a diary
 
サーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話しサーバーレスで ガチ本番運用までやってるお話し
サーバーレスで ガチ本番運用までやってるお話し
 
[20130624]最近の開発環境について話してみる sakata
[20130624]最近の開発環境について話してみる sakata[20130624]最近の開発環境について話してみる sakata
[20130624]最近の開発環境について話してみる sakata
 
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
ひしめき合うOpen PaaSを徹底解剖! PaaSの今と未来
 
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
はじめてのAzure Web App for Containers! -コンテナの基礎から DevOps 環境の構築まで-
 
Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座Cloud Foundryで学ぶ、PaaSのしくみ講座
Cloud Foundryで学ぶ、PaaSのしくみ講座
 
DAS_202109
DAS_202109DAS_202109
DAS_202109
 
APIMeetup 20170329_ichimura
APIMeetup 20170329_ichimuraAPIMeetup 20170329_ichimura
APIMeetup 20170329_ichimura
 
Macアプリのインストーラ作成ツールSwift版
Macアプリのインストーラ作成ツールSwift版Macアプリのインストーラ作成ツールSwift版
Macアプリのインストーラ作成ツールSwift版
 
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
Scalable Generator: Using Scala in SIer Business (ScalaMatsuri)
 
20130817 Titanium勉強会(午前2)
20130817 Titanium勉強会(午前2)20130817 Titanium勉強会(午前2)
20130817 Titanium勉強会(午前2)
 
Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開Composer による依存管理 と Packagist によるライブラリの公開
Composer による依存管理 と Packagist によるライブラリの公開
 
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
実践 Web App for Containers! ~コンテナ開発の基礎からDevOps環境の構築まで~
 
Adobe XDプラグインをつくってみよう
Adobe XDプラグインをつくってみようAdobe XDプラグインをつくってみよう
Adobe XDプラグインをつくってみよう
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
 
Inside of swift
Inside of swiftInside of swift
Inside of swift
 
試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift試して学べるクラウド技術! OpenShift
試して学べるクラウド技術! OpenShift
 

Más de natsumo

【Swift】クーポン配信アプリを作ろう!
【Swift】クーポン配信アプリを作ろう!【Swift】クーポン配信アプリを作ろう!
【Swift】クーポン配信アプリを作ろう!natsumo
 
【資料】ハンズオンセミナー②プッシュ通知
【資料】ハンズオンセミナー②プッシュ通知【資料】ハンズオンセミナー②プッシュ通知
【資料】ハンズオンセミナー②プッシュ通知natsumo
 
【資料】ハンズオンセミナー①クイックスタート
【資料】ハンズオンセミナー①クイックスタート【資料】ハンズオンセミナー①クイックスタート
【資料】ハンズオンセミナー①クイックスタートnatsumo
 
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~natsumo
 
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~natsumo
 
mBaaS登録の流れ
mBaaS登録の流れmBaaS登録の流れ
mBaaS登録の流れnatsumo
 
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)natsumo
 

Más de natsumo (7)

【Swift】クーポン配信アプリを作ろう!
【Swift】クーポン配信アプリを作ろう!【Swift】クーポン配信アプリを作ろう!
【Swift】クーポン配信アプリを作ろう!
 
【資料】ハンズオンセミナー②プッシュ通知
【資料】ハンズオンセミナー②プッシュ通知【資料】ハンズオンセミナー②プッシュ通知
【資料】ハンズオンセミナー②プッシュ通知
 
【資料】ハンズオンセミナー①クイックスタート
【資料】ハンズオンセミナー①クイックスタート【資料】ハンズオンセミナー①クイックスタート
【資料】ハンズオンセミナー①クイックスタート
 
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料②~
 
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~
【IoT入門】スマホで加速度と位置情報を取得してクラウドに保存しよう!~ハンズオン資料①~
 
mBaaS登録の流れ
mBaaS登録の流れmBaaS登録の流れ
mBaaS登録の流れ
 
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)
【JavaScript SDK ver.2】MonacaとmBaaSでプッシュ通知を体験しよう(for Android & iOS)
 

Último

My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」inspirehighstaff03
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」inspirehighstaff03
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」inspirehighstaff03
 
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイントshu1108hina1020
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」inspirehighstaff03
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slidessusere0a682
 
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」inspirehighstaff03
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」inspirehighstaff03
 
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」inspirehighstaff03
 
International Politics I - Lecture 1
International Politics I - Lecture 1International Politics I - Lecture 1
International Politics I - Lecture 1Toru Oga
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfoganekyokoi
 
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」inspirehighstaff03
 
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」inspirehighstaff03
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」inspirehighstaff03
 
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」inspirehighstaff03
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdfoganekyokoi
 
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfMy Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfinspirehighstaff03
 
My Inspire High Award 2024    「孤独は敵なのか?」
My Inspire High Award 2024    「孤独は敵なのか?」My Inspire High Award 2024    「孤独は敵なのか?」
My Inspire High Award 2024    「孤独は敵なのか?」inspirehighstaff03
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」inspirehighstaff03
 
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfDivorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfoganekyokoi
 

Último (20)

My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」My Inspire High Award 2024  「正義って存在するの?」
My Inspire High Award 2024  「正義って存在するの?」
 
My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」My Inspire High Award 2024      「家族とは何か」
My Inspire High Award 2024      「家族とは何か」
 
My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」My Inspire High Award 2024 「AIと仲良くなるには?」
My Inspire High Award 2024 「AIと仲良くなるには?」
 
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント
3年前期 交通基盤工学 第一回 ガイダンス 交通基盤工学の概要  パワーポイント
 
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」My Inspire High Award 2024「なぜ議会への関心が低いのか?」
My Inspire High Award 2024「なぜ議会への関心が低いのか?」
 
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
【ゲーム理論入門】ChatGPTが作成した ゲーム理論の問題を解く #3 Slide
 
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
My Inspire High Award 2024「スーパーマーケットで回収されたキャベツ外葉は廃棄されているの?」
 
My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」My Inspire High Award 2024「老いることは不幸なこと?」
My Inspire High Award 2024「老いることは不幸なこと?」
 
My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」My Inspire High Award 2024 「本当の『悪者』って何?」
My Inspire High Award 2024 「本当の『悪者』って何?」
 
International Politics I - Lecture 1
International Politics I - Lecture 1International Politics I - Lecture 1
International Politics I - Lecture 1
 
Establishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdfEstablishment and operation of medical corporations.pdf
Establishment and operation of medical corporations.pdf
 
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
My Inspire High Award 2024「世の中の流行はどのようにして生まれるのか」
 
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
My Inspire High Award2024「外国人が日本のテーブルマナーに驚く理由は?」
 
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」My Inspire High Award 2024「他者と自分、対立を防ぐには?」
My Inspire High Award 2024「他者と自分、対立を防ぐには?」
 
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
My Inspire High Award 2024「なぜ人は他人と違うところがあってもそれをなかなか誇れないのか?」
 
What I did before opening my business..pdf
What I did before opening my business..pdfWhat I did before opening my business..pdf
What I did before opening my business..pdf
 
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdfMy Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
My Inspire High Award 2024「Yakushima Islandってなんか変じゃない?」.pdf
 
My Inspire High Award 2024    「孤独は敵なのか?」
My Inspire High Award 2024    「孤独は敵なのか?」My Inspire High Award 2024    「孤独は敵なのか?」
My Inspire High Award 2024    「孤独は敵なのか?」
 
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
My Inspire High Award 2024「なぜ、好きなことにいつかは飽きるの」
 
Divorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdfDivorce agreements in administrative work.pdf
Divorce agreements in administrative work.pdf
 

Swiftアプリにプッシュ通知を組み込もう!-【番外編】SDKのインポート方法-

  • 1. Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved Swiftアプリに プッシュ通知を組み込もう! -【番外編】SDKのインポート方法- • CocoaPodsの「use_frameworks!」が利用不可の場合  CocoaPodsでインストールしたSDKをブリッジファイルを用いて読み込む方法  frameworks形式でインストールしたSDKをブリッジファイルを用いて読み込む方法 120160524作成(20160615更新)
  • 2. Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved CocoaPodsでインストールしたSDKを ブリッジファイルを用いて読み込む方法 2
  • 3. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 不要なファイル・フォルダを消します • Podfile • Podfile.lock • Pods • SwiftPushApp.xcworkspace プロジェクトファイル内にある 次のファイル・フォルダを削除します 3 ※引き続きこちらを使います コードのコピペ用画面(GitHub) https://goo.gl/Liyq9d 残ったのは これだけ!
  • 4. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 CocoaPodsを使ってSDKをインストールする 4 ターミナルを起動する • ディレクトリを移動する プロジェクト 「SwiftPushApp.xcodeproj」と同じディレクトリ に移動します $ cd [ディレクトリ] $ ls • ディレクトリに確認をする 「SwiftPushApp.xcodeproj」があればOK! 例) $ cd /Users/******/Documents/push/SwiftPushApp
  • 5. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 CocoaPodsを使ってSDKをインストールする 5 • Podfile(インストールするライブラリを指定する ファイル)の作成 $ pod init 「SwiftPushApp.xcodeproj」の ディレクトリを開いて Podfileが出来ていることを確認します
  • 6. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 CocoaPodsを使ってSDKをインストールする 6 • Podfileの編集 Podfileを開いて下記のコードに書き換えます # Uncomment this line to define a global platform for your project platform :ios, '8.0' # Uncomment this line if you're using Swift # use_frameworks! target 'SwiftPushApp' do pod 'NCMB', :git => 'https://github.com/NIFTYCloud-mbaas/ncmb_ios.git' end Podfile ファイルを更新したら「Command + s 」で保存をします ※コピペ用ページから コピペしてください
  • 7. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 CocoaPodsを使ってSDKをインストールする 7 ⑧ Podfileに書いた内容をインストールする $ pod install --no-repo-update Podfileと同じディレクトリに 「SwiftPushApp.xcworkspace」 が作成されていればOK!! 上記ファイルをダブルクリックしてXcodeを開くきます ターミナルはここまで! 閉じてOK! SDKがインストールされました ※少し処理が早くなるようなコマンドになっています
  • 8. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 「AppDelegate.swift」 で右クリック 「New File...」を クリックします SDKを読み込む 8 プロジェクトフォルダを開いて、AppDelegate.swiftと同じディレクトリに ヘッダーファイルを作成します 「Header File」 をクリックして 「Next」を クリック 「Save As:」 にヘッダー名を 入力して「Create」 をクリック ヘッダー名は 「SwiftPushTestApp-Bridging-Header.h」を入力 Xcode
  • 9. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 9 作成したヘッダーファイルに追記します #import <NCMB/NCMB.h> SwiftPushApp-Bridging-Header.h ファイルを更新したら「Command + s 」で保存をします ここに追記します Xcode
  • 10. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 10 ヘッダーファイルのディレクトリを登録します プロジェクトを選択 >「Build Settings」を選択 >「Objective-C Bridging Header」を表示します 検索欄に 入力すると すぐ出てきます ここと書いてあるところをダブルクリックすると吹き出しがでてくるので、 ここに作成したヘッダーファイルをドラッグ&ドロップします ここ Xcode
  • 11. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 11 こんな感じで入ればOKです! SwiftでmBaaSが使えるようになりました! シュミレーターでビルドして エラーが出ないことを確認しましょう! Xcode …それでも上手くいかない場合は次の方法へ
  • 12. Copyright @ NIFTY Corporation All Rights ReservedCopyright @ NIFTY Corporation All Rights Reserved frameworks形式で インストールしたSDKを ブリッジファイルを用いて読み込む方法 ※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります 12
  • 13. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 不要なファイル・フォルダを消します • Podfile • Podfile.lock • Pods • SwiftPushApp.xcworkspace プロジェクトファイル内にある 次のファイル・フォルダを削除します 13 ※引き続きこちらを使います コードのコピペ用画面(GitHub) https://goo.gl/Liyq9d 残ったのは これだけ!
  • 14. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 framework形式のSDKをインストールする GitHubのリリースページから framework形式の最新版SDKをダウンロードします https://github.com/NIFTYCloud-mbaas/ncmb_ios/releases 最新版の 「NCMB.2.1.0.zip」 をダウンロード ※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります 解凍した 「NCMB.framework」 をプロジェクトと 同じディレクトリに おきます 14
  • 15. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 framework形式のSDKをインストールする 「SwiftPushApp.xcodeproj」をダブルクリックして プロジェクトを起動します 「Build Phases」>「Link Binary With Libraries」の「+」をクリックします ※現在framework形式で使用できるiOS用SDKの最新版はv2.1.0となります 15 「NCMB.framework」を選択、 「Open」をクリックします 一覧には 出てこないので、 「Add Other...」を 選択します これで インストールは 完了です 表示されれば OK
  • 16. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 16 「AppDelegate.swift」 で右クリック 「New File...」を クリックします プロジェクトフォルダを開いて、AppDelegate.swiftと同じディレクトリに ヘッダーファイルを作成します 「Header File」 をクリックして 「Next」を クリック 「Save As:」 にヘッダー名を 入力して「Create」 をクリック ヘッダー名は 「SwiftPushTestApp-Bridging-Header.h」を入力 Xcode ※先ほど作成している場合はこの作業は不要です
  • 17. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 17 作成したヘッダーファイルに追記します #import <NCMB/NCMB.h> SwiftPushApp-Bridging-Header.h ファイルを更新したら「Command + s 」で保存をします ここに追記します Xcode ※先ほど作成している場合はこの作業は不要です
  • 18. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 18 ヘッダーファイルのディレクトリを登録します プロジェクトを選択 >「Build Settings」を選択 >「Objective-C Bridging Header」を表示します 検索欄に 入力すると すぐ出てきます ここと書いてあるところをダブルクリックすると吹き出しがでてくるので、 ここに作成したヘッダーファイルをドラッグ&ドロップします ここ Xcode ※先ほど作成している場合はこの作業は不要です
  • 19. Copyright @ NIFTY Corporation All Rights Reserved 色見本3 SDKを読み込む 19 こんな感じで入ればOKです! SwiftでmBaaSが使えるようになりました! シュミレーターでビルドして エラーが出ないことを確認しましょう! Xcode ※先ほど作成している場合はこの作業は不要です
  • 20. Copyright @ NIFTY Corporation All Rights Reserved 20