SDカードをスキャンするアプリケーションに取り組んでいます。現時点では、Eclipse のエミュレーターを使用して Android アプリケーションをテストしています。Eclipse でのテスト用に仮想 SD カードを作成しました。
SDカードをアンマウントしてからエミュレーター(Eclipse)にマウントする方法があるかどうかを知りたいので、SDカードがアンマウントされたときにメッセージなどが生成されるようにアプリケーションをテストできます.
誰でもここで私を助けることができます..
外部ストレージなしでデバイスを起動することが可能です。これにより、Environment.MEDIA_MOUNTED状態を取得しない場合に何が起こるかをテストできます。
既存のSDカードの.isoファイルを使用してAVDを作成するだけです。次に、ファイルの名前を変更します。このAVDをロードすると、正常に動作しますが、外部ストレージはロードされません。これにより、外部メディアがマウントされていない場合のロジックをテストできます。
外部ストレージなしのシナリオをテストするために別のAVDを作成しましたが、両方のテストを同じもので実行する場合は、.isoファイルの名前を変更してエミュレーターを再起動できます。
上記のumountメソッドを試しましたが、これは便利ですが(Torpが言及しているように、より厳しいテストです)、システムはSDカードがマウントされていると見なし、代替ロジックが実行されません。
うーん、エミュレーターを起動し、adb シェルを使用してルート シェルを取得し、アンマウントを開始しました。それはうまくいくように見えました。
2.3.3 VM で実行する必要がumount /mnt/sdcard/.android_secure
ありumount /mnt/sdcard
ましたが、動作しているように見えました。アンマウントする前に、マウントを使用して VM の内容を確認してください。
もちろん、これは Android UI からマウント解除するよりもはるかに「厳しい」ソリューションです。SD カードを最初にマウント解除せずに取り外すユーザーをシミュレートしますが、テストに役立つ場合があります。
ここで説明されているように、エミュレーターの実行中に仮想SDカードをマウント/アンマウントすることはできませんAndroidエミュレーターでSDカードを(再)マウントする
アプリをテストしたい場合は、実際のデバイスを見つけることをお勧めします。