Banner

Cara Membuat Shared Preferences Di Android


Cara Membuat Shared Preferences Di Android


Android menyediakan banyak cara untuk menyimpan data suatu aplikasi. Salah satu cara ini disebut Shared Preferences.  Shared Preferences  memungkinkan Anda menyimpan dan mengambil data dalam bentuk pasangan key dan value.
Untuk menggunakannya, Anda harus memanggil metode getSharedPreferences () yang mengembalikan instance SharedPreference yang mengompresi ke file yang berisi nilai Preferences.

Contoh

SharedPreferences sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);

Parameter pertama adalah key dan parameter kedua adalah MODE. Selain private, ada mode lain yang tersedia yang tercantum di bawah ini:

Mode dan Deskripsi
MODE_APPEND
Ini akan menambahkan Preferences  baru dengan Preferences  yang sudah ada
MODE_ENABLE_WRITE_AHEAD_LOGGING
Database open flag. Ketika diatur, itu akan memungkinkan menulis ke depan logging secara default
MODE_MULTI_PROCESS
Metode ini akan memeriksa modifikasi Preferences  bahkan jika instance Preferences  berbagi telah
telah dimuat
MODE_PRIVATE
Dengan mengatur mode ini, file hanya dapat diakses menggunakan aplikasi panggilan
MODE_WORLD_READABLE
Mode ini memungkinkan aplikasi lain membaca Preferences  
MODE_WORLD_WRITEABLE
Mode ini memungkinkan aplikasi lain untuk menulis preferensi





Anda dapat menyimpan sesuatu di preferensi yang dibagikan dengan menggunakan kelas SharedPreferences.Editor. Anda akan memanggil metode edit instance SharedPreference dan akan menerimanya dalam objek editor. Sintaksnya adalah:

Editor editor = sharedpreferences.edit();
editor.putString("key", "value");
editor.commit();


Contoh

Contoh ini menunjukkan penggunaan Preferensi Bersama. Ini menampilkan layar dengan beberapa bidang teks, yang nilainya disimpan ketika aplikasi ditutup dan dibawa kembali ketika dibuka lagi.
Untuk bereksperimen dengan contoh ini, Anda harus menjalankan ini pada perangkat yang sebenarnya aktif setelah mengembangkan aplikasi sesuai dengan langkah-langkah di bawah ini:

MainActivity.java

package com.example.zamalpostsherepreferences;

