2016-10-09 22 views
2

私は自分のアプリケーションを自分のnexus 5xでテストしています。私は考えましたが、確信が持てません。アンドロイドスタジオでDDMSを開いたとき、プライベートファイルセクションのファイルを見て削除することができました。今では私の携帯電話がNougatに更新されています。私はプライベートセクションやパブリックエリアにいても、デバイス上のファイルを見ることはできません。Nougatを使用してNexus 5Xからデータベースを削除する

さらに、私はデータベースにいくつかの変更を加え、古いアプリケーションを削除すると古いデータベースが削除されると考えました。新しいバージョンをインストールして実行した後、データベースにテーブルがないというエラーが表示されます。明らかに、私の古いデータベースは、このテーブルが新しいバージョンでデータベースの作成時に追加されるので、アプリケーションをアンインストールすることによって削除されません。既にデータを削除してアプリを削除しようとしました。

古いデータベースを削除する方法や、プライベートファイルセクションにアクセスする方法はありますか?直接プログラミングの質問ではないので、質問を投稿するより良い場所があれば、私は謝罪します。

+0

「私は(プライベートファイルセクションでファイルを見て削除することができると思った」あなたの電話がルートされていない限り、いいえ。 – njzk2

+0

そんなに考えました。なぜ私は私の根っこのGalaxy Sに参加することができますが、私のNexus 5Xには参加できません。私はまた、検査のためにデータベースを引き出したいと思っています。根なしでは不可能だと思います。 – KvdLingen

答えて

1

私自身の質問に答えてください。私は は完全にアプリをアンインストール........ [yourpackagename] adbのアンインストールを呼び出す... this

そして最後を見つけました。

アンドロイドスタジオからも同じコマンドを利用できます。 「実行」メニューには、「駆除と再実行」というコマンドがあります。これにより、テストデバイス上のデータベースがクリーンアップされるため、開発中にデータベースのバージョンを更新する必要はありません。

0

まず、新しいDBスキームバージョンへのimpl移行の前にデータベースを削除しないでください。最も安全な方法は、DBのバージョンを増やすことです。あなたが老いているかどうかは関係ありません。

2番目..このhow to remove shared preference while application uninstall in androidを見てください。新しいバージョンをインストールした後、古いdbを保存して復元するという同じ問題に直面することがあります。

<application ... 
     android:allowBackup="false"> 
... 
</application> 

それは戻って、クラウドから任意のものを復元するために防ぐことができます:

だけで少なくともデバッグのためにマニフェストにこれを設定してみてください。

私はDBのバージョンをトラッキングするだけではなく、コンテンツを更新するほうがいいと言いました。

私はあなたを助けてくれることを願っています。

+0

あなたの答えをありがとうが、私は今すぐそれを受け入れることを断る。私はバージョンを増やすことについて知っていますが、アプリがプレイストアに公開された後もバージョンを保持したいと考えています。現時点では、私はさまざまなデータ構造を試しています。そこでは、データベースをパフォーマンスに与える効果を調べます。私はあなたの他の提案を調査します – KvdLingen

関連する問題