まゆたまガジェット開発逆引き辞典

電子工作やプログラミングのHowtoを逆引き形式で掲載しています。作りたいモノを決めて学んでいくスタイル。プログラマではないので、コードの汚さはお許しを。参照していないものに関しては、コピペ改変まったく問いません

oF+iPhone トラブル2 シミュレータで音が出ない・・・

「なんでか分からないけど、openAL使ったコードはシミュレータでは音が鳴らないことが多いから実機に転送してやってね」と本家のフォーラムを解読して発見。
なるほど、実機では音が出た。

ofxALSoundPlayerを使ってサウンドファイルを鳴らすサンプルを作ってみたところ・・・何度やってもシミュレータで音が出ない。
ofxALSoundPlayerのリンクが悪いの?.cafファイルの作成ミスった?と原因をつぶしていけど分からず。OS4.0で動かした場合の日本語での情報もなし(私のほうで日本語フォーラムに追加しました)。
すると本家のフォーラムに「なんでか分からないけど、openAL使ったコードはシミュレータでは音が鳴らないことが多いから実機に転送してやってね」との記事が・・・
仕方なく実機に転送したら、無事音が鳴りました。
原因何だったんだろう?
まあobjective-CのサウンドまわりのフレームワークをoF用に書き換えればいいんでしょうね。実機に負担がかかるような気がして気が引けるけど、移植してる時間もないので今回はパス。

実機の転送の仕方はobjective-Cで作ったアプリの転送方法と同じです。
Dev登録と機体登録はしているものとして、以下を実行します。

1.iPhoneDev.のサイトからiOS Provisioning Portalをクリック
2.App IDsからNew App IDを作る
(「Description」はアプリ名・「Bundle Seed ID」はGenerate Newを選択し「Bundle Identifier」には*を入力)
3.Provisioningを選択し、New Profileを作って出来たProvisioningをダウンロード
(Profile Nameにアプリ名を入力・Certificatesに登録名(自分の名前)が表示されているか確認してチェックを入れる・AppIDは先程登録したアプリ名を選択・Devicesは登録したiPhoneの名前をチェックする)
4.iPhoneを繋いでXcodeのオーガナイザから3.でダウンロードしたProvisioningファイルを追加
5.プロジェクト設定から「コード署名ID」→「Any iPhone OS Device」の右側をクリックして、「アプリ名/iPhone Developer:自分の名前」を選択する
6.「概要」をクリックして、いちばん上がDevice、「アクティブな構成」がDebugになっているか確認してビルド