2016-11-18 6 views
-6

私はタスクとサブタスクで構成される比較的シンプルなapp/gameを構築しています。ユーザーの進行を保存する必要があります。ユーザーには少量の設定しかありません。アプリデータをどこに保存しますか?

今のところ、アプリは外部サービスに接続していませんが、将来的にはFacebookやユーザーの登録に似たようなものを使用し、他のユーザーとの共同作業/成果を共有する機能を追加します。

私はアプリ開発で新しく、選択するデータ保存方法がわかりません。キーと値のセットが間違っていないと、ファイルとデータベースのオプションで保存します。

物事を速くしたり、v。1.0をリリースしたりするには、私は最も簡単な解決策を考えていきたいと思います。ですから、キー値を選択するか、ファイルオプションを保存するか、データベースベースの保存に切り替えるのがどれほど難しいか、という欠点がありますか?または、最初からデータベースを使用するだけですか?

私はあなたにこれに答える時間をとってくれました!

-Timo

+1

主に意見に基づいて...正式なアンドロイドガイドで「ストレージオプション」の項目をチェックしましたか? – Selvin

+0

'Shared Preferences'はあなたにとって良い選択です。 – AJay

+0

ありがとうAJay!私はそれを試みます。 –

答えて

1

私はあなたにSharedPreferencesをお勧めします。これはAndroidのシンプルなクラスで、データをKey-Valueセットに格納します。ここで

はコードです:

SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getApplicationContext()); 

これはあなたのSharedPreferencesを初期化します。あなたは/書き込み値を変更したい場合は、次の操作を行います。

SharedPreferences.Editor editor = sharedPref.edit(); 
editor.putInt("KEY_TO_VALUE", 123); 
editor.commit(); 

また、値のが、他のタイプに置くことができますが、putStringまたはputBoolean、あるいは他のタイプを呼び出すために必要以上に。値を読み取るために

は、この操作を行います。

int a = prefs.getInt("KEY_TO_VALUE", 0); 

このコードは常にあなたのパラメータあなたのキー、2番目のパラメータのデフォルト値のようにする必要があります。

もう1つのヒントは、簡単なUIを備えた通常のアプリでこれを使用したい場合、PreferenceScreenというものがあります。

+0

ありがとう!私はこれを行かせます。 –

1

SharedPreferencesを使用している最も簡単な方法。 mor複雑なものについては、SQLite(ビルトイン)またはRealmGreenDaoのようないくつかのORMを使用する必要があります。オンラインスコアの共有には、上記のいずれかとサーバーのいずれかを使用する必要があります。 Facebookはユーザーごとに1つの整数だけを格納することができます。これは不十分である場合があり、その整数を格納するためにユーザーから追加の許可(publish_actions)を求める必要があります。これが役立つことを願っています。

+0

ありがとう!これらは有用なtpsです。 –

関連する問題