OS X で Android emulator に SDカード を装着させる (あるいは adb pushで Read-only file system)
Step1. Android エミュレータ向けのSDカードを作成
ちなみに場所は、好きなとこでどこでもいい。
$ mksdcard 2048M /mydir/mysdcard.iso $ mksdcard [ファイルサイズ] [ファイルパス]
Step2.
Android emulator 起動する際には、作成したイメージファイル mysdcard.iso が Android emulator の /mnt/sdcard と対応づけられるような設定をします。
Step2-1.
Eclipse menu > [Run] > [Run Configuration]
Step2-2.
開発している Android Project > [Target] Tab
Step2-3.
[Additional Emulator Command Line Options Eclipse] に次を指定します。
-sdcard /mydir/mysdcard.iso
これで /mydir/mysdcard.iso が SDカードとして emulator に認識されます。
Step3.
Android の emulator 配下の /mnt/sdcard を書き込み可能に変更
$ # エミュレータのシェルにはいる。 $ adb shell # # # 先頭が # のときは、 Android emulator のシェル にいることを表します。 # # わかりづらくてすいません...。 # # /mnt/sdcard SDカードを書き込み可能に変更する。 # # mount -o remount rw /mnt/sdcard # # # Ctrl+Dで抜けて元のシェルに戻る。 # ^D $ $
Android Emulator sdcard push error Read-only file system|stack over flow
Step4.
Android の emulator 配下の/mnt/sdcard を書き込む。
$ adb push img2.jpeg /mnt/sdcard $ adb push [送りたいファイル] [送りたい Android emulator 配下のフォルダ] # 3 の処理をしていないと... # エミュレータ配下で認識されている /mnt/sdcard が read only のため # はじかれる failed to copy 'img2.jpeg' to 'mysdcard.iso': Read-only file system
これで解決(`・ω・´)