本文說明如何在 iOS 上使用 Nearby Messages API 開始開發。
步驟 1:取得最新版 Xcode
如要使用 Google Nearby Messages API for iOS 建立專案,需使用 Xcode 6.3 以上版本。
步驟 2:取得 CocoaPods
Google Nearby Messages API for iOS 以 CocoaPods Pod 的形式提供。CocoaPods 是適用於 Swift 和 Objective-C Cocoa 專案的開放原始碼依附元件管理員。
如果您還沒有 CocoaPods 工具,請在終端機上執行下列指令,即可在 OS X 中安裝這項工具。詳情請參閱 CocoaPods 入門指南。
$ sudo gem install cocoapods
步驟 3:使用 CocoaPods 安裝 API
為 iOS 版 Google Nearby Messages API 建立 Podfile
,並使用該檔案安裝 API 及其依附元件。
- 如果您還沒有 Xcode 專案,請立即建立一個並儲存至本機電腦 (如果您是 iOS 開發新手,請建立 Single View Application,並確認已開啟「Use Automatic Reference Counting」)。
- 在專案目錄中建立名為
Podfile
的檔案。這個檔案定義了專案的依附元件。 編輯
Podfile
並新增依附元件。以下是簡易的 Podspec,其中包含您在 iOS 版 Google Nearby Messages API 中需要的 Pod 名稱:source 'https://github.com/CocoaPods/Specs.git' platform :ios, '7.0' pod 'NearbyMessages'
儲存
Podfile
。開啟終端機並前往包含
Podfile
的目錄:$ cd
執行
pod install
指令。這麼做會安裝 Podspec 中指定的 API 及其所有依附元件。$ pod install
關閉 Xcode,接著按兩下來開啟專案的
.xcworkspace
檔案來啟動 Xcode。從現在起,您必須使用.xcworkspace
檔案開啟專案。
步驟 4:建立橋接標頭 (僅限 Swift)
如果您使用 Swift 建立專案,則必須在專案中新增橋接標頭,以便使用 Pod 檔案安裝的程式庫。如要新增橋接標頭,請按照下列步驟操作:
- 在專案
.xcworkspace
檔案所在的目錄中,新增標頭檔案 (可自行命名,副檔名使用「.h」)。 - 將下列程式碼貼入您建立的檔案:
#import <GNSMessages.h>
。 - 儲存檔案。
- 在專案編輯器左側窗格中,選取主要專案。
- 按一下建構編輯器頂端的「Build Settings」。
- 在「Build」設定中,前往「Swift Compiler - Code Generation」(在搜尋框中輸入「Swift Compiler」即可快速找到)。
- 按一下箭頭展開「Objective-C 橋接標頭」部分。
- 在「Debug」和「Release」下方,新增您建立的標頭檔案路徑。
- 建構專案,讓變更生效。
步驟 5:取得 Google 帳戶
如要使用 Nearby Messages API,您必須擁有 Google 帳戶。如果您已擁有帳戶,就可以開始使用了。您也可以為測試目的建立另一個 Google 帳戶。
步驟 6:取得 API 金鑰
請按照下列步驟啟用 iOS 版 Google Nearby Messages API,並取得 API 金鑰:
- 前往 Google Developers Console。
- 建立或選取要註冊應用程式的專案。
- 按一下「繼續」即可啟用 API。
- 在「憑證」頁面中,建立新的 iOS 金鑰 (並設定 API 憑證)。
注意:如果您目前有 iOS 金鑰,可以使用該金鑰。 - 在隨即顯示的對話方塊中,輸入應用程式的軟體包 ID。例如:
com.example.nearbyexample
- 新的 iOS API 金鑰會顯示在專案的 API 金鑰清單中。API 金鑰是由字元組成的字串,如下所示:
AIzaSyBdVl-cTICSwYKrZ95SuvNw7dbMuDt1KG0
- 如要避免配額竊用行為,請按照下列最佳做法保護 API 金鑰。
步驟 7:建立訊息管理員物件
訊息管理器物件可讓您發布及訂閱訊息。訊息交換未經過驗證,因此您必須提供先前步驟中建立的 API 金鑰。
#import <GNSMessages.h>
GNSMessageManager *messageManager =
[[GNSMessageManager alloc] initWithAPIKey:@"API_KEY "];
let messageManager = GNSMessageManager(APIKey: "API_KEY ")