Genymotion設定->ストレージには、内部ストレージのみがあり、SDカードはありません。
SDカードを持っている方法もありますか?
Genymotionには、SDカード(外部)ストレージのエミュレーションがすでにいくつかあります。これは、実行しようとしていることによっては、機能する可能性があります。 [設定]-> [ストレージ]では、期待どおりに外部ストレージとして個別に表示されませんが、Genymotionは外部ストレージをエミュレートします。そこに保存されているファイルのサイズは、[設定]-[ストレージ]の[内部ストレージ]に表示される合計に反映されます。
Genymotionで実行すると、Environment.getExternalStorageDirectory().getPath()
または.getAbsolutePath()
を使用するアプリは/storage/emulated/<userId>
を返します。ここで、アプリが所有者として実行されている場合はuserId
= 0、10 、11、12など。アプリが別のユーザーまたは制限付き/管理対象プロファイルとして実行されている場合。 Androidフレームワークは実際にこれを/mnt/Shell/emulated/<userId>
にマップします。そのため、シェルを使用して調べても/storage/emulated/<userId>
は見つかりません。
パス/sdcard
および/mnt/sdcard
は、基本的に所有者のストレージである/storage/emulated/legacy
へのシンボリックリンクです。これらはどこにでも存在しない可能性があり、所有者として実行されていない場合はアプリがアクセスできない可能性があるため、アプリでこれらを使用しないでください。それらは、レガシーのハードコードされたアプリをサポートするためだけにあります。
何をしようとしているのかわからない場合は、GenymotionがVM内の/mnt/shared
の下に表示されるVirtualBox共有フォルダーをサポートするようになったことにも言及する価値があります。手順については、 Google+投稿 を確認してください。