Shared Preferenceの使用
「AndroidロボットはGoogleが作成したもので、私たちが共有している作品をコピーまたは修正するために使用され、Creative Commons 3.0の著者マークライセンスの条項と条件に従って使用されます.」
SharedPreferencは
Androidアプライアンスのリポジトリにキーと値として格納できるライブラリです.
格納するデータが小さい(ex.設定値など)ため、データベースの書き込みが困難な場合、これは良い代替案かもしれません.
上記の保存キーと値.
データをロードするときは鍵を知るだけで済むので、簡単にアクセスできます.
まず、筆者はこのShared Preferenceを
モノトーン使用を実現しました.
パラメータはpreferenceの名前とモードを受け入れます.
名前は自分の書きたい名前を書くことができます.
この名前は保存するファイルの名前です.
modeは
Depertectedということで、このモードを使うだけでいいそうです.
key以降の2番目のパラメータは
データをインポートしたいが、データが保存されていない場合は、
ただし、返す値が入ります.
適当な用途で使えばいいです.
上の
データ型別のサポート
両者の違いは、返却変更に成功したかどうかです.
しかも速度は
筆者は,成功するか失敗するかの異常処理を考慮した.
返還刑が削除された場合は、
数ヶ月前のShared Preference
DataStoreの安定版が発売された.
上のリンクからドキュメントにアクセスできますが、
Shared PreferenceではなくDataStoreを使用することをお勧めします.
If you're currently using SharedPreferences to store data, consider migrating to DataStore instead.
筆者も先日、例題を習った.
どこに問題があったのかわからず、しばらく手放しの状態.
例題の理解が終わったら、もう一度Postingをします.
個人学習をベースに書いているからです.
情報が正しくない可能性があります.
知っていたら後で修正します
いつでもフィードバックを歓迎します.
読んでくれてありがとう.
Shared Preferenceとは?
SharedPreferencは
Androidアプライアンスのリポジトリにキーと値として格納できるライブラリです.
格納するデータが小さい(ex.設定値など)ため、データベースの書き込みが困難な場合、これは良い代替案かもしれません.
上記の保存キーと値.
データをロードするときは鍵を知るだけで済むので、簡単にアクセスできます.
やってみる
まず、筆者はこのShared Preferenceを
モノトーン使用を実現しました.
class Pref(private val context : Context) {
private val PREF_NAME = "PrefOfLee"
private var preference : SharedPreferences = context.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
companion object {
const val PREF_DATA = "Preference Test"
private var instance : Pref? =null
@Synchronized
fun getInstance(context: Context) : Pref? {
if(instance == null)
instance = Pref(context)
return instance
}
}
// data를 가져옴
fun getString(id: String?) : String? {
return preference.getString(id, "")
}
// data를 저장(삽입)
fun setValue(id: String?, value: String) : Boolean {
return preference.edit()
.putString(id, value)
.commit()
}
// data를 제거
fun removeValue(id: String?) : Boolean {
return preference.edit()
.remove(id)
.commit()
}
}
ひとつひとつ見ると.private var preference : SharedPreferences = context.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE)
getSharedPreferences(name, mode)
好みをもたらす方法.パラメータはpreferenceの名前とモードを受け入れます.
名前は自分の書きたい名前を書くことができます.
この名前は保存するファイルの名前です.
modeは
Context.MODE_PRIVATE
のほかにいくつかありますDepertectedということで、このモードを使うだけでいいそうです.
fun getString(id: String?) : String? {
return preference.getString(id, "")
}
id(key)を使用してpreferenceに格納されているデータを返します.key以降の2番目のパラメータは
データをインポートしたいが、データが保存されていない場合は、
ただし、返す値が入ります.
getString()
に加えて、データ型のサポートも提供しています.適当な用途で使えばいいです.
fun setValue(id: String?, value: String) : Boolean {
return preference.edit()
.putString(id, value)
.commit()
}
preference.edit()
preferenceで値を挿入/削除するために必要なeditorのメソッドを返します.putString(key, value)
名前の通りkeyとvalueを保存(挿入)します.上の
getString()
と同じですデータ型別のサポート
commit()
preferenceにデータを変更する方法を教えます.commit()
とは異なり、apply()
という方法もあります.両者の違いは、返却変更に成功したかどうかです.
しかも速度は
apply()
のほうが速いです.筆者は,成功するか失敗するかの異常処理を考慮した.
commit()
を使用します.返還刑が削除された場合は、
apply()
の使用を検討することをお勧めします. fun removeValue(id: String?) : Boolean {
return preference.edit()
.remove(id)
.commit()
}
上記のsetValue
構造と類似しています.remove(key)
の方法の違いと言える.実際、代替剤が登場して間もなく。
数ヶ月前のShared Preference
DataStoreの安定版が発売された.
上のリンクからドキュメントにアクセスできますが、
Shared PreferenceではなくDataStoreを使用することをお勧めします.
If you're currently using SharedPreferences to store data, consider migrating to DataStore instead.
筆者も先日、例題を習った.
どこに問題があったのかわからず、しばらく手放しの状態.
例題の理解が終わったら、もう一度Postingをします.
個人学習をベースに書いているからです.
情報が正しくない可能性があります.
知っていたら後で修正します
いつでもフィードバックを歓迎します.
読んでくれてありがとう.
Reference
この問題について(Shared Preferenceの使用), 我々は、より多くの情報をここで見つけました https://velog.io/@jeep_chief_14/SharedPreference를-사용해보자テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol