Использование SharedPreferences
Сохранение значений:
«`kotlin
val sharedPref = getSharedPreferences(«my_prefs», Context.MODE_PRIVATE)
with(sharedPref.edit()) {
putString(«my_string», «Hello, world!»)
putInt(«my_int», 123)
putBoolean(«my_bool», true)
apply() // сохраняет изменения
}
«`
Считывание значений:
«`kotlin
val sharedPref = getSharedPreferences(«my_prefs», Context.MODE_PRIVATE)
val myString = sharedPref.getString(«my_string», «default_value»)
val myInt = sharedPref.getInt(«my_int», 0)
val myBool = sharedPref.getBoolean(«my_bool», false)
«`
Удаление значений:
«`kotlin
val sharedPref = getSharedPreferences(«my_prefs», Context.MODE_PRIVATE)
with(sharedPref.edit()) {
remove(«my_string»)
remove(«my_int»)
remove(«my_bool»)
apply() // сохраняет изменения
}
«`
Использование системных настроек Android
Чтение системных настроек:
«`kotlin
val contentResolver = context.contentResolver
val brightness = Settings.System.getInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS)
«`
Запись системных настроек (требует разрешения WRITE_SETTINGS):
«`kotlin
val contentResolver = context.contentResolver
Settings.System.putInt(contentResolver, Settings.System.SCREEN_BRIGHTNESS, brightness)
«`
Использование Room Database
Room Database — это библиотека для работы с локальными базами данных на Android. Она позволяет сохранять и извлекать данные в виде объектов.
Создание таблицы:
«`kotlin
@Entity
data class MyEntity(
@PrimaryKey @ColumnInfo(name = «id») var id: Int,
@ColumnInfo(name = «name») var name: String
)
«`
Создание базы данных:
«`kotlin
@Database(entities = [MyEntity::class], version = 1)
abstract class AppDatabase : RoomDatabase() {
abstract fun myEntityDao(): MyEntityDao
}
«`
Вставка данных:
«`kotlin
val db = Room.databaseBuilder(context, AppDatabase::class.java, «my_db»).build()
val dao = db.myEntityDao()
dao.insert(MyEntity(1, «John Doe»))
«`
Извлечение данных:
«`kotlin
val db = Room.databaseBuilder(context, AppDatabase::class.java, «my_db»).build()
val dao = db.myEntityDao()
val myEntity = dao.get(1)
«`