2016-03-30 15 views
-1

現在、ユーザーがカテゴリをナビゲートし、大量の情報が表示されるゲームのガイドとなるアプリを作成しています。たとえば、特定の武器に関する情報を確認したい場合は、Items> Weapons> Ranged> Bowの順に移動します。アプリをスムーズに動かすには、これを設定するのがベストでしょうか?私はユーザーが見ることができるこれらの異なった項目の100まで持っているかもしれません。Androidに大量の異なる情報を表示する最適な方法は何ですか?

私が検討している2つの現在のアプローチは、これらのアイテムのすべてをローカルSQLデータベースにしてから、ユーザーが選択したものに基づいてデータベースから取得する1つのアクティビティを作成することです。もう1つは文字列リソースを作成し、ユーザーが選択する項目に応じてこれらのリソースをロードすることです。どんな意見や洞察も高く評価されます。

+1

sqliteにデータを格納し、複数の非同期タスクを使用して問題を処理しました。 –

答えて

1

文字列リソースについてはわかりませんが、データの「読み取り専用」操作を行っていてユーザー入力を保存していない場合は、SQLiteを使用しないことをお勧めします。この使用のためのSQLiteの問題は、アプリケーションを初めて実行するときに、テーブルを作成してデータベースにプログラムでデータを設定する必要があることです。 (誰かがこれを行う別の方法があれば誰かが私を修正します)基本的には、あなたの情報を文字列として書くか、デバイスのファイルから読み込むことになります。データベースに挿入され、そこからアクセスされます。後の時間。もう一つの欠点は、アプリケーションの情報を更新するたびに、データベースハンドラの "onUpgrade"メソッドにルールを追加する必要があることです。 SQLiteからのデータへのアクセスは、ファイルを読むよりも速くなりますが、IMHOというのは読み込み操作の価値よりも大きな苦痛です(膨大な量のデータがない限り)。コンピュータの世界では "大規模な" )。

おそらくデータを独自のファイル(XML、JSON、またはプレーンテキスト)に格納し、assetsフォルダに格納します。素晴らしいフォルダ構造と適切なファイル名を使用すると、プログラムを変更することなく新しい情報を追加することができます。

もう1つの方法は、オンラインで保存した情報が更新されたときに、Webデータベースを作成し、そこから情報を取り出してローカルのSQLiteデータベースに保存することです。これにより、アプリケーションの更新を送信せずにコンテンツの改訂を簡単に行うことができますが、かなり多くの作業が必要になります。

0

The Content Providerは、Androidプラットフォーム上れる好ましいway to store big dataあるとthatyou.のために懸命に仕事をするために利用できる幸いにも多くのtools areI wouldがほとんどであっても、モバイルデバイス上のデータの100大容量を考慮していないと述べました。データは変わるでしょうか?言い換えれば静的か動的か?私はコンテンツプロバイダをお勧めしますが、共有設定、リソースファイル、またはあなたの値をハードコードすることもできます。

+0

データが変更される可能性があります。ただし、ユーザーがアイテムを選択するたびに、そのアイテムの全ページが表示されます。基本的に私が探しているのはアプローチなので、各アイテムが表示されるように個別のアクティビティを作成する必要はなく、代わりに1つのアクティビティを使用して、ユーザーが選択したアイテム –

関連する問題