1

アプリの開発バージョンを実行しているときに、データベースをエクスポートして、デスクトップにコピーし、そこでデータベースを表示して、正しく編集されていることを確認したい場合があります。

通常、Environment.getExternalStorageDirectory() を呼び出して、そこにデータベースをコピーします。しかし、Galaxy Nexus の Jellybean でループに陥りました。MTP 経由でファイルを表示できませんでした。(Mac OS X ファイル転送)。Wifi ファイル エクスプローラーを使用してデバイス上のファイルを参照すると、データベース ファイルが表示されます。

いくつかの調査を行った後、これは Jellybean のシミュレートされたユーザー固有の外部ストレージが原因であると推測しています。そのため、たとえば /sdcard ではなく /storage/emulated/0/ に書き込みを行っていることがわかります。

Androidに「このファイルを、同じユーザーで実行されているアプリでのみ使用できるようにするのではなく、誰でも読める場所(MTPを含む)に書き込む」ように指示する方法はありますか?

4

1 に答える 1

2

私も同じ問題を抱えていました。「AndroidFileTransfer」で「Download」フォルダに書き込んだtxtファイルが見つかりませんでした。私が見つけた唯一の解決策は、ファイルを書き込んだのと同じフォルダーに追加の.txtファイルを書き込み、そのフォルダーを「Astro FileManager」などのアプリで開いて、追加のファイルを削除することです。次に、「Android File Transfer」を開き、閉じてから、もう一度開きます。目的のファイルが表示されます。

パスとして/storage/ emulated / 0 / Download /を使用していますが、他のフォルダーでも機能するはずです。

私はそれが完璧な解決策ではないことを知っていますが、今のところ私が持っているのはそれだけです。これがあなたにも役立つことを願っています!

于 2012-12-04T23:51:07.097 に答える