diff --git a/app/build.gradle b/app/build.gradle
index 299c55a..d53a8f1 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -51,27 +51,17 @@ dependencies {
implementation 'androidx.navigation:navigation-ui:2.7.7'
implementation 'androidx.recyclerview:recyclerview:1.3.2'
implementation 'androidx.preference:preference:1.2.1'
- testImplementation 'junit:junit:4.13.2'
- androidTestImplementation 'androidx.test.ext:junit:1.1.5'
- androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1'
// user custom
// icon 组件
implementation "com.mikepenz:iconics-core:3.2.5"
implementation "com.mikepenz:iconics-views:3.2.5"
implementation 'com.mikepenz:google-material-typeface:3.0.1.3.original@aar'
- implementation 'com.mikepenz:material-design-iconic-typeface:2.2.0.5@aar'
implementation 'com.mikepenz:fontawesome-typeface:5.3.1.1@aar'
- implementation 'com.mikepenz:octicons-typeface:3.2.0.5@aar'
- implementation 'com.mikepenz:meteocons-typeface:1.1.0.5@aar'
implementation 'com.mikepenz:community-material-typeface:3.5.95.1@aar'
- implementation 'com.mikepenz:weather-icons-typeface:2.0.10.5@aar'
- implementation 'com.mikepenz:typeicons-typeface:2.0.7.5@aar'
- implementation 'com.mikepenz:entypo-typeface:1.0.0.5@aar'
implementation 'com.mikepenz:devicon-typeface:2.0.0.5@aar'
implementation 'com.mikepenz:foundation-icons-typeface:3.0.0.5@aar'
implementation 'com.mikepenz:ionicons-typeface:2.0.1.5@aar'
- implementation 'com.mikepenz:pixeden-7-stroke-typeface:1.2.0.3@aar'
// calendar 组件
@@ -81,8 +71,10 @@ dependencies {
implementation "com.github.skydoves:colorpickerview:2.3.0"
// fab 组件
implementation 'com.github.clans:fab:1.6.4'
+ // 弹窗组件
+ implementation 'com.github.li-xiaojun:XPopup:2.9.19'
// hutool 工具
- implementation 'cn.hutool:hutool-core:5.8.23'
+ implementation 'cn.hutool:hutool-core:5.0.7'
// room持久化库
def room_version = '2.6.1'
diff --git a/app/schemas/cc.niushuai.dididone.biz.roomx.Database/1.json b/app/schemas/cc.niushuai.dididone.biz.roomx.Database/1.json
new file mode 100644
index 0000000..34ecc8d
--- /dev/null
+++ b/app/schemas/cc.niushuai.dididone.biz.roomx.Database/1.json
@@ -0,0 +1,170 @@
+{
+ "formatVersion": 1,
+ "database": {
+ "version": 1,
+ "identityHash": "948a4b0655ee548e5a6cd12c17615ff4",
+ "entities": [
+ {
+ "tableName": "t_record",
+ "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER, `name` TEXT, `check_date` INTEGER, `project_id` INTEGER, `description` TEXT, `create_date` INTEGER, `deleted` INTEGER, PRIMARY KEY(`id`))",
+ "fields": [
+ {
+ "fieldPath": "id",
+ "columnName": "id",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "name",
+ "columnName": "name",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "checkDate",
+ "columnName": "check_date",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "projectId",
+ "columnName": "project_id",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "description",
+ "columnName": "description",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "createDate",
+ "columnName": "create_date",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "deleted",
+ "columnName": "deleted",
+ "affinity": "INTEGER",
+ "notNull": false
+ }
+ ],
+ "primaryKey": {
+ "autoGenerate": false,
+ "columnNames": [
+ "id"
+ ]
+ },
+ "indices": [],
+ "foreignKeys": []
+ },
+ {
+ "tableName": "t_project",
+ "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER, `name` TEXT, `icon` TEXT, `icon_color` INTEGER, `create_date` INTEGER, `deleted` INTEGER, PRIMARY KEY(`id`))",
+ "fields": [
+ {
+ "fieldPath": "id",
+ "columnName": "id",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "name",
+ "columnName": "name",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "icon",
+ "columnName": "icon",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "iconColor",
+ "columnName": "icon_color",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "createDate",
+ "columnName": "create_date",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "deleted",
+ "columnName": "deleted",
+ "affinity": "INTEGER",
+ "notNull": false
+ }
+ ],
+ "primaryKey": {
+ "autoGenerate": false,
+ "columnNames": [
+ "id"
+ ]
+ },
+ "indices": [],
+ "foreignKeys": []
+ },
+ {
+ "tableName": "t_icon",
+ "createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`id` INTEGER, `icon` TEXT, `color` TEXT, `size` INTEGER, `create_date` INTEGER, `deleted` INTEGER, PRIMARY KEY(`id`))",
+ "fields": [
+ {
+ "fieldPath": "id",
+ "columnName": "id",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "icon",
+ "columnName": "icon",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "color",
+ "columnName": "color",
+ "affinity": "TEXT",
+ "notNull": false
+ },
+ {
+ "fieldPath": "size",
+ "columnName": "size",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "createDate",
+ "columnName": "create_date",
+ "affinity": "INTEGER",
+ "notNull": false
+ },
+ {
+ "fieldPath": "deleted",
+ "columnName": "deleted",
+ "affinity": "INTEGER",
+ "notNull": false
+ }
+ ],
+ "primaryKey": {
+ "autoGenerate": false,
+ "columnNames": [
+ "id"
+ ]
+ },
+ "indices": [],
+ "foreignKeys": []
+ }
+ ],
+ "views": [],
+ "setupQueries": [
+ "CREATE TABLE IF NOT EXISTS room_master_table (id INTEGER PRIMARY KEY,identity_hash TEXT)",
+ "INSERT OR REPLACE INTO room_master_table (id,identity_hash) VALUES(42, '948a4b0655ee548e5a6cd12c17615ff4')"
+ ]
+ }
+}
\ No newline at end of file
diff --git a/app/src/androidTest/java/cc/niushuai/dididone/ExampleInstrumentedTest.java b/app/src/androidTest/java/cc/niushuai/dididone/ExampleInstrumentedTest.java
deleted file mode 100644
index 735cf47..0000000
--- a/app/src/androidTest/java/cc/niushuai/dididone/ExampleInstrumentedTest.java
+++ /dev/null
@@ -1,26 +0,0 @@
-package cc.niushuai.dididone;
-
-import static org.junit.Assert.assertEquals;
-
-import android.content.Context;
-
-import androidx.test.ext.junit.runners.AndroidJUnit4;
-import androidx.test.platform.app.InstrumentationRegistry;
-
-import org.junit.Test;
-import org.junit.runner.RunWith;
-
-/**
- * Instrumented test, which will execute on an Android device.
- *
- * @see Testing documentation
- */
-@RunWith(AndroidJUnit4.class)
-public class ExampleInstrumentedTest {
- @Test
- public void useAppContext() {
- // Context of the app under test.
- Context appContext = InstrumentationRegistry.getInstrumentation().getTargetContext();
- assertEquals("cc.niushuai.dididone", appContext.getPackageName());
- }
-}
\ No newline at end of file
diff --git a/app/src/test/java/cc/niushuai/dididone/ExampleUnitTest.java b/app/src/test/java/cc/niushuai/dididone/ExampleUnitTest.java
deleted file mode 100644
index fb5dd4f..0000000
--- a/app/src/test/java/cc/niushuai/dididone/ExampleUnitTest.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package cc.niushuai.dididone;
-
-import static org.junit.Assert.assertEquals;
-
-import org.junit.Test;
-
-/**
- * Example local unit test, which will execute on the development machine (host).
- *
- * @see Testing documentation
- */
-public class ExampleUnitTest {
- @Test
- public void addition_isCorrect() {
- assertEquals(4, 2 + 2);
- }
-}
\ No newline at end of file