How to build in Xcode7
This page is not available in English.
Please select another language.
概要
![]() | Mobage Native / Unity SDK 1.4.7.7 および 1.4.9 以上の SDK のみ対象となります。Mobage Native / Unity SDK 1.4.7.7 および 1.4.9 以上の SDK で Xcode7 以上でのビルドが必須というわけではありません。 Xcode7.1 + Unity 5.2.3f + Mobage Unity SDK 1.4.9 以降の組み合わせであれば、以下の項目は全て自動で行われます。Unity の特定バージョンと Xcode のバージョンでの組み合わせで、Xcode のビルドが通らない場合は Unity と Xcode7 以上をご利用の場合でビルドがうまくいかない場合 をご確認ください。 |
Mobage Native / Unity SDK 1.4.7.7 および 1.4.9 以上が組み込まれたアプリを Xcode7 でビルドする際に必要な手順を解説します。
Bitcode の同梱を無効化(1.4.8 以下)
Mobage Native / Unity SDK 1.4.8 以下では Bitcode の同梱に対応していません。デフォルトで Enable Bitcode=YES になっていますが、こちらの無効化をしてください。
![]() | Mobage Native SDK 1.4.9 以上では、Enable Bitcode は Yes で問題ありません。Mobage Unity SDK 1.4.9 以上では引き続き Enable Bitcode は No に設定してください。 |
これによるデメリットは、Apple 社が新しいハードウェアを出した場合などに、アプリを再ビルドせずに App Store 上で最適化するという機能の恩恵を受けられなくなることです。
AppTransportSecurity の無効化と Custom Scheme 問い合わせの許可設定
Xcode7 では、 TLS 1.2 SSL 以外の HTTP 通信をデフォルトで拒否する対応が入っています。これを許可するための設定が必要になります。
また、アプリの Custom URL Scheme が使えるかどうかを確認するため、Info.plist 内にホワイトリスト設定が必要になります。
Info.plistをテキストで編集する場合
下記の項目をInfo.plistへ追記してください
※ ${appId}の箇所は、Ad SDK 登録時に発行されたアプリIDに置き換えます
Xcode のエディタ上で編集する場合
- アプリのターゲットから Info -> Custom iOS Target Properties を開く
- 適当な行の + で新規の行を追加し、Key に NSAppTransportSecurity を入力
- Type を Dictionary に変更
- NSAppTransportSecurity の右の + で行を追加し、Key に NSAllowsArbitraryLoads を入力し、Type: Boolean, Value:YES に設定する
- 適当な場所の + で行を追加し、Key に LSApplicationQueriesSchemes を入力
- Type を Array に変更
- LSApplicationQueriesSchemes の右の + で行を追加し、mobage-jp-${appId} を入力
![]() | Xcode 7.1 より、NSAppTransportSecurity は補完が効くようになりました。
などのkeyになっていますので「App」等と入力すれば補完されるようになってます。 ※ LSApplicationQueriesSchemes はまだ対応していないようです。 |
SafariServices.framework の必須化
Mobage Native / Unity SDK 1.4.7.7 および 1.4.9 以降では、SafariServices.framework のインポートが必須になりました。Link Binary with Librariesより、SafariServices.framework を Optionalで追加する必要があります。
Native / Unity SDK 1.4.7.7 および 1.4.9 以上で FOX を利用する場合
Mobage Native / Unity SDK 1.4.7.7 および 1.4.9 以降で F.O.X を利用する場合、SafariViewController 対応の F.O.X 2.16g 以上が含まれているので、Xcode7 以上でのビルドが必須となります。
Unity と Xcode7 以上をご利用の場合でビルドがうまくいかない場合
Mobage Unity SDK と Unity と Xcode7 以上の組み合わせで、Unity と Xcode のバージョンの組み合わせによっては、 Xcode プロジェクトがビルドできないことがあります。その時は以下の設定をおねがいします。
- Capabilities -> keychain access group に com.mobage.shared を追加
- Build Settings -> Linking -> Other Linker Flags に -ObjC を追加
- Info -> URL Types に mobage-jp-${AppId} の URL Scheme を追加
- Build Phases -> Ling Binary With Libraries に StoreKit.framework を追加
- 上記の Bitcode の同梱を無効化を行う
- 上記の AppTransportSecurity の無効化と Custom Scheme 問い合わせの許可設定を行う
- 上記の SafariServices.framework の必須化を行う
更新履歴
- 2015/11/25
- 1.4.8.1 以上を 1.4.9 以上に変更
- Enable Bitcode の部分の対象を 1.4.8 以下に変更
- SafariServices.framework のインポートを必須化
- 2015/10/01
- 新規作成