スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

  • Comments (Close): -
  • TrackBack (Close): -

Preferenceの保存 (1)

Androidでデータをローカルで操作する方法(データ永続化)として、
  1. プリファレンス
  2. ファイル
  3. データベース
の3つありますが、今回はプリファレンスを利用してデータの保存を行います。

プリファレンスは、キーと値のセットでデータをxmlに保存します。ファイルなどに保存するよりも非常に簡単にデータを保存できるのが特徴で、単純なデータを操作するのに適しています。

保存できるデータ型は、int、long、float、boolean、Stringになります。

まずは簡単なプログラムを作りました。

package sample.basic;

import android.app.Activity;
import android.os.Bundle;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;

public class HelloAndroid extends Activity{

/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

String pref_name="test_pref";
SharedPreferences sp = getSharedPreferences(pref_name, MODE_PRIVATE);
Editor e = sp.edit();
e.putString("Google", "http://www.google.co.jp/");
e.commit();
}
}


プリファレンスを利用するには、Contextクラスの getSharedPreferences()メソッドで SharedPreferencesオブジェクトを取得します。

public abstract SharedPreferences getSharedPreferences (String name, int mode)

第一引数はファイル名、第二引数は共有モードです。

操作モードは以下の通り。

MODE_PRIVATE(または0)…他のアプリからアクセス不可
MODE_WORLD_READABLE …他のアプリから読み込み可
MODE_WORLD_WRITEABLE …他のアプリから書き込み可
MODE_MULTI_PROCESS …複数のアプリケーションからアクセス可 (Android 2.3以降)

他のアプリから読み込みも書き込みも可能にするには、
   MODE_WORLD_READABLE|MODE_WORLD_WRITEABLE
のように論理和で結合します。

プリファレンスにデータを書き込むには、SharedPreferencesインタフェースの edit()メソッドで SharedPreferences.Editorオブジェクトを取得します。

abstract SharedPreferences.Editor edit()



SharedPreferences.Editorインタフェースには、putXxx()というメソッドがあり、値を追加することができます。

abstract SharedPreferences.Editor putBoolean(String key, boolean value)
abstract SharedPreferences.Editor putFloat(String key, float value)
abstract SharedPreferences.Editor putInt(String key, int value)
abstract SharedPreferences.Editor putLong(String key, long value)
abstract SharedPreferences.Editor putString(String key, String value)
abstract SharedPreferences.Editor putStringSet(String key, Set values)



プリファレンスのデータを保存するのは commit()メソッドです。

public abstract boolean commit ()




プリファレンスのファイルの確認


Eclipseで保存したファイルを確認するには、DDMSのファイル・エクスプローラを使います。

保存場所は、/data/data/パッケージ名/shared_prefs/ファイル名.xml です。
20111213_1

test_pref.xml をクリックして「Pull a file from the device」ボタンを押すと名前をつけて保存できます。
20111208_3

XMLファイルを開きます。
<?xml version='1.0' encoding='utf-8' standalone='yes' ?>
<map>
<string name="Google">http://www.google.co.jp/</string>
</map>

関連記事
スポンサーサイト

タグ :

   印刷ボタン       この記事に拍手する       このエントリーをはてなブックマークに追加

Return to page top

Comments:

Comment Form
Only inform the site author.

Trackback+Pingback:

TrackBack URL for this entry
http://androidhacker.blog94.fc2.com/tb.php/87-946eca3c
  • 閉じるボタン
レファレンス
月別アーカイブ
リンク
カテゴリ
QRコード
QR
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。