SATOXのシテオク日記

~ふもっふ、ふもふも~

OS 3.0.1実機で実行できなくなった話

iPhoneアプリを勉強しているわけですが、気がつけばiPhone実機でのデバッグが出来なくなっていました。
「供給されるiPhoneが接続されていません」というエラーが出て実行すら出来ないのです。
いろいろ調べてみるとiPhone 3GSのOSバージョンを3.0.1に上げていた事を思い出し、調べてみたところ3.0.1に対応するためには、OSのバージョンがついたSDKフォルダを使わないといけないようです。
アップルからは以下のコマンドを実行しろと説明がありました。

ln -s /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.0\ \(7A341\) /Developer/Platforms/iPhoneOS.platform/DeviceSupport/3.0.1

つまりはシンボリックリンクを作れという事ですが、実行したところ、うまく動作するようになりました。パスを見ると分かるとおり、開発にSDK3.0を利用する場合に3.0.1のパスを作成してSDK3.0パスにリンクしているだけです。
それにしても、もう少しマシなエラーメッセージを出してくれればいいのになぁ。
 
以下余談ですが、iPhoneシミュレータのSafariのUserAgentを調べてみました。

実行環境 User Agent
iPhoneシミュレータ(Mac OS X) Mozilla/5.0 (iPhone Simulator; U; CPU iPhone OS 3_0 like Mac OS X; en-us) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7A341
iPhone 3GS 3.0.1 Mozilla/5.0 (iPhone; U; CPU iPhone OS 3_0_1 like Mac OS X; ja-jp) AppleWebKit/528.18 (KHTML, like Gecko) Mobile/7A400

実機の方は「7A400」、シミュレータの方は「7A341」のみたいです。