Parcourir la source

Completely kotlin code for project

sduduzog il y a 7 ans
Parent
commit
cd04437ee4

+ 12 - 10
app/build.gradle

@@ -4,6 +4,8 @@ apply plugin: 'kotlin-android'
 
 apply plugin: 'kotlin-android-extensions'
 
+apply plugin: 'kotlin-kapt'
+
 android {
     compileSdkVersion 28
     defaultConfig {
@@ -33,21 +35,21 @@ dependencies {
 
     // Kotlin Libraries
     implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version"
-    implementation 'androidx.core:core-ktx:1.0.0'
 
     // Support Libraries
-    implementation 'androidx.appcompat:appcompat:1.0.0-rc02'
-    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
-    implementation 'androidx.cardview:cardview:1.0.0-rc02'
     implementation 'com.google.android.material:material:1.0.0-alpha1'
+    implementation 'androidx.core:core-ktx:1.0.0'
     implementation 'androidx.recyclerview:recyclerview:1.0.0-rc02'
+    implementation 'androidx.appcompat:appcompat:1.0.0'
+    implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
+    implementation 'androidx.cardview:cardview:1.0.0-rc02'
 
     // Arch Components
     implementation 'androidx.lifecycle:lifecycle-extensions:2.0.0-rc01'
     implementation 'android.arch.navigation:navigation-fragment:1.0.0-alpha06'
-    implementation 'androidx.room:room-runtime:2.0.0-alpha1'
-    annotationProcessor "androidx.room:room-compiler:2.0.0-alpha1"
-    annotationProcessor "androidx.lifecycle:lifecycle-compiler:2.0.0-alpha1"
+    implementation 'androidx.room:room-runtime:2.1.0-alpha01'
+    kapt "androidx.room:room-compiler:2.1.0-alpha01"
+    kapt "androidx.lifecycle:lifecycle-compiler:2.0.0-alpha1"
 
     // 3rd Party libs
     implementation 'com.daasuu:EasingInterpolator:1.0.0'
@@ -55,7 +57,7 @@ dependencies {
     // Test libs
     testImplementation 'junit:junit:4.12'
     testImplementation 'org.mockito:mockito-core:2.7.6'
-    androidTestImplementation 'androidx.room:room-testing:2.0.0-alpha1'
-    androidTestImplementation 'androidx.test:runner:1.1.0-alpha4'
-    androidTestImplementation 'androidx.test:rules:1.1.0-alpha3'
+    androidTestImplementation 'androidx.room:room-testing:2.1.0-alpha01'
+    androidTestImplementation 'androidx.test:runner:1.1.0-beta02'
+    androidTestImplementation 'androidx.test:rules:1.1.0-beta02'
 }

+ 2 - 2
app/src/main/java/com/sduduzog/slimlauncher/ui/main/model/AppRepository.kt

@@ -1,16 +1,16 @@
 package com.sduduzog.slimlauncher.ui.main.model
 
 import android.app.Application
-import androidx.lifecycle.LiveData
 import android.content.Intent
 import android.content.pm.PackageManager
 import android.content.pm.ResolveInfo
 import android.os.AsyncTask
+import androidx.lifecycle.LiveData
 import java.util.*
 
 class AppRepository(application: Application) {
 
-    private val db: AppRoomDatabase = AppRoomDatabase.getDatabase(application)
+    private val db: AppRoomDatabase = AppRoomDatabase.getDatabase(application)!!
     private var appDao: AppDao = db.appDao()
     private var _apps: LiveData<List<App>> = appDao.apps
     private var _homeApps: LiveData<List<HomeApp>> = appDao.homeApps

+ 0 - 28
app/src/main/java/com/sduduzog/slimlauncher/ui/main/model/AppRoomDatabase.java

@@ -1,28 +0,0 @@
-package com.sduduzog.slimlauncher.ui.main.model;
-
-import androidx.room.Database;
-import androidx.room.Room;
-import androidx.room.RoomDatabase;
-import android.content.Context;
-
-@Database(entities = {App.class, HomeApp.class}, version = 1, exportSchema = false)
-public abstract class AppRoomDatabase extends RoomDatabase {
-    private static volatile AppRoomDatabase INSTANCE;
-
-    @SuppressWarnings("UnusedReturnValue")
-    public static AppRoomDatabase getDatabase(final Context context) {
-        if (INSTANCE == null) {
-            synchronized (AppRoomDatabase.class) {
-                if (INSTANCE == null) {
-                    INSTANCE = Room.databaseBuilder(context.getApplicationContext(),
-                            AppRoomDatabase.class, "app_database")
-                            .build();
-                }
-            }
-        }
-        return INSTANCE;
-    }
-
-    @SuppressWarnings("UnusedReturnValue")
-    public abstract AppDao appDao();
-}

+ 28 - 0
app/src/main/java/com/sduduzog/slimlauncher/ui/main/model/AppRoomDatabase.kt

@@ -0,0 +1,28 @@
+package com.sduduzog.slimlauncher.ui.main.model
+
+import android.content.Context
+import androidx.room.Database
+import androidx.room.Room
+import androidx.room.RoomDatabase
+
+@Database(entities = [App::class, HomeApp::class], version = 1, exportSchema = false)
+abstract class AppRoomDatabase : RoomDatabase() {
+
+    abstract fun appDao(): AppDao
+
+    companion object {
+        @Volatile
+        private var INSTANCE: AppRoomDatabase? = null
+
+        fun getDatabase(context: Context): AppRoomDatabase? {
+            synchronized(AppRoomDatabase::class.java) {
+                if (INSTANCE == null) {
+                    INSTANCE = Room.databaseBuilder(context.applicationContext,
+                            AppRoomDatabase::class.java, "app_database")
+                            .build()
+                }
+                return INSTANCE
+            }
+        }
+    }
+}

+ 1 - 1
build.gradle

@@ -7,7 +7,7 @@ buildscript {
         jcenter()
     }
     dependencies {
-        classpath 'com.android.tools.build:gradle:3.3.0-alpha11'
+        classpath 'com.android.tools.build:gradle:3.3.0-alpha13'
         classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
 
         // NOTE: Do not place your application dependencies here; they belong

+ 2 - 2
gradle/wrapper/gradle-wrapper.properties

@@ -1,6 +1,6 @@
-#Mon Sep 24 01:50:43 SAST 2018
+#Sat Oct 13 17:11:51 SAST 2018
 distributionBase=GRADLE_USER_HOME
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-4.10-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-4.10.1-all.zip