Added context extensions

This commit is contained in:
atbest 2019-05-22 03:31:39 -04:00
parent e2de6973bc
commit b9bbd7990c
3 changed files with 62 additions and 6 deletions

2
.gitignore vendored
View File

@ -6,3 +6,5 @@
/build
/captures
.externalNativeBuild
/release
/tmp

View File

@ -1,13 +1,12 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'kotlin-android-extensions'
apply plugin: 'kotlin-kapt'
android {
compileSdkVersion 28
defaultConfig {
applicationId "io.legado.book"
applicationId "io.legado.app"
minSdkVersion 21
targetSdkVersion 28
versionCode 1
@ -24,12 +23,25 @@ android {
dependencies {
implementation fileTree(dir: 'libs', include: ['*.jar'])
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation"org.jetbrains.kotlin:kotlin-stdlib-jdk8:$kotlin_version"
implementation 'androidx.core:core-ktx:1.0.2'
implementation 'androidx.appcompat:appcompat:1.0.2'
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
implementation 'androidx.recyclerview:recyclerview:1.0.0'
implementation 'androidx.cardview:cardview:1.0.0'
implementation 'com.google.android.material:material:1.0.0'
implementation 'androidx.paging:paging-runtime:2.1.0'
def anko_version = '0.10.8'
implementation "org.jetbrains.anko:anko-sdk27:$anko_version"
implementation "org.jetbrains.anko:anko-sdk27-listeners:$anko_version"
testImplementation 'junit:junit:4.12'
androidTestImplementation 'androidx.test:runner:1.1.1'
androidTestImplementation 'androidx.test.espresso:espresso-core:3.1.1'

View File

@ -0,0 +1,42 @@
package io.legado.app.utils
import android.content.Context
import androidx.core.content.edit
import org.jetbrains.anko.connectivityManager
import org.jetbrains.anko.defaultSharedPreferences
fun Context.isOnline() = connectivityManager.activeNetworkInfo?.isConnected == true
fun Context.getPrefBoolean(key: String, defValue: Boolean) =
defaultSharedPreferences.getBoolean(key, defValue)
fun Context.putPrefBoolean(key: String, value: Boolean) =
defaultSharedPreferences.edit { putBoolean(key, value) }
fun Context.getPrefInt(key: String, defValue: Int) =
defaultSharedPreferences.getInt(key, defValue)
fun Context.putPrefInt(key: String, value: Int) =
defaultSharedPreferences.edit { putInt(key, value) }
fun Context.getPrefLong(key: String, defValue: Long) =
defaultSharedPreferences.getLong(key, defValue)
fun Context.putPrefLong(key: String, value: Long) =
defaultSharedPreferences.edit { putLong(key, value) }
fun Context.getPrefString(key: String, defValue: String) =
defaultSharedPreferences.getString(key, defValue)
fun Context.putPrefString(key: String, value: String) =
defaultSharedPreferences.edit { putString(key, value) }
fun Context.getPrefStringSet(key: String, defValue: MutableSet<String>) =
defaultSharedPreferences.getStringSet(key, defValue)
fun Context.putPrefStringSet(key: String, value: MutableSet<String>) =
defaultSharedPreferences.edit { putStringSet(key, value) }
fun Context.removePref(key: String) =
defaultSharedPreferences.edit { remove(key) }