iPadの動画アプリを作ってるんだけど、iPhone/iPadシュミレーターを使っているとカメラロールに動画が登録できなくて困る。
普通の方法ではできないっぽいが、ちょっと裏技っぽい方法を編み出したので紹介する。
2.準備) Finderにユーザライブラリディレクトリを表示しておく。
Lionから表示されなくなったらしいけど、Finderに/Users/ユーザの名前/Libraryが表示されていない。
表示しておくと開発に何かと便利なので表示しよう。
- ターミナルをひらく。
- 以下のコマンドをうつ。
chflags nohidden ~/Library/
3.配置) 動画をシュミレータのメディアディレクトリに配置
Finderなら以下のたどり方
/ユーザ
→ <ユーザ名>
→ ライブラリ
→ Application Support
→ iPhone Simulator
→
ターミナルなら
/Users/
/Library/Application Support/iPhone Simulator/ /Media
ここに以下のディレクトリがあればその配下に移動、なければ作ってください。
DCIM → 100APPLE
最終的には「100APPLE」ディレクトリが以下のような位置にあればOK
/Users/
/Library/Application Support/iPhone Simulator/ /Media/DCIM/100APPLE/
で、ここに画像やら動画やらをコピーしておきます。
4.削除) カメラロールのメタ情報の削除
これだけでは、シュミレータのカメラロールは認識してくれません。
iOSが管理するSqliteやplistに書き込まないといけないのです。
とはいえ、これらの構造を理解してSQLをうつのも面倒なので、ちょっと荒技ですが一旦消してしまって、iOSに再構築してもらいましょう。
先ほどのMediaと同じ階層にPhotoDataというディレクトリがあります。
/Users/
/Library/Application Support/iPhone Simulator/ /PhotoData
この中身を思い切ってばっさり削除してしまってください。(気になるならどっかにコピっておきましょう)
5.再構築) カメラロール再構築のため画面ハードコピーを撮る
シュミレータ側でカメラロールが再構築をするために、以下の作業をしてください。
これで、カメラロールが復元され、DCIM/100APPLEに保存した画像、動画が読み込まれるはず。
5.0では確認しました。
あとは自己責任でどうぞよろしく。
おしまい