import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.content.SharedPreferences.Editor;
import android.view.Menu; import android.view.View;
import android.widget.TextView;
public class MainActivity extends Activity {
TextView name ;
TextView phone;
TextView email;
TextView street;
TextView place;
public static final String MyPREFERENCES = "MyPrefs" ;
public static final String Name = "nameKey";
public static final String Phone = "phoneKey";
public static final String Email = "emailKey";
public static final String Street = "streetKey";
public static final String Place = "placeKey";
SharedPreferences sharedpreferences;
@Override
protected void onCreate(Bundle savedInstanceState) {
      super.onCreate(savedInstanceState);
      setContentView(R.layout.activity_main);
name = (TextView) findViewById(R.id.editTextName);
phone = (TextView) findViewById(R.id.editTextPhone);
email = (TextView) findViewById(R.id.editTextStreet);
street = (TextView) findViewById(R.id.editTextEmail);
place = (TextView) findViewById(R.id.editTextCity);
sharedpreferences = getSharedPreferences(MyPREFERENCES, Context.MODE_PRIVATE);
if (sharedpreferences.contains(Name))
{
name.setText(sharedpreferences.getString(Name, ""));
}
if (sharedpreferences.contains(Phone))
{
phone.setText(sharedpreferences.getString(Phone, ""));
}
if (sharedpreferences.contains(Email))
{
email.setText(sharedpreferences.getString(Email, ""));
}
if (sharedpreferences.contains(Street))
{
street.setText(sharedpreferences.getString(Street, ""));
}
if (sharedpreferences.contains(Place))
{
place.setText(sharedpreferences.getString(Place,""));
}
}

public void run(View view){
String n    = name.getText().toString();
String ph   = phone.getText().toString();
String e    = email.getText().toString();
String s    = street.getText().toString();
String p    = place.getText().toString();
Editor editor = sharedpreferences.edit();
editor.putString(Name, n);
editor.putString(Phone, ph);
editor.putString(Email, e);
editor.putString(Street, s);
editor.putString(Place, p);
editor.commit();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
      //Inflate the menu; this adds items to the action bar if it is present.
      getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}



Activity_main.xml

<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/scrollView1"
android:layout_width="match_parent"
android:layout_height="wrap_content"
tools:context=".DisplayContact" >

<RelativeLayout
android:layout_width="match_parent"
android:layout_height="370dp"
> 

<EditText
android:id="@+id/editTextName"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignParentLeft="true"
android:layout_marginTop="5dp"
android:layout_marginLeft="82dp"
android:ems="10"
android:inputType="text" >
</EditText>

<EditText
android:id="@+id/editTextEmail"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editTextStreet"
android:layout_below="@+id/editTextStreet"
android:layout_marginTop="22dp"
android:ems="10"
android:inputType="textEmailAddress" />

<TextView
android:id="@+id/textView1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editTextName"

android:layout_alignParentLeft="true"
android:text="@string/name"
android:textAppearance="?android:attr/textAppearanceMedium" />

<Button
android:id="@+id/button1"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editTextCity"
android:layout_alignParentBottom="true"
android:layout_marginBottom="28dp"
android:onClick="run"
android:text="@string/save" />

<TextView
android:id="@+id/textView2"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editTextEmail"
android:layout_alignLeft="@+id/textView1"
android:text="@string/email"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView5"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBottom="@+id/editTextPhone"
android:layout_alignLeft="@+id/textView1"
android:text="@string/phone"
android:textAppearance="?android:attr/textAppearanceMedium" />

<TextView
android:id="@+id/textView4"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_above="@+id/editTextEmail"
android:layout_alignLeft="@+id/textView5"
android:text="@string/street"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editTextCity"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignRight="@+id/editTextName"
android:layout_below="@+id/editTextEmail"
android:layout_marginTop="30dp"
android:ems="10"
android:inputType="text" />

<TextView
android:id="@+id/textView3"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignBaseline="@+id/editTextCity"
android:layout_alignBottom="@+id/editTextCity"
android:layout_alignParentLeft="true"
android:layout_toLeftOf="@+id/editTextEmail"
android:text="@string/country"
android:textAppearance="?android:attr/textAppearanceMedium" />

<EditText
android:id="@+id/editTextStreet"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editTextName"
android:layout_below="@+id/editTextPhone"
android:ems="10"
android:inputType="text" >
<requestFocus />
</EditText>

<EditText
android:id="@+id/editTextPhone"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:layout_alignLeft="@+id/editTextStreet"
android:layout_below="@+id/editTextName"
android:ems="10"
android:inputType="phone|text" />
</RelativeLayout>
</ScrollView>




String.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>

    <string name="app_name">ZamalPost Shere Preferences</string>
    <string name="action_settings">Settings</string>
    <string name="hello_world">Hello world!</string>
<string name="name">Name</string>
<string name="phone">Phone</string>
<string name="email">Email</string>
<string name="street">Street</string>
<string name="country">City/State/Zip</string>
<string name="save">Save Contact</string>
</resources>

AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.zamalpostsherepreferences"
    android:versionCode="1"
    android:versionName="1.0" >

    <uses-sdk
        android:minSdkVersion="8"
        android:targetSdkVersion="18" />

    <application
        android:allowBackup="true"
        android:icon="@drawable/zamalpost"
        android:label="@string/app_name"
        android:theme="@style/AppTheme" >
        <activity
            android:name="com.example.zamalpostsherepreferences.MainActivity"
            android:label="@string/app_name" >
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>


Mari kita coba jalankan aplikasi SharedPreferences Anda. Gunakan kal USB dan jangan lupa pastinya Anda harus mengistal Driver terlebih dahulu. Saya menganggap Anda telah menghubungkan Ponsel Android Anda ke Laptop/PC  Anda. Anda juga bisa menginstal Vysor sebagai Emulator.

Untuk menjalankan aplikasi dari Eclipse, buka salah satu file aktivitas proyek Anda dan klik ikon Jalankan dari bilah alat berwarna hijau. Sebelum memulai aplikasi Anda, Eclipse akan menampilkan jendela berikut untuk memilih opsi tempat Anda ingin menjalankan aplikasi Android Anda.






Tampilan AVD


Tampilan AVD Eclipse
Tampilan AVD Eclipse





  
Pilih aktif  Emulator lalu OK



Tampilan Layout










Silahkan download project disini
Semoga ini dapat membantu masalah Anda dalam mempelajari SherePreferences Android




Subscribe to receive free email updates:

0 Response to "Cara Membuat Shared Preferences Di Android"

Post a Comment