Unity3D:Unity Remote 3をiOS7向けに修正&ビルドする
2014/01/23
category: Unity | tag: iOS7, UnityRemote3 | no comments
先日の「Unity Remote 3とiOS7の相性問題の解決策」の続きです。
周りに同様の問題で困っている人が数人いたのですが、前回の方法ではiTunesのRemoteを使えるようにする所が上手く行きませんでした。ウェブで検索してみると、同様にRemoteアプリが動かなくて困っているケースがいくつか見つかりました。Remoteの力を借りてUnity Remote 3を動かすのは諦めて、根本的に解決する方法を考えました。
問題は、iOS7でUnity Remote 3を起動すると、
1. Macを見つけてくれない
2. IPアドレスを直接入力できない(AlertViewの仕様がiOS7で変わったため)
の2つの点です。
1は何が原因になっているかよく分からないので置いておいて、簡単そうな2のIPアドレスを入力する欄を何とかする方法について考えました。
以下に「Unity Remote 3のソースを修正して自分でビルドして使う方法」を書きます。
ソースコードを入手する
Unity Remote 3のソースコードはUnityが公開しています。
Unity download archive :
ページ下の方、ResourcesのUnity Remote Sourceをダウンロードします。
zipにはXcodeのプロジェクトが含まれてます。適当な場所に解答してXcodeで開きます(Xcode 5.0.2で開くことが出来ました)。
修正ポイント
Projectの設定を変更
Build Settings – Code Signing :
Provisioning Profileを自分が所有するものに変更します。
General – Bundle Identifier :
Provisioning Profileに合わせて設定します。
General – Deployment Target :
任意のバージョンに設定します(自分は5.1にしました)。
ソースコードを修正します
ダイアログでIPアドレスを入力できない部分に最小限の修正を加えます。修正するファイルはClassesフォルダ内のiPhoneRemoteAppDelegate.mmのみです。下記ソースのaddedとコメントが付いた3行を追加します(該当部分は行番号を頼りに探してください)。
166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 |
m_IPAddressAlert = [[UIAlertView alloc] initWithTitle:@"Enter IP Address" message:@"<>" delegate:self cancelButtonTitle:@"Cancel" otherButtonTitles:@"Submit", nil]; m_IPAddressAlert.alertViewStyle = UIAlertViewStylePlainTextInput; // added m_IPErrorAlert = [[UIAlertView alloc] initWithTitle:@"Invalid IP Address" message:@"" delegate:self cancelButtonTitle:@"OK" otherButtonTitles:nil]; m_IPTextField = [[UITextField alloc] initWithFrame:CGRectMake(12.0, 45.0, 260.0, 30.0)]; m_IPTextField.text = @"192.168."; m_IPTextField.secureTextEntry = NO; m_IPTextField.borderStyle = UITextBorderStyleRoundedRect; m_IPTextField.font = [UIFont systemFontOfSize:22.0]; m_IPTextField = [m_IPAddressAlert textFieldAtIndex:0]; // added [m_IPTextField setText:@"192.168."]; // added [m_IPAddressAlert addSubview:m_IPTextField]; } |
以上でエラーなくビルドが通るはずです(ワーニングはいっぱい有りますが…)。
実行画面
もしかしたら、ここでMacが表示されるかもしれません。表示されていれば、タップすることでUnityのプレビュー開始待ちの画面になります。
Macが表示されなかった場合は、画面左下のEnter IP Addr:をタップしてMacのIPアドレスを入力します。
以下の画面(プレビュー開始待ち)が表示されたら、Unityのプレビューを開始します。
嬉しい事に4インチ640×1136のサイズで表示されます。これでiOS7でも快適にデバッグすることが可能です。
本内容を実行することで生じるいかなる問題も責任は負いかねます。自己の責任において行ってください。
コメントを残す
コメントを投稿するにはログインしてください。