Share Button
Tiết kiệm Key-Giá trị Bộ
09
September
2013

Nếu bạn có một bộ sưu tập tương đối nhỏ của các giá trị quan trọng mà bạn muốn lưu, bạn nên sử dụng SharedPreferences API. Một SharedPreferences phản đối điểm vào một tập tin có chứa cặp khóa-giá trị và cung cấp phương pháp đơn giản để đọc và viết. Mỗi SharedPreferences tập tin được quản lý bởi khuôn khổ và có thể là cá nhân hay được chia sẻ.

Trung tâm đào tạo khóa học lập trình di động tại đà nẵng thấy lớp này hướng các bạn làm thế nào để sử dụng SharedPreferences API để lưu trữ và lấy giá trị đơn giản.

Lưu ý: Các SharedPreferences API là chỉ để đọc và viết các cặp giá trị quan trọng và bạn không nên nhầm lẫn giữa chúng với các  Preference API, giúp bạn xây dựng một giao diện người dùng để cài đặt ứng dụng của bạn (mặc dù họ sử dụng SharedPreferences như thực hiện để lưu các thiết lập ứng dụng ). Để biết thông tin về việc sử dụng  Preference API, xem hướng dẫn cài đặt.

Nhận Xử lý một SharedPreferences


Bạn có thể tạo một tập tin ưu đãi mới chia sẻ hoặc truy cập vào một trong hiện tại bằng cách gọi một trong hai phương pháp:

getSharedPreferences() —  Sử dụng này nếu bạn cần nhiều dữ liệu sở thích chia sẻ xác định bởi tên, mà bạn chỉ định với tham số đầu tiên. Bạn có thể gọi này từ bất kỳ Context trong ứng dụng của bạn.
getPreferences() —  Sử dụng điều này từ một lần nếu bạn cần phải sử dụng chỉ có một tập tin ưu đãi chung cho hoạt động này. Bởi vì đây lấy một chia sẻ tập tin mặc định ưu tiên thuộc về các hoạt động, bạn không cần phải cung cấp một tên.

Ví dụ, đoạn code sau được thực hiện bên trong một Fragment.  Nó truy cập vào sở thích chia sẻ tập tin đó là xác định bởi chuỗi nguồn R.string.preference_file_key và mở nó bằng cách sử dụng chế độ riêng tư để các tập tin có thể truy cập bằng cách chỉ ứng dụng của bạn.

Context context = getActivity();
SharedPreferences sharedPref = context.getSharedPreferences(
        getString(R.string.preference_file_key), Context.MODE_PRIVATE);

Khi đặt tên file thích chia sẻ của bạn, bạn nên sử dụng một cái tên duy nhất mang tính ứng dụng của bạn, chẳng hạn như "com.example.myapp.PREFERENCE_FILE_KEY"

Ngoài ra, nếu bạn chỉ cần một chia sẻ tập tin ưu đãi cho hoạt động của bạn, bạn có thể sử dụnggetPreferences () phương pháp:

SharedPreferences sharedPref = getActivity (). getPreferences ( bối cảnh . MODE_PRIVATE );


Chú ý: Nếu bạn tạo một sở thích chia sẻ tập tin với MODE_WORLD_READABLE hoặc MODE_WORLD_WRITEABLE , sau đó bất kỳ ứng dụng khác mà biết chính xác tập tin có thể truy cập dữ liệu của bạn.

Viết cho chia sẽ chung:


Để viết vào một tập tin chia sẻ sở thích, tạo ra một SharedPreferences.Editor bằng cách gọi edit() trên của bạn SharedPreferences .

 

Vượt qua các phím và các giá trị bạn muốn viết với các phương pháp như putInt () và putString () . Sau đó gọi commit() để lưu các thay đổi. Ví dụ:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
SharedPreferences.Editor editor = sharedPref.edit();
editor.putInt(getString(R.string.saved_high_score), newHighScore);
editor.commit();

Đọc từ phần Sở thích chung


trung tâm đào tạo khóa hoc lap trinh android tai da nang thấy rằng để lấy giá trị từ một tập tin chia sẻ chung, gọi các phương pháp như getInt () và getString () , cung cấp chìa khóa cho các giá trị mà bạn muốn, và tùy chọn giá trị mặc ​​định trở lại nếu chính là không có mặt. Ví dụ:

SharedPreferences sharedPref = getActivity().getPreferences(Context.MODE_PRIVATE);
int defaultValue = getResources().getInteger(R.string.saved_high_score_default);
long highScore = sharedPref.getInt(getString(R.string.saved_high_score), defaultValue);

Đăng bình luận

Thành viên bình luận

  • 767 View