アンドロイドアプリを作った。私はそれでデータベースを使用しています。 .apkファイルを自分の電話機にインストールしても問題ありません。しかし、私がエミュレーターを使用している間にデータベースに入力したデータは表示されません。私は以前に充填されたデータベーステーブルを使用する必要があります。私のデータベースは実行時に作成されません。私の電話機でデータベースを取得して、データベースと完全に正常に動作しているアプリを確認するにはどうすればよいですか?アンドロイド携帯のアプリであらかじめ構築されたデータベースを使用する
答えて
あなたは、アプリの初回起動時に、assets
またはres/raw
ディレクトリの下にデータベースファイルを保存/data/data/com.company.yourapp/databases/
にそのデータベース・ファイルをコピーして、いつものように、データベースを開くことができます。
assets
とres/raw
ディレクトリに保存するファイルの違いは、assets
のファイルは圧縮されていますが、res/raw
のファイルは圧縮されています。 res/raw
のファイルはAndroid 2.3より前に1 MBを超えることはできません。だから私は自分でデータベースファイルを圧縮してassets
に保存し、コードではGZIPInputStream
を使用してファイルを解凍することをお勧めします。
あなたのデータベースをテストする側が必要な場合は、あなたのsdcardにエクスポートする必要があると思います。
public static void exportfile(String applicationPackageName,String databaseName,String pathOfFolder) throws FileNotFoundException, IOException
{
InputStream myInput;
myInput = new FileInputStream("/data/data/"+applicationPackageName+"/databases/"+databaseName);
File directory = new File("/sdcard"+pathOfFolder);
if (!directory.exists())
{
directory.mkdirs();
}
OutputStream myOutput = new FileOutputStream(directory.getPath()+"/"+databaseName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer))>0)
{
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myOutput.close();
myInput.close();
}
applicationPackageName: - アプリケーションのパッケージ名
databaseNameの: - データベースファイル名
pathOfFolder: - 追加することを忘れないでくださいSDカードに
を、ファイルをエクスポートするフォルダのパスマニフェストファイルの<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
そして、SQLite Managerをダウンロードしてそのファイルを開きます。
ありがとうございます。あなたのお役に立てば幸いです。
この回答が役に立ったら、それを受け入れることを忘れないでください。 –
- 1. あらかじめ構築されたデータベースを使ってAndroidアプリをアップグレードする
- 2. あらかじめ構築されたWARからのGradle EARの構築
- 3. アンドロイド携帯を別のアンドロイド携帯用のブルートゥースキーボードとして使用する
- 4. GPSを使ってアンドロイド携帯を追跡するウェブサーバーアプリを構築する
- 5. あらかじめ構築されたライブラリターゲット
- 6. RHEL向けにあらかじめ構築されたErlang/OTP
- 7. c#あらかじめ構築されたアプリケーションのリソースファイルを変更する
- 8. アンドロイド携帯電話からデータベースを更新できません
- 9. アンドロイド携帯のホームボタンを使用
- 10. あなたの携帯電話を構築する方法に関するリソース?
- 11. JSONアンドロイド携帯に表示される構文解析
- 12. アンドロイド携帯からの生データを使った回転角度
- 13. あらかじめ計算されたクラスターセンターを使用してk-meansを再構築する
- 14. gradle-experimentalを使用してあらかじめビルドされたスタティックライブラリでは構築できません
- 15. Android:同じアプリから別のAndroid携帯にアプリを転送する方法
- 16. あらかじめ構築された正規表現パターンまたはRegexライブラリ?
- 17. 携帯用C#アプリのMongodb
- 18. アプリをテストするためにロック解除された携帯電話を使用する
- 19. あらかじめ構築された地理エンティティのLuis.ai同義語
- 20. あらかじめ設定されたデータベースにSQLite +エンティティフレームワークを使用する
- 21. アンドロイドでVoIPアプリを構築する
- 22. アンドロイド携帯のビデオストリーミング
- 23. あらかじめ用意されたSQLiteデータベースのCRUD操作
- 24. アンドロイド携帯電話からサーバーと通信するためのコードが必要
- 25. ロックされたAndroid携帯でアンドロイド携帯電話でUSBデバッグを有効にする方法
- 26. Ionicフレームワークのあらかじめ構築されたアプリからコントローラとビューを抽出する方法は?イオンのApp、ディレクトリ構造で
- 27. アニメーションを提供するBootstrapのような、あらかじめ構築されたクラスは何ですか?
- 28. 携帯電話からSQLiteデータベースをエクスポート
- 29. アンドロイド携帯電話でテストアプリ
- 30. データベースから構築された動的メニューを作成する
私はどのようにデータベースファイルをコピーできますかに関するガイドはありますか? –