手動整合 SDKBOX on Cocos2d-x 3.x — iOS
SDKBOX 是一個強大的免費第三方集成工具,支援了各大遊戲開發平台,比如: Cocos2d-x, Unity, Unreal Engine…等等。提供了幾乎遊戲開發會用到的功能集成,像是 IAP 服務(支援雙平台)、Google Play Service 服務、廣告服務(各大平台皆有支援:如 AdMob, Unity Ads…等等)、統計服務(Google Analytics, Flurry, Firebase…等等)、還有雲端設定、遊戲計分平台(Play Game 以及 Game Center)、Push Nitification…
經常性失效的 Cocos2d-x 簡易整合工具
由於 Cocos2d-x 將程式源碼整合再專案中,在每一次的 Cocos 程式改版後,通常會造成簡易整合工具完全失效的狀況,而且好像也沒有要修好的跡象,所以,還是筆記一下手動整合方法 XD
手動整合 SDKBOX on iOS Project
a. 下載 Bundle File for cocos2d-x v3.x
請到這個網頁來下載,在 #3 install manually 中,選擇下載 Bundle file(或是直接點我下載)
b. 將函式庫加到專案
將 Bundle 中 plugins/ios 裡面的 sdkbox.framework 以及 PluginIAP.framework 拉到專案中,勾選 Copy items if needed
c. 加入其他函式庫
在專案設定中,將 Linked Frameworks and Libraries 加入以下
Security.framework
StoreKit.framework
AdSupport.framework
SystemConfiguration.framework
d. 更改編譯設定
- 取消 Bitcode 支援,可至專案設定的 Build Settings 中取消
- 取消 Transport Security,修改 info.plist 加入以下
- 將專案的 Capabilities 中的 In-App Purchase 設定為 Enable
新增設定檔案
- 新增 sdkbox_config.json 檔案,放置在專案資源資料夾 Resources 底下
- 可依照平台、Plugin、加入設定資料,比如範例中,將 iOS 的 iap 中,加入了一個 item,這個 item 需要與 App Store Connect 中的物品 ID 設定相符合,範例中 unlockstories 即為 Item Id,可依照需求列入多項商品
初始化函式庫
您可以透過呼叫 Static 函式來完成初始化的動作,建議在 AppDelegate::applicationDidFinishLaunching() 或是AppController:didFinishLaunchingWithOptions() 作動