2011-12-06 18 views
9

1時間の検索後、私の問題の解決策は見つかりませんでした。ファイルをassetsフォルダにコピー

私は資産フォルダにSDカードからファイルを移動しても、資産フォルダ内の既存のファイルを上書きするか(両方のファイルは、SQLiteのデータベースのあるデータでは、ほんの少しの違いで同じ名前を持つ)

+8

あなたは単に削除したり、実行時に資産フォルダへ/から何かを追加することはできませんで何かを傾けます。 – Mudassir

+1

サーバからsqliteデータベースをダウンロードし、assetsフォルダにコピーしたいと思います。 –

+0

どうすればこの状況を克服できますか? –

答えて

11

アンドロイドの.apkファイルの動作に資産からコピーすることができ、あなたが資産にsdcardからコピー傾けるよう、それだけ読める書き込みできませんので、読み取り専用ですそのapkファイル内にあるディレクトリ構造実行時にこのファイルを書き込んだり変更したりすることはできないため、実行時に/asset folderを変更することはできません。あなたはそれからファイルを読み込むことができます(手段は、任意のinternal storageまたは/sdcardに資産で使用可能なファイルをコピーするが、その逆に書き込みません)

そのはの.apkファイルに構築されているすべてのディレクトリに適用されます。ドキュメントごとに

+0

申し訳ありません同じコメントですが、私は解決策が必要です:)私は資産フォルダにデータベースを持っていて、今もサーバ上でデータベースを変更したいユーザーは最新のアップデートを入手できるようになります。これはできますか?ユーザーはどのようにそのデータベースを取得しますか? - 7年前のjohn smith –

+0

そのデータベースを内部ストレージまたはSDカードに書き込む必要があります(内部ストレージが望ましい)。 – user370305

+0

これを行う方法を私に教えてもらえますか? –

4

資産フォルダはイエス、あなたが実際にsdcard

+1

いいえdownvote。しかし、ポスターはその逆を望んでいます。 – Mudassir

+0

私はhttp://stackoverflow.com/questions/4447477/android-how-to-copy-files-in-assets-to-sdcardを知っていますが、私の問題は異なります。正確な情報は –

+1

+1です。 –

1

あなたは何ができるか、あなたのデータベースにアクセスしないように他のアプリをしたい場合は、

  1. は、ウェブサイトからデータベースをダウンロードしています。 appディレクトリにもtempデータベースを作成します。
  2. getDatabasePath()これで作成したダミーデータベースのパスが、ダウンロードしたダミーデータベースに置き換えられます。

PS:ユーザーとまだそれにアクセスすることができるrootアクセスを持つアプリを、あなたはそのシナリオ

関連する問題