diff --git a/app/build.gradle b/app/build.gradle index c78ec5a..2d51e48 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -22,6 +22,11 @@ android { testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" vectorDrawables.useSupportLibrary = true + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } + ndk { //根据需要 自行选择添加的对应cpu类型的.so库。 abiFilters 'armeabi', 'armeabi-v7a', 'arm64-v8a' @@ -29,26 +34,33 @@ android { } buildConfigField "String", "WEBSOCKET_URL", '"wss://led.aolelearn.com/wss/device"' + + dataBinding { + enabled true + } + + lintOptions { + checkReleaseBuilds false + // Or, if you prefer, you can continue to check for errors in release builds, + // but continue the build even when errors are found: + abortOnError false + } + + aaptOptions.cruncherEnabled = false + aaptOptions.useNewCruncher = false + + packagingOptions { + // 根据错误信息,排除具体的重复文件 + exclude 'META-INF/DEPENDENCIES' + // 如果还有其他类似冲突(如NOTICE, LICENSE文件),可以一并排除 + exclude 'META-INF/NOTICE' + exclude 'META-INF/LICENSE' + exclude 'META-INF/LICENSE.txt' + exclude 'META-INF/NOTICE.txt' + } } - dataBinding { - enabled true - } - lintOptions { - checkReleaseBuilds false - // Or, if you prefer, you can continue to check for errors in release builds, - // but continue the build even when errors are found: - abortOnError false - } - - aaptOptions.cruncherEnabled = false - aaptOptions.useNewCruncher = false - - compileOptions { - sourceCompatibility JavaVersion.VERSION_1_8 - targetCompatibility JavaVersion.VERSION_1_8 - } signingConfigs { tuixin { @@ -207,6 +219,19 @@ dependencies { implementation 'io.github.lucksiege:pictureselector:v3.11.1' // implementation 'com.github.wanglu1209:PhotoViewer:0.50' // implementation 'com.github.wanggaowan:PhotoPreview:2.5.5' + + + /*jxw依赖*/ +// implementation 'io.github.cymchad:BaseRecyclerViewAdapterHelper4:4.3.2' +// implementation "io.github.cymchad:BaseRecyclerViewAdapterHelper:3.0.14" + implementation 'com.github.CymChad:BaseRecyclerViewAdapterHelper:2.9.47' + implementation 'io.github.youth5201314:banner:2.2.3' + implementation 'com.google.android.exoplayer:exoplayer:2.9.4' + implementation 'com.google.android.exoplayer:exoplayer-core:2.9.4' + implementation 'com.tencent.tav:libpag:latest.release' + implementation 'com.ufreedom.uikit:FloatingTextLibrary:0.2.0' + implementation 'org.apache.httpcomponents:httpcore:4.4.9' + implementation 'org.apache.httpcomponents:httpclient:4.5.5' } preBuild { diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml index 7788eeb..8ca8e67 100644 --- a/app/src/main/AndroidManifest.xml +++ b/app/src/main/AndroidManifest.xml @@ -102,6 +102,32 @@ android:screenOrientation="landscape" android:stateNotNeeded="true" android:exported="true" + android:theme="@style/AppThemeWithoutFitsSystemWindows" + android:windowSoftInputMode="adjustPan"> + + + + + + + + + + + + @@ -323,11 +349,11 @@ + android:value="640" /> + android:value="360" /> \ No newline at end of file diff --git a/app/src/main/assets/script/camera.json b/app/src/main/assets/script/camera.json new file mode 100644 index 0000000..a39bfa4 --- /dev/null +++ b/app/src/main/assets/script/camera.json @@ -0,0 +1,38 @@ +{ + "com.jxw.souti": { + "frontCameraId": 0, + "frontCameraRotation": 0, + "backCameraId": -1, + "backCameraRotation": 0 + }, + "com.jxw.zwpg": { + "frontCameraId": -1, + "frontCameraRotation": 90, + "backCameraId": 0, + "backCameraRotation": 90 + }, + "com.jxw.huiben": { + "frontCameraId": -1, + "frontCameraRotation": 0 + }, + "com.jxw.zjcc": { + "frontCameraId": -1, + "frontCameraRotation": 0 + }, + "com.jxw.znhy": { + "frontCameraId": -1, + "frontCameraRotation": 2 + }, + "com.jxw.gb.kspg": { + "frontCameraId": -1, + "frontCameraRotation": 0, + "backCameraId": -1, + "backCameraRotation": 0 + }, + "zhushi": { + "frontCameraId": "0 表示开启前置摄像头 ,-1 表示关闭前置摄像头 ", + "frontCameraRotation": "前置摄像头角度 0/90/180", + "backCameraId": "0 表示开启后置摄像头 ,-1 表示关闭后置摄像头 ", + "backCameraRotation": "后置摄像头角度 0/90/180" + } +} diff --git a/app/src/main/assets/script/com.jxw.jpkc.json b/app/src/main/assets/script/com.jxw.jpkc.json new file mode 100644 index 0000000..6fc4c40 --- /dev/null +++ b/app/src/main/assets/script/com.jxw.jpkc.json @@ -0,0 +1,5 @@ +{ + "online_engin": "exo", + "offline_engin": "exo", + "sztzPid": "31978" + } \ No newline at end of file diff --git a/app/src/main/assets/script/com.jxw.scb.json b/app/src/main/assets/script/com.jxw.scb.json new file mode 100644 index 0000000..e45f02d --- /dev/null +++ b/app/src/main/assets/script/com.jxw.scb.json @@ -0,0 +1,39 @@ +{ + "home_data": [ + { + "type": "xwcd", + "status": false, + "name": "学王词典" + }, + { + "type": "dcgd", + "status": false, + "name": "单词跟读" + }, + { + "type": "bdc", + "status": true, + "name": "背单词" + }, + { + "type": "dctx", + "status": true, + "name": "单词听写" + }, + { + "type": "zctx", + "status": true, + "name": "字词听写" + }, + { + "type": "hzxx", + "status": false, + "name": "汉字学习" + }, + { + "type": "wwjdc", + "status": false, + "name": "五维记单词" + } + ] +} \ No newline at end of file diff --git a/app/src/main/assets/script/com.jxw.yyhb.json b/app/src/main/assets/script/com.jxw.yyhb.json new file mode 100644 index 0000000..00bba0c --- /dev/null +++ b/app/src/main/assets/script/com.jxw.yyhb.json @@ -0,0 +1,3 @@ +{ + "hideChinese": true +} \ No newline at end of file diff --git a/app/src/main/assets/script/fragment_tbx.json b/app/src/main/assets/script/fragment_tbx.json new file mode 100644 index 0000000..df60e8b --- /dev/null +++ b/app/src/main/assets/script/fragment_tbx.json @@ -0,0 +1,92 @@ +[ + { + "name": "物理", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "八年级,九年级,高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.WlFragment", + "label": "item_wl_zxts.json", + "tbsp_tag" : "tag_args_new_xksp_wl", + "isBig" : false + }, + { + "name": "化学", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "八年级,九年级,高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.HxFragment", + "label": "item_hx_zxts.json", + "tbsp_tag" : "tag_args_new_xksp_hx", + "isBig" : false + }, + { + "name": "生物", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.SwFragment", + "label": "item_sw_zxts.json", + "tbsp_tag" : "tag_args_new_xksp_sw", + "isBig" : false + }, + { + "name": "地理", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "初中六年级,七年级,八年级", + "className": "com.handuan.os.jxw.fragment.DlFragment", + "label": "item_dl_zxts.json", + "tbsp_tag" : "tag_args_new_xksp_dl", + "isBig" : false + }, + { + "name": "地理", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.DlFragment", + "label": "item_dl_zxts.json", + "tbsp_tag" : "dl", + "isBig" : true + }, + { + "name": "历史", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "初中六年级,七年级,八年级,九年级,高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.LsFragment", + "label": "item_ls_zxts.json", + "tbsp_tag" : "ls", + "isBig" : true + }, + { + "name": "道德与法治", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级", + "className": "com.handuan.os.jxw.fragment.DdyfzFragment", + "label": "item_ddyfz_zxts.json", + "tbsp_tag" : "ddyfz", + "isBig" : true + }, + { + "name": "政治", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "高一,高二,高三", + "className": "com.handuan.os.jxw.fragment.ZzFragment", + "label": "item_ddyfz_zxts.json", + "tbsp_tag" : "zz", + "isBig" : true + }, + { + "name": "科学", + "normal": "icon_tab_xk", + "press": "icon_tab_xk_xz", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,七年级,八年级,九年级", + "className": "com.handuan.os.jxw.fragment.KxFragment", + "label": "item_kx_zxts.json", + "tbsp_tag" : "kx", + "isBig" : true + } +] diff --git a/app/src/main/assets/script/grzx_tab.json b/app/src/main/assets/script/grzx_tab.json new file mode 100644 index 0000000..d3a774a --- /dev/null +++ b/app/src/main/assets/script/grzx_tab.json @@ -0,0 +1,23 @@ +[ + { + "tab_Name": "个人信息", + "tab_icon": "grzx_grxx", + "tab_press_bg": "bg_tag_grzx_grxx", + "tab_Color": "#00C987", + "className": "com.jxw.launcher.grzx.GrxxFragment" + }, + { + "tab_Name": "家庭成员", + "tab_icon": "grzx_jtcy", + "tab_press_bg": "bg_tag_grzx_jtct", + "tab_Color": "#00A7FF", + "className": "com.jxw.launcher.grzx.JtcyFragment" + }, + { + "tab_Name": "关于设备", + "tab_icon": "grzx_gysb", + "tab_press_bg": "bg_tag_grzx_sybz", + "tab_Color": "#A356FF", + "className": "com.jxw.launcher.grzx.DeviceFragment" + } +] diff --git a/app/src/main/assets/script/hx_apps.json b/app/src/main/assets/script/hx_apps.json new file mode 100644 index 0000000..9cec13c --- /dev/null +++ b/app/src/main/assets/script/hx_apps.json @@ -0,0 +1,32 @@ +[ + { + "text": "化学中考专项", + "icon": "icon_hx_hxzkzx", + "tag": "tag_args_new_ztsp_zkhxzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_hx_gsdq", + "tag": "tag_args_new_gsdq_hx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "化学实验室", + "icon": "icon_hx_hxsys", + "tag": "tag_args_new_sys_hx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "元素周期表", + "icon": "icon_hx_yszqb", + "tag": "tag_args_new_yszqb", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_hx_ykyl", + "tag": "tag_args_new_ykyl_hx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/hx_default_app.json b/app/src/main/assets/script/hx_default_app.json new file mode 100644 index 0000000..1a32514 --- /dev/null +++ b/app/src/main/assets/script/hx_default_app.json @@ -0,0 +1,15 @@ +[ + { + "text": "化学中考专项", + "icon": "icon_hx_hxzkzx", + "tag": "tag_args_new_ztsp_zkhxzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_hx_gsdq", + "tag": "tag_args_new_gsdq_hx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } + +] diff --git a/app/src/main/assets/script/item_ddyfz_zxts.json b/app/src/main/assets/script/item_ddyfz_zxts.json new file mode 100644 index 0000000..d6f835f --- /dev/null +++ b/app/src/main/assets/script/item_ddyfz_zxts.json @@ -0,0 +1,8 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_dd", + "learnStage": "初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_dl_zxts.json b/app/src/main/assets/script/item_dl_zxts.json new file mode 100644 index 0000000..5186aeb --- /dev/null +++ b/app/src/main/assets/script/item_dl_zxts.json @@ -0,0 +1,14 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_dl", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三" + }, + { + "text": "会考地理专题", + "icon": "icon_tbx_sjdl", + "tag": "tag_args_new_ztsp_hkdlzt", + "learnStage": "初中六年级,七年级,八年级,九年级" + } +] diff --git a/app/src/main/assets/script/item_hx_zxts.json b/app/src/main/assets/script/item_hx_zxts.json new file mode 100644 index 0000000..31ab4df --- /dev/null +++ b/app/src/main/assets/script/item_hx_zxts.json @@ -0,0 +1,32 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_hx", + "learnStage": "八年级,九年级,高一,高二,高三" + }, + { + "text": "中考化学专题", + "icon": "icon_zkhxzt", + "tag": "tag_args_new_ztsp_zkhxzt", + "learnStage": "八年级,九年级" + }, + { + "text": "元素周期表", + "icon": "icon_yszqb", + "tag": "tag_args_new_yszqb", + "learnStage": "八年级,九年级,高一,高二,高三" + }, + { + "text": "化学实验室", + "icon": "icon_hxsys", + "tag": "tag_args_new_sys_hx", + "learnStage": "八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_gsdq", + "tag": "tag_args_new_gsdq_hx", + "learnStage": "八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_kx_zxts.json b/app/src/main/assets/script/item_kx_zxts.json new file mode 100644 index 0000000..791a42a --- /dev/null +++ b/app/src/main/assets/script/item_kx_zxts.json @@ -0,0 +1,8 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_kx", + "learnStage": "七年级,八年级,九年级" + } +] diff --git a/app/src/main/assets/script/item_ls_zxts.json b/app/src/main/assets/script/item_ls_zxts.json new file mode 100644 index 0000000..4f9059a --- /dev/null +++ b/app/src/main/assets/script/item_ls_zxts.json @@ -0,0 +1,8 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_ls", + "learnStage": "初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_sljxxl_game.json b/app/src/main/assets/script/item_sljxxl_game.json new file mode 100644 index 0000000..7682a67 --- /dev/null +++ b/app/src/main/assets/script/item_sljxxl_game.json @@ -0,0 +1,62 @@ +[ + { + "name": "小鳄鱼回家", + "bgRes": "icon_game1", + "jumpLink": "24" + }, + { + "name": "赛车冲刺", + "bgRes": "icon_game2", + "jumpLink": "208" + }, + { + "name": "夏日冲浪赛", + "bgRes": "icon_game3", + "jumpLink": "571" + }, + { + "name": "动物叠叠乐", + "bgRes": "icon_game4", + "jumpLink": "28" + }, + { + "name": "晃动的稻草人", + "bgRes": "icon_game5", + "jumpLink": "740" + }, + { + "name": "小鸟历险记", + "bgRes": "icon_game6", + "jumpLink": "25" + }, + { + "name": "小熊独轮车", + "bgRes": "icon_game7", + "jumpLink": "566" + }, + { + "name": "小火箭冲呀", + "bgRes": "icon_game8", + "jumpLink": "50" + }, + { + "name": "雪车冲击", + "bgRes": "icon_game9", + "jumpLink": "202" + }, + { + "name": "躲避气球", + "bgRes": "icon_game10", + "jumpLink": "74" + }, + { + "name": "兔兔独木桥过河", + "bgRes": "icon_game11", + "jumpLink": "565" + }, + { + "name": "更多", + "bgRes": "icon_more", + "jumpLink": "0" + } +] diff --git a/app/src/main/assets/script/item_sw_zxts.json b/app/src/main/assets/script/item_sw_zxts.json new file mode 100644 index 0000000..0f9823c --- /dev/null +++ b/app/src/main/assets/script/item_sw_zxts.json @@ -0,0 +1,20 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_sw", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三" + }, + { + "text": "生物会考专题", + "icon": "icon_hkswzt", + "tag": "tag_args_new_ztsp_hkswzt", + "learnStage" : "初中六年级,七年级,八年级" + }, + { + "text": "生物实验室", + "icon": "icon_swsys", + "tag": "tag_args_new_sys_sw", + "learnStage" : "初中六年级,七年级,八年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_sx_zxts.json b/app/src/main/assets/script/item_sx_zxts.json new file mode 100644 index 0000000..4f58c79 --- /dev/null +++ b/app/src/main/assets/script/item_sx_zxts.json @@ -0,0 +1,86 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_sx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "口算大闯关", + "icon": "icon_ksdcg", + "tag": "tag_args_new_ksdcg", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "算术围墙", + "icon": "icon_sswq", + "tag": "tag_args_new_sswq", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "数独竞技场", + "icon": "icon_sdjjc", + "tag": "tag_args_new_sdjjc", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "算术口诀", + "icon": "icon_sskj", + "tag": "tag_args_new_sskj", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "公式大全", + "icon": "icon_gsdq", + "tag": "tag_args_new_gsdq_sx", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "应用题训练", + "icon": "icon_yytxl", + "tag": "tag_args_new_yytxl", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "超越奥数", + "icon": "icon_cyas", + "tag": "tag_args_new_asxl", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "几何图形", + "icon": "icon_jhtx", + "tag": "tag_args_new_jhtx", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "小初升专题", + "icon": "icon_xsczt", + "tag": "tag_args_new_ztsp_xscsxzt_xx", + "learnStage" : "四年级,五年级,六年级" + }, + { + "text": "中考第一轮复习", + "icon": "icon_zkdylfx", + "tag": "tag_args_new_ztsp_zksxdylfx_zx", + "learnStage" : "初中六年级,七年级,八年级,九年级" + }, + { + "text": "中考第二轮复习", + "icon": "icon_zkderlfx", + "tag": "tag_args_new_ztsp_zksxdelfx_zx", + "learnStage" : "初中六年级,七年级,八年级,九年级" + }, + { + "text": "中考系统复习", + "icon": "icon_zkxtfx", + "tag": "tag_args_new_ztsp_syds_zx", + "learnStage" : "初中六年级,七年级,八年级,九年级" + }, + { + "text": "高考-题型技巧", + "icon": "icon_gktxjq", + "tag": "tag_args_new_ztsp_gkztxtfxkc_gz", + "learnStage" : "高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_wl_zxts.json b/app/src/main/assets/script/item_wl_zxts.json new file mode 100644 index 0000000..e4c45cf --- /dev/null +++ b/app/src/main/assets/script/item_wl_zxts.json @@ -0,0 +1,26 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_wl", + "learnStage": "八年级,九年级,高一,高二,高三" + }, + { + "text": "中考物理专题", + "icon": "icon_zkwlzt", + "tag": "tag_args_new_ztsp_zkwlzt", + "learnStage" : "八年级,九年级" + }, + { + "text": "公式大全", + "icon": "icon_gsdq", + "tag": "tag_args_new_gsdq_wl", + "learnStage" : "八年级,九年级,高一,高二,高三" + }, + { + "text": "物理实验室", + "icon": "icon_wlsys", + "tag": "tag_args_new_sys_wl", + "learnStage" : "八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_yw_zxts.json b/app/src/main/assets/script/item_yw_zxts.json new file mode 100644 index 0000000..0200372 --- /dev/null +++ b/app/src/main/assets/script/item_yw_zxts.json @@ -0,0 +1,92 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_yw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "同步听力", + "icon": "icon_tbtl_yw", + "tag": "tag_args_new_tbtl_yw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级" + }, + { + "text": "趣学拼音", + "icon": "icon_qxpy", + "tag": "tag_args_new_qxpy", + "learnStage" : "一年级,二年级" + }, + { + "text": "汉字基础", + "icon": "icon_hzjc", + "tag": "tag_args_new_hzjc", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "汉字闯关", + "icon": "icon_hzcg", + "tag": "tag_args_new_hzcg", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "字词大挑战", + "icon": "icon_zcdtz", + "tag": "tag_args_new_zcdtz", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "同步古诗", + "icon": "icon_tbgs", + "tag": "tag_args_new_tbgs", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "中华宝典", + "icon": "icon_zhbd", + "tag": "tag_args_new_zhbd", + "learnStage" : "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "作文专项", + "icon": "icon_zwzx", + "tag": "tag_args_new_ztsp_xsczwzx_xx", + "learnStage" : "五年级,六年级" + }, + { + "text": "小升初考点专项", + "icon": "icon_xsckszx", + "tag": "tag_args_new_ztsp_xscywkdzx_xx", + "learnStage" : "五年级,六年级" + }, + { + "text": "诗词古文", + "icon": "icon_scgw", + "tag": "tag_args_new_tbgs", + "learnStage" : "初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "中考语文考点专项", + "icon": "icon_zkywkdzx", + "tag": "tag_args_new_ztsp_zkyykdzx_zx", + "learnStage" : "初中六年级,七年级,八年级,九年级" + }, + { + "text": "阅读与写作", + "icon": "icon_xxywyd", + "tag": "tag_args_new_ztsp_ydxz_xx", + "learnStage" : "五年级,六年级" + }, + { + "text": "阅读与写作", + "icon": "icon_zxydyxz", + "tag": "tag_args_new_ztsp_ydyxz_zx", + "learnStage" : "初中六年级,七年级,八年级,九年级" + }, + { + "text": "阅读与写作", + "icon": "icon_zxydyxz", + "tag": "tag_args_new_ztsp_ydyxz_gz", + "learnStage" : "高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/item_yy_zxts.json b/app/src/main/assets/script/item_yy_zxts.json new file mode 100644 index 0000000..44fc6c6 --- /dev/null +++ b/app/src/main/assets/script/item_yy_zxts.json @@ -0,0 +1,116 @@ +[ + { + "text": "一课一练", + "icon": "icon_tbx_ykyl", + "tag": "tag_args_new_ykyl_yy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "同步听力", + "icon": "icon_tbtl", + "tag": "tag_args_new_tbtl_yy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级" + }, + { + "text": "ABC字母", + "icon": "icon_abczm", + "tag": "tag_args_new_ztsp_yyabc_zx", + "learnStage": "一年级,二年级,三年级" + }, + { + "text": "音标学习", + "icon": "icon_ybxx", + "tag": "tag_args_new_ybxx", + "learnStage": "一年级,二年级,三年级" + }, + { + "text": "情景对话", + "icon": "icon_qjdh", + "tag": "tag_args_new_qjdh", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "自然拼读", + "icon": "icon_zrpd", + "tag": "tag_args_new_ztsp_zrpt_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "拼读大闯关", + "icon": "icon_pddcg", + "tag": "tag_args_new_ztsp_pddcg_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "单词天天练", + "icon": "icon_dcttl", + "tag": "tag_args_new_dcttl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "背单词", + "icon": "icon_bdc", + "tag": "tag_args_new_bdc", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "分类词汇", + "icon": "icon_flch", + "tag": "tag_args_new_flch", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "趣味配音", + "icon": "icon_qwpy", + "tag": "tag_args_new_qwpy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "英语听说", + "icon": "icon_yyts", + "tag": "tag_args_new_yyts", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级" + }, + { + "text": "快乐学英语", + "icon": "icon_klxyy", + "tag": "tag_args_new_klxyy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级" + }, + { + "text": "连词成句", + "icon": "icon_lccj", + "tag": "tag_args_new_lccj", + "learnStage": "五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "写作大本营", + "icon": "icon_xzdby", + "tag": "tag_args_new_ztsp_xzdby_xx", + "learnStage": "三年级,四年级,五年级,六年级" + }, + { + "text": "英语阅读", + "icon": "icon_yyyd", + "tag": "tag_args_new_ztsp_yshyyd_xx", + "learnStage": "四年级,五年级,六年级" + }, + { + "text": "语法大全", + "icon": "icon_yfdq", + "tag": "tag_args_new_yyyf", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "写作大提升", + "icon": "icon_xzdts", + "tag": "tag_args_new_ztsp_xzdts_zx", + "learnStage": "初中六年级,七年级,八年级,九年级" + }, + { + "text": "写作大提升", + "icon": "icon_xzdts", + "tag": "tag_args_new_ztsp_xzdts_gz", + "learnStage": "高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/settings.json b/app/src/main/assets/script/settings.json new file mode 100644 index 0000000..26e71d3 --- /dev/null +++ b/app/src/main/assets/script/settings.json @@ -0,0 +1,66 @@ +[ + { + "tab_Name": "添加应用", + "tab_Color": "#00C987", + "tab_Press": "bg_tag_grzx_grxx", + "tab_Icon": "icon_set_tj", + "className": "com.jxw.launcher.user.fragment.AddAppListFragment", + "tab_Title": "添加应用", + "tab_Subtitle": "可将应用添加到学习桌面,允许孩子使用" + }, + { + "tab_Name": "蓝牙", + "tab_Color": "0", + "tab_Press": "0", + "tab_Icon": "icon_set_ly", + "className": "com.jxw.launcher.user.fragment.BlankFragment", + "tab_Title": "", + "tab_Subtitle": "" + }, + { + "tab_Name": "网络", + "tab_Color": "0", + "tab_Press": "0", + "tab_Icon": "icon_set_wl", + "className": "com.jxw.launcher.user.fragment.BlankFragment", + "tab_Title": "", + "tab_Subtitle": "" + }, + { + "tab_Name": "显示", + "tab_Color": "0", + "tab_Press": "0", + "tab_Icon": "icon_set_xs", + "className": "com.jxw.launcher.user.fragment.BlankFragment", + "tab_Title": "", + "tab_Subtitle": "" + }, + { + "tab_Name": "声音", + "tab_Color": "0", + "tab_Press": "0", + "tab_Icon": "icon_set_sy", + "className": "com.jxw.launcher.user.fragment.BlankFragment", + "tab_Title": "", + "tab_Subtitle": "" + }, + { + "tab_Name": "应用列表", + "tab_Color": "#00A7FF", + "tab_Press": "bg_tag_grzx_jtct", + "tab_Icon": "icon_set_yylb", + "className": "com.jxw.launcher.user.fragment.AppListFragment", + "tab_Title": "应用列表", + "tab_Subtitle": "学习机中的学习应用" + }, + { + "tab_Name": "关于", + "tab_Color": "#A55AFF", + "tab_Press": "bg_tag_grzx_wtfk", + "tab_Icon": "icon_set_gy", + "className": "com.jxw.launcher.user.fragment.DeviceFragment", + "tab_Title": "关于", + "tab_Subtitle": "" + } + +] diff --git a/app/src/main/assets/script/subjectEntity.json b/app/src/main/assets/script/subjectEntity.json new file mode 100644 index 0000000..0313979 --- /dev/null +++ b/app/src/main/assets/script/subjectEntity.json @@ -0,0 +1,42 @@ +[ + { + "name": "1", + "name": "语文" + }, + { + "name": "2", + "name": "数学" + }, + { + "name": "3", + "name": "英语" + }, + { + "name": "4", + "name": "物理" + }, + { + "name": "5", + "name": "化学" + }, + { + "name": "6", + "name": "历史" + }, + { + "name": "7", + "name": "政治" + }, + { + "name": "8", + "name": "生物" + }, + { + "name": "9", + "name": "地理" + }, + { + "name": "10", + "name": "科学" + } +] diff --git a/app/src/main/assets/script/sw_apps.json b/app/src/main/assets/script/sw_apps.json new file mode 100644 index 0000000..df90814 --- /dev/null +++ b/app/src/main/assets/script/sw_apps.json @@ -0,0 +1,20 @@ +[ + { + "text": "生物会考考项", + "icon": "icon_sw_hkzx", + "tag": "tag_args_new_ztsp_hkswzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "生物实验室", + "icon": "icon_sw_swsys", + "tag": "tag_args_new_sys_sw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_sw_ykyl", + "tag": "tag_args_new_ykyl_sw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/sw_default_app.json b/app/src/main/assets/script/sw_default_app.json new file mode 100644 index 0000000..35bc37e --- /dev/null +++ b/app/src/main/assets/script/sw_default_app.json @@ -0,0 +1,14 @@ +[ + { + "text": "生物会考考项", + "icon": "icon_sw_hkzx", + "tag": "tag_args_new_ztsp_hkswzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "生物实验室", + "icon": "icon_sw_swsys", + "tag": "tag_args_new_sys_sw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/sx_apps.json b/app/src/main/assets/script/sx_apps.json new file mode 100644 index 0000000..ce0d850 --- /dev/null +++ b/app/src/main/assets/script/sx_apps.json @@ -0,0 +1,86 @@ +[ + { + "text": "口算大闯关", + "icon": "icon_sx_ksdcg", + "tag": "tag_args_new_ksdcg", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "算术围墙", + "icon": "icon_sx_sswq", + "tag": "tag_args_new_sswq", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "数独竞技场", + "icon": "icon_sx_sdjjc", + "tag": "tag_args_new_sdjjc", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "算术口诀", + "icon": "icon_sx_sskj", + "tag": "tag_args_new_sskj", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_sx_gsdq", + "tag": "tag_args_new_gsdq_sx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "应用题训练", + "icon": "icon_sx_yytxl", + "tag": "tag_args_new_yytxl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "超越奥数", + "icon": "icon_sx_cyas", + "tag": "tag_args_new_asxl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "几何图形", + "icon": "icon_sx_jhtx", + "tag": "tag_args_new_jhtx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "小升初专题", + "icon": "icon_sx_xsczt", + "tag": "tag_args_new_ztsp_xscsxzt_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "初中数学中考第一轮复习", + "icon": "icon_sx_czsxdylfx", + "tag": "tag_args_new_ztsp_zksxdylfx_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "初中数学中考第二轮复习", + "icon": "icon_sx_delfx", + "tag": "tag_args_new_ztsp_zksxdelfx_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "初中数学中考系统复习", + "icon": "icon_sx_xtfx", + "tag": "tag_args_new_ztsp_syds_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "高中数学高考专题题型技巧", + "icon": "icon_sx_txjq", + "tag": "tag_args_new_ztsp_gkztxtfxkc_gz", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_sx_ykyl", + "tag": "tag_args_new_ykyl_sx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/sx_default_app.json b/app/src/main/assets/script/sx_default_app.json new file mode 100644 index 0000000..eb01078 --- /dev/null +++ b/app/src/main/assets/script/sx_default_app.json @@ -0,0 +1,20 @@ +[ + { + "text": "口算大闯关", + "icon": "icon_sx_ksdcg", + "tag": "tag_args_new_ksdcg", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "算术围墙", + "icon": "icon_sx_sswq", + "tag": "tag_args_new_sswq", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "数独竞技场", + "icon": "icon_sx_sdjjc", + "tag": "tag_args_new_sdjjc", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/wl_apps.json b/app/src/main/assets/script/wl_apps.json new file mode 100644 index 0000000..e797485 --- /dev/null +++ b/app/src/main/assets/script/wl_apps.json @@ -0,0 +1,27 @@ +[ + { + "text": "物理中考专项", + "icon": "icon_wl_wlzkzx", + "tag": "tag_args_new_ztsp_zkwlzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_wl_gsdq", + "tag": "tag_args_new_gsdq_wl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "物理实验室", + "icon": "icon_wl_wlsys", + "tag": "tag_args_new_sys_wl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_wl_ykyl", + "tag": "tag_args_new_ykyl_wl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } + +] diff --git a/app/src/main/assets/script/wl_default_app.json b/app/src/main/assets/script/wl_default_app.json new file mode 100644 index 0000000..0140fcd --- /dev/null +++ b/app/src/main/assets/script/wl_default_app.json @@ -0,0 +1,15 @@ +[ + { + "text": "物理中考专项", + "icon": "icon_wl_wlzkzx", + "tag": "tag_args_new_ztsp_zkwlzt", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "公式大全", + "icon": "icon_wl_gsdq", + "tag": "tag_args_new_gsdq_wl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } + +] diff --git a/app/src/main/assets/script/yw_apps.json b/app/src/main/assets/script/yw_apps.json new file mode 100644 index 0000000..b9ecb13 --- /dev/null +++ b/app/src/main/assets/script/yw_apps.json @@ -0,0 +1,98 @@ +[ + { + "text": "趣学拼音", + "icon": "icon_yw_qxpy", + "tag": "tag_args_new_qxpy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "汉字基础", + "icon": "icon_yw_hzjc", + "tag": "tag_args_new_hzjc", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "汉字闯关", + "icon": "icon_yw_hzcg", + "tag": "tag_args_new_hzcg", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "字词大挑战", + "icon": "icon_yw_zcdtz", + "tag": "tag_args_new_zcdtz", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "同步古诗", + "icon": "icon_yw_tbgs", + "tag": "tag_args_new_tbgs", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "中华宝典", + "icon": "icon_yw_zhbd", + "tag": "tag_args_new_zhbd", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "作文专项", + "icon": "icon_yw_zwzx", + "tag": "tag_args_new_ztsp_xsczwzx_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "小升初考点专项", + "icon": "icon_yw_xsckdzx", + "tag": "tag_args_new_ztsp_xscywkdzx_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "文言文", + "icon": "icon_yw_scgw", + "tag": "tag_args_new_wyw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "中考语文考点专项", + "icon": "icon_yw_zkywkdzx", + "tag": "tag_args_new_ztsp_zkyykdzx_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "阅读与写作", + "icon": "icon_yw_ydyxz", + "tag": "tag_args_new_ztsp_ydxz_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级" + }, + { + "text": "阅读与写作", + "icon": "icon_yw_ydyxz", + "tag": "tag_args_new_ztsp_ydyxz_zx", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三" + }, + { + "text": "好词好句", + "icon": "icon_yw_hchj", + "tag": "tag_args_new_mrfx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "同步听力", + "icon": "icon_yw_tbtl", + "tag": "tag_args_new_tbtl_yw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_yw_ykyl", + "tag": "tag_args_new_ykyl_yw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "字词听写", + "icon": "icon_yw_zctx", + "tag": "tag_args_new_txrw_yw", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/yw_default_app.json b/app/src/main/assets/script/yw_default_app.json new file mode 100644 index 0000000..0c6ab9e --- /dev/null +++ b/app/src/main/assets/script/yw_default_app.json @@ -0,0 +1,20 @@ +[ + { + "text": "趣学拼音", + "icon": "icon_yw_qxpy", + "tag": "tag_args_new_qxpy", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三" + }, + { + "text": "汉字基础", + "icon": "icon_yw_hzjc", + "tag": "tag_args_new_hzjc", + "learnStage": "初中六年级,七年级,八年级" + }, + { + "text": "汉字闯关", + "icon": "icon_yw_hzcg", + "tag": "tag_args_new_hzcg", + "learnStage": "初中六年级,七年级,八年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/yy_apps.json b/app/src/main/assets/script/yy_apps.json new file mode 100644 index 0000000..ba8b644 --- /dev/null +++ b/app/src/main/assets/script/yy_apps.json @@ -0,0 +1,116 @@ +[ + { + "text": "ABC字母", + "icon": "icon_yy_abczm", + "tag": "tag_args_new_ztsp_yyabc_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "音标学习", + "icon": "icon_yy_ybxx", + "tag": "tag_args_new_ybxx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "情景对话", + "icon": "icon_yy_qjdh", + "tag": "tag_args_new_qjdh", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "自然拼读", + "icon": "icon_yy_zrpd", + "tag": "tag_args_new_ztsp_zrpt_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "拼读大闯关", + "icon": "icon_yy_psdcg", + "tag": "tag_args_new_ztsp_pddcg_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "单词天天练", + "icon": "icon_yy_dcttl", + "tag": "tag_args_new_dcttl", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "背单词", + "icon": "icon_yy_bdc", + "tag": "tag_args_new_bdc", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "分类词汇", + "icon": "icon_yy_flch", + "tag": "tag_args_new_flch", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "趣味配音", + "icon": "icon_yy_qwpy", + "tag": "tag_args_new_qwpy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "英语听说", + "icon": "icon_yy_yyts", + "tag": "tag_args_new_yyts", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "快乐学英语", + "icon": "icon_yy_klxyy", + "tag": "tag_args_new_klxyy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "连词成句", + "icon": "icon_yy_lccj", + "tag": "tag_args_new_lccj", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "写作大本营", + "icon": "icon_yy_xzdby", + "tag": "tag_args_new_ztsp_xzdby_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一生活一阅读", + "icon": "icon_yy_yd", + "tag": "tag_args_new_ztsp_yshyyd_xx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "语法大全", + "icon": "icon_yy_yfdq", + "tag": "tag_args_new_yyyf", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "写作大提升", + "icon": "icon_yy_ykyl", + "tag": "tag_args_new_ztsp_xzdts_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "单词大讲堂", + "icon": "icon_yy_dcdjt", + "tag": "tag_args_dcdjt_6", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "一课一练", + "icon": "icon_yy_ykyl", + "tag": "tag_args_new_ykyl_yy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "同步听力", + "icon": "icon_yy_tbtl", + "tag": "tag_args_new_tbtl_yy", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/assets/script/yy_default_app.json b/app/src/main/assets/script/yy_default_app.json new file mode 100644 index 0000000..696d229 --- /dev/null +++ b/app/src/main/assets/script/yy_default_app.json @@ -0,0 +1,20 @@ +[ + { + "text": "ABC字母", + "icon": "icon_yy_abczm", + "tag": "tag_args_new_ztsp_yyabc_zx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "音标学习", + "icon": "icon_yy_ybxx", + "tag": "tag_args_new_ybxx", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + }, + { + "text": "情景对话", + "icon": "icon_yy_qjdh", + "tag": "tag_args_new_qjdh", + "learnStage": "一年级,二年级,三年级,四年级,五年级,六年级,初中六年级,七年级,八年级,九年级,高一,高二,高三" + } +] diff --git a/app/src/main/java/com/handuan/os/activity/home/HomeActivity.java b/app/src/main/java/com/handuan/os/activity/home/HomeActivity.java new file mode 100644 index 0000000..75f302b --- /dev/null +++ b/app/src/main/java/com/handuan/os/activity/home/HomeActivity.java @@ -0,0 +1,549 @@ +package com.handuan.os.activity.home; + +import android.content.ActivityNotFoundException; +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.res.Configuration; +import android.os.Build; +import android.os.Bundle; +import android.provider.Settings; +import android.text.TextUtils; +import android.util.Log; +import android.view.KeyEvent; +import android.view.View; +import android.view.animation.Animation; +import android.view.animation.TranslateAnimation; +import android.widget.Toast; + +import androidx.annotation.NonNull; +import androidx.fragment.app.Fragment; +import androidx.fragment.app.FragmentManager; +import androidx.fragment.app.FragmentPagerAdapter; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.viewpager.widget.ViewPager; + +import com.handuan.os.BuildConfig; +import com.handuan.os.R; +import com.handuan.os.activity.permission.PermissionActivity; +import com.handuan.os.base.mvvm.BaseMvvmActivity; +import com.handuan.os.bean.jxw.TabBean; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.ActivityHomeBinding; +import com.handuan.os.dialog.PermissionsDialog; +import com.handuan.os.dialog.PrivacyPolicyDialog; +import com.handuan.os.fragment.ai.AiFragment; +import com.handuan.os.fragment.chinese.ChineseFragment; +import com.handuan.os.fragment.complex.ComplexFragment; +import com.handuan.os.fragment.english.EnglishFragment; +import com.handuan.os.fragment.math.MathFragment; +import com.handuan.os.fragment.mine.MineFragment; +import com.handuan.os.fragment.read.ReadFragment; +import com.handuan.os.fragment.safe.SafeFragment; +import com.handuan.os.jxw.TabAdapter; +import com.handuan.os.manager.RemoteManager; +import com.handuan.os.utils.LenovoCsdkUtil; +import com.handuan.os.utils.OpenApkUtils; +import com.handuan.os.utils.Utils; +import com.handuan.os.view.viewpager.BaseFragmentPagerAdapter; +import com.hjq.permissions.OnPermissionCallback; +import com.hjq.permissions.XXPermissions; +import com.hjq.toast.Toaster; +import com.tencent.mmkv.MMKV; + +import java.util.ArrayList; +import java.util.List; + +public class HomeActivity extends BaseMvvmActivity implements RemoteManager.ConnectedListener { + private static final String TAG = "MainActivity"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + + List tabBeanLists = new ArrayList(); + private List fragments = new ArrayList(); + + private String[] mAllTitle = new String[]{"我的", "AI+学习", "语文", "数学", "英语", "其他学科", "读书", "绿色安全",}; + + private MineFragment mMineFragment; + private AiFragment mAiFragment; + private ChineseFragment mChineseFragment; + private MathFragment mMathFragment; + private EnglishFragment mEnglishFragment; + private ComplexFragment mComplexFragment; + private ReadFragment mReadFragment; + private SafeFragment mSafeFragment; + + private FragmentManager mFragmentManager; + private BaseFragmentPagerAdapter mBaseFragmentPagerAdapter; + private ViewPager.OnPageChangeListener mListener; + private int defaultCurrent = 0; + + @Override + public void onRemoteConnected() { + Log.e(TAG, "onConnected: "); + mViewModel.getSystemSettings(); + setDefaultDesktop(); + } + + @Override + public int getLayoutId() { + return R.layout.activity_home; + } + + @Override + protected void initDataBinding() { + mViewModel.setCtx(this); + mViewModel.setVDBinding(mViewDataBinding); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + public void initView() { + Log.e(TAG, "initView: getSerial = " + LenovoCsdkUtil.getInstance().getSerial()); + + RemoteManager.setListener(this); + Utils.getAndroiodScreenProperty(this); + + if (Build.VERSION.SDK_INT >= 33) { + hideSystemUI(); + } + // 全屏展示 + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN) { + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { + // 全屏显示,隐藏状态栏和导航栏,拉出状态栏和导航栏显示一会儿后消失。 + getWindow().getDecorView().setSystemUiVisibility( + View.SYSTEM_UI_FLAG_LAYOUT_STABLE + | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION + | View.SYSTEM_UI_FLAG_FULLSCREEN + | View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY); + } else { + // 全屏显示,隐藏状态栏 + getWindow().getDecorView().setSystemUiVisibility(View.SYSTEM_UI_FLAG_FULLSCREEN); + } + } + + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this); + linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL); + mViewDataBinding.rlTab.setLayoutManager(linearLayoutManager); + TabAdapter tabAdapter = new TabAdapter(tabBeanLists); + tabAdapter.setOnItemClickListener(new TabAdapter.RadiaoOnItemClickListener() { + @Override + public void onSelectClick(int i) { + tabAdapter.setChoosePosition(i); + mViewDataBinding.subjectViewPager.setCurrentItem(i); + } + }); + mViewDataBinding.rlTab.setAdapter(tabAdapter); + + fragments.clear(); + tabBeanLists.clear(); + fragments.add(new MineFragment()); + fragments.add(new AiFragment()); + fragments.add(new ChineseFragment()); + fragments.add(new MathFragment()); + fragments.add(new EnglishFragment()); + fragments.add(new ComplexFragment()); + fragments.add(new ReadFragment()); +// if (Util.checkGrade(SPUtils.getGrade()).equals("小学")) { +// this.fragments.add(new SztzFragment()); +// } + fragments.add(new SafeFragment()); + tabBeanLists.add(new TabBean("我的", R.drawable.icon_tab_wd, R.drawable.icon_tab_wd_pre)); + tabBeanLists.add(new TabBean("AI+学习", R.drawable.icon_tab_aixx, R.drawable.icon_tab_aixx_pre)); + tabBeanLists.add(new TabBean("语文", R.drawable.icon_tab_yw, R.drawable.icon_tab_yw_pre)); + tabBeanLists.add(new TabBean("数学", R.drawable.icon_tab_sx, R.drawable.icon_tab_sx_pre)); + tabBeanLists.add(new TabBean("英语", R.drawable.icon_tab_yy, R.drawable.icon_tab_yy_pre)); + tabBeanLists.add(new TabBean("其他学科", R.drawable.icon_tab_qtxx, R.drawable.icon_tab_qtxx_pre)); + tabBeanLists.add(new TabBean("读书", R.drawable.icon_tab_ds, R.drawable.icon_tab_ds_pre)); +// if (Util.checkGrade(SPUtils.getGrade()).equals("小学")) { +// this.tabBeanLists.add(new TabBean("素养课", R.drawable.icon_tab_syk, R.drawable.icon_tab_syk_pre)); +// } + tabBeanLists.add(new TabBean("绿色安全", R.drawable.icon_tab_lsaq, R.drawable.icon_tab_lsaq_pre)); + tabAdapter.setData(this.tabBeanLists); + mViewDataBinding.subjectViewPager.setOffscreenPageLimit(5); + tabAdapter.setChoosePosition(0); + mViewDataBinding.subjectViewPager.setCurrentItem(0); + mViewDataBinding.subjectViewPager.setScrollAnim(true); + mViewDataBinding.subjectViewPager.setAdapter(new TabFragmentAdapter(getSupportFragmentManager())); + + mViewDataBinding.subjectViewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { + @Override + public void onPageScrollStateChanged(int i) { + + } + + @Override + public void onPageScrolled(int i, float f, int i2) { + + } + + @Override + public void onPageSelected(int i) { + tabAdapter.setChoosePosition(i); + mViewDataBinding.rlTab.scrollToPosition(i); + } + }); + + } + + @Override + public void initData() { + + } + + private void hideSystemUI() { + // Enables regular immersive mode. + // For "lean back" mode, remove SYSTEM_UI_FLAG_IMMERSIVE. + // Or for "sticky immersive," replace it with SYSTEM_UI_FLAG_IMMERSIVE_STICKY + View decorView = getWindow().getDecorView(); + decorView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_IMMERSIVE + // Set the content to appear under the system bars so that the + // content doesn't resize when the system bars hide and show. + | View.SYSTEM_UI_FLAG_LAYOUT_STABLE | View.SYSTEM_UI_FLAG_LAYOUT_HIDE_NAVIGATION +// | View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN + // Hide the nav bar and status bar + | View.SYSTEM_UI_FLAG_HIDE_NAVIGATION | View.SYSTEM_UI_FLAG_FULLSCREEN); + } + + private void setDefaultDesktop() { + boolean is_activation = RemoteManager.getInstance().getSnIsActivation(); + if (is_activation) { + RemoteManager.getInstance().setDefaultDesktop(BuildConfig.APPLICATION_ID); + } else { +// RemoteManager.getInstance().setDefaultDesktop(ApkUtils.ANDROID_LAUNCHER3_PACKAGE_NAME); + } + } + + + @Override + public void onWindowFocusChanged(boolean hasFocus) { + super.onWindowFocusChanged(hasFocus); + Log.e(TAG, "onWindowFocusChanged: hasFocus = " + hasFocus); + if (hasFocus) {//表示渲染结束 + + } + } + + @Override + public boolean onKeyDown(int keyCode, KeyEvent event) { + if (keyCode == KeyEvent.KEYCODE_BACK && event.getAction() == KeyEvent.ACTION_DOWN) { + return false; + } else if (KeyEvent.KEYCODE_HOME == keyCode) { + Log.e(TAG, "onKeyDown: keyCode = " + keyCode); + //写要执行的动作或者任务 + android.os.Process.killProcess(android.os.Process.myPid()); + } + return super.onKeyDown(keyCode, event); + } + + private long mPreClickTime; + + private void lazyExit() { + if (System.currentTimeMillis() - mPreClickTime > 3000) { + Toaster.showShort("再按一次,退出"); + mPreClickTime = System.currentTimeMillis(); + } else { + finish(); + } + } + + @Override + protected void onNewIntent(Intent intent) { + super.onNewIntent(intent); + Log.e(TAG, "onNewIntent: " + intent.getAction()); + String action = intent.getAction(); + if (TextUtils.isEmpty(action)) { + return; + } + switch (action) { + case Intent.ACTION_MAIN: +// mMainFragment.setCurrentItem(); +// mViewPager.setCurrentItem(defaultCurrent); + break; + default: + } + } + + @Override + public void onConfigurationChanged(@NonNull Configuration newConfig) { + super.onConfigurationChanged(newConfig); + Log.e(TAG, "onConfigurationChanged: "); + } + + @Override + protected void onStart() { + super.onStart(); + Log.e(TAG, "onStart: "); + } + + @Override + protected void onResume() { + super.onResume(); + Log.e(TAG, "onResume: "); + Log.e(TAG, "onResume: " + System.currentTimeMillis()); + int agree = mMMKV.decodeInt("AgreePrivacyPolicy", 0); + if (agree == 0) { + showPolicyDialog(); + } else { + if (checkPermission()) { + Log.e(TAG, "onResume: all permission granted"); + } else { +// startActivity(new Intent(MainActivity.this, PermissionActivity.class)); + getPermissions(); + } + } + setDefaultDesktop(); + } + + @Override + protected void onRestart() { + super.onRestart(); + Log.e(TAG, "onRestart: "); + mViewModel.sendAPPUsage(); + mViewModel.sendRunningInfo(); + } + + @Override + protected void onPause() { + super.onPause(); + Log.e(TAG, "onPause: "); + } + + @Override + protected void onStop() { + super.onStop(); + Log.e(TAG, "onStop: "); + } + + @Override + protected void onDestroy() { + super.onDestroy(); + + + RemoteManager.removeListener(this); + } + + @Override + protected void onSaveInstanceState(@NonNull Bundle outState) { +// super.onSaveInstanceState(outState); + Log.e(TAG, "onSaveInstanceState: "); + Log.e(TAG, "onSaveInstanceState: " + System.currentTimeMillis()); + } + + @Override + protected void onRestoreInstanceState(Bundle savedInstanceState) { + super.onRestoreInstanceState(savedInstanceState); + Log.e(TAG, "onRestoreInstanceState: "); + Log.e(TAG, "onRestoreInstanceState: " + System.currentTimeMillis()); + } + + private void hide(View view) { + TranslateAnimation mShowAction = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 1.0f); + mShowAction.setDuration(300); + view.startAnimation(mShowAction); + view.setVisibility(View.GONE); + } + + private void show(View view) { + TranslateAnimation mHiddenAction = new TranslateAnimation(Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 0.0f, Animation.RELATIVE_TO_SELF, 1.0f, Animation.RELATIVE_TO_SELF, 0.0f); + mHiddenAction.setDuration(300); + view.startAnimation(mHiddenAction); + view.setVisibility(View.VISIBLE); + } + + private PermissionsDialog mPermissionsDialog; + + public void getPermissions() { + Log.e(TAG, "getPermissions: "); + if (XXPermissions.isGranted(HomeActivity.this, PermissionActivity.PERMISSION_CHECK)) { + Log.e(TAG, "getPermissions: 获取录音权限成功"); + } else { + if (mPermissionsDialog != null) { + mPermissionsDialog.dismiss(); + mPermissionsDialog = null; + } + mPermissionsDialog = new PermissionsDialog(HomeActivity.this); + mPermissionsDialog.setPermissionsCallback(new PermissionsDialog.PermissionsCallback() { + @Override + public void onGranted() { + mPermissionsDialog.dismiss(); + XXPermissions.with(HomeActivity.this) + .permission(PermissionActivity.PERMISSION_CHECK) + .request(new OnPermissionCallback() { + @Override + public void onGranted(@NonNull List permissions, boolean allGranted) { + Log.e(TAG, "onGranted: permissions = " + permissions + " allGranted = " + allGranted); + if (!allGranted) { + Toast.makeText(HomeActivity.this, "存储权限未正常授予", Toast.LENGTH_SHORT).show(); + return; + } + Log.e(TAG, "onGranted: 获取存储权限成功"); + } + + @Override + public void onDenied(@NonNull List permissions, boolean doNotAskAgain) { + Log.e(TAG, "onDenied: permissions = " + permissions + " doNotAskAgain = " + doNotAskAgain); + if (doNotAskAgain) { + Toast.makeText(HomeActivity.this, "被永久拒绝授权,请手动授予存储权限", Toast.LENGTH_SHORT).show(); + // 如果是被永久拒绝就跳转到应用权限系统设置页面 + XXPermissions.startPermissionActivity(HomeActivity.this, permissions); + } else { + Log.e(TAG, "onGranted: 获取存储权限失败"); + } + } + }); + } + + @Override + public void onDenied() { + mPermissionsDialog.dismiss(); + } + }); + mPermissionsDialog.setContent("桌面需要获取存储权限保存作业,获取定位提供给小程序查看,请授予后使用"); + mPermissionsDialog.show(); + } + + } + + private boolean checkPermission() { + return XXPermissions.isGranted(this, PermissionActivity.PERMISSION_CHECK); + } + + + PrivacyPolicyDialog privacyPolicyDialog; + + private void showPolicyDialog() { + if (privacyPolicyDialog == null) { + privacyPolicyDialog = new PrivacyPolicyDialog(this); + privacyPolicyDialog.setCancelable(false); + privacyPolicyDialog.setPrivacyPolicyCallback(new PrivacyPolicyDialog.PrivacyPolicyCallback() { + @Override + public void onCancel() { + privacyPolicyDialog.dismiss(); + finish(); + } + + @Override + public void onConfirm() { + mMMKV.encode("AgreePrivacyPolicy", 1); + privacyPolicyDialog.dismiss(); + if (checkPermission()) { + Log.e(TAG, "onConfirm: all permission granted"); + } else { +// startActivity(new Intent(MainActivity.this, PermissionActivity.class)); + getPermissions(); + } + } + }); + privacyPolicyDialog.show(); + } + } + + + private static final String ENABLED_NOTIFICATION_LISTENERS = "enabled_notification_listeners"; + + private boolean isNotificationListenersEnabled() { + String pkgName = getPackageName(); + final String flat = Settings.Secure.getString(getContentResolver(), ENABLED_NOTIFICATION_LISTENERS); + if (!TextUtils.isEmpty(flat)) { + final String[] names = flat.split(":"); + for (int i = 0; i < names.length; i++) { + final ComponentName cn = ComponentName.unflattenFromString(names[i]); + if (cn != null) { + if (TextUtils.equals(pkgName, cn.getPackageName())) { + return true; + } + } + } + } + return false; + } + + public static boolean gotoNotificationAccessSetting(Context context) { + try { + Intent intent = new Intent("android.settings.ACTION_NOTIFICATION_LISTENER_SETTINGS"); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + context.startActivity(intent); + return true; + + } catch (ActivityNotFoundException e) {//普通情况下找不到的时候需要再特殊处理找一次 + try { + Intent intent = new Intent(); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + ComponentName cn = new ComponentName("com.android.settings", "com.android.settings.Settings$NotificationAccessSettingsActivity"); + intent.setComponent(cn); + intent.putExtra(":settings:show_fragment", "NotificationAccessSettings"); + context.startActivity(intent); + return true; + } catch (Exception e1) { + e1.printStackTrace(); + } + Toaster.show("对不起,您的手机暂不支持"); + e.printStackTrace(); + return false; + } + } + + + public void onClick(View view) { + Log.e(TAG, "onClick: " + view.getTag()); + OpenApkUtils.getInstance().openJxwApp((String) view.getTag()); +// MyApp.getInstance().mBottomBtnOnClickListener.setContext(this); +// MyApp.getInstance().mBottomBtnOnClickListener.onClick((String) view.getTag()); + + } + + public void onGoJzx(View view) { +// try { +// int parseInt = Integer.parseInt(view.getTag().toString().split("\\|")[0]); +// String str = view.getTag().toString().split("\\|")[1]; +// Util.downloadClickListener(this, StudyRecordAPKInfo.PACKAGE_SECOND_LINE_QA, "com.jxw.question.module.ui.activity.ProgramEntryActivity", "string:appoint_subject_name:" + str + "#int:page_navigate:" + parseInt + "#string:appoint_grade_name:" + SPUtils.getGrade() + "#string:appoint_period_name:" + Util.checkGrade(SPUtils.getGrade()), "Ai精准学"); +// } catch (Exception unused) { +// } + } + + public void onGoSjzx(View view) { +// try { +// int parseInt = Integer.parseInt(view.getTag().toString().split("\\|")[0]); +// String str = view.getTag().toString().split("\\|")[1]; +// Util.downloadClickListener(this, "com.jxw.sjzx", "com.jxw.sjzx.ui.activity.ExamPagerActivity", "string:subject:" + str + "#int:type:" + parseInt, "试卷中心"); +// } catch (Exception unused) { +// +// } + } + + + public class BtnClick { + public void exit(View view) { + lazyExit(); + } + + + } + + public class TabFragmentAdapter extends FragmentPagerAdapter { + public TabFragmentAdapter(FragmentManager fragmentManager) { + super(fragmentManager); + } + + @Override + public Fragment getItem(int i) { + return (Fragment) fragments.get(i); + } + + @Override + public int getCount() { + return fragments.size(); + } + + @Override + public long getItemId(int i) { + return fragments.get(i).hashCode(); + } + } + + +} diff --git a/app/src/main/java/com/handuan/os/activity/home/HomeViewModel.java b/app/src/main/java/com/handuan/os/activity/home/HomeViewModel.java new file mode 100644 index 0000000..243080f --- /dev/null +++ b/app/src/main/java/com/handuan/os/activity/home/HomeViewModel.java @@ -0,0 +1,233 @@ +package com.handuan.os.activity.home; + +import android.text.TextUtils; +import android.util.Log; + +import androidx.lifecycle.MutableLiveData; + +import com.google.gson.JsonObject; +import com.handuan.os.BuildConfig; +import com.handuan.os.R; +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.bean.AppUpdateInfo; +import com.handuan.os.bean.BaseResponse; +import com.handuan.os.bean.SnInfo; +import com.handuan.os.bean.SystemSettings; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.ActivityHomeBinding; +import com.handuan.os.network.NetInterfaceManager; +import com.handuan.os.utils.ActivationUtil; +import com.handuan.os.utils.ApkUtils; +import com.handuan.os.utils.AppUsedTimeUtils; +import com.handuan.os.utils.LenovoCsdkUtil; +import com.handuan.os.utils.Utils; +import com.hjq.toast.Toaster; +import com.tencent.mmkv.MMKV; +import com.trello.rxlifecycle4.RxLifecycle; +import com.trello.rxlifecycle4.android.ActivityEvent; + +import io.reactivex.rxjava3.android.schedulers.AndroidSchedulers; +import io.reactivex.rxjava3.annotations.NonNull; +import io.reactivex.rxjava3.core.Observer; +import io.reactivex.rxjava3.disposables.Disposable; +import io.reactivex.rxjava3.schedulers.Schedulers; + +public class HomeViewModel extends BaseViewModel { + private static final String TAG = "MainViewModel"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + + @Override + public ActivityHomeBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + + public MutableLiveData mGradleData = new MutableLiveData<>(); + + public void getSnInfo() { + NetInterfaceManager.getInstance().getSnInfoControl() + .compose(RxLifecycle.bindUntilEvent(getLifecycle(), ActivityEvent.DESTROY)) + .subscribe(new Observer>() { + @Override + public void onSubscribe(@NonNull Disposable d) { + Log.e("getSnInfo", "onSubscribe: "); + } + + @Override + public void onNext(@NonNull BaseResponse snInfoBaseResponse) { + Log.e("getSnInfo", "onNext: "); + if (snInfoBaseResponse.code == 200) { + SnInfo snInfo = snInfoBaseResponse.data; + String old = mMMKV.decodeString(CommonConfig.UIUI_USER_GRADE_KEY, getCtx().getString(R.string.default_grade)); + if (!old.equals(snInfo.getGrade())) { + mMMKV.encode(CommonConfig.UIUI_USER_GRADE_KEY, snInfo.getGrade()); + Toaster.showLong("桌面调整,正在重启"); + Utils.triggerRebirth(getCtx()); + } else { + Log.e("getSnInfo", "onNext: not changed"); + } + mGradleData.setValue(snInfo.getGrade()); + } + } + + @Override + public void onError(@NonNull Throwable e) { + Log.e("getSnInfo", "onError: " + e.getMessage()); + } + + @Override + public void onComplete() { + Log.e("getSnInfo", "onComplete: "); + } + }); + } + + + public MutableLiveData mSystemSettingsMutableLiveData = new MutableLiveData<>(); + + public void getSystemSettings() { + NetInterfaceManager.getInstance().getsettingControl() + .subscribe(new Observer>() { + @Override + public void onSubscribe(@NonNull Disposable d) { + Log.e("getSystemSettings", "onSubscribe: "); + } + + @Override + public void onNext(@NonNull BaseResponse systemSettingsBaseResponse) { + Log.e("getSystemSettings", "onNext: " + systemSettingsBaseResponse); + if (systemSettingsBaseResponse.code == 200) { + SystemSettings systemSettings = systemSettingsBaseResponse.data; + mSystemSettingsMutableLiveData.setValue(systemSettings); + } + } + + @Override + public void onError(@NonNull Throwable e) { + Log.e("getSystemSettings", "onError: " + e.getMessage()); + } + + @Override + public void onComplete() { + Log.e("getSystemSettings", "onComplete: "); + } + }); + } + + + public MutableLiveData mAppUpdateInfoData = new MutableLiveData<>(); + + public void checkUpdate() { + NetInterfaceManager.getInstance().getCheckUpdateObservable(BuildConfig.APPLICATION_ID) + .compose(RxLifecycle.bindUntilEvent(getLifecycle(), ActivityEvent.DESTROY)) + .subscribe(new Observer>() { + @Override + public void onSubscribe(@NonNull Disposable d) { + Log.e("checkUpdate", "onSubscribe: "); + } + + @Override + public void onNext(@NonNull BaseResponse appUpdateInfoBaseResponse) { + Log.e("checkUpdate", "onNext: " + appUpdateInfoBaseResponse); + if (appUpdateInfoBaseResponse.code == 200) { + AppUpdateInfo appUpdateInfo = appUpdateInfoBaseResponse.data; + mAppUpdateInfoData.setValue(appUpdateInfo); + } else { + mAppUpdateInfoData.setValue(null); + } + } + + @Override + public void onError(@NonNull Throwable e) { + Log.e("checkUpdate", "onError: "); + Toaster.show("网络连接失败"); + } + + @Override + public void onComplete() { + Log.e("checkUpdate", "onComplete: "); + } + }); + } + + @Deprecated + public void sendAPPUsage() { + boolean activation = ActivationUtil.getInstance().isActivation(); + if (!activation) { + return; + } + + AppUsedTimeUtils.getInstance().setEndTime(System.currentTimeMillis()); + String packagename = AppUsedTimeUtils.getInstance().getAppPackageName(); + if (BuildConfig.APPLICATION_ID.equals(packagename)) { + return; + } + Log.e(TAG, "onRestart packagename == " + packagename); + if (!TextUtils.isEmpty(packagename)) { + Log.e(TAG, "onRestart: " + ApkUtils.getAppNameByPackage(getCtx(), packagename)); + Log.e(TAG, "onRestart: " + packagename); + NetInterfaceManager.getInstance() + .getAppUsageRecordControl() + .sendappUsageRecord(LenovoCsdkUtil.getInstance().getSerial(), + ApkUtils.getAppNameByPackage(getCtx(), packagename), + packagename, + AppUsedTimeUtils.getInstance().getStartTime() / 1000, + AppUsedTimeUtils.getInstance().getEndTime() / 1000) + .subscribeOn(Schedulers.io()) + .observeOn(AndroidSchedulers.mainThread()) + .compose(RxLifecycle.bindUntilEvent(getLifecycle(), ActivityEvent.DESTROY)) + .subscribe(new Observer() { + @Override + public void onSubscribe(Disposable d) { + Log.e("sendAPPUsage", "onSubscribe: "); + } + + @Override + public void onNext(BaseResponse baseResponse) { + Log.e("sendAPPUsage", "onNext: " + baseResponse); + } + + @Override + public void onError(Throwable e) { + Log.e("sendAPPUsage", "onError: " + e.getMessage()); + onComplete(); + } + + @Override + public void onComplete() { + Log.e("sendAPPUsage", "onComplete: "); + } + }); + } else { + Log.e("sendAPPUsage", "app = null" + packagename); + } + } + + @Deprecated + public void sendRunningInfo() { + boolean activation = ActivationUtil.getInstance().isActivation(); + if (!activation) { + return; + } + AppUsedTimeUtils.getInstance().setAppPackageName(BuildConfig.APPLICATION_ID); + AppUsedTimeUtils.getInstance().setStartTime(System.currentTimeMillis()); + long time = AppUsedTimeUtils.getInstance().getStartTime(); + JsonObject jsonObject = new JsonObject(); + jsonObject.addProperty("app_package", BuildConfig.APPLICATION_ID); + jsonObject.addProperty("version_name", ApkUtils.getAPPVersionName(getCtx(), BuildConfig.APPLICATION_ID)); + jsonObject.addProperty("start_time", time / 1000); + String jsonString = jsonObject.toString(); + Log.e(TAG, "sendRunningInfo: " + jsonString); + AppUsedTimeUtils.getInstance().sendRunningApp(new AppUsedTimeUtils.RunningAppCallback() { + @Override + public void onComplete() { + Log.e("sendRunningInfo", "onComplete: "); + } + }); + } +} diff --git a/app/src/main/java/com/handuan/os/activity/main/MainActivity.java b/app/src/main/java/com/handuan/os/activity/main/MainActivity.java index cafc5da..922517e 100644 --- a/app/src/main/java/com/handuan/os/activity/main/MainActivity.java +++ b/app/src/main/java/com/handuan/os/activity/main/MainActivity.java @@ -24,12 +24,6 @@ import androidx.fragment.app.FragmentManager; import androidx.lifecycle.Observer; import androidx.viewpager.widget.ViewPager; -import com.handuan.os.fragment.app.AppFragment; -import com.hjq.permissions.OnPermissionCallback; -import com.hjq.permissions.Permission; -import com.hjq.permissions.XXPermissions; -import com.hjq.toast.Toaster; -import com.tencent.mmkv.MMKV; import com.handuan.os.BuildConfig; import com.handuan.os.R; import com.handuan.os.activity.permission.PermissionActivity; @@ -39,14 +33,15 @@ import com.handuan.os.config.CommonConfig; import com.handuan.os.databinding.ActivityMainBinding; import com.handuan.os.dialog.PermissionsDialog; import com.handuan.os.dialog.PrivacyPolicyDialog; -import com.handuan.os.fragment.biology.BiologyFragment; -import com.handuan.os.fragment.chemical.ChemicalFragment; +import com.handuan.os.fragment.ai.AiFragment; import com.handuan.os.fragment.chinese.ChineseFragment; import com.handuan.os.fragment.complex.ComplexFragment; import com.handuan.os.fragment.english.EnglishFragment; import com.handuan.os.fragment.math.MathFragment; -import com.handuan.os.fragment.physics.PhysicsFragment; -import com.handuan.os.fragment.precision.PrecisionFragment; +import com.handuan.os.fragment.mine.MineFragment; +import com.handuan.os.fragment.read.ReadFragment; +import com.handuan.os.fragment.safe.SafeFragment; +import com.handuan.os.fragment.user.UserFragment; import com.handuan.os.jxw.JxwPackageConfig; import com.handuan.os.manager.AmapManager; import com.handuan.os.manager.RemoteManager; @@ -56,6 +51,11 @@ import com.handuan.os.utils.LenovoCsdkUtil; import com.handuan.os.utils.OpenApkUtils; import com.handuan.os.utils.Utils; import com.handuan.os.view.viewpager.BaseFragmentPagerAdapter; +import com.hjq.permissions.OnPermissionCallback; +import com.hjq.permissions.Permission; +import com.hjq.permissions.XXPermissions; +import com.hjq.toast.Toaster; +import com.tencent.mmkv.MMKV; import java.util.ArrayList; import java.util.List; @@ -65,18 +65,16 @@ public class MainActivity extends BaseMvvmActivity mFragments; private FragmentManager mFragmentManager; @@ -150,25 +148,23 @@ public class MainActivity extends BaseMvvmActivity(); - mPrecisionFragment = new PrecisionFragment(); + mMineFragment = new MineFragment(); + mAiFragment = new AiFragment(); mChineseFragment = new ChineseFragment(); mMathFragment = new MathFragment(); mEnglishFragment = new EnglishFragment(); - mPhysicsFragment = new PhysicsFragment(); - mChemicalFragment = new ChemicalFragment(); - mBiologyFragment = new BiologyFragment(); mComplexFragment = new ComplexFragment(); - mAppFragment = new AppFragment(); + mReadFragment = new ReadFragment(); + mSafeFragment = new SafeFragment(); - mFragments.add(mPrecisionFragment); + mFragments.add(mMineFragment); + mFragments.add(mAiFragment); mFragments.add(mChineseFragment); mFragments.add(mMathFragment); mFragments.add(mEnglishFragment); - mFragments.add(mPhysicsFragment); - mFragments.add(mChemicalFragment); - mFragments.add(mBiologyFragment); mFragments.add(mComplexFragment); - mFragments.add(mAppFragment); + mFragments.add(mReadFragment); + mFragments.add(mSafeFragment); Log.e(TAG, "SubjectFragment: end = " + (System.currentTimeMillis() - time)); diff --git a/app/src/main/java/com/handuan/os/base/BaseApplication.java b/app/src/main/java/com/handuan/os/base/BaseApplication.java index c131c80..1812152 100644 --- a/app/src/main/java/com/handuan/os/base/BaseApplication.java +++ b/app/src/main/java/com/handuan/os/base/BaseApplication.java @@ -2,7 +2,6 @@ package com.handuan.os.base; import android.annotation.SuppressLint; import android.app.Application; -import android.content.Context; import android.content.Intent; import android.content.IntentFilter; import android.os.Handler; @@ -35,17 +34,18 @@ public class BaseApplication extends Application { * ViewModel中因为经常旋转导致弱引用为空 */ @SuppressLint("StaticFieldLeak") - private static Context context; + private static BaseApplication sInstance; - public static Context getContext() { - return context; + public static BaseApplication getInstance() { + return sInstance; } @Override public void onCreate() { super.onCreate(); Log.e(TAG, "onCreate: "); - context = getApplicationContext(); + sInstance = this; + if (!BuildConfig.DEBUG) { // catchException(); } @@ -60,7 +60,7 @@ public class BaseApplication extends Application { private void init() { Log.e(TAG, "init: "); - if (BuildConfig.DEBUG) { + if (!BuildConfig.DEBUG) { catchException(); } if (SystemUtils.isMainProcessName(this, android.os.Process.myPid())) { diff --git a/app/src/main/java/com/handuan/os/bean/jxw/ItemsBean.java b/app/src/main/java/com/handuan/os/bean/jxw/ItemsBean.java new file mode 100644 index 0000000..6be9c88 --- /dev/null +++ b/app/src/main/java/com/handuan/os/bean/jxw/ItemsBean.java @@ -0,0 +1,40 @@ +package com.handuan.os.bean.jxw; + +public class ItemsBean { + private String icon; + private String learnStage; + private String tag; + private String text; + + public String getText() { + return this.text; + } + + public void setText(String str) { + this.text = str; + } + + public String getIcon() { + return this.icon; + } + + public void setIcon(String str) { + this.icon = str; + } + + public String getTag() { + return this.tag; + } + + public void setTag(String str) { + this.tag = str; + } + + public String getLearnStage() { + return this.learnStage; + } + + public void setLearnStage(String str) { + this.learnStage = str; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/bean/jxw/TabBean.java b/app/src/main/java/com/handuan/os/bean/jxw/TabBean.java new file mode 100644 index 0000000..31c55c6 --- /dev/null +++ b/app/src/main/java/com/handuan/os/bean/jxw/TabBean.java @@ -0,0 +1,107 @@ +package com.handuan.os.bean.jxw; + +public class TabBean { + private String className; + private boolean select; + private int tab_Color; + private String tab_Name; + private int tab_Normal; + private int tab_Press; + private String tab_Title; + private int tab_icon; + private int tab_press_bg; + + public TabBean(String str, int i, int i2, int i3, String str2) { + this.tab_Name = str; + this.tab_icon = i; + this.tab_Color = i3; + this.tab_press_bg = i2; + this.className = str2; + } + + public TabBean(String str, int i, int i2) { + this.tab_Title = str; + this.tab_Normal = i; + this.tab_Press = i2; + } + + public int getTab_press_bg() { + return this.tab_press_bg; + } + + public void setTab_press_bg(int i) { + this.tab_press_bg = i; + } + + public String getTab_Name() { + return this.tab_Name; + } + + public void setTab_Name(String str) { + this.tab_Name = str; + } + + public int getTab_icon() { + return this.tab_icon; + } + + public void setTab_icon(int i) { + this.tab_icon = i; + } + + public int getTab_Color() { + return this.tab_Color; + } + + public void setTab_Color(int i) { + this.tab_Color = i; + } + + public String getClassName() { + return this.className; + } + + public void setClassName(String str) { + this.className = str; + } + + public TabBean(String str) { + this.tab_Title = str; + } + + public int getTab_Normal() { + return this.tab_Normal; + } + + public void setTab_Normal(int i) { + this.tab_Normal = i; + } + + public int getTab_Press() { + return this.tab_Press; + } + + public void setTab_Pressl(int i) { + this.tab_Press = i; + } + + public void setTab_Press(int i) { + this.tab_Press = i; + } + + public String getTab_Title() { + return this.tab_Title; + } + + public void setTab_Title(String str) { + this.tab_Title = str; + } + + public boolean isSelect() { + return this.select; + } + + public void setSelect(boolean z) { + this.select = z; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/bean/jxw/TaskBean.java b/app/src/main/java/com/handuan/os/bean/jxw/TaskBean.java new file mode 100644 index 0000000..4432930 --- /dev/null +++ b/app/src/main/java/com/handuan/os/bean/jxw/TaskBean.java @@ -0,0 +1,131 @@ +package com.handuan.os.bean.jxw; + +public class TaskBean { + private String className; + private String createTime; + private String deviceId; + private String experience; + + private String id; + private String moduleName; + private String packageName; + private String state; + private String taskDetail; + private String taskId; + private String taskName; + private String taskType; + private String type; + private String updateTime; + + public String getTaskType() { + return this.taskType; + } + + public void setTaskType(String str) { + this.taskType = str; + } + + public String getPackageName() { + return this.packageName; + } + + public void setPackageName(String str) { + this.packageName = str; + } + + public String getClassName() { + return this.className; + } + + public void setClassName(String str) { + this.className = str; + } + + public String getTaskDetail() { + return this.taskDetail; + } + + public void setTaskDetail(String str) { + this.taskDetail = str; + } + + public String getId() { + return this.id; + } + + public void setId(String str) { + this.id = str; + } + + public String getDeviceId() { + return this.deviceId; + } + + public void setDeviceId(String str) { + this.deviceId = str; + } + + public String getTaskId() { + return this.taskId; + } + + public void setTaskId(String str) { + this.taskId = str; + } + + public String getTaskName() { + return this.taskName; + } + + public void setTaskName(String str) { + this.taskName = str; + } + + public String getModuleName() { + return this.moduleName; + } + + public void setModuleName(String str) { + this.moduleName = str; + } + + public String getExperience() { + return this.experience; + } + + public void setExperience(String str) { + this.experience = str; + } + + public String getState() { + return this.state; + } + + public void setState(String str) { + this.state = str; + } + + public String getType() { + return this.type; + } + + public void setType(String str) { + this.type = str; + } + + public String getCreateTime() { + return this.createTime; + } + + public void setCreateTime(String str) { + this.createTime = str; + } + + public String getUpdateTime() { + return this.updateTime; + } + + public void setUpdateTime(String str) { + this.updateTime = str; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/fragment/ai/AiFragment.java b/app/src/main/java/com/handuan/os/fragment/ai/AiFragment.java new file mode 100644 index 0000000..8a71c33 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/ai/AiFragment.java @@ -0,0 +1,211 @@ +package com.handuan.os.fragment.ai; + +import android.os.Bundle; +import android.util.Log; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.RelativeLayout; + +import androidx.fragment.app.Fragment; +import androidx.recyclerview.widget.RecyclerView; + +import com.handuan.os.R; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.FragmentAiBinding; +import com.tencent.mmkv.MMKV; +import com.youth.banner.adapter.BannerAdapter; +import com.youth.banner.listener.OnBannerListener; +import com.youth.banner.transformer.ZoomOutPageTransformer; + +import java.util.ArrayList; +import java.util.List; + +/** + * A simple {@link Fragment} subclass. + * Use the {@link AiFragment#newInstance} factory method to + * create an instance of this fragment. + */ +public class AiFragment extends BaseMvvmFragment { + private static final String TAG = "PrecisionFragment"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + + // TODO: Rename parameter arguments, choose names that match + // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER + private static final String ARG_PARAM1 = "param1"; + private static final String ARG_PARAM2 = "param2"; + + // TODO: Rename and change types of parameters + private String mParam1; + private String mParam2; + + public AiFragment() { + // Required empty public constructor + } + + /** + * Use this factory method to create a new instance of + * this fragment using the provided parameters. + * + * @param param1 Parameter 1. + * @param param2 Parameter 2. + * @return A new instance of fragment PrecisionFragment. + */ + // TODO: Rename and change types and number of parameters + public static AiFragment newInstance(String param1, String param2) { + AiFragment fragment = new AiFragment(); + Bundle args = new Bundle(); + args.putString(ARG_PARAM1, param1); + args.putString(ARG_PARAM2, param2); + fragment.setArguments(args); + return fragment; + } + + @Override + protected int getLayoutId() { + return R.layout.fragment_ai; + } + + @Override + protected void initDataBinding() { + mViewModel.setCtx(getCtx()); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + protected void initView(Bundle bundle) { + if (getArguments() != null) { + mParam1 = getArguments().getString(ARG_PARAM1); + mParam2 = getArguments().getString(ARG_PARAM2); + } + + mViewDataBinding.banner.setOnBannerListener(new OnBannerListener() { + @Override + public void OnBannerClick(String s, int i) { + if (i == 2) { +// Util.downloadClickListener(getActivity(), "com.jxw.aikyls", "com.jxw.aiteacher.ui.SplashActivity", null, "ai口语老师"); + } else if (i == 3) { +// Util.downloadClickListener(getActivity(), "com.jxw.aixhb", "com.jxw.aixhb.mvi.ui.activity.MainActivity", null, "AI小伙伴"); + } + } + }); + + List arrayList = new ArrayList<>(); + arrayList.add("1"); + arrayList.add("1"); + arrayList.add("1"); + arrayList.add("1"); + mViewDataBinding.banner.addBannerLifecycleObserver(this) + .setAdapter(new BannerExampleAdapter(arrayList)) + .setIndicator(mViewDataBinding.indicator, false) +// .setIndicatorNormalColor(1890693553) +// .setIndicatorSelectedColor(-1) + .setIndicatorNormalColor(getCtx().getColor(R.color.indicator_normal_color)) + .setIndicatorSelectedColor(getCtx().getColor(R.color.indicator_selected_color)) + .setIndicatorHeight((int) getResources().getDimension(R.dimen.x16)) + .setIndicatorSpace((int) getResources().getDimension(R.dimen.x30)) + .setPageTransformer(new ZoomOutPageTransformer()) + .isAutoLoop(false) + .setBannerGalleryEffect((int) getResources().getDimension(R.dimen.x30), (int) getResources().getDimension(R.dimen.x30)); + } + + @Override + protected void initData(Bundle savedInstanceState) { + + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + } + + @Override + public void fetchData() { + + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + } + + @Override + public void setUserVisibleHint(boolean isVisibleToUser) { + super.setUserVisibleHint(isVisibleToUser); + Log.e(TAG, "setUserVisibleHint: isVisibleToUser = " + isVisibleToUser); + + } + + + public class BtnClick { + public void openPrecisionHome(View view) { + + } + } + + public class BannerExampleAdapter extends BannerAdapter { + + public BannerExampleAdapter(List list) { + super(list); + } + + @Override + public ImageTitleHolder onCreateHolder(ViewGroup viewGroup, int i) { + return new ImageTitleHolder(LayoutInflater.from(viewGroup.getContext()).inflate(R.layout.item_banner, viewGroup, false)); + } + + @Override + public void onBindView(ImageTitleHolder imageTitleHolder, String str, int i, int i2) { + imageTitleHolder.fdzy.setVisibility(View.GONE); + imageTitleHolder.pgkst.setVisibility(View.GONE); + imageTitleHolder.pgzy.setVisibility(View.GONE); + imageTitleHolder.ykyl.setVisibility(View.GONE); + imageTitleHolder.aijzx.setVisibility(View.GONE); + imageTitleHolder.pzst.setVisibility(View.GONE); + if (i == 0) { + imageTitleHolder.rl_root.setBackgroundResource(R.drawable.icon_ai_aijt); + imageTitleHolder.ykyl.setVisibility(View.VISIBLE); + imageTitleHolder.aijzx.setVisibility(View.VISIBLE); + imageTitleHolder.pzst.setVisibility(View.VISIBLE); + } else if (i == 1) { + imageTitleHolder.rl_root.setBackgroundResource(R.drawable.icon_ai_aijtjs); + imageTitleHolder.fdzy.setVisibility(View.VISIBLE); + imageTitleHolder.pgkst.setVisibility(View.VISIBLE); + imageTitleHolder.pgzy.setVisibility(View.VISIBLE); + } else if (i == 2) { + imageTitleHolder.rl_root.setBackgroundResource(R.drawable.icon_ai_kyls); + } else { + imageTitleHolder.rl_root.setBackgroundResource(R.drawable.icon_ai_aixhb); + } + } + + public class ImageTitleHolder extends RecyclerView.ViewHolder { + public ImageView aijzx; + public ImageView fdzy; + public ImageView pgkst; + public ImageView pgzy; + public ImageView pzst; + public RelativeLayout rl_root; + public ImageView ykyl; + + public ImageTitleHolder(View view) { + super(view); + this.rl_root = view.findViewById(R.id.rl_root); + this.fdzy = view.findViewById(R.id.fdzy); + this.pgkst = view.findViewById(R.id.pgkst); + this.pgzy = view.findViewById(R.id.pgzy); + this.ykyl = view.findViewById(R.id.ykyl); + this.aijzx = view.findViewById(R.id.aijzx); + this.pzst = view.findViewById(R.id.pzst); + } + } + + } + +} diff --git a/app/src/main/java/com/handuan/os/fragment/ai/AiViewModel.java b/app/src/main/java/com/handuan/os/fragment/ai/AiViewModel.java new file mode 100644 index 0000000..52c2624 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/ai/AiViewModel.java @@ -0,0 +1,20 @@ +package com.handuan.os.fragment.ai; + +import androidx.lifecycle.MutableLiveData; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentAiBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class AiViewModel extends BaseViewModel { + @Override + public FragmentAiBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + +} diff --git a/app/src/main/java/com/handuan/os/fragment/chinese/ChineseFragment.java b/app/src/main/java/com/handuan/os/fragment/chinese/ChineseFragment.java index 793d5e9..422a10b 100644 --- a/app/src/main/java/com/handuan/os/fragment/chinese/ChineseFragment.java +++ b/app/src/main/java/com/handuan/os/fragment/chinese/ChineseFragment.java @@ -1,12 +1,7 @@ package com.handuan.os.fragment.chinese; import android.app.Activity; -import android.content.BroadcastReceiver; -import android.content.Context; -import android.content.Intent; -import android.content.IntentFilter; import android.content.res.Configuration; -import android.os.BatteryManager; import android.os.Bundle; import android.util.Log; import android.view.View; @@ -18,12 +13,7 @@ import com.blankj.utilcode.util.NetworkUtils; import com.handuan.os.R; import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; import com.handuan.os.databinding.FragmentChineseBinding; -import com.handuan.os.dialog.ChineseDialog; -import com.handuan.os.dialog.FoundationDialog; -import com.handuan.os.jxw.JxwPackageConfig; import com.handuan.os.manager.AmapManager; -import com.handuan.os.utils.OpenApkUtils; -import com.handuan.os.utils.Utils; /** * A simple {@link Fragment} subclass. @@ -99,142 +89,43 @@ public class ChineseFragment extends BaseMvvmFragment { +public class ComplexFragment extends BaseMvvmFragment { private static final String TAG = "ComplexFragment"; private Activity mContext; + private MyAdapter adapter; + private TabTbxAdapter tabTbxAdapter; + private List tabBeanList = new ArrayList(); + private List mFragment = new ArrayList(); + + // TODO: Rename parameter arguments, choose names that match // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER private static final String ARG_PARAM1 = "param1"; @@ -74,70 +95,62 @@ public class ComplexFragment extends BaseDataBindingFragment getLearnStage() { + String grade = "一年级"; + String jsonString = AssertUtils.getFromAssets(mContext, "script/fragment_tbx.json"); + Type type = new TypeToken>() { + }.getType(); + List arrayList = new Gson().fromJson(jsonString, type); + List resultList = new ArrayList<>(); + for (LearnStageBean learnStageBean : arrayList) { + if ("六年级".equals(grade)) { + String learnStage = learnStageBean.getLearnStage(); + if (learnStage.contains("," + grade)) { + resultList.add(learnStageBean); + } + } else if (learnStageBean.getLearnStage().contains(grade)) { + resultList.add(learnStageBean); + } + } + return arrayList; + } + + + public class MyAdapter extends FragmentPagerAdapter { + public MyAdapter(FragmentManager fragmentManager) { + super(fragmentManager); + } + + @Override + public Fragment getItem(int i) { + return mFragment.get(i); + } + + @Override + public int getCount() { + return mFragment.size(); + } + + @Override + public long getItemId(int i) { + return (mFragment.get(i)).hashCode(); + } + } + + public class TabTbxAdapter extends BaseQuickAdapter { + private int defSel; + + public void setChoosePosition(int i) { + int i2 = defSel; + if (i2 == i) { + return; + } + if (i2 != -1) { + getData().get(defSel).setSelect(false); + notifyItemChanged(defSel); + } + defSel = i; + if (defSel != -1) { + getData().get(defSel).setSelect(true); + notifyItemChanged(defSel); + } + } + + public TabTbxAdapter(List list) { + super(R.layout.item_tab_1, list); + defSel = -1; + } + + @Override + public void convert(final BaseViewHolder baseViewHolder, TabBean tabBean) { + RelativeLayout relativeLayout = baseViewHolder.getView(R.id.rl_root); + TextView textView = baseViewHolder.getView(R.id.iv_tab_title); + if (tabBean.isSelect()) { + relativeLayout.setBackgroundResource(R.drawable.icon_xk_tab_bg_pre); + textView.setTextSize(getResources().getDimension(R.dimen.x12)); + textView.setTextColor(-1); + } else { + relativeLayout.setBackground(null); + textView.setTextSize(getResources().getDimension(R.dimen.x10)); + textView.setTextColor(1627389951); + } + textView.setText(tabBean.getTab_Title()); + baseViewHolder.itemView.setOnClickListener(new View.OnClickListener() { + + @Override + public void onClick(View view) { + setChoosePosition(baseViewHolder.getAdapterPosition()); + mViewDataBinding.subjectViewPager.setCurrentItem(baseViewHolder.getAdapterPosition()); + } + }); + } + } + } diff --git a/app/src/main/java/com/handuan/os/fragment/complex/ComplexViewModel.java b/app/src/main/java/com/handuan/os/fragment/complex/ComplexViewModel.java new file mode 100644 index 0000000..6e35133 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/complex/ComplexViewModel.java @@ -0,0 +1,18 @@ +package com.handuan.os.fragment.complex; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentComplexBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class ComplexViewModel extends BaseViewModel { + + @Override + public FragmentComplexBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/english/EnglishFragment.java b/app/src/main/java/com/handuan/os/fragment/english/EnglishFragment.java index 6d92b69..f00fe77 100644 --- a/app/src/main/java/com/handuan/os/fragment/english/EnglishFragment.java +++ b/app/src/main/java/com/handuan/os/fragment/english/EnglishFragment.java @@ -8,18 +8,15 @@ import android.view.View; import androidx.fragment.app.Fragment; import com.handuan.os.R; -import com.handuan.os.base.BaseDataBindingFragment; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; import com.handuan.os.databinding.FragmentEnglishBinding; -import com.handuan.os.dialog.EnglishBasicsDialog; -import com.handuan.os.jxw.JxwPackageConfig; -import com.handuan.os.utils.OpenApkUtils; /** * A simple {@link Fragment} subclass. * Use the {@link EnglishFragment#newInstance} factory method to * create an instance of this fragment. */ -public class EnglishFragment extends BaseDataBindingFragment { +public class EnglishFragment extends BaseMvvmFragment { private static final String TAG = "EnglishFragment"; private Activity mContext; @@ -74,100 +71,45 @@ public class EnglishFragment extends BaseDataBindingFragment { + + @Override + public FragmentEnglishBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/math/MathFragment.java b/app/src/main/java/com/handuan/os/fragment/math/MathFragment.java index e0f73a7..75102ee 100644 --- a/app/src/main/java/com/handuan/os/fragment/math/MathFragment.java +++ b/app/src/main/java/com/handuan/os/fragment/math/MathFragment.java @@ -8,17 +8,15 @@ import android.view.View; import androidx.fragment.app.Fragment; import com.handuan.os.R; -import com.handuan.os.base.BaseDataBindingFragment; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; import com.handuan.os.databinding.FragmentMathBinding; -import com.handuan.os.jxw.JxwPackageConfig; -import com.handuan.os.utils.OpenApkUtils; /** * A simple {@link Fragment} subclass. * Use the {@link MathFragment#newInstance} factory method to * create an instance of this fragment. */ -public class MathFragment extends BaseDataBindingFragment { +public class MathFragment extends BaseMvvmFragment { private static final String TAG = "MathFragment"; private Activity mContext; @@ -74,83 +72,45 @@ public class MathFragment extends BaseDataBindingFragment { @Override protected void initDataBinding() { mContext = getActivity(); + mViewModel.setCtx(getCtx()); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); +// mViewDataBinding.setClick(new BtnClick()); } @Override protected void initView(Bundle bundle) { - mViewDataBinding.ivSyncVideo.setOnClickListener(new View.OnClickListener() { + mViewDataBinding.llTabTbjzx.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - OpenApkUtils.getInstance().openSyncVideo("同步视频|数学"); + hide(); + mViewDataBinding.llTbjzx.setVisibility(View.VISIBLE); + mViewDataBinding.llZjx.setBackgroundResource(R.drawable.icon_yw_zjx_l); + mViewDataBinding.tvTabTbjzx.setVisibility(View.GONE); + mViewDataBinding.ivTabTbjzx.setVisibility(View.VISIBLE); } }); - mViewDataBinding.clTutoring.setOnClickListener(new View.OnClickListener() { + mViewDataBinding.llTabDyfx.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - OpenApkUtils.getInstance().openSynchronousTutoring("d:/同步学习/数学|e:JWFD"); - + hide(); + mViewDataBinding.llDyfx.setVisibility(View.VISIBLE); + mViewDataBinding.llZjx.setBackgroundResource(R.drawable.icon_yw_zjx_c); + mViewDataBinding.tvTabDyfx.setVisibility(View.GONE); + mViewDataBinding.ivTabDyfx.setVisibility(View.VISIBLE); } }); - mViewDataBinding.clNearAntonyms.setOnClickListener(new View.OnClickListener() { + mViewDataBinding.llTabJdbk.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/小学应用题训练.JXW"); - } - }); - mViewDataBinding.clComposition.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/小学奥数训练.JXW"); - } - }); - mViewDataBinding.clRead.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/中学方程精解.JXW"); - } - }); - mViewDataBinding.clCharacter.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/小学趣味数学.JXW"); - } - }); - mViewDataBinding.clClassical.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openAppWithoutArgs(JxwPackageConfig.JXW_ARITHMETIC_PACKAGE_NAME, JxwPackageConfig.JXW_ARITHMETIC_CLASS_NAME); + hide(); + mViewDataBinding.rlJdbk.setVisibility(View.VISIBLE); + mViewDataBinding.llZjx.setBackgroundResource(R.drawable.icon_yw_zjx_r); + mViewDataBinding.tvTabJdbk.setVisibility(View.GONE); + mViewDataBinding.ivTabJdbk.setVisibility(View.VISIBLE); } }); - mViewDataBinding.clEncyclopedia.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/中学公式大全.JXW"); - } - }); - mViewDataBinding.clNumber.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openAppWithoutArgs(JxwPackageConfig.JXW_KNOW_MATHEMATICS_PACKAGE_NAME, JxwPackageConfig.JXW_KNOW_MATHEMATICS_CLASS_NAME); - } - }); - mViewDataBinding.clFormula.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - OpenApkUtils.getInstance().openSolidifiedData("f:/ansystem/固化数据/小学数学公式.JXW"); - } - }); - - mViewDataBinding.ivPrecisionLearning.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View view) { - if (OpenApkUtils.getInstance().isNewAiApp()) { - OpenApkUtils.getInstance().openAiPrecision(0, "数学"); - } else { - OpenApkUtils.getInstance().openPrecision("2"); - } - } - }); } @Override @@ -168,4 +128,17 @@ public class MathFragment extends BaseDataBindingFragment { super.onDestroyView(); } + public void hide() { + mViewDataBinding.llTbjzx.setVisibility(View.GONE); + mViewDataBinding.llDyfx.setVisibility(View.GONE); + mViewDataBinding.rlJdbk.setVisibility(View.GONE); + mViewDataBinding.tvTabTbjzx.setVisibility(View.VISIBLE); + mViewDataBinding.tvTabDyfx.setVisibility(View.VISIBLE); + mViewDataBinding.tvTabJdbk.setVisibility(View.VISIBLE); + mViewDataBinding.ivTabTbjzx.setVisibility(View.INVISIBLE); + mViewDataBinding.ivTabDyfx.setVisibility(View.INVISIBLE); + mViewDataBinding.ivTabJdbk.setVisibility(View.INVISIBLE); + } + + } diff --git a/app/src/main/java/com/handuan/os/fragment/math/MathViewModel.java b/app/src/main/java/com/handuan/os/fragment/math/MathViewModel.java new file mode 100644 index 0000000..029d859 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/math/MathViewModel.java @@ -0,0 +1,18 @@ +package com.handuan.os.fragment.math; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentMathBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class MathViewModel extends BaseViewModel { + + @Override + public FragmentMathBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/mine/MineFragment.java b/app/src/main/java/com/handuan/os/fragment/mine/MineFragment.java new file mode 100644 index 0000000..46be3c4 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/mine/MineFragment.java @@ -0,0 +1,117 @@ +package com.handuan.os.fragment.mine; + +import android.app.Activity; +import android.os.Bundle; +import android.util.Log; +import android.view.View; + +import androidx.fragment.app.Fragment; + +import com.handuan.os.R; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.FragmentAiBinding; +import com.handuan.os.databinding.FragmentMineBinding; +import com.tencent.mmkv.MMKV; + +/** + * A simple {@link Fragment} subclass. + * Use the {@link MineFragment#newInstance} factory method to + * create an instance of this fragment. + */ +public class MineFragment extends BaseMvvmFragment { + private static final String TAG = "PrecisionFragment"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + private Activity mContext; + + // TODO: Rename parameter arguments, choose names that match + // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER + private static final String ARG_PARAM1 = "param1"; + private static final String ARG_PARAM2 = "param2"; + + // TODO: Rename and change types of parameters + private String mParam1; + private String mParam2; + + public MineFragment() { + // Required empty public constructor + } + + /** + * Use this factory method to create a new instance of + * this fragment using the provided parameters. + * + * @param param1 Parameter 1. + * @param param2 Parameter 2. + * @return A new instance of fragment PrecisionFragment. + */ + // TODO: Rename and change types and number of parameters + public static MineFragment newInstance(String param1, String param2) { + MineFragment fragment = new MineFragment(); + Bundle args = new Bundle(); + args.putString(ARG_PARAM1, param1); + args.putString(ARG_PARAM2, param2); + fragment.setArguments(args); + return fragment; + } + + @Override + protected int getLayoutId() { + return R.layout.fragment_mine; + } + + @Override + protected void initDataBinding() { + mContext = getActivity(); + mViewModel.setCtx(getCtx()); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + protected void initView(Bundle bundle) { + if (getArguments() != null) { + mParam1 = getArguments().getString(ARG_PARAM1); + mParam2 = getArguments().getString(ARG_PARAM2); + } + + } + + @Override + protected void initData(Bundle savedInstanceState) { + + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + } + + @Override + public void fetchData() { + + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + } + + @Override + public void setUserVisibleHint(boolean isVisibleToUser) { + super.setUserVisibleHint(isVisibleToUser); + Log.e(TAG, "setUserVisibleHint: isVisibleToUser = " + isVisibleToUser); + + } + + + + public class BtnClick { + public void openPrecisionHome(View view) { + + } + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/mine/MineViewModel.java b/app/src/main/java/com/handuan/os/fragment/mine/MineViewModel.java new file mode 100644 index 0000000..4f2d45f --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/mine/MineViewModel.java @@ -0,0 +1,18 @@ +package com.handuan.os.fragment.mine; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentMineBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class MineViewModel extends BaseViewModel { + @Override + public FragmentMineBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + +} diff --git a/app/src/main/java/com/handuan/os/fragment/read/ReadFragment.java b/app/src/main/java/com/handuan/os/fragment/read/ReadFragment.java new file mode 100644 index 0000000..e457584 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/read/ReadFragment.java @@ -0,0 +1,114 @@ +package com.handuan.os.fragment.read; + +import android.os.Bundle; +import android.util.Log; +import android.view.View; + +import androidx.fragment.app.Fragment; + +import com.handuan.os.R; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.FragmentAiBinding; +import com.handuan.os.databinding.FragmentReadBinding; +import com.tencent.mmkv.MMKV; + +/** + * A simple {@link Fragment} subclass. + * Use the {@link ReadFragment#newInstance} factory method to + * create an instance of this fragment. + */ +public class ReadFragment extends BaseMvvmFragment { + private static final String TAG = "PrecisionFragment"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + + // TODO: Rename parameter arguments, choose names that match + // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER + private static final String ARG_PARAM1 = "param1"; + private static final String ARG_PARAM2 = "param2"; + + // TODO: Rename and change types of parameters + private String mParam1; + private String mParam2; + + public ReadFragment() { + // Required empty public constructor + } + + /** + * Use this factory method to create a new instance of + * this fragment using the provided parameters. + * + * @param param1 Parameter 1. + * @param param2 Parameter 2. + * @return A new instance of fragment PrecisionFragment. + */ + // TODO: Rename and change types and number of parameters + public static ReadFragment newInstance(String param1, String param2) { + ReadFragment fragment = new ReadFragment(); + Bundle args = new Bundle(); + args.putString(ARG_PARAM1, param1); + args.putString(ARG_PARAM2, param2); + fragment.setArguments(args); + return fragment; + } + + @Override + protected int getLayoutId() { + return R.layout.fragment_read; + } + + @Override + protected void initDataBinding() { + mViewModel.setCtx(getCtx()); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + protected void initView(Bundle bundle) { + if (getArguments() != null) { + mParam1 = getArguments().getString(ARG_PARAM1); + mParam2 = getArguments().getString(ARG_PARAM2); + } + + } + + @Override + protected void initData(Bundle savedInstanceState) { + + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + } + + @Override + public void fetchData() { + + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + } + + @Override + public void setUserVisibleHint(boolean isVisibleToUser) { + super.setUserVisibleHint(isVisibleToUser); + Log.e(TAG, "setUserVisibleHint: isVisibleToUser = " + isVisibleToUser); + + } + + + + public class BtnClick { + public void openPrecisionHome(View view) { + + } + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/read/ReadViewModel.java b/app/src/main/java/com/handuan/os/fragment/read/ReadViewModel.java new file mode 100644 index 0000000..b2e7228 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/read/ReadViewModel.java @@ -0,0 +1,18 @@ +package com.handuan.os.fragment.read; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentReadBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class ReadViewModel extends BaseViewModel { + @Override + public FragmentReadBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + +} diff --git a/app/src/main/java/com/handuan/os/fragment/safe/SafeFragment.java b/app/src/main/java/com/handuan/os/fragment/safe/SafeFragment.java new file mode 100644 index 0000000..8073ec2 --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/safe/SafeFragment.java @@ -0,0 +1,114 @@ +package com.handuan.os.fragment.safe; + +import android.os.Bundle; +import android.util.Log; +import android.view.View; + +import androidx.fragment.app.Fragment; + +import com.handuan.os.R; +import com.handuan.os.base.mvvm.fragment.BaseMvvmFragment; +import com.handuan.os.config.CommonConfig; +import com.handuan.os.databinding.FragmentAiBinding; +import com.handuan.os.databinding.FragmentSafeBinding; +import com.tencent.mmkv.MMKV; + +/** + * A simple {@link Fragment} subclass. + * Use the {@link SafeFragment#newInstance} factory method to + * create an instance of this fragment. + */ +public class SafeFragment extends BaseMvvmFragment { + private static final String TAG = "PrecisionFragment"; + + private MMKV mMMKV = MMKV.mmkvWithID(CommonConfig.MMKV_ID, MMKV.MULTI_PROCESS_MODE); + + // TODO: Rename parameter arguments, choose names that match + // the fragment initialization parameters, e.g. ARG_ITEM_NUMBER + private static final String ARG_PARAM1 = "param1"; + private static final String ARG_PARAM2 = "param2"; + + // TODO: Rename and change types of parameters + private String mParam1; + private String mParam2; + + public SafeFragment() { + // Required empty public constructor + } + + /** + * Use this factory method to create a new instance of + * this fragment using the provided parameters. + * + * @param param1 Parameter 1. + * @param param2 Parameter 2. + * @return A new instance of fragment PrecisionFragment. + */ + // TODO: Rename and change types and number of parameters + public static SafeFragment newInstance(String param1, String param2) { + SafeFragment fragment = new SafeFragment(); + Bundle args = new Bundle(); + args.putString(ARG_PARAM1, param1); + args.putString(ARG_PARAM2, param2); + fragment.setArguments(args); + return fragment; + } + + @Override + protected int getLayoutId() { + return R.layout.fragment_safe; + } + + @Override + protected void initDataBinding() { + mViewModel.setCtx(getCtx()); + mViewModel.setLifecycle(getLifecycleSubject()); + mViewModel.setVDBinding(mViewDataBinding); + mViewDataBinding.setClick(new BtnClick()); + } + + @Override + protected void initView(Bundle bundle) { + if (getArguments() != null) { + mParam1 = getArguments().getString(ARG_PARAM1); + mParam2 = getArguments().getString(ARG_PARAM2); + } + + } + + @Override + protected void initData(Bundle savedInstanceState) { + + } + + @Override + public void onCreate(Bundle savedInstanceState) { + super.onCreate(savedInstanceState); + + } + + @Override + public void fetchData() { + + } + + @Override + public void onDestroyView() { + super.onDestroyView(); + } + + @Override + public void setUserVisibleHint(boolean isVisibleToUser) { + super.setUserVisibleHint(isVisibleToUser); + Log.e(TAG, "setUserVisibleHint: isVisibleToUser = " + isVisibleToUser); + + } + + + + public class BtnClick { + public void openPrecisionHome(View view) { + + } + } +} diff --git a/app/src/main/java/com/handuan/os/fragment/safe/SafeViewModel.java b/app/src/main/java/com/handuan/os/fragment/safe/SafeViewModel.java new file mode 100644 index 0000000..0ede2bd --- /dev/null +++ b/app/src/main/java/com/handuan/os/fragment/safe/SafeViewModel.java @@ -0,0 +1,18 @@ +package com.handuan.os.fragment.safe; + +import com.handuan.os.base.mvvm.BaseViewModel; +import com.handuan.os.databinding.FragmentSafeBinding; +import com.trello.rxlifecycle4.android.FragmentEvent; + +public class SafeViewModel extends BaseViewModel { + @Override + public FragmentSafeBinding getVDBinding() { + return binding; + } + + @Override + public void onDestroy() { + + } + +} diff --git a/app/src/main/java/com/handuan/os/jxw/AssertUtils.java b/app/src/main/java/com/handuan/os/jxw/AssertUtils.java new file mode 100644 index 0000000..ef83d32 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/AssertUtils.java @@ -0,0 +1,48 @@ +package com.handuan.os.jxw; + +import android.content.Context; +import com.google.gson.Gson; +import java.io.BufferedReader; +import java.io.InputStreamReader; + +public class AssertUtils { + public static final Gson mGson = new Gson(); + + public static String getFromAssets(Context context, String str) { + StringBuffer stringBuffer = new StringBuffer(); + try { + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(context.getResources().getAssets().open(str), "utf-8")); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine != null) { + stringBuffer.append(readLine); + } else { + return stringBuffer.toString(); + } + } + } catch (Exception e) { + e.printStackTrace(); + return stringBuffer.toString(); + } + } + + public static int getStringId(Context context, String str) { + return context.getResources().getIdentifier(str, "string", context.getPackageName()); + } + + public static String getString(Context context, String str) { + return context.getResources().getString(getStringId(context, str)); + } + + public static int getLayoutId(Context context, String str) { + return context.getResources().getIdentifier(str, "layout", context.getPackageName()); + } + + public static int getDrawableId(Context context, String str) { + return context.getResources().getIdentifier(str, "drawable", context.getPackageName()); + } + + public static int getDimens(Context context, String str) { + return context.getResources().getDimensionPixelSize(context.getResources().getIdentifier(str, "dimen", context.getPackageName())); + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/BaseNewFragment.java b/app/src/main/java/com/handuan/os/jxw/BaseNewFragment.java new file mode 100644 index 0000000..503f854 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/BaseNewFragment.java @@ -0,0 +1,102 @@ +package com.handuan.os.jxw; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; + +import androidx.fragment.app.Fragment; + +public abstract class BaseNewFragment extends Fragment implements NetConnectionObserver { + private static final String TAG = "BaseNewFragment"; + + private boolean isCreateView; + private boolean isLoaded; + public boolean isVisible; + private View mRoot; + + protected abstract View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle); + + public void initListener() { + + } + + protected abstract void initView(); + + protected abstract void lazyLoad(); + + public void onNetworkChanged(boolean z) { + + } + + public void refreshLoad() { + } + + public void reseLoad() { + } + + @Override + public void setUserVisibleHint(boolean z) { + super.setUserVisibleHint(z); + if (getUserVisibleHint()) { + onVisible(); + } else { + onInvisible(); + } + } + + @Override + public View onCreateView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + if (this.mRoot == null) { + this.mRoot = createView(layoutInflater, viewGroup, bundle); + this.isCreateView = true; + initView(); + initListener(); + onVisible(); + } + return this.mRoot; + } + + @Override + public void onResume() { + super.onResume(); + if (getUserVisibleHint()) { + reseLoad(); + } +// MyApp.getInstance().addNetObserver(this); + } + + @Override + public void onPause() { + super.onPause(); +// MyApp.getInstance().removeNetObserver(this); + } + + protected void onVisible() { + this.isVisible = true; + if (this.isLoaded) { + refreshLoad(); + } + if (!this.isLoaded && this.isCreateView && getUserVisibleHint()) { + this.isLoaded = true; + lazyLoad(); + } + } + + protected void onInvisible() { + this.isVisible = false; + } + + protected View getContentView() { + return this.mRoot; + } + + public T findViewById(int i) { + return (T) getContentView().findViewById(i); + } + + @Override + public void updateNetStatus(int i) { +// onNetworkChanged(MyApp.getInstance().isNetConnection()); + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/CommonUtil.java b/app/src/main/java/com/handuan/os/jxw/CommonUtil.java new file mode 100644 index 0000000..d719005 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/CommonUtil.java @@ -0,0 +1,73 @@ +package com.handuan.os.jxw; + +import android.content.ComponentName; +import android.content.Context; +import android.content.Intent; +import android.content.pm.ResolveInfo; +import android.util.Log; +import java.util.List; + +public class CommonUtil { + public static final int DISABLE_EXPAND = 65536; + public static final int DISABLE_NONE = 0; + private static final int MIN_CLICK_DELAY_TIME = 1000; + private static long lastClickTime; + + public static int px2sp(Context context, float f) { + return (int) ((f / context.getResources().getDisplayMetrics().scaledDensity) + 0.5f); + } + + public static Intent createExplicitFromImplicitIntent(Context context, Intent intent) { + List queryIntentServices = context.getPackageManager().queryIntentServices(intent, 0); + Log.e("zzj", "resolveInfo=" + queryIntentServices); + if (queryIntentServices == null || queryIntentServices.size() == 0) { + return null; + } + ResolveInfo resolveInfo = (ResolveInfo) queryIntentServices.get(0); + String str = resolveInfo.serviceInfo.packageName; + ComponentName componentName = new ComponentName(str, resolveInfo.serviceInfo.name); + Log.e("zzj", "packageName=" + str); + Intent intent2 = new Intent(intent); + intent2.setComponent(componentName); + return intent2; + } + + public static String getBookRecordKey(String str) { + String str2 = null; + if (str == null) { + return null; + } + if (str != null && str.startsWith("d:")) { + String[] split = str.split("\\|"); + for (int i = 0; i < split.length; i++) { + if (split[i] != null && split[i].length() > 2 && split[i].startsWith("d:")) { + str2 = split[i].substring(2); + } + } + } + return str2; + } + + public static boolean isFastClick() { + long currentTimeMillis = System.currentTimeMillis(); + boolean z = currentTimeMillis - lastClickTime >= MIN_CLICK_DELAY_TIME; + lastClickTime = currentTimeMillis; + return z; + } + + public static void disableStatusBars(Context context) { + try { + Class.forName("android.app.StatusBarManager").getMethod("disable", Integer.TYPE).invoke(context.getSystemService("statusbar"), DISABLE_EXPAND); + } catch (Exception e) { + e.printStackTrace(); + } + } + + public static void enableStatusBars(Context context) { + try { + Class.forName("android.app.StatusBarManager").getMethod("disable", Integer.TYPE).invoke(context.getSystemService("statusbar"), DISABLE_NONE); + } catch (Exception e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/Constant.java b/app/src/main/java/com/handuan/os/jxw/Constant.java new file mode 100644 index 0000000..9840c67 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/Constant.java @@ -0,0 +1,126 @@ +package com.handuan.os.jxw; + +import android.net.Uri; +import android.util.Log; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; + + +public class Constant { + public static String APKV = null; + public static final String CUSTOMISBN = "customIsbn"; + public static final String DATE = "date"; + public static String DEFAULT_PWD = null; + public static final String DOMAIN3 = "http://api4.jiumentongbu.com"; + public static final String DOMAIN3_OFFICIAL = "http://api4.jiumentongbu.com/api/jwfd/baseapp/url?filePath=专区数据/"; + public static final String FINISH_UPLOAD_APP_DOWNLOAD = "finish_upload_app_download"; + public static final String FINISH_UPLOAD_APP_DOWNLOAD_VALUE = "201"; + public static final String FINISH_UPLOAD_APP_INSTALL = "finish_upload_app_install"; + public static final String FINISH_UPLOAD_APP_INSTALL_VALUE = "501"; + public static String GW_URL = null; + + /* renamed from: ID */ + public static final String f195ID = "_id"; + public static final String JSON_SUFFIX = "menu.json"; + public static final String MODULE = "module"; + public static String PLATFORM_URL_HEADER = null; + private static String PLATFORM_VERSION = ""; + public static final String PREFERENCE = "preference"; + public static String REGISTER_URL_HEADER = null; + public static String REGISTFLAG = null; + public static final String SERIS = "seris"; + public static String SIGN_KEY = null; + public static final Uri STUDY_RECENTLY_URI = Uri.parse("content://com.jxw.studydiagnose.MyUriMatcher/testRecord"); + public static final String TIME = "time"; + + private static String getPlatFormUrl() { + return null; + } + + public static void init(String str, String str2, String str3) { + APKV = str; + REGISTFLAG = str2; + DEFAULT_PWD = str3; + } + + public static void setPlatFormType() { + try { + PLATFORM_VERSION = readFileContent(new FileInputStream(new File("/sdcard/config.ini"))); + setPlatform(); + } catch (IOException e) { + setPlatform(); + e.printStackTrace(); + } + } + + private static void setPlatform() { + Log.i("zzj", "zzj the PlatFormType=" + PLATFORM_VERSION); + if ("test".equals(PLATFORM_VERSION)) { + PLATFORM_URL_HEADER = "https://api3-test.xuexizhiwang.com"; + REGISTER_URL_HEADER = "https://sync.debug.jiumentongbu.com"; + GW_URL = "https://gw-test.xuexizhiwang.com"; + SIGN_KEY = "YxCcUzDWRz1HVkj1Xtofkilb5KrnJAxs"; + } else if ("gray".equals(PLATFORM_VERSION)) { + PLATFORM_URL_HEADER = "https://gray.xuexizhiwang.com"; + REGISTER_URL_HEADER = "https://sync.jiumentongbu.com"; + GW_URL = "https://gw-pre.xuexizhiwang.com"; + SIGN_KEY = "PZbKVKQUavLmswFznRnuACg9u2o8pmhL"; + } else if ("haiwai".equals(PLATFORM_VERSION)) { + PLATFORM_URL_HEADER = "https://apipad-dubai.xuexizhiwang.com"; + REGISTER_URL_HEADER = "https://reg-dubai.xuexizhiwang.com"; + GW_URL = "https://gwpad-dubai.xuexizhiwang.com"; + SIGN_KEY = "PZbKVKQUavLmswFznRnuACg9u2o8pmhL"; + } else { + PLATFORM_URL_HEADER = "https://apipad.xuexizhiwang.com"; + REGISTER_URL_HEADER = "https://sync.jiumentongbu.com"; + GW_URL = "https://gwpad.xuexizhiwang.com"; + SIGN_KEY = "PZbKVKQUavLmswFznRnuACg9u2o8pmhL"; + } + String str = APKV; + if (str != null && str.equals("xdaxzdxtv6")) { + SIGN_KEY = "jbladX97Lj5jY4ByVfRazbGhL8pOUlps"; + } + String str2 = APKV; + if (str2 != null && (str2.equals("znzxlzxzxszdv6") || APKV.equals("znlztpszdv6"))) { + SIGN_KEY = "gffx58X2NhB7kZCwjAC"; + } + String str3 = APKV; + if (str3 != null && str3.equals("znzxjhmptv6")) { + SIGN_KEY = "Ho0VHBO014vZHB7G1gY"; + } + String str4 = APKV; + if (str4 != null && str4.equals("hwdhjpbv6")) { + SIGN_KEY = "eG3E2kOv3nmfpQWDH6a"; + } + String str5 = APKV; + if (str5 == null || !str5.equals("xwpsjkhwl")) { + return; + } + SIGN_KEY = "qT0zqnQ9521cMQj72RN"; + } + + private static String readFileContent(InputStream inputStream) { + // 使用 StringBuilder 替代 StringBuffer(单线程环境下更高效) + StringBuilder content = new StringBuilder(); + // 使用 try-with-resources 自动管理资源,确保任何情况下都会正确关闭 + try (InputStreamReader inputStreamReader = new InputStreamReader(inputStream); + BufferedReader bufferedReader = new BufferedReader(inputStreamReader)) { + String line; + // 直接读取每一行,避免深层嵌套 + while ((line = bufferedReader.readLine()) != null) { + content.append(line); + // 注意:原代码未添加换行符,如需保留原格式应添加 content.append(System.lineSeparator()); + } + } catch (IOException e) { + // 异常处理简化:打印日志或抛出自定义异常,避免吞没原始异常 + e.printStackTrace(); + // 可根据需求返回空字符串或抛出运行时异常 + // throw new RuntimeException("读取文件失败", e); + } + return content.toString(); + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/DataProvider.java b/app/src/main/java/com/handuan/os/jxw/DataProvider.java new file mode 100644 index 0000000..cdd29ea --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/DataProvider.java @@ -0,0 +1,243 @@ +package com.handuan.os.jxw; + +import android.content.ContentProvider; +import android.content.ContentValues; +import android.content.Context; +import android.content.SharedPreferences; +import android.content.UriMatcher; +import android.database.Cursor; +import android.database.MatrixCursor; +import android.net.Uri; +import android.os.Build; +import android.os.Environment; +import android.text.TextUtils; +import android.util.Log; +import java.io.BufferedReader; +import java.io.File; +import java.io.FileInputStream; +import java.io.IOException; +import java.io.InputStream; +import java.io.InputStreamReader; +import org.json.JSONObject; + + +public class DataProvider extends ContentProvider { + public static final String AUTHORITY = "com.jxw.launcher.provider.DataProvider"; + private static final String CAMERACONFIG_PATH = "/ansystem/cameraconfig.ini"; + private static final String OEMROOT = "/mnt/oem"; + private static final String SCHEME = "content"; + private static final String SDROOT; + private static final String TAG = "PrefsProvider"; + private static final int URI_CODE_APP_CONFIG = 3; + private static final int URI_CODE_AUTH_CONFIG = 6; + private static final int URI_CODE_BASE_DATA = 2; + private static final int URI_CODE_CAMERA = 7; + private static final int URI_CODE_REGIST = 1; + private static final int URI_CODE_TOKEN = 0; + private static final int URI_CODE_USERINFO = 5; + private static final int URI_CODE_ZB01 = 4; + private static UriMatcher mUriMatcher = new UriMatcher(-1); + private Context mContext; + + @Override // android.content.ContentProvider + public int delete(Uri uri, String str, String[] strArr) { + return 0; + } + + static { + mUriMatcher.addURI(AUTHORITY, "token", 0); + mUriMatcher.addURI(AUTHORITY, "regist", 1); + mUriMatcher.addURI(AUTHORITY, "base", 2); + mUriMatcher.addURI(AUTHORITY, "app_config", 3); + mUriMatcher.addURI(AUTHORITY, "zb01", 4); + mUriMatcher.addURI(AUTHORITY, "user_info", 5); + mUriMatcher.addURI(AUTHORITY, "auth_config", 6); + mUriMatcher.addURI(AUTHORITY, "camera_config", 7); + SDROOT = Environment.getExternalStorageDirectory().getAbsolutePath(); + } + + public static Uri getUri(String str) { + return new Uri.Builder().authority(AUTHORITY).path(str).scheme(SCHEME).build(); + } + + @Override // android.content.ContentProvider + public boolean onCreate() { + this.mContext = getContext(); + Log.e(TAG, "onCreate"); + return true; + } + + /* JADX WARN: Can't fix incorrect switch cases order, some code will duplicate */ + @Override // android.content.ContentProvider + public Cursor query(Uri uri, String[] strArr, String str, String[] strArr2, String str2) { + File file; + String str3; + String fromAssets; + Log.e(TAG, "DataProvider--query"); + int match = mUriMatcher.match(uri); + SharedPreferences sharedPreferences = getContext().getSharedPreferences(Constant.PREFERENCE, 0); + String string = sharedPreferences.getString("token", null); + String string2 = sharedPreferences.getString("series", null); + String string3 = sharedPreferences.getString("bind_device_id", ""); + String string4 = sharedPreferences.getString(Constant.CUSTOMISBN, Constant.APKV); + switch (match) { + case 0: + Log.e(TAG, "token查看"); + MatrixCursor matrixCursor = new MatrixCursor(new String[]{"token"}); + matrixCursor.addRow(new Object[]{string}); + return matrixCursor; + case 1: + Log.e(TAG, "register查看"); + MatrixCursor matrixCursor2 = new MatrixCursor(new String[]{"isRegist"}); + matrixCursor2.addRow(new Object[]{Integer.valueOf(!TextUtils.isEmpty(string2) ? 1 : 0)}); + return matrixCursor2; + case 2: + Log.e(TAG, "baseData查看"); + MatrixCursor matrixCursor3 = new MatrixCursor(new String[]{"token", "apkv", "regist_flag", "serial_number", "registSerial", "isRegist", "defaultPsw"}); + matrixCursor3.addRow(new Object[]{string, string4, Constant.REGISTFLAG, SPUtils.getSeries(), SPUtils.getSeries(), Integer.valueOf(!TextUtils.isEmpty(string2) ? 1 : 0), Constant.DEFAULT_PWD}); + return matrixCursor3; + case 3: + Log.e(TAG, "AppConfig查看"); + try { + str3 = uri.getQueryParameter("pkgName"); + } catch (Exception unused) { + str3 = null; + } + if (TextUtils.isEmpty(str3) && strArr2 != null && strArr2.length > 0) { + str3 = strArr2[0]; + } + if (!TextUtils.isEmpty(str3)) { + MatrixCursor matrixCursor4 = new MatrixCursor(new String[]{"config"}); + if (str3.equals("com.jxw.zncd")) { + fromAssets = getFromAssets(getContext(), String.format("script/com.jxw.scb.json", str3)); + } else { + fromAssets = getFromAssets(getContext(), String.format("script/%s.json", str3)); + } + if (TextUtils.isEmpty(fromAssets)) { + Log.e("jxw", "package name:" + str3); + fromAssets = "{}"; + } + matrixCursor4.addRow(new Object[]{fromAssets}); + return matrixCursor4; + } + break; + case 4: + Log.e(TAG, "zb01查看"); + MatrixCursor matrixCursor5 = new MatrixCursor(new String[]{"sdbBindDeviceId", "bluetoothName", "bluetoothDi", "bluetoothSn"}); + matrixCursor5.addRow(new Object[]{string3, SPUtils.getBluetoothName(), SPUtils.getBluetoothDi(), SPUtils.getBluetoothSn()}); + return matrixCursor5; + case 5: + Log.e(TAG, "查看用户个人信息"); + MatrixCursor matrixCursor6 = new MatrixCursor(new String[]{"userName", "userHead", "userSex", "userBirthday", "userRegion", "grade", "period", "isRegist"}); + matrixCursor6.addRow(new Object[]{SPUtils.getUserNickName(), SPUtils.getUserIcon(), SPUtils.getUserSex(), SPUtils.getUserBirthday(), SPUtils.getUserRegion(), SPUtils.getGrade(), checkGrade(SPUtils.getGrade()), Integer.valueOf(!TextUtils.isEmpty(string2) ? 1 : 0)}); + return matrixCursor6; + case 6: + Log.e(TAG, "查看白名单应用列表"); + MatrixCursor matrixCursor7 = new MatrixCursor(new String[]{"authConfig"}); + matrixCursor7.addRow(new Object[]{SPUtils.get(this.mContext, "authConfig", "")}); + return matrixCursor7; + case 7: + break; + default: + return null; + } + MatrixCursor matrixCursor8 = new MatrixCursor(new String[]{"camera_config"}); + String str4 = (strArr2 == null || strArr2.length <= 0) ? null : strArr2[0]; + try { + Context context = this.mContext; + String fromAssets2 = getFromAssets(context, String.format("script/" + Build.BRAND.replaceAll("-", "") + "_" + Build.MODEL.replaceAll("-", "").replaceAll("pro", "Pro") + "_camera.json", "")); + StringBuilder sb = new StringBuilder(); + sb.append("品牌:"); + sb.append(Build.BRAND); + sb.append("_型号:"); + sb.append(Build.MODEL); + Log.e("jxw-camera_config", sb.toString()); + Log.e("jxw-camera_config", fromAssets2); + if (new File(SDROOT + CAMERACONFIG_PATH).exists()) { + file = new File(SDROOT + CAMERACONFIG_PATH); + } else { + file = new File("/mnt/oem/ansystem/cameraconfig.ini").exists() ? new File("/mnt/oem/ansystem/cameraconfig.ini") : null; + } + if (!TextUtils.isEmpty(SPUtils.getString("cameraConfig"))) { + JSONObject jSONObject = new JSONObject(SPUtils.getString("cameraConfig")); + String optString = jSONObject.optString(str4); + Log.e("jxw-camera_config", "云端配置-packageName=" + str4 + " 值=" + optString); + matrixCursor8.addRow(new Object[]{jSONObject.optString(str4)}); + } else if (file != null) { + String readFileContent = readFileContent(new FileInputStream(file)); + JSONObject jSONObject2 = new JSONObject(readFileContent); + Log.e("jxw-camera_config", "sd配置-camera_config:" + readFileContent); + matrixCursor8.addRow(new Object[]{jSONObject2.optString(str4)}); + } else if (!TextUtils.isEmpty(fromAssets2)) { + JSONObject jSONObject3 = new JSONObject(fromAssets2); + Log.e("jxw-camera_config", "型号配置-ConfigJson:" + fromAssets2); + matrixCursor8.addRow(new Object[]{jSONObject3.optString(str4)}); + } else { + String fromAssets3 = getFromAssets(this.mContext, String.format("script/camera.json", "")); + JSONObject jSONObject4 = new JSONObject(fromAssets3); + Log.e("jxw-camera_config", "camera_config:" + fromAssets3); + matrixCursor8.addRow(new Object[]{jSONObject4.optString(str4)}); + } + } catch (Exception e) { + e.getMessage(); + } + return matrixCursor8; + } + + @Override // android.content.ContentProvider + public String getType(Uri uri) { + Log.e(TAG, "getType"); + return null; + } + + @Override // android.content.ContentProvider + public Uri insert(Uri uri, ContentValues contentValues) { + Log.e(TAG, "insert"); + return null; + } + + @Override // android.content.ContentProvider + public int update(Uri uri, ContentValues contentValues, String str, String[] strArr) { + this.mContext.getContentResolver().notifyChange(uri, null); + return 0; + } + + public static String getFromAssets(Context context, String str) { + StringBuffer stringBuffer = new StringBuffer(); + try { + BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(context.getResources().getAssets().open(str), "utf-8")); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine != null) { + stringBuffer.append(readLine); + } else { + return stringBuffer.toString(); + } + } + } catch (Exception e) { + e.printStackTrace(); + Log.e("getFromAssetserror:", e.getMessage()); + Log.e("getFromAssetserror:", stringBuffer.toString()); + return stringBuffer.toString(); + } + } + + public String checkGrade(String str) { + return !TextUtils.isEmpty(str) ? (str.equals("一年级") || str.equals("二年级") || str.equals("三年级") || str.equals("四年级") || str.equals("五年级") || str.equals("六年级")) ? "小学" : (str.equals("初中六年级") || str.equals("七年级") || str.equals("八年级") || str.equals("九年级")) ? "初中" : (str.equals("高一") || str.equals("高二") || str.equals("高三")) ? "高中" : "初中" : "初中"; + } + + private static String readFileContent(InputStream inputStream) throws IOException { + StringBuilder stringBuilder = new StringBuilder(); + // 使用try-with-resources自动管理资源,避免内存泄漏[6](@ref) + try (InputStreamReader inputStreamReader = new InputStreamReader(inputStream); + BufferedReader bufferedReader = new BufferedReader(inputStreamReader)) { + String line; + while ((line = bufferedReader.readLine()) != null) { + stringBuilder.append(line); + // 补充换行符(根据实际需求决定是否添加) + // stringBuilder.append(System.lineSeparator()); + } + } // 这里会自动关闭所有资源,无需finally块[4](@ref) + return stringBuilder.toString(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/FixDataPathUtils.java b/app/src/main/java/com/handuan/os/jxw/FixDataPathUtils.java new file mode 100644 index 0000000..1dd6c0e --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/FixDataPathUtils.java @@ -0,0 +1,43 @@ +package com.handuan.os.jxw; + +import android.content.ContentResolver; +import android.content.Context; +import android.database.Cursor; +import android.net.Uri; +import android.util.Log; + +import org.apache.http.cookie.ClientCookie; + +public class FixDataPathUtils { + private static final String TAG = "FixDataPathUtils"; + + public static String[] getEnablePath(Context context, String str) { + Uri parse = Uri.parse("content://com.jxw.download.provider.FixDataProvider/download_finish"); + ContentResolver contentResolver = context.getContentResolver(); + Cursor query = contentResolver.query(parse, null, null, new String[]{str + ""}, null); + if (query != null) { + try { + if (query.moveToFirst()) { + int i = query.getInt(query.getColumnIndex("isFinish")); + String string = query.getString(query.getColumnIndex(ClientCookie.PATH_ATTR)); + String string2 = query.getString(query.getColumnIndex("patchPath")); + Log.i(TAG, "isFinish:" + i); + if (i != 0) { + String[] strArr = {string, string2}; + if (query != null) { + query.close(); + } + return strArr; + } + } + } finally { + if (query != null) { + query.close(); + } + } + } + return new String[]{}; + } + + +} diff --git a/app/src/main/java/com/handuan/os/jxw/JiaoShuiDialog.java b/app/src/main/java/com/handuan/os/jxw/JiaoShuiDialog.java new file mode 100644 index 0000000..c04eff9 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/JiaoShuiDialog.java @@ -0,0 +1,91 @@ +package com.handuan.os.jxw; + + +import android.app.Activity; +import android.app.Dialog; +import android.content.Context; +import android.graphics.Point; +import android.os.Bundle; +import android.view.Display; +import android.view.Window; +import android.view.WindowManager; + +import com.handuan.os.R; + +import org.libpag.PAGFile; +import org.libpag.PAGView; + +/* loaded from: classes2.dex */ +public class JiaoShuiDialog extends Dialog { + private Activity activity; + private Callback mCallback; + private PAGView pag; + + /* loaded from: classes2.dex */ + public interface Callback { + void onCallback(); + } + + public JiaoShuiDialog(Context context) { + super(context, R.style.ActionSheetDialogStyle); + this.activity = (Activity) context; + } + + @Override // android.app.Dialog + protected void onCreate(Bundle bundle) { + super.onCreate(bundle); + setContentView(R.layout.dialog_jiaoshui); + WindowManager windowManager = getWindow().getWindowManager(); + getWindow().setBackgroundDrawableResource(17170445); + Display defaultDisplay = windowManager.getDefaultDisplay(); + Window window = getWindow(); + WindowManager.LayoutParams attributes = getWindow().getAttributes(); + window.setGravity(8388659); + defaultDisplay.getSize(new Point()); + getWindow().setAttributes(attributes); + setCanceledOnTouchOutside(true); + setCancelable(true); + getWindow().setDimAmount(0.0f); + initView(); + } + + private void initView() { + this.pag = (PAGView) findViewById(R.id.pag); + this.pag.setComposition(PAGFile.Load(this.activity.getAssets(), "pag/shjs.pag")); + this.pag.setRepeatCount(1); + this.pag.play(); + this.pag.addListener(new PAGView.PAGViewListener() { // from class: com.jxw.launcher.view.dialog.JiaoShuiDialog.1 + @Override // org.libpag.PAGView.PAGViewListener + public void onAnimationRepeat(PAGView pAGView) { + } + + @Override // org.libpag.PAGView.PAGViewListener + public void onAnimationStart(PAGView pAGView) { + } + + @Override // org.libpag.PAGView.PAGViewListener + public void onAnimationUpdate(PAGView pAGView) { + } + + @Override // org.libpag.PAGView.PAGViewListener + public void onAnimationEnd(PAGView pAGView) { + if (JiaoShuiDialog.this.mCallback != null) { + JiaoShuiDialog.this.mCallback.onCallback(); + } + JiaoShuiDialog.this.dismiss(); + } + + @Override // org.libpag.PAGView.PAGViewListener + public void onAnimationCancel(PAGView pAGView) { + if (JiaoShuiDialog.this.mCallback != null) { + JiaoShuiDialog.this.mCallback.onCallback(); + } + JiaoShuiDialog.this.dismiss(); + } + }); + } + + public void setOnCallback(Callback callback) { + this.mCallback = callback; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/LearnStageBean.java b/app/src/main/java/com/handuan/os/jxw/LearnStageBean.java new file mode 100644 index 0000000..7f6408a --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/LearnStageBean.java @@ -0,0 +1,76 @@ +package com.handuan.os.jxw; + +public class LearnStageBean { + private String className; + private Boolean isBig; + private String label; + private String learnStage; + private String name; + private String normal; + private String press; + private String tbsp_tag; + + public String getName() { + return this.name; + } + + public void setName(String str) { + this.name = str; + } + + public String getNormal() { + return this.normal; + } + + public void setNormal(String str) { + this.normal = str; + } + + public String getPress() { + return this.press; + } + + public void setPress(String str) { + this.press = str; + } + + public String getLearnStage() { + return this.learnStage; + } + + public void setLearnStage(String str) { + this.learnStage = str; + } + + public String getClassName() { + return this.className; + } + + public void setClassName(String str) { + this.className = str; + } + + public String getLabel() { + return this.label; + } + + public void setLabel(String str) { + this.label = str; + } + + public String getTbsp_tag() { + return this.tbsp_tag; + } + + public void setTbsp_tag(String str) { + this.tbsp_tag = str; + } + + public Boolean getIsBig() { + return this.isBig; + } + + public void setIsBig(Boolean bool) { + this.isBig = bool; + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/NetConnectionObserver.java b/app/src/main/java/com/handuan/os/jxw/NetConnectionObserver.java new file mode 100644 index 0000000..9938d93 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/NetConnectionObserver.java @@ -0,0 +1,5 @@ +package com.handuan.os.jxw; + +public interface NetConnectionObserver { + void updateNetStatus(int i); +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/SPUtils.java b/app/src/main/java/com/handuan/os/jxw/SPUtils.java new file mode 100644 index 0000000..2f817ef --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/SPUtils.java @@ -0,0 +1,576 @@ +package com.handuan.os.jxw; + +import android.content.Context; +import android.content.SharedPreferences; +import android.net.Uri; +import android.util.Log; +import com.google.gson.Gson; +import com.handuan.os.base.BaseApplication; + +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; +import java.util.List; +import java.util.Map; + +public class SPUtils { + private static final String KEY_AGE = "user_age"; + private static final String KEY_BIRTHDAY = "user_birthday"; + private static final String KEY_BNDK = "user_bndk"; + private static final String KEY_BNID = "user_bnid"; + private static final String KEY_CITY = "user_city"; + private static final String KEY_CLAZZ = "user_class"; + private static final String KEY_DISTRICT = "user_district"; + private static final String KEY_DK = "user_dk"; + private static final String KEY_DKHd = "user_dkhd"; + private static final String KEY_Day = "user_day"; + private static final String KEY_GAME_TIME = "game_time"; + private static final String KEY_GRADE = "user_grade"; + private static final String KEY_GRADE_LAST = "user_grade_last"; + private static final String KEY_HD = "user_hd"; + private static final String KEY_ICON = "user_icon"; + private static final String KEY_JLSJ = "user_continueDays"; + private static final String KEY_LAtiude = "latitude"; + private static final String KEY_LONGITUDE = "longitude"; + private static final String KEY_NICKNAME = "user_nickname"; + private static final String KEY_PROVINCE = "user_province"; + private static final String KEY_Qp = "user_qp"; + private static final String KEY_REGION = "user_region"; + private static final String KEY_Regist = "regists"; + private static final String KEY_Rl = "user_rl"; + private static final String KEY_SCHOOL = "user_school"; + private static final String KEY_SERIES = "series"; + private static final String KEY_SEX = "user_sex"; + private static final String KEY_SJC = "user_sjc"; + private static final String KEY_SUCCEED = "user_succeed"; + private static final String KEY_TOKEN_SAVE_TIME = "token_save_time"; + private static final String KEY_USER_ID = "user_id"; + private static final String KEY_XXDK = "user_xxdk"; + private static final String KEY_YEAR = "user_year"; + private static final String KEY_YNDK = "user_yndk"; + private static final String KEY_YNID = "user_ynid"; + private static final String KEY_Yx = "user_yx"; + private static final String KEY_ZB01_BLUETOOTH_DI = "bluetooth_di"; + private static final String KEY_ZB01_BLUETOOTH_NAME = "bluetooth_name"; + private static final String KEY_ZB01_BLUETOOTH_SN = "bluetooth_sn"; + private static final String KEY_ZNHY = "znhy_state"; + + /* renamed from: sp */ + private static SharedPreferences f193sp; + private static final String KEY_TOKEN = "token"; + private static final Uri URI_TOKEN = DataProvider.getUri(KEY_TOKEN); + private static final Uri URI_REGIST = DataProvider.getUri("regist"); + private static final Uri URI_BASE = DataProvider.getUri("base"); + private static final String KEY_ZB01_SDB_DEVICE_ID = "bind_device_id"; + private static final Uri URI_DEVICEID = DataProvider.getUri(KEY_ZB01_SDB_DEVICE_ID); + + public static SharedPreferences getSp() { + if (f193sp == null) { + f193sp = BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0); + } + return f193sp; + } + + public static void put(Context context, String str, Object obj) { + SharedPreferences.Editor edit = context.getSharedPreferences(Constant.PREFERENCE, 0).edit(); + if (obj instanceof String) { + edit.putString(str, (String) obj); + } else if (obj instanceof Integer) { + edit.putInt(str, ((Integer) obj).intValue()); + } else if (obj instanceof Boolean) { + edit.putBoolean(str, ((Boolean) obj).booleanValue()); + } else if (obj instanceof Float) { + edit.putFloat(str, ((Float) obj).floatValue()); + } else if (obj instanceof Long) { + edit.putLong(str, ((Long) obj).longValue()); + } else { + edit.putString(str, obj.toString()); + } + SharedPreferencesCompat.apply(edit); + } + + public static void putConfig(Context context, String str, Object obj) { + SharedPreferences.Editor edit = context.getSharedPreferences(Constant.PREFERENCE, 0).edit(); + if (obj instanceof String) { + edit.putString(str, (String) obj); + } else if (obj instanceof Integer) { + edit.putInt(str, ((Integer) obj).intValue()); + } else if (obj instanceof Boolean) { + edit.putBoolean(str, ((Boolean) obj).booleanValue()); + } else if (obj instanceof Float) { + edit.putFloat(str, ((Float) obj).floatValue()); + } else if (obj instanceof Long) { + edit.putLong(str, ((Long) obj).longValue()); + } else { + edit.putString(str, obj.toString()); + } + SharedPreferencesCompat.apply(edit); + } + + public static String getlongitude() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_LONGITUDE, ""); + } + + public static void setlongitude(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_LONGITUDE, str).commit(); + } + + public static String getLatitude() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_LAtiude, ""); + } + + public static void setLatitude(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_LAtiude, str).commit(); + } + + public static boolean getBoolean(Context context, String str, boolean z) { + return context.getSharedPreferences(Constant.PREFERENCE, 0).getBoolean(str, z); + } + + public static int getInt(Context context, String str, int i) { + return context.getSharedPreferences(Constant.PREFERENCE, 0).getInt(str, i); + } + + public static void setBoolean(Context context, String str, boolean z) { + context.getSharedPreferences(Constant.PREFERENCE, 0).edit().putBoolean(str, z).commit(); + } + + public static void putLong(Context context, String str, long j) { + context.getSharedPreferences(Constant.PREFERENCE, 0).edit().putLong(str, j).commit(); + } + + public static long getLong(Context context, String str, long j) { + return context.getSharedPreferences(Constant.PREFERENCE, 0).getLong(str, j); + } + + public static Object get(Context context, String str, Object obj) { + SharedPreferences sharedPreferences = context.getSharedPreferences(Constant.PREFERENCE, 0); + if (obj instanceof String) { + return sharedPreferences.getString(str, (String) obj); + } + if (obj instanceof Integer) { + return Integer.valueOf(sharedPreferences.getInt(str, ((Integer) obj).intValue())); + } + if (obj instanceof Boolean) { + return Boolean.valueOf(sharedPreferences.getBoolean(str, ((Boolean) obj).booleanValue())); + } + if (obj instanceof Float) { + return Float.valueOf(sharedPreferences.getFloat(str, ((Float) obj).floatValue())); + } + if (obj instanceof Long) { + return Long.valueOf(sharedPreferences.getLong(str, ((Long) obj).longValue())); + } + return null; + } + + public static void remove(Context context, String str) { + SharedPreferences.Editor edit = context.getSharedPreferences(Constant.PREFERENCE, 0).edit(); + edit.remove(str); + SharedPreferencesCompat.apply(edit); + } + + public static void clear(Context context) { + SharedPreferences.Editor edit = context.getSharedPreferences(Constant.PREFERENCE, 0).edit(); + edit.clear(); + SharedPreferencesCompat.apply(edit); + } + + public static boolean contains(Context context, String str) { + return context.getSharedPreferences(Constant.PREFERENCE, 0).contains(str); + } + + public static Map getAll(Context context) { + return context.getSharedPreferences(Constant.PREFERENCE, 0).getAll(); + } + + + private static class SharedPreferencesCompat { + private static final Method sApplyMethod = findApplyMethod(); + + private SharedPreferencesCompat() { + } + + private static Method findApplyMethod() { + try { + return SharedPreferences.Editor.class.getMethod("apply", new Class[0]); + } catch (NoSuchMethodException unused) { + return null; + } + } + + public static void apply(SharedPreferences.Editor editor) { + try { + if (sApplyMethod != null) { + sApplyMethod.invoke(editor, new Object[0]); + return; + } + } catch (IllegalAccessException | IllegalArgumentException | InvocationTargetException unused) { + } + editor.commit(); + } + } + + public static String cleardk() { + getSp().edit().remove(KEY_DK).commit(); + return null; + } + + public static void saveString(String str, String str2) { + SharedPreferences.Editor edit = BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit(); + edit.putString(str, str2); + edit.commit(); + } + + public static String getString(String str, String str2) { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(str, str2); + } + + public static String getString(String str) { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(str, ""); + } + + public static long getTokenSaveTime() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getLong(KEY_TOKEN_SAVE_TIME, 0L); + } + + public static String getSeries() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_SERIES, null); + } + + public static void setSeries(String str) { + SharedPreferences sharedPreferences = BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0); + try { + if (sharedPreferences.edit().putString(KEY_SERIES, str).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_REGIST, null); + } + } catch (Exception unused) { + } catch (Throwable th) { + sharedPreferences.edit().putString(KEY_SERIES, str).commit(); + throw th; + } + sharedPreferences.edit().putString(KEY_SERIES, str).commit(); + } + + public static String getToken() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_TOKEN, null); + } + + public static void setToken(String str) { + if (BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_TOKEN, str).putLong(KEY_TOKEN_SAVE_TIME, System.currentTimeMillis()).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_TOKEN, null); + BaseApplication.getInstance().getContentResolver().notifyChange(URI_BASE, null); + } + } + + public static String getRegist() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_Regist, ""); + } + + public static void setRegist(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_Regist, str).commit(); + } + + public static String getSchool() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_SCHOOL, ""); + } + + public static void setSchool(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_SCHOOL, str).commit(); + } + + public static String getClazz() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_CLAZZ, ""); + } + + public static void setClazz(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_CLAZZ, str).commit(); + } + + public static String getBindDeviceId() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_ZB01_SDB_DEVICE_ID, ""); + } + + public static void setBindDeivceId(String str) { + if (BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_ZB01_SDB_DEVICE_ID, str).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_DEVICEID, null); + Log.e("ww", "通知数值 变化"); + } + } + + public static String getBluetoothName() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_ZB01_BLUETOOTH_NAME, ""); + } + + public static String getBluetoothDi() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_ZB01_BLUETOOTH_DI, ""); + } + + public static String getBluetoothSn() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_ZB01_BLUETOOTH_SN, ""); + } + + public static void setBluetoothName(String str) { + if (BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_ZB01_BLUETOOTH_NAME, str).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_DEVICEID, null); + Log.e("ww", "通知数值 变化"); + } + } + + public static void setBluetoothDi(String str) { + if (BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_ZB01_BLUETOOTH_DI, str).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_DEVICEID, null); + Log.e("ww", "通知数值 变化"); + } + } + + public static void setBluetoothSn(String str) { + if (BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_ZB01_BLUETOOTH_SN, str).commit()) { + BaseApplication.getInstance().getContentResolver().notifyChange(URI_DEVICEID, null); + Log.e("ww", "通知数值 变化"); + } + } + + public static String getSucceed() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_SUCCEED, ""); + } + + public static void setSucceed(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_SUCCEED, str).commit(); + } + + public static String getSjc() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_SJC, ""); + } + + public static void setSjc(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_SJC, str).commit(); + } + + public static String getBnClock() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_BNDK, ""); + } + + public static void setBnClock(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_BNDK, str).commit(); + } + + public static String getYnClock() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_YNDK, ""); + } + + public static void setYnClock(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_YNDK, str).commit(); + } + + public static String getClock() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_DK, ""); + } + + public static void setClock(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_DK, str).commit(); + } + + public static String getUserIcon() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_ICON, ""); + } + + public static void setUserIcon(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_ICON, str).commit(); + } + + public static void setUserId(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_USER_ID, str).commit(); + } + + public static String getUserId() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_USER_ID, ""); + } + + public static int getYear() { + return getSp().getInt(KEY_YEAR, 0); + } + + public static void setYear(int i) { + getSp().edit().putInt(KEY_YEAR, i).apply(); + } + + public static int getContinueDays() { + return getSp().getInt(KEY_JLSJ, 0); + } + + public static void setContinueDays(int i) { + getSp().edit().putInt(KEY_JLSJ, i).apply(); + } + + public static int getBnid() { + return getSp().getInt(KEY_BNID, 0); + } + + public static void setBnid(int i) { + getSp().edit().putInt(KEY_BNID, i).apply(); + } + + public static int getYnid() { + return getSp().getInt(KEY_YNID, 0); + } + + public static void setYnid(int i) { + getSp().edit().putInt(KEY_YNID, i).apply(); + } + + public static int getMonth() { + return getSp().getInt(KEY_Rl, 0); + } + + public static void setMonth(int i) { + getSp().edit().putInt(KEY_Rl, i).apply(); + } + + public static int getDay() { + return getSp().getInt(KEY_Day, 0); + } + + public static void setDay(int i) { + getSp().edit().putInt(KEY_Day, i).apply(); + } + + public static String getDkhd() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_XXDK, ""); + } + + public static void setDkhd(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_XXDK, str).commit(); + } + + public static String getXXdk() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_DKHd, ""); + } + + public static void setXXdk(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_DKHd, str).commit(); + } + + public static String getUserNickName() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_NICKNAME, ""); + } + + public static void setUserNickName(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_NICKNAME, str).commit(); + } + + public static String getUserSex() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_SEX, ""); + } + + public static void setUserSex(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_SEX, str).commit(); + } + + public static String getGrade() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_GRADE, ""); + } + + public static void setGrade(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_GRADE, str).commit(); + } + + public static String getGradeLast() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_GRADE_LAST, "初中"); + } + + public static void setGradeLast(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_GRADE_LAST, str).commit(); + } + + public static String getAge() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_AGE, ""); + } + + public static void setAge(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_AGE, str).commit(); + } + + public static String getYx() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_Yx, ""); + } + + public static void setYx(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_Yx, str).commit(); + } + + public static String getQp() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_Qp, ""); + } + + public static void setQp(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_Qp, str).commit(); + } + + public static String getUserProvince() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_PROVINCE, ""); + } + + public static void setUserProvince(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_PROVINCE, str).commit(); + } + + public static String getUserCity() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_CITY, ""); + } + + public static void setUserCity(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_CITY, str).commit(); + } + + public static String getUserDistrict() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_DISTRICT, ""); + } + + public static void setUserDistrict(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_DISTRICT, str).commit(); + } + + public static String getUserRegion() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_REGION, ""); + } + + public static void setUserRegion(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_REGION, str).commit(); + } + + public static String getUserBirthday() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getString(KEY_BIRTHDAY, ""); + } + + public static void setUserBirthday(String str) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putString(KEY_BIRTHDAY, str).commit(); + } + + public static Long getGameTime() { + return Long.valueOf(BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getLong(KEY_GAME_TIME, 0L)); + } + + public static void setGameTime(long j) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putLong(KEY_GAME_TIME, j).apply(); + } + + public static void setDataList(Context context, String str, List list) { + if (list == null || list.size() <= 0) { + return; + } + SharedPreferences.Editor edit = context.getSharedPreferences(KEY_SJC, 0).edit(); + edit.putString(str, new Gson().toJson(list)); + edit.commit(); + } + + public static String getDataList(Context context, String str) { + return context.getSharedPreferences(KEY_SJC, 0).getString(str, null); + } + + public static int getHystate() { + return BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).getInt(KEY_ZNHY, 0); + } + + public static void setHystate(int i) { + BaseApplication.getInstance().getSharedPreferences(Constant.PREFERENCE, 0).edit().putInt(KEY_ZNHY, i).apply(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/StudyRecordAPKInfo.java b/app/src/main/java/com/handuan/os/jxw/StudyRecordAPKInfo.java new file mode 100644 index 0000000..21f8d9a --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/StudyRecordAPKInfo.java @@ -0,0 +1,175 @@ +package com.handuan.os.jxw; + +public class StudyRecordAPKInfo { + public static final String ARG_DICT_ANCIENT_CN = "古汉语词典"; + public static final String ARG_DICT_ANCIENT_POETIC = "古诗文词典"; + public static final String ARG_DICT_CN = "汉语词典"; + public static final String ARG_DICT_CN_EN = "汉英大词典"; + public static final String ARG_DICT_EN_CN = "英汉大词典"; + public static final String ARG_DICT_IDIOM = "成语词典"; + public static final String ARG_DICT_LONGMAN_DANG_DAI = "朗文当代"; + public static final String ARG_DICT_LONGMAN_SHUANG_JIE = "朗文双解"; + public static final String ARG_DICT_MIDDLE_PRIMARY_EN_CN = "中小学英汉词典"; + public static final String ARG_DICT_TONG_FAN_YI = "同反义词典"; + public static final String ARG_DICT_XIN_HUA = "新华字典"; + public static final String ARG_FILE_LIST_EXAM = "1"; + public static final String ARG_FILE_LIST_HG = "3"; + public static final String ARG_FILE_LIST_MOVIE = "2"; + public static final String ARG_ON_LINE_STUDY_LIST_BIOLOGY = "d:/同步学习/生物|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_BIOLOGYFD = "d:/同步学习/生物|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_CH = "d:/同步学习/语文|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_CHDD = "d:/同步学习/语文|e:JWLB"; + public static final String ARG_ON_LINE_STUDY_LIST_CHEMISTRY = "d:/同步学习/化学|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_CHEMISTRYFD = "d:/同步学习/化学|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_CHFD = "d:/同步学习/语文|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_EN = "d:/同步学习/英语|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_ENDD = "d:/同步学习/英语|e:JWLB"; + public static final String ARG_ON_LINE_STUDY_LIST_ENFD = "d:/同步学习/英语|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_GEOGRAPHY = "d:/同步学习/地理|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_GEOGRAPHYFD = "d:/同步学习/地理|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_HISTORY = "d:/同步学习/历史|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_HISTORYFD = "d:/同步学习/历史|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_MATH = "d:/同步学习/数学|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_MATHDD = "d:/同步学习/数学|e:JWLB"; + public static final String ARG_ON_LINE_STUDY_LIST_MATHFD = "d:/同步学习/数学|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_BIOLOGY = "d:/中学同步/生物|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_CH = "d:/中学同步/语文|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_CHEMISTRY = "d:/中学同步/化学|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_EN = "d:/中学同步/英语|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_GEOGRAPHY = "d:/中学同步/地理|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_HISTORY = "d:/中学同步/历史|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_MATH = "d:/中学同步/数学|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_PHYSICS = "d:/中学同步/物理|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_MID_POLITICS = "d:/中学同步/政治|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_PHYSICS = "d:/同步学习/物理|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_PHYSICSFD = "d:/同步学习/物理|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_POLITICS = "d:/同步学习/政治|e:JXW"; + public static final String ARG_ON_LINE_STUDY_LIST_POLITICSFD = "d:/同步学习/政治|e:JWFD"; + public static final String ARG_ON_LINE_STUDY_LIST_PRI_CH = "d:/小学同步/语文|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_PRI_EN = "d:/小学同步/英语|e:wtb"; + public static final String ARG_ON_LINE_STUDY_LIST_PRI_MATH = "d:/小学同步/数学|e:wtb"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_BASE_WORD = "基础词语"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_CHAR_KNOWLEDGE = "汉字知识"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_CLASSIC_CH = "文言文"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_CLASSIC_POETRY = "古诗词曲"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_PUNCTUATION = "标点符号"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_READ = "现代文阅读"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_RHETORIC = "修辞手法"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_SENTENCE = "句子知识"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_CH_WRITING = "语文写作"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_BASE_VOICE = "基础语音"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_GRAMMAR = "英语语法"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_LISTENING_TRAINING = "听力训练"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_READ = "英语阅读"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_SPOKEN = "口语交际"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_VOCABULARY = "中学词汇"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_EN_WRITING = "英语写作"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_EASY_WRONG_TOPIC = "数学易错题汇"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_EQUATION = "方程精解"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_FORMULA = "公式大全"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_FUNC = "函数解析"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_GEOMETRY = "几何定理"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_OFTEN_TEST = "数学常考知识"; + public static final String ARG_SUB_ON_LINE_STUDY_MID_MATH_PREPARE_TEST = "备战中高考"; + public static final String ARG_SUB_ON_LINE_STUDY_MORE_USER_GUIDE = "使用指南"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_CH_BASE_WORD = "基础词语"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_CH_CLASSIC_POETRY = "古诗词"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_CH_READ = "阅读指导"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_CH_VALUABLE = "中华宝典"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_CH_WRITING = "语文写作"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_EN_GRAMMAR = "英语语法"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_EN_READ = "英语阅读"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_EN_SPOKEN = "口语交际"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_EN_VOCABULARY = "英语词汇"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_EN_WRITING = "英语写作"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_MATH_AO_SHU = "奥数训练"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_MATH_EQUATION = "式与方程"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_MATH_FORMULA = "数学公式"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_MATH_NUM_ARITHMETIC = "数的运算"; + public static final String ARG_SUB_ON_LINE_STUDY_PRI_MATH_YING_YONG_TI = "应用题训练"; + public static final String CLASS_CALC = "com.android.calculator2.Calculator"; + public static final String CLASS_CAMERA = "com.android.camera.CameraActivity"; + public static final String CLASS_CHARACTER = "com.jxw.characterlearning.MainActivity"; + public static final String CLASS_FILE_MNG = "com.jxw.fileexplorer.activity.ListViewActivity"; + public static final String CLASS_FOUR_ARITHMETIC = ""; + public static final String CLASS_KOU_JUE = "com.example.arithmeticformula.MainActivity"; + public static final String CLASS_LETTER = "com.jxw.letterstudynew.MainActivity"; + public static final String CLASS_MNKS_TEST = "com.jxw.examsystem.StartExamActivity"; + public static final String CLASS_MUSIC = "com.jxw.musicbox.activity.MainActivity"; + public static final String CLASS_MY_APP = "com.jxw.myappclication.activity.MainActivity"; + public static final String CLASS_NAME_DICT = "com.jxw.vanhondictionary.MainActivity"; + public static final String CLASS_NAME_FILE_LIST = "com.jxw.filelist.activity.FileListActivity"; + public static final String CLASS_NAME_ON_LINE_STUDY = "com.jxw.online_study.activity.BookStudyActivity"; + public static final String CLASS_NAME_ON_LINE_STUDY_LIST = "com.jxw.online_study.activity.BookCaseWrapperActivity"; + public static final String CLASS_NEW_WORD = "com.jxw.newwordslibrary.MainActivity"; + public static final String CLASS_NUMBER = "com.jxw.studydigital.StuDydigitalActivity"; + public static final String CLASS_ONLINE_QA = "com.baidu.homework.activity.init.InitActivity"; + public static final String CLASS_PARENTS_MNG = "com.jxw.learningmanagecenter.MainActivity"; + public static final String CLASS_PERIODIC_TABLE = "com.example.elementcycleapp.MainActivity"; + public static final String CLASS_PHONETIC = "com.jxw.englishsoundmark.Activity.MainActivity"; + public static final String CLASS_PHOTO = "com.android.gallery3d.app.GalleryActivity"; + public static final String CLASS_PIAN_PANG = "com.example.viewpageindicator.MainActivity"; + public static final String CLASS_PIN_YIN = "com.jxw.learnchinesepinyin.activity.MainActivity"; + public static final String CLASS_PROFESSION = "com.jxw.dictionary.MainActivity"; + public static final String CLASS_RECORDER = "com.jxw.soundrecorder.ui.SoundRecorder"; + public static final String CLASS_SECOND_LINE_COMPOSITION = "com.jxw.zuowen.activity.ZuowenActivity"; + public static final String CLASS_SECOND_LINE_DOWNLOAD = "com.jxw.applicationcenter.MainActivity"; + public static final String CLASS_SECOND_LINE_EXAM = "com.jxw.examcenter.activity.AppStartActivity"; + public static final String CLASS_SECOND_LINE_EXCHANGE = "com.jxw.learningcommunity.HomeActivity"; + public static final String CLASS_SECOND_LINE_GREEN_WEB = "com.jxw.healthonline.main.MainActivity"; + public static final String CLASS_SECOND_LINE_QA = "com.jxw.question.activity.SplashActivity"; + public static final String CLASS_SECOND_LINE_SEARCH = "com.jxw.searchstudy.SearchStudyActivity"; + public static final String CLASS_SECOND_LINE_TEACH = "com.jxw.main.act.SynchronizationClassesAct"; + public static final String CLASS_SIMULATION_TEST = "net.yyasp.middleschool.PgMain"; + public static final String CLASS_STROKE_NAME = "com.example.viewpageindicator.MainActivity"; + public static final String CLASS_STROKE_RULE = "com.example.viewpageindicator.MainActivity"; + public static final String CLASS_STUDY_DIAGNOSE = "com.jxw.studydiagnose.StudyDiagnoseActivity"; + public static final String CLASS_SYSTEM_MNG = "com.jxw.systemmanager.activity.MainActivity"; + public static final String CLASS_SYSTEM_SETTING = "com.android.settings.Settings"; + public static final String CLASS_TB_BOOK = "com.jxw.jxwbook.MainActivity"; + public static final String CLASS_THEME_STYLE = "com.jxw.desktoptheme.MainActivity"; + public static final String CLASS_VH_BOOK = "com.jxw.vanhonbook.MainActivity"; + public static final String CLASS_WRONG_RECORD = "com.jxw.examsystem.WrongBookView"; + public static final String PACKAGE_CALC = "com.android.calculator2"; + public static final String PACKAGE_CAMERA = "com.android.camera2"; + public static final String PACKAGE_CHARACTER = "com.jxw.characterlearning"; + public static final String PACKAGE_FILE_MNG = "com.jxw.fileexplorer"; + public static final String PACKAGE_FOUR_ARITHMETIC = ""; + public static final String PACKAGE_KOU_JUE = "com.example.arithmeticformula"; + public static final String PACKAGE_LETTER = "com.jxw.letterstudynew"; + public static final String PACKAGE_MNKS_TEST = "com.jxw.examsystem"; + public static final String PACKAGE_MUSIC = "com.jxw.musicbox.activity"; + public static final String PACKAGE_MY_APP = "com.jxw.myappclication"; + public static final String PACKAGE_NAME_DICT = "com.jxw.vanhondictionary"; + public static final String PACKAGE_NAME_FILE_LIST = "com.jxw.filelist.activity"; + public static final String PACKAGE_NAME_ON_LINE_STUDY = "com.jxw.online_study"; + public static final String PACKAGE_NEW_WORD = "com.jxw.launcher"; + public static final String PACKAGE_NUMBER = "com.jxw.studydigital"; + public static final String PACKAGE_ONLINE_QA = "com.baidu.homework"; + public static final String PACKAGE_PARENTS_MNG = "com.jxw.learningmanagecenter"; + public static final String PACKAGE_PERIODIC_TABLE = "com.example.elementcycleapp"; + public static final String PACKAGE_PHONETIC = "com.jxw.englishsoundmark"; + public static final String PACKAGE_PHOTO = "com.android.gallery3d"; + public static final String PACKAGE_PIAN_PANG = "com.example.pianpangbushou"; + public static final String PACKAGE_PIN_YIN = "com.jxw.learnchinesepinyin"; + public static final String PACKAGE_PROFESSION = "com.jxw.dictionary"; + public static final String PACKAGE_RECORDER = "com.jxw.soundrecorder"; + public static final String PACKAGE_SECOND_LINE_COMPOSITION = "com.jxw.netplatform"; + public static final String PACKAGE_SECOND_LINE_DOWNLOAD = "com.jxw.applicationcenter"; + public static final String PACKAGE_SECOND_LINE_EXAM = "com.jxw.examcenter.activity"; + public static final String PACKAGE_SECOND_LINE_EXCHANGE = "com.jxw.learningcommunity"; + public static final String PACKAGE_SECOND_LINE_GREEN_WEB = "com.jxw.healthonline.main"; + public static final String PACKAGE_SECOND_LINE_QA = "com.jxw.question"; + public static final String PACKAGE_SECOND_LINE_SEARCH = "com.jxw.searchstudy"; + public static final String PACKAGE_SECOND_LINE_TEACH = "com.jxw.main"; + public static final String PACKAGE_SIMULATION_TEST = "net.yyasp.middleschool"; + public static final String PACKAGE_STROKE_NAME = "com.jxw.bihuamingcheng"; + public static final String PACKAGE_STROKE_RULE = "com.jxw.bishunguize"; + public static final String PACKAGE_STUDY_DIAGNOSE = "com.jxw.studydiagnose"; + public static final String PACKAGE_SYSTEM_MNG = "com.jxw.systemmanager"; + public static final String PACKAGE_SYSTEM_SETTING = "com.android.settings"; + public static final String PACKAGE_TB_BOOK = "com.jxw.jxwbook"; + public static final String PACKAGE_THEME_STYLE = "com.jxw.desktoptheme"; + public static final String PACKAGE_VH_BOOK = "com.jxw.vanhonbook"; + public static final String PACKAGE_WRONG_RECORD = "com.jxw.examsystem"; +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/TabAdapter.java b/app/src/main/java/com/handuan/os/jxw/TabAdapter.java new file mode 100644 index 0000000..ac320e4 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/TabAdapter.java @@ -0,0 +1,83 @@ +package com.handuan.os.jxw; + +import android.view.View; +import android.widget.ImageView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.handuan.os.R; +import com.handuan.os.bean.jxw.TabBean; + +import java.util.List; + +public class TabAdapter extends BaseQuickAdapter { + private int defSel; + + private RadiaoOnItemClickListener listener; + + public interface RadiaoOnItemClickListener { + void onSelectClick(int i); + } + + public void setOnItemClickListener(RadiaoOnItemClickListener radiaoOnItemClickListener) { + listener = radiaoOnItemClickListener; + } + + public void setData(List list) { + this.defSel = -1; + setNewData(list); + } + + public void setChoosePosition(int i) { + int i2 = this.defSel; + if (i2 == i) { + return; + } + if (i2 != -1) { + getData().get(this.defSel).setSelect(false); + notifyItemChanged(this.defSel); + } + this.defSel = i; + if (this.defSel != -1) { + getData().get(this.defSel).setSelect(true); + notifyItemChanged(this.defSel); + } + } + + public TabAdapter(List list) { + super(R.layout.item_tab, list); + this.defSel = -1; + } + + @Override + public void convert(final BaseViewHolder baseViewHolder, TabBean tabBean) { + ImageView imageView = baseViewHolder.getView(R.id.tv_tab_icon); + ImageView imageView2 = baseViewHolder.getView(R.id.tv_tab_icon_pre); + ImageView imageView3 = baseViewHolder.getView(R.id.iv_b); + ImageView imageView4 = baseViewHolder.getView(R.id.iv_x); + imageView.setBackgroundResource(tabBean.getTab_Normal()); + imageView2.setBackgroundResource(tabBean.getTab_Press()); + if (tabBean.isSelect()) { + imageView.setVisibility(View.GONE); + imageView2.setVisibility(View.VISIBLE); + imageView3.setVisibility(View.VISIBLE); + imageView4.setVisibility(View.VISIBLE); + } else { + imageView.setVisibility(View.VISIBLE); + imageView2.setVisibility(View.INVISIBLE); + imageView3.setVisibility(View.INVISIBLE); + imageView4.setVisibility(View.INVISIBLE); + } + baseViewHolder.itemView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (listener != null) { + listener.onSelectClick(baseViewHolder.getAdapterPosition()); + } + + } + }); + } + + +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/ToastUtil.java b/app/src/main/java/com/handuan/os/jxw/ToastUtil.java new file mode 100644 index 0000000..48f0f61 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/ToastUtil.java @@ -0,0 +1,34 @@ +package com.handuan.os.jxw; + +import android.content.Context; +import android.view.Gravity; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.TextView; +import android.widget.Toast; + +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; + +public class ToastUtil { + public static void showTextToastDia(Context context, String str) { + View inflate = LayoutInflater.from(context).inflate(R.layout.toast_text_layout, (ViewGroup) null); + ((TextView) inflate.findViewById(R.id.tv_message)).setText(str); + Toast toast = new Toast(context); + toast.setGravity(Gravity.BOTTOM, 0, 0); + toast.setDuration(Toast.LENGTH_SHORT); + toast.setView(inflate); + toast.show(); + } + + public static void showTextToastDia(String str) { + View inflate = LayoutInflater.from(BaseApplication.getInstance()).inflate(R.layout.toast_text_layout, (ViewGroup) null); + ((TextView) inflate.findViewById(R.id.tv_message)).setText(str); + Toast toast = new Toast(BaseApplication.getInstance()); + toast.setGravity(Gravity.BOTTOM, 0, 0); + toast.setDuration(Toast.LENGTH_SHORT); + toast.setView(inflate); + toast.show(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/Util.java b/app/src/main/java/com/handuan/os/jxw/Util.java new file mode 100644 index 0000000..3c018c0 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/Util.java @@ -0,0 +1,59 @@ +package com.handuan.os.jxw; + +import android.content.ContentValues; +import android.content.Context; +import android.net.ConnectivityManager; +import android.net.NetworkInfo; +import android.net.Uri; +import android.util.Log; + +import java.text.SimpleDateFormat; +import java.util.Date; + +public class Util { + public static String getDate() { + return new SimpleDateFormat("yyyyMMdd").format(new Date()); + } + + + + public static boolean isNetworkAvailable(Context context) { + ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE); + NetworkInfo[] allNetworkInfo = connectivityManager.getAllNetworkInfo(); + boolean wifiConnected = false; + boolean mobileConnected = false; + for (NetworkInfo networkInfo : allNetworkInfo) { + String typeName = networkInfo.getTypeName(); + if (typeName.equalsIgnoreCase("WIFI") && networkInfo.isConnected()) { + wifiConnected = true; + } + if (typeName.equalsIgnoreCase("MOBILE") && networkInfo.isConnected()) { + mobileConnected = true; + } + } + return wifiConnected || mobileConnected; + } + + public static void insertData(Context context, String str, String str2, long j, String str3, String str4, String str5, String str6) { + Log.e("成长计划--埋点", str3); +// Uri parse = Uri.parse("content://com.jxw.maidain.StudyDetailsProvider/insert"); +// ContentValues contentValues = new ContentValues(); +// contentValues.put("appId", "com.jxw.launcher"); +// contentValues.put("subjectType", str6); +// contentValues.put("eventType", str2); +// contentValues.put("metricsValue", Long.valueOf(j)); +// contentValues.put("recordTime", Long.valueOf(System.currentTimeMillis())); +// contentValues.put("deviceType", "pb"); +// contentValues.put("recordMsg", str5); +// contentValues.put("eventId", str); +// contentValues.put("subjectName", str3); +// contentValues.put("subjectId", str4); +// try { +// context.getContentResolver().insert(parse, contentValues); +// } catch (Exception unused) { +// +// } + } + + +} diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/DdyfzFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/DdyfzFragment.java new file mode 100644 index 0000000..c926ace --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/DdyfzFragment.java @@ -0,0 +1,110 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.jxw.BaseNewFragment; + +public class DdyfzFragment extends BaseNewFragment { + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_ddyfz, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DdyfzFragment.this.hide(); + DdyfzFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + DdyfzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + DdyfzFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + DdyfzFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DdyfzFragment.this.hide(); + DdyfzFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + DdyfzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + DdyfzFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + DdyfzFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DdyfzFragment.this.hide(); + DdyfzFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + DdyfzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + DdyfzFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + DdyfzFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + } + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/DlFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/DlFragment.java new file mode 100644 index 0000000..6f1b102 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/DlFragment.java @@ -0,0 +1,112 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.jxw.BaseNewFragment; + + +public class DlFragment extends BaseNewFragment { + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_dl, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DlFragment.this.hide(); + DlFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + DlFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + DlFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + DlFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DlFragment.this.hide(); + DlFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + DlFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + DlFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + DlFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DlFragment.this.hide(); + DlFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + DlFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + DlFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + DlFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + } + + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/HxFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/HxFragment.java new file mode 100644 index 0000000..da811bb --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/HxFragment.java @@ -0,0 +1,242 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; +import com.handuan.os.bean.jxw.ItemsBean; +import com.handuan.os.jxw.AssertUtils; +import com.handuan.os.jxw.BaseNewFragment; +import com.handuan.os.view.jxw.widget.AppsDialog; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + +public class HxFragment extends BaseNewFragment { + private static final String FILE_NAME = "app_list_hx"; + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + RecyclerView rv_apps; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + private BaseQuickAdapter contentAdapter = new BaseQuickAdapter(R.layout.item_wl_app) { + + @Override + public void convert(BaseViewHolder baseViewHolder, final ItemsBean itemsBean) { + RelativeLayout relativeLayout = baseViewHolder.getView(R.id.rl_root); + ((ImageView) baseViewHolder.getView(R.id.iv_app_icon)).setImageResource(this.mContext.getResources().getIdentifier(itemsBean.getIcon(), "drawable", this.mContext.getPackageName())); + ((TextView) baseViewHolder.getView(R.id.tv_app_name)).setText(itemsBean.getText()); + relativeLayout.setTag(this.mContext.getResources().getString(this.mContext.getResources().getIdentifier(itemsBean.getTag(), "string", this.mContext.getPackageName()))); + relativeLayout.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TextUtils.isEmpty(itemsBean.getTag())) { + return; + } + HxFragment.this.jumpTag(itemsBean, view); + } + }); + } + }; + List appList = new ArrayList(); + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_hx, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + this.rv_apps = findViewById(R.id.rv_apps); + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext()); + linearLayoutManager.setOrientation(0); + this.rv_apps.setLayoutManager(linearLayoutManager); + this.rv_apps.setAdapter(this.contentAdapter); + getMyList(); + this.contentAdapter.setNewData(this.appList); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + HxFragment.this.hide(); + HxFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + HxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + HxFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + HxFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + HxFragment.this.hide(); + HxFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + HxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + HxFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + HxFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + HxFragment.this.hide(); + HxFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + HxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + HxFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + HxFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + findViewById(R.id.rl_apps).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + AppsDialog appsDialog = new AppsDialog(HxFragment.this.getActivity(), "hx"); + appsDialog.show(); + appsDialog.setOnCallback(new AppsDialog.Callback() { + @Override + public void onCallback() { + HxFragment.this.getMyList(); + HxFragment.this.contentAdapter.setNewData(HxFragment.this.appList); + } + }); + } + }); + } + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } + + public void getMyList() { + File fileStreamPath = BaseApplication.getInstance().getFileStreamPath(FILE_NAME); + if (fileStreamPath.exists()) { + try { + this.appList.clear(); + BufferedReader bufferedReader = new BufferedReader(new FileReader(fileStreamPath)); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine == null) { + break; + } + ItemsBean itemsBean = new ItemsBean(); + itemsBean.setText(readLine.split("\\|")[0]); + itemsBean.setIcon(readLine.split("\\|")[1]); + itemsBean.setTag(readLine.split("\\|")[2]); + this.appList.add(itemsBean); + } + bufferedReader.close(); + if (this.appList == null || this.appList.size() != 0) { + return; + } + this.appList.addAll(getApps()); + return; + } catch (IOException e) { + e.printStackTrace(); + return; + } + } + this.appList.addAll(getApps()); + } + + private List getApps() { + return (List) new Gson().fromJson(AssertUtils.getFromAssets(BaseApplication.getInstance(), "script/hx_default_app.json"), new TypeToken>() { + }.getType()); + } + + + public void jumpTag(ItemsBean itemsBean, View view) { + String obj = view.getTag().toString(); + saveTag(itemsBean); + this.contentAdapter.notifyDataSetChanged(); +// MyApp.getInstance().mBottomBtnOnClickListener.setContext(getActivity()); +// MyApp.getInstance().mBottomBtnOnClickListener.onClick(obj); + } + + private void saveTag(ItemsBean itemsBean) { + int i = 0; + while (true) { + if (i >= this.appList.size()) { + break; + } else if (this.appList.get(i).getTag().equals(itemsBean.getTag())) { + this.appList.remove(i); + break; + } else { + i++; + } + } + this.appList.add(0, itemsBean); + try { + FileOutputStream fileOutputStream = new FileOutputStream(BaseApplication.getInstance().getFileStreamPath(FILE_NAME), false); + for (int i2 = 0; i2 < this.appList.size() && i2 <= 1; i2++) { + fileOutputStream.write((this.appList.get(i2).getText() + "|" + this.appList.get(i2).getIcon() + "|" + this.appList.get(i2).getTag() + "\n").getBytes()); + } + fileOutputStream.flush(); + fileOutputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/KxFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/KxFragment.java new file mode 100644 index 0000000..a5cb9a2 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/KxFragment.java @@ -0,0 +1,111 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.jxw.BaseNewFragment; + +public class KxFragment extends BaseNewFragment { + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_kx, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + KxFragment.this.hide(); + KxFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + KxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + KxFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + KxFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + KxFragment.this.hide(); + KxFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + KxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + KxFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + KxFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + KxFragment.this.hide(); + KxFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + KxFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + KxFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + KxFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + } + + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/LsFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/LsFragment.java new file mode 100644 index 0000000..ee761fe --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/LsFragment.java @@ -0,0 +1,112 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.jxw.BaseNewFragment; + + +public class LsFragment extends BaseNewFragment { + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_ls, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + LsFragment.this.hide(); + LsFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + LsFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + LsFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + LsFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + LsFragment.this.hide(); + LsFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + LsFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + LsFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + LsFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + LsFragment.this.hide(); + LsFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + LsFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + LsFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + LsFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + } + + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/SwFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/SwFragment.java new file mode 100644 index 0000000..bef35b3 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/SwFragment.java @@ -0,0 +1,246 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; +import com.handuan.os.bean.jxw.ItemsBean; +import com.handuan.os.jxw.AssertUtils; +import com.handuan.os.jxw.BaseNewFragment; +import com.handuan.os.view.jxw.widget.AppsDialog; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.IOException; +import java.util.ArrayList; +import java.util.List; + + +public class SwFragment extends BaseNewFragment { + private static final String FILE_NAME = "app_list_sw"; + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + RecyclerView rv_apps; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + private BaseQuickAdapter contentAdapter = new BaseQuickAdapter(R.layout.item_wl_app) { + + @Override + public void convert(BaseViewHolder baseViewHolder, final ItemsBean itemsBean) { + RelativeLayout relativeLayout = baseViewHolder.getView(R.id.rl_root); + ((ImageView) baseViewHolder.getView(R.id.iv_app_icon)).setImageResource(this.mContext.getResources().getIdentifier(itemsBean.getIcon(), "drawable", this.mContext.getPackageName())); + ((TextView) baseViewHolder.getView(R.id.tv_app_name)).setText(itemsBean.getText()); + relativeLayout.setTag(this.mContext.getResources().getString(this.mContext.getResources().getIdentifier(itemsBean.getTag(), "string", this.mContext.getPackageName()))); + relativeLayout.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TextUtils.isEmpty(itemsBean.getTag())) { + return; + } + SwFragment.this.jumpTag(itemsBean, view); + } + }); + } + }; + List appList = new ArrayList(); + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_sw, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + this.rv_apps = findViewById(R.id.rv_apps); + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext()); + linearLayoutManager.setOrientation(0); + this.rv_apps.setLayoutManager(linearLayoutManager); + this.rv_apps.setAdapter(this.contentAdapter); + getMyList(); + this.contentAdapter.setNewData(this.appList); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + SwFragment.this.hide(); + SwFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + SwFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + SwFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + SwFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + SwFragment.this.hide(); + SwFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + SwFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + SwFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + SwFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + SwFragment.this.hide(); + SwFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + SwFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + SwFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + SwFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + findViewById(R.id.rl_apps).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + AppsDialog appsDialog = new AppsDialog(SwFragment.this.getActivity(), "sw"); + appsDialog.show(); + appsDialog.setOnCallback(new AppsDialog.Callback() { + @Override + public void onCallback() { + SwFragment.this.getMyList(); + SwFragment.this.contentAdapter.setNewData(SwFragment.this.appList); + } + }); + } + }); + } + + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } + + + public void getMyList() { + File fileStreamPath = BaseApplication.getInstance().getFileStreamPath(FILE_NAME); + if (fileStreamPath.exists()) { + try { + this.appList.clear(); + BufferedReader bufferedReader = new BufferedReader(new FileReader(fileStreamPath)); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine == null) { + break; + } + ItemsBean itemsBean = new ItemsBean(); + itemsBean.setText(readLine.split("\\|")[0]); + itemsBean.setIcon(readLine.split("\\|")[1]); + itemsBean.setTag(readLine.split("\\|")[2]); + this.appList.add(itemsBean); + } + bufferedReader.close(); + if (this.appList == null || this.appList.size() != 0) { + return; + } + this.appList.addAll(getApps()); + return; + } catch (IOException e) { + e.printStackTrace(); + return; + } + } + this.appList.addAll(getApps()); + } + + private List getApps() { + return (List) new Gson().fromJson(AssertUtils.getFromAssets(BaseApplication.getInstance(), "script/sw_default_app.json"), new TypeToken>() { + }.getType()); + } + + + public void jumpTag(ItemsBean itemsBean, View view) { + String obj = view.getTag().toString(); + saveTag(itemsBean); + this.contentAdapter.notifyDataSetChanged(); +// MyApp.getInstance().mBottomBtnOnClickListener.setContext(getActivity()); +// MyApp.getInstance().mBottomBtnOnClickListener.onClick(obj); + } + + private void saveTag(ItemsBean itemsBean) { + int i = 0; + while (true) { + if (i >= this.appList.size()) { + break; + } else if (this.appList.get(i).getTag().equals(itemsBean.getTag())) { + this.appList.remove(i); + break; + } else { + i++; + } + } + this.appList.add(0, itemsBean); + try { + FileOutputStream fileOutputStream = new FileOutputStream(BaseApplication.getInstance().getFileStreamPath(FILE_NAME), false); + for (int i2 = 0; i2 < this.appList.size() && i2 <= 1; i2++) { + fileOutputStream.write((this.appList.get(i2).getText() + "|" + this.appList.get(i2).getIcon() + "|" + this.appList.get(i2).getTag() + "\n").getBytes()); + } + fileOutputStream.flush(); + fileOutputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/WlFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/WlFragment.java new file mode 100644 index 0000000..041f5a2 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/WlFragment.java @@ -0,0 +1,250 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.text.TextUtils; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; +import com.handuan.os.bean.jxw.ItemsBean; +import com.handuan.os.jxw.AssertUtils; +import com.handuan.os.jxw.BaseNewFragment; +import com.handuan.os.view.jxw.widget.AppsDialog; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +public class WlFragment extends BaseNewFragment { + private static final String FILE_NAME = "app_list_wl"; + + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + RecyclerView rv_apps; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + private BaseQuickAdapter contentAdapter = new BaseQuickAdapter(R.layout.item_wl_app) { + @Override + public void convert(BaseViewHolder baseViewHolder, final ItemsBean itemsBean) { + RelativeLayout relativeLayout = baseViewHolder.getView(R.id.rl_root); + ImageView iv_app_icon =baseViewHolder.getView(R.id.iv_app_icon); + TextView tv_app_name = baseViewHolder.getView(R.id.tv_app_name); + iv_app_icon.setImageResource(mContext.getResources().getIdentifier(itemsBean.getIcon(), "drawable", mContext.getPackageName())); + tv_app_name.setText(itemsBean.getText()); + relativeLayout.setTag(mContext.getResources().getString(mContext.getResources().getIdentifier(itemsBean.getTag(), "string", mContext.getPackageName()))); + relativeLayout.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TextUtils.isEmpty(itemsBean.getTag())) { + return; + } + jumpTag(itemsBean, view); + } + }); + } + }; + List appList = new ArrayList(); + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_wl, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + ll_zjx = findViewById(R.id.ll_zjx); + ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + ll_tbjzx = findViewById(R.id.ll_tbjzx); + ll_dyfx = findViewById(R.id.ll_dyfx); + rl_jdbk = findViewById(R.id.rl_jdbk); + rv_apps = findViewById(R.id.rv_apps); + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext()); + linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL); + rv_apps.setLayoutManager(linearLayoutManager); + rv_apps.setAdapter(contentAdapter); + getMyList(); + contentAdapter.setNewData(appList); + } + + private void setListener() { + ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + hide(); + ll_tbjzx.setVisibility(View.VISIBLE); + ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + tv_tab_tbjzx.setVisibility(View.GONE); + iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + hide(); + ll_dyfx.setVisibility(View.VISIBLE); + ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + tv_tab_dyfx.setVisibility(View.GONE); + iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + hide(); + rl_jdbk.setVisibility(View.VISIBLE); + ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + tv_tab_jdbk.setVisibility(View.GONE); + iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + findViewById(R.id.rl_apps).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + AppsDialog appsDialog = new AppsDialog(getActivity(), "wl"); + appsDialog.show(); + appsDialog.setOnCallback(new AppsDialog.Callback() { + @Override + public void onCallback() { + getMyList(); + contentAdapter.setNewData(appList); + } + }); + } + }); + } + + public void hide() { + ll_tbjzx.setVisibility(View.GONE); + ll_dyfx.setVisibility(View.GONE); + rl_jdbk.setVisibility(View.GONE); + tv_tab_tbjzx.setVisibility(View.VISIBLE); + tv_tab_dyfx.setVisibility(View.VISIBLE); + tv_tab_jdbk.setVisibility(View.VISIBLE); + iv_tab_tbjzx.setVisibility(View.INVISIBLE); + iv_tab_dyfx.setVisibility(View.INVISIBLE); + iv_tab_jdbk.setVisibility(View.INVISIBLE); + } + + + public void getMyList() { + File fileStreamPath = BaseApplication.getInstance().getFileStreamPath(FILE_NAME); + if (fileStreamPath.exists()) { + try { + appList.clear(); + BufferedReader bufferedReader = new BufferedReader(new FileReader(fileStreamPath)); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine == null) { + break; + } + ItemsBean itemsBean = new ItemsBean(); + itemsBean.setText(readLine.split("\\|")[0]); + itemsBean.setIcon(readLine.split("\\|")[1]); + itemsBean.setTag(readLine.split("\\|")[2]); + appList.add(itemsBean); + } + bufferedReader.close(); + if (appList == null || appList.size() != 0) { + return; + } + appList.addAll(getApps()); + return; + } catch (IOException e) { + e.printStackTrace(); + return; + } + } + appList.addAll(getApps()); + } + + private List getApps() { + Gson gson = new Gson(); + String jsonString = AssertUtils.getFromAssets(BaseApplication.getInstance(), "script/wl_default_app.json"); + Type type = new TypeToken>() { + }.getType(); + List itemsBeans = gson.fromJson(jsonString, type); + return itemsBeans; + } + + public void jumpTag(ItemsBean itemsBean, View view) { + String obj = view.getTag().toString(); + saveTag(itemsBean); + contentAdapter.notifyDataSetChanged(); +// MyApp.getInstance().mBottomBtnOnClickListener.setContext(getActivity()); +// MyApp.getInstance().mBottomBtnOnClickListener.onClick(obj); + } + + private void saveTag(ItemsBean itemsBean) { + int i = 0; + while (true) { + if (i >= appList.size()) { + break; + } else if (appList.get(i).getTag().equals(itemsBean.getTag())) { + appList.remove(i); + break; + } else { + i++; + } + } + appList.add(0, itemsBean); + try { + FileOutputStream fileOutputStream = new FileOutputStream(BaseApplication.getInstance().getFileStreamPath(FILE_NAME), false); + for (int i2 = 0; i2 < appList.size() && i2 <= 1; i2++) { + fileOutputStream.write((appList.get(i2).getText() + "|" + appList.get(i2).getIcon() + "|" + appList.get(i2).getTag() + "\n").getBytes()); + } + fileOutputStream.flush(); + fileOutputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } +} diff --git a/app/src/main/java/com/handuan/os/jxw/fragment/ZzFragment.java b/app/src/main/java/com/handuan/os/jxw/fragment/ZzFragment.java new file mode 100644 index 0000000..0213317 --- /dev/null +++ b/app/src/main/java/com/handuan/os/jxw/fragment/ZzFragment.java @@ -0,0 +1,112 @@ +package com.handuan.os.jxw.fragment; + +import android.os.Bundle; +import android.view.LayoutInflater; +import android.view.View; +import android.view.ViewGroup; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.jxw.BaseNewFragment; + + +public class ZzFragment extends BaseNewFragment { + ImageView iv_tab_dyfx; + ImageView iv_tab_jdbk; + ImageView iv_tab_tbjzx; + LinearLayout ll_dyfx; + LinearLayout ll_tab_dyfx; + LinearLayout ll_tab_jdbk; + LinearLayout ll_tab_tbjzx; + LinearLayout ll_tbjzx; + RelativeLayout ll_zjx; + RelativeLayout rl_jdbk; + TextView tv_tab_dyfx; + TextView tv_tab_jdbk; + TextView tv_tab_tbjzx; + + + @Override + public void initListener() { + } + + @Override + protected void lazyLoad() { + } + + @Override + protected View createView(LayoutInflater layoutInflater, ViewGroup viewGroup, Bundle bundle) { + return layoutInflater.inflate(R.layout.fg_content_zz, viewGroup, false); + } + + @Override + protected void initView() { + initViews(); + setListener(); + } + + private void initViews() { + this.ll_zjx = findViewById(R.id.ll_zjx); + this.ll_tab_tbjzx = findViewById(R.id.ll_tab_tbjzx); + this.ll_tab_dyfx = findViewById(R.id.ll_tab_dyfx); + this.ll_tab_jdbk = findViewById(R.id.ll_tab_jdbk); + this.iv_tab_tbjzx = findViewById(R.id.iv_tab_tbjzx); + this.iv_tab_dyfx = findViewById(R.id.iv_tab_dyfx); + this.iv_tab_jdbk = findViewById(R.id.iv_tab_jdbk); + this.tv_tab_tbjzx = findViewById(R.id.tv_tab_tbjzx); + this.tv_tab_dyfx = findViewById(R.id.tv_tab_dyfx); + this.tv_tab_jdbk = findViewById(R.id.tv_tab_jdbk); + this.ll_tbjzx = findViewById(R.id.ll_tbjzx); + this.ll_dyfx = findViewById(R.id.ll_dyfx); + this.rl_jdbk = findViewById(R.id.rl_jdbk); + } + + private void setListener() { + this.ll_tab_tbjzx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ZzFragment.this.hide(); + ZzFragment.this.ll_tbjzx.setVisibility(View.VISIBLE); + ZzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_l); + ZzFragment.this.tv_tab_tbjzx.setVisibility(View.GONE); + ZzFragment.this.iv_tab_tbjzx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_dyfx.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ZzFragment.this.hide(); + ZzFragment.this.ll_dyfx.setVisibility(View.VISIBLE); + ZzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_c); + ZzFragment.this.tv_tab_dyfx.setVisibility(View.GONE); + ZzFragment.this.iv_tab_dyfx.setVisibility(View.VISIBLE); + } + }); + this.ll_tab_jdbk.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + ZzFragment.this.hide(); + ZzFragment.this.rl_jdbk.setVisibility(View.VISIBLE); + ZzFragment.this.ll_zjx.setBackgroundResource(R.drawable.icon_xk_zjx_r); + ZzFragment.this.tv_tab_jdbk.setVisibility(View.GONE); + ZzFragment.this.iv_tab_jdbk.setVisibility(View.VISIBLE); + } + }); + } + + + public void hide() { + this.ll_tbjzx.setVisibility(View.GONE); + this.ll_dyfx.setVisibility(View.GONE); + this.rl_jdbk.setVisibility(View.GONE); + this.tv_tab_tbjzx.setVisibility(View.VISIBLE); + this.tv_tab_dyfx.setVisibility(View.VISIBLE); + this.tv_tab_jdbk.setVisibility(View.VISIBLE); + this.iv_tab_tbjzx.setVisibility(View.INVISIBLE); + this.iv_tab_dyfx.setVisibility(View.INVISIBLE); + this.iv_tab_jdbk.setVisibility(View.INVISIBLE); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/utils/LenovoCsdkUtil.java b/app/src/main/java/com/handuan/os/utils/LenovoCsdkUtil.java index 368e39b..195fbbb 100644 --- a/app/src/main/java/com/handuan/os/utils/LenovoCsdkUtil.java +++ b/app/src/main/java/com/handuan/os/utils/LenovoCsdkUtil.java @@ -3,6 +3,7 @@ package com.handuan.os.utils; import android.annotation.SuppressLint; import android.app.csdk.CSDKManager; import android.content.Context; +import android.os.Build; import android.util.Log; import com.tencent.mmkv.MMKV; @@ -24,12 +25,17 @@ public class LenovoCsdkUtil { throw new RuntimeException("Context is NULL"); } this.mContext = context; - this.mCSDKManager = new CSDKManager(context); - if (mCSDKManager.isLicenseKeyEnabled(BuildConfig.APPLICATION_ID)) { - Log.e(TAG, "LenovoCsdkUtil: devices activated"); - } else { - Log.e(TAG, "LenovoCsdkUtil: devices not activated"); + try { + this.mCSDKManager = new CSDKManager(context); + if (mCSDKManager.isLicenseKeyEnabled(BuildConfig.APPLICATION_ID)) { + Log.e(TAG, "LenovoCsdkUtil: devices activated"); + } else { + Log.e(TAG, "LenovoCsdkUtil: devices not activated"); + } + } catch (Exception e) { + Log.e(TAG, "LenovoCsdkUtil: " + e.getMessage()); } + } public static void init(Context context) { @@ -58,6 +64,9 @@ public class LenovoCsdkUtil { } public String getSerial() { + if (BuildConfig.DEBUG) { + return "T811MN128GB23529041363"; + } String sn = mCSDKManager.getDeviceInfo(2); return sn; } diff --git a/app/src/main/java/com/handuan/os/utils/OpenApkUtils.java b/app/src/main/java/com/handuan/os/utils/OpenApkUtils.java index 54a0a82..be8190d 100644 --- a/app/src/main/java/com/handuan/os/utils/OpenApkUtils.java +++ b/app/src/main/java/com/handuan/os/utils/OpenApkUtils.java @@ -13,12 +13,12 @@ import android.util.Log; import com.google.gson.Gson; import com.google.gson.reflect.TypeToken; -import com.hjq.toast.Toaster; -import com.tencent.mmkv.MMKV; import com.handuan.os.bean.LessonJson; import com.handuan.os.config.CommonConfig; import com.handuan.os.jxw.JxwPackageConfig; import com.handuan.os.manager.RemoteManager; +import com.hjq.toast.Toaster; +import com.tencent.mmkv.MMKV; import java.lang.reflect.Type; import java.math.BigDecimal; @@ -634,4 +634,78 @@ public class OpenApkUtils { } return false; } + + public void openJxwApp(String paramStr) { + if (TextUtils.isEmpty(paramStr)) { + Log.e(TAG, "openJxwApp: params is null"); + return; + } + // 分割字符串(使用-1保留空元素,处理连续逗号情况) + String[] params = paramStr.split(",", -1); + if (params.length < 5) { + Log.e(TAG, "参数字符串格式错误,参数数量不足"); + return; + } + // 提取各项参数 + String packageName = params[0]; + String className = params[1]; + String extraStr = params[2]; + String fourthParam = params[3]; + String fifthParam = params[4]; + + try { + // 构建Intent + Intent intent = new Intent(); + ComponentName componentName = new ComponentName(packageName, className); + intent.setComponent(componentName); + + // 解析并添加Extra参数 + if (extraStr != null && !extraStr.isEmpty()) { + String[] extraParts = extraStr.split(":", 3); + if (extraParts.length == 3) { + String type = extraParts[0]; + String key = extraParts[1]; + String value = extraParts[2]; + + // 根据类型添加Extra + switch (type.toLowerCase()) { + case "int": + intent.putExtra(key, Integer.parseInt(value)); + break; + case "string": + intent.putExtra(key, value); + break; + case "boolean": + intent.putExtra(key, Boolean.parseBoolean(value)); + break; + case "long": + intent.putExtra(key, Long.parseLong(value)); + break; + // 可扩展支持其他类型(float、double等) + default: + Log.w(TAG, "不支持的Extra类型:" + type); + intent.putExtra(key, value); + break; + } + } else { + Log.e(TAG, "Extra参数格式错误:" + extraStr); + } + } + + // 如需传递第四、五项参数,可根据需求添加 + // intent.putExtra("fourth_param", fourthParam); + // intent.putExtra("fifth_param", fifthParam); + + // 启动Activity(需确保上下文是Activity或添加FLAG_ACTIVITY_NEW_TASK) +// if (!(context instanceof android.app.Activity)) { + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); +// } + mContext.startActivity(intent); + } catch (NumberFormatException e) { + Log.e(TAG, "参数类型转换失败", e); + } catch (Exception e) { + Log.e(TAG, "启动Activity失败", e); + } + + } } diff --git a/app/src/main/java/com/handuan/os/view/jxw/util/CircleImageView.java b/app/src/main/java/com/handuan/os/view/jxw/util/CircleImageView.java new file mode 100644 index 0000000..e2a1118 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/util/CircleImageView.java @@ -0,0 +1,436 @@ +package com.handuan.os.view.jxw.util; + +import android.content.Context; +import android.content.res.TypedArray; +import android.graphics.Bitmap; +import android.graphics.BitmapShader; +import android.graphics.Canvas; +import android.graphics.ColorFilter; +import android.graphics.Matrix; +import android.graphics.Outline; +import android.graphics.Paint; +import android.graphics.Rect; +import android.graphics.RectF; +import android.graphics.Shader; +import android.graphics.drawable.BitmapDrawable; +import android.graphics.drawable.ColorDrawable; +import android.graphics.drawable.Drawable; +import android.net.Uri; +import android.os.Build; +import android.util.AttributeSet; +import android.view.MotionEvent; +import android.view.View; +import android.view.ViewOutlineProvider; +import android.widget.ImageView; + +import com.handuan.os.R; + + +public class CircleImageView extends ImageView { + private static final int COLORDRAWABLE_DIMENSION = 2; + private static final int DEFAULT_BORDER_COLOR = -16777216; + private static final boolean DEFAULT_BORDER_OVERLAY = false; + private static final int DEFAULT_BORDER_WIDTH = 0; + private static final int DEFAULT_CIRCLE_BACKGROUND_COLOR = 0; + + + private Bitmap mBitmap; + private int mBitmapHeight; + private final Paint mBitmapPaint; + private BitmapShader mBitmapShader; + private int mBitmapWidth; + private int mBorderColor; + private boolean mBorderOverlay; + private final Paint mBorderPaint; + private float mBorderRadius; + private final RectF mBorderRect; + private int mBorderWidth; + private int mCircleBackgroundColor; + private final Paint mCircleBackgroundPaint; + private ColorFilter mColorFilter; + private boolean mDisableCircularTransformation; + private float mDrawableRadius; + private final RectF mDrawableRect; + private boolean mReady; + private boolean mSetupPending; + private final Matrix mShaderMatrix; + private static final ImageView.ScaleType SCALE_TYPE = ImageView.ScaleType.CENTER_CROP; + private static final Bitmap.Config BITMAP_CONFIG = Bitmap.Config.ARGB_8888; + + public CircleImageView(Context context) { + super(context); + this.mDrawableRect = new RectF(); + this.mBorderRect = new RectF(); + this.mShaderMatrix = new Matrix(); + this.mBitmapPaint = new Paint(); + this.mBorderPaint = new Paint(); + this.mCircleBackgroundPaint = new Paint(); + this.mBorderColor = DEFAULT_BORDER_COLOR; + this.mBorderWidth = DEFAULT_BORDER_WIDTH; + this.mCircleBackgroundColor = DEFAULT_CIRCLE_BACKGROUND_COLOR; + init(); + } + + public CircleImageView(Context context, AttributeSet attributeSet) { + this(context, attributeSet, 0); + } + + public CircleImageView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.mDrawableRect = new RectF(); + this.mBorderRect = new RectF(); + this.mShaderMatrix = new Matrix(); + this.mBitmapPaint = new Paint(); + this.mBorderPaint = new Paint(); + this.mCircleBackgroundPaint = new Paint(); + this.mBorderColor = DEFAULT_BORDER_COLOR; + this.mBorderWidth = DEFAULT_BORDER_WIDTH; + this.mCircleBackgroundColor = DEFAULT_CIRCLE_BACKGROUND_COLOR; + + // 优化TypedArray属性获取,使用常量索引替代硬编码 + TypedArray obtainStyledAttributes = context.obtainStyledAttributes( + attributeSet, R.styleable.CircleImageView, i, 0); + this.mBorderWidth = obtainStyledAttributes.getDimensionPixelSize( + R.styleable.CircleImageView_civ_border_width, DEFAULT_BORDER_WIDTH); + this.mBorderColor = obtainStyledAttributes.getColor( + R.styleable.CircleImageView_civ_border_color, DEFAULT_BORDER_COLOR); + this.mBorderOverlay = obtainStyledAttributes.getBoolean( + R.styleable.CircleImageView_civ_border_overlay, DEFAULT_BORDER_OVERLAY); + + // 优先使用civ_circle_background_color,兼容旧属性civ_fill_color + if (obtainStyledAttributes.hasValue(R.styleable.CircleImageView_civ_circle_background_color)) { + this.mCircleBackgroundColor = obtainStyledAttributes.getColor( + R.styleable.CircleImageView_civ_circle_background_color, DEFAULT_CIRCLE_BACKGROUND_COLOR); + } else if (obtainStyledAttributes.hasValue(R.styleable.CircleImageView_civ_fill_color)) { + this.mCircleBackgroundColor = obtainStyledAttributes.getColor( + R.styleable.CircleImageView_civ_fill_color, DEFAULT_CIRCLE_BACKGROUND_COLOR); + } + obtainStyledAttributes.recycle(); + + init(); + } + + private void init() { + super.setScaleType(SCALE_TYPE); + this.mReady = true; + if (Build.VERSION.SDK_INT >= 21) { + setOutlineProvider(new OutlineProvider()); + } + if (this.mSetupPending) { + setup(); + this.mSetupPending = false; + } + } + + @Override + public ImageView.ScaleType getScaleType() { + return SCALE_TYPE; + } + + @Override + public void setScaleType(ImageView.ScaleType scaleType) { + if (scaleType != SCALE_TYPE) { + throw new IllegalArgumentException(String.format("ScaleType %s not supported.", scaleType)); + } + } + + @Override + public void setAdjustViewBounds(boolean z) { + if (z) { + throw new IllegalArgumentException("adjustViewBounds not supported."); + } + } + + @Override + protected void onDraw(Canvas canvas) { + if (this.mDisableCircularTransformation) { + super.onDraw(canvas); + } else if (this.mBitmap == null) { + } else { + if (this.mCircleBackgroundColor != 0) { + canvas.drawCircle(this.mDrawableRect.centerX(), this.mDrawableRect.centerY(), this.mDrawableRadius, this.mCircleBackgroundPaint); + } + canvas.drawCircle(this.mDrawableRect.centerX(), this.mDrawableRect.centerY(), this.mDrawableRadius, this.mBitmapPaint); + if (this.mBorderWidth > 0) { + canvas.drawCircle(this.mBorderRect.centerX(), this.mBorderRect.centerY(), this.mBorderRadius, this.mBorderPaint); + } + } + } + + @Override + protected void onSizeChanged(int i, int i2, int i3, int i4) { + super.onSizeChanged(i, i2, i3, i4); + setup(); + } + + @Override + public void setPadding(int i, int i2, int i3, int i4) { + super.setPadding(i, i2, i3, i4); + setup(); + } + + @Override + public void setPaddingRelative(int i, int i2, int i3, int i4) { + super.setPaddingRelative(i, i2, i3, i4); + setup(); + } + + public int getBorderColor() { + return this.mBorderColor; + } + + public void setBorderColor(int i) { + if (i == this.mBorderColor) { + return; + } + this.mBorderColor = i; + this.mBorderPaint.setColor(this.mBorderColor); + invalidate(); + } + + @Deprecated + public void setBorderColorResource(int i) { + setBorderColor(getContext().getResources().getColor(i)); + } + + public int getCircleBackgroundColor() { + return this.mCircleBackgroundColor; + } + + public void setCircleBackgroundColor(int i) { + if (i == this.mCircleBackgroundColor) { + return; + } + this.mCircleBackgroundColor = i; + this.mCircleBackgroundPaint.setColor(i); + invalidate(); + } + + public void setCircleBackgroundColorResource(int i) { + setCircleBackgroundColor(getContext().getResources().getColor(i)); + } + + @Deprecated + public int getFillColor() { + return getCircleBackgroundColor(); + } + + @Deprecated + public void setFillColor(int i) { + setCircleBackgroundColor(i); + } + + @Deprecated + public void setFillColorResource(int i) { + setCircleBackgroundColorResource(i); + } + + public int getBorderWidth() { + return this.mBorderWidth; + } + + public void setBorderWidth(int i) { + if (i == this.mBorderWidth) { + return; + } + this.mBorderWidth = i; + setup(); + } + + public boolean isBorderOverlay() { + return this.mBorderOverlay; + } + + public void setBorderOverlay(boolean z) { + if (z == this.mBorderOverlay) { + return; + } + this.mBorderOverlay = z; + setup(); + } + + public boolean isDisableCircularTransformation() { + return this.mDisableCircularTransformation; + } + + public void setDisableCircularTransformation(boolean z) { + if (this.mDisableCircularTransformation == z) { + return; + } + this.mDisableCircularTransformation = z; + initializeBitmap(); + } + + @Override + public void setImageBitmap(Bitmap bitmap) { + super.setImageBitmap(bitmap); + initializeBitmap(); + } + + @Override + public void setImageDrawable(Drawable drawable) { + super.setImageDrawable(drawable); + initializeBitmap(); + } + + @Override + public void setImageResource(int i) { + super.setImageResource(i); + initializeBitmap(); + } + + @Override + public void setImageURI(Uri uri) { + super.setImageURI(uri); + initializeBitmap(); + } + + @Override + public void setColorFilter(ColorFilter colorFilter) { + if (colorFilter == this.mColorFilter) { + return; + } + this.mColorFilter = colorFilter; + applyColorFilter(); + invalidate(); + } + + @Override + public ColorFilter getColorFilter() { + return this.mColorFilter; + } + + private void applyColorFilter() { + Paint paint = this.mBitmapPaint; + if (paint != null) { + paint.setColorFilter(this.mColorFilter); + } + } + + private Bitmap getBitmapFromDrawable(Drawable drawable) { + Bitmap createBitmap; + if (drawable == null) { + return null; + } + if (drawable instanceof BitmapDrawable) { + return ((BitmapDrawable) drawable).getBitmap(); + } + try { + if (drawable instanceof ColorDrawable) { + createBitmap = Bitmap.createBitmap(COLORDRAWABLE_DIMENSION, COLORDRAWABLE_DIMENSION, BITMAP_CONFIG); + } else { + createBitmap = Bitmap.createBitmap(drawable.getIntrinsicWidth(), drawable.getIntrinsicHeight(), BITMAP_CONFIG); + } + Canvas canvas = new Canvas(createBitmap); + drawable.setBounds(0, 0, canvas.getWidth(), canvas.getHeight()); + drawable.draw(canvas); + return createBitmap; + } catch (Exception e) { + e.printStackTrace(); + return null; + } + } + + private void initializeBitmap() { + if (this.mDisableCircularTransformation) { + this.mBitmap = null; + } else { + this.mBitmap = getBitmapFromDrawable(getDrawable()); + } + setup(); + } + + private void setup() { + int i; + if (!this.mReady) { + this.mSetupPending = true; + } else if (getWidth() == 0 && getHeight() == 0) { + } else { + Bitmap bitmap = this.mBitmap; + if (bitmap == null) { + invalidate(); + return; + } + this.mBitmapShader = new BitmapShader(bitmap, Shader.TileMode.CLAMP, Shader.TileMode.CLAMP); + this.mBitmapPaint.setAntiAlias(true); + this.mBitmapPaint.setShader(this.mBitmapShader); + this.mBorderPaint.setStyle(Paint.Style.STROKE); + this.mBorderPaint.setAntiAlias(true); + this.mBorderPaint.setColor(this.mBorderColor); + this.mBorderPaint.setStrokeWidth(this.mBorderWidth); + this.mCircleBackgroundPaint.setStyle(Paint.Style.FILL); + this.mCircleBackgroundPaint.setAntiAlias(true); + this.mCircleBackgroundPaint.setColor(this.mCircleBackgroundColor); + this.mBitmapHeight = this.mBitmap.getHeight(); + this.mBitmapWidth = this.mBitmap.getWidth(); + this.mBorderRect.set(calculateBounds()); + this.mBorderRadius = Math.min((this.mBorderRect.height() - this.mBorderWidth) / 2.0f, (this.mBorderRect.width() - this.mBorderWidth) / 2.0f); + this.mDrawableRect.set(this.mBorderRect); + if (!this.mBorderOverlay && (i = this.mBorderWidth) > 0) { + this.mDrawableRect.inset(i - 1.0f, i - 1.0f); + } + this.mDrawableRadius = Math.min(this.mDrawableRect.height() / 2.0f, this.mDrawableRect.width() / 2.0f); + applyColorFilter(); + updateShaderMatrix(); + invalidate(); + } + } + + // 修复反编译导致的变量未定义问题(补充viewWidth和viewHeight定义) + private RectF calculateBounds() { + int viewWidth = getWidth(); + int viewHeight = getHeight(); + int min = Math.min( + (viewWidth - getPaddingLeft()) - getPaddingRight(), + (viewHeight - getPaddingTop()) - getPaddingBottom() + ); + float paddingLeft = getPaddingLeft() + ((viewWidth - min) / 2.0f); + float paddingTop = getPaddingTop() + ((viewHeight - min) / 2.0f); + float f = min; + return new RectF(paddingLeft, paddingTop, paddingLeft + f, f + paddingTop); + } + + private void updateShaderMatrix() { + float scale; + float dx = 0.0f; + float dy = 0.0f; + + if (mBitmapWidth * mDrawableRect.height() > mDrawableRect.width() * mBitmapHeight) { + scale = mDrawableRect.height() / (float) mBitmapHeight; + dx = (mDrawableRect.width() - (mBitmapWidth * scale)) * 0.5f; + } else { + scale = mDrawableRect.width() / (float) mBitmapWidth; + dy = (mDrawableRect.height() - (mBitmapHeight * scale)) * 0.5f; + } + + mShaderMatrix.setScale(scale, scale); + mShaderMatrix.postTranslate( + (int) (dx + 0.5f) + mDrawableRect.left, + (int) (dy + 0.5f) + mDrawableRect.top + ); + mBitmapShader.setLocalMatrix(mShaderMatrix); + } + + @Override + public boolean onTouchEvent(MotionEvent motionEvent) { + return inTouchableArea(motionEvent.getX(), motionEvent.getY()) && super.onTouchEvent(motionEvent); + } + + private boolean inTouchableArea(float x, float y) { + double centerX = mBorderRect.centerX(); + double centerY = mBorderRect.centerY(); + return Math.pow(x - centerX, 2) + Math.pow(y - centerY, 2) <= Math.pow(mBorderRadius, 2); + } + + private class OutlineProvider extends ViewOutlineProvider { + private OutlineProvider() { + } + + @Override + public void getOutline(View view, Outline outline) { + Rect rect = new Rect(); + CircleImageView.this.mBorderRect.roundOut(rect); + outline.setRoundRect(rect, rect.width() / 2.0f); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/view/AlphaImageView.java b/app/src/main/java/com/handuan/os/view/jxw/view/AlphaImageView.java new file mode 100644 index 0000000..c9c4928 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/view/AlphaImageView.java @@ -0,0 +1,33 @@ +package com.handuan.os.view.jxw.view; + +import android.content.Context; +import android.util.AttributeSet; +import android.view.MotionEvent; + +import androidx.appcompat.widget.AppCompatImageView; + +public class AlphaImageView extends AppCompatImageView { + public AlphaImageView(Context context) { + this(context, null); + } + + public AlphaImageView(Context context, AttributeSet attributeSet) { + this(context, attributeSet, 0); + } + + public AlphaImageView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + setClickable(true); + } + + @Override + public boolean onTouchEvent(MotionEvent motionEvent) { + int action = motionEvent.getAction(); + if (action == 0) { + setAlpha(0.6f); + } else if (action == 1 || action == 3) { + setAlpha(1.0f); + } + return super.onTouchEvent(motionEvent); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/view/JxwBatteryCircular.java b/app/src/main/java/com/handuan/os/view/jxw/view/JxwBatteryCircular.java new file mode 100644 index 0000000..88aa048 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/view/JxwBatteryCircular.java @@ -0,0 +1,253 @@ +package com.handuan.os.view.jxw.view; + +import android.animation.ValueAnimator; +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.graphics.PaintFlagsDrawFilter; +import android.graphics.Path; +import android.graphics.Rect; +import android.graphics.RectF; +import android.graphics.Typeface; +import android.os.Looper; +import android.util.AttributeSet; +import android.view.View; +import com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection; +import com.handuan.os.R; + +/* loaded from: classes2.dex */ +public class JxwBatteryCircular extends View { + private ValueAnimator animator; + float bottom; + Rect bounds; + private int chargingQuantity; + private int colorBCBCBE; + private int colorE21E1E; + private int height; + private boolean isCharging; + private boolean isSquare; + float left; + private int lowBatteryThreshold; + private float mBatteryHeadMargin; + private Paint mChargingBitmapPaint; + private Path mClickProgressPath; + private RectF mClipRectF; + private float mMargin; + private float mMiddleWidth; + private Paint mOuterPaint; + private RectF mOuterRectF; + private float mOuterRound; + private float mOuterStrokeWidth; + Paint mPaint; + private Paint mProgressPaint; + private float mProgressRadius; + private RectF mProgressRectF; + private float mUnitStrokeWidth; + float power_percent; + private int quantity; + float right; + float top; + float total; + private int width; + + /* renamed from: x */ + int f225x; + + /* renamed from: y */ + int f226y; + + public JxwBatteryCircular(Context context) { + this(context, null); + } + + public JxwBatteryCircular(Context context, AttributeSet attributeSet) { + this(context, attributeSet, 0); + } + + public JxwBatteryCircular(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.colorE21E1E = Color.parseColor("#FF0000"); + this.mOuterRectF = new RectF(); + this.quantity = 29; + this.mProgressRectF = new RectF(); + this.mClipRectF = new RectF(); + this.mClickProgressPath = new Path(); + this.isSquare = false; + this.lowBatteryThreshold = 30; + this.mPaint = new Paint(); + this.bounds = new Rect(); + float f = this.mMargin; + this.total = (((this.width + (f * 3.0f)) - (f * 3.0f)) - (this.mMiddleWidth * 2.0f)) - (this.mOuterStrokeWidth * 4.0f); + this.power_percent = (this.isCharging ? this.chargingQuantity : this.quantity) / 100.0f; + float f2 = this.mOuterStrokeWidth; + float f3 = this.mMiddleWidth; + this.left = f2 + 0.0f + f3; + this.top = 0.0f + f2 + f3; + this.right = (this.mMargin + f2 + f3 + this.total) * this.power_percent; + this.bottom = ((this.height - 0) - f2) - f3; + initParameter(); + initAllPaints(); + initAnimator(); + } + + private void initAnimator() { + this.animator = ValueAnimator.ofInt(0, 100); + this.animator.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() { // from class: com.jxw.launcher.view.JxwBatteryCircular.1 + @Override // android.animation.ValueAnimator.AnimatorUpdateListener + public void onAnimationUpdate(ValueAnimator valueAnimator) { + JxwBatteryCircular.this.chargingQuantity = ((Integer) valueAnimator.getAnimatedValue()).intValue(); + JxwBatteryCircular.this.invalidateView(); + } + }); + this.animator.setRepeatCount(-1); + this.animator.setDuration(AdaptiveTrackSelection.DEFAULT_MIN_TIME_BETWEEN_BUFFER_REEVALUTATION_MS); + this.animator.start(); + } + + private void initParameter() { + this.colorBCBCBE = 2013265919; + this.mUnitStrokeWidth = getResources().getDimension(R.dimen.x2); + this.mOuterStrokeWidth = getResources().getDimension(R.dimen.x2); + this.mBatteryHeadMargin = getResources().getDimension(R.dimen.x2); + this.mMargin = getResources().getDimension(R.dimen.x2); + this.mMiddleWidth = getResources().getDimension(R.dimen.x2); + } + + private void initAllPaints() { + this.mOuterPaint = new Paint(1); + this.mOuterPaint.setDither(true); + this.mOuterPaint.setAntiAlias(true); + this.mOuterPaint.setColor(-1); + this.mProgressPaint = new Paint(1); + this.mProgressPaint.setDither(true); + this.mProgressPaint.setAntiAlias(true); + this.mProgressPaint.setColor(-1); + this.mProgressPaint.setStrokeWidth(this.mUnitStrokeWidth); + this.mProgressPaint.setStyle(Paint.Style.FILL_AND_STROKE); + this.mChargingBitmapPaint = new Paint(); + this.mChargingBitmapPaint.setDither(true); + this.mChargingBitmapPaint.setAntiAlias(true); + this.mChargingBitmapPaint.setFilterBitmap(true); + } + + @Override // android.view.View + protected void onMeasure(int i, int i2) { + super.onMeasure(i, i2); + this.width = getMeasuredWidth(); + this.height = getMeasuredHeight(); + int i3 = this.height; + this.mOuterRound = i3 / 2.0f; + float f = this.mMargin; + this.mProgressRadius = ((i3 - (f * 2.0f)) - (this.mOuterStrokeWidth * 2.0f)) / 2.0f; + this.mOuterRectF.set(f, f, (this.width - f) - this.mBatteryHeadMargin, i3 - f); + } + + @Override // android.view.View + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + onOuterDraw(canvas); + onProgressDraw(canvas); + } + + private void onOuterDraw(Canvas canvas) { + this.mOuterPaint.setStrokeWidth(this.mOuterStrokeWidth); + this.mOuterPaint.setStyle(Paint.Style.STROKE); + if (this.isSquare) { + canvas.drawRect(this.mOuterRectF, this.mOuterPaint); + } else { + RectF rectF = this.mOuterRectF; + float f = this.mOuterRound; + canvas.drawRoundRect(rectF, f, f, this.mOuterPaint); + } + this.mOuterPaint.setStrokeWidth(this.mUnitStrokeWidth); + this.mOuterPaint.setStyle(Paint.Style.FILL_AND_STROKE); + this.mOuterPaint.setAntiAlias(true); + this.mPaint.setTypeface(Typeface.create(Typeface.DEFAULT_BOLD, 1)); + this.mPaint.setTextSize(getResources().getDimension(R.dimen.x20)); + this.mPaint.setColor(-1); + this.mPaint.setAntiAlias(true); + this.mPaint.getTextBounds(String.valueOf(this.quantity), 0, String.valueOf(this.quantity).length(), this.bounds); + Paint.FontMetricsInt fontMetricsInt = this.mPaint.getFontMetricsInt(); + this.f225x = (getMeasuredWidth() / 2) - (this.bounds.width() / 2); + this.f226y = (((getMeasuredHeight() - fontMetricsInt.bottom) + fontMetricsInt.top) / 2) - fontMetricsInt.top; + canvas.setDrawFilter(new PaintFlagsDrawFilter(0, 3)); + canvas.drawText(String.valueOf(this.quantity), this.f225x - getResources().getDimension(R.dimen.x1), this.f226y, this.mPaint); + } + + private void onProgressDraw(Canvas canvas) { + if (!this.isCharging) { + if (this.quantity > this.lowBatteryThreshold) { + this.mProgressPaint.setColor(this.colorBCBCBE); + } else { + this.mProgressPaint.setColor(this.colorE21E1E); + } + } else { + this.mProgressPaint.setColor(this.colorBCBCBE); + } + float f = this.mMargin; + this.total = (((this.width + (f * 3.0f)) - (f * 3.0f)) - (this.mMiddleWidth * 2.0f)) - (this.mOuterStrokeWidth * 4.0f); + this.power_percent = (this.isCharging ? this.chargingQuantity : this.quantity) / 100.0f; + float f2 = this.mOuterStrokeWidth; + float f3 = this.mMiddleWidth; + this.left = f2 + 0.0f + f3; + this.top = 0.0f + f2 + f3; + this.right = (this.mMargin + f2 + f3 + this.total) * this.power_percent; + this.bottom = ((this.height + 0) - f2) - f3; + this.mProgressRectF.set(this.left, this.top, this.right, this.bottom); + this.mClipRectF.set(this.left, this.top, this.mMargin + this.mOuterStrokeWidth + this.mMiddleWidth + this.total, this.bottom); + this.mClickProgressPath.reset(); + Path path = this.mClickProgressPath; + RectF rectF = this.mClipRectF; + float f4 = this.mProgressRadius; + path.addRoundRect(rectF, f4, f4, Path.Direction.CCW); + if (this.isSquare) { + canvas.drawRect(this.mProgressRectF, this.mProgressPaint); + return; + } + canvas.clipPath(this.mClickProgressPath); + RectF rectF2 = this.mProgressRectF; + float f5 = this.mProgressRadius; + canvas.drawRoundRect(rectF2, f5, f5, this.mProgressPaint); + } + + public void setPower(int i, boolean z) { + this.quantity = i; + this.isCharging = z; + checkQuantity(); + if (this.isCharging) { + if (this.animator.isRunning() || this.animator.isStarted()) { + return; + } + this.animator.start(); + return; + } + if (this.animator.isStarted() || this.animator.isRunning()) { + this.animator.cancel(); + } + invalidateView(); + } + + private void checkQuantity() { + int i = this.quantity; + if (i < 0) { + this.quantity = 0; + } else if (i > 100) { + this.quantity = 100; + } + } + + @Override // android.view.View + protected void onDetachedFromWindow() { + super.onDetachedFromWindow(); + } + + + public void invalidateView() { + if (Looper.getMainLooper() == Looper.myLooper()) { + invalidate(); + } else { + postInvalidate(); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/view/TypefaceTextView.java b/app/src/main/java/com/handuan/os/view/jxw/view/TypefaceTextView.java new file mode 100644 index 0000000..e38c204 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/view/TypefaceTextView.java @@ -0,0 +1,90 @@ +package com.handuan.os.view.jxw.view; + +import android.content.Context; +import android.graphics.Typeface; +import android.text.TextUtils; +import android.util.AttributeSet; +import android.widget.Checkable; + +import androidx.appcompat.widget.AppCompatTextView; + +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; +import com.handuan.os.jxw.FixDataPathUtils; +import com.hjq.permissions.Permission; +import com.hjq.permissions.XXPermissions; + +import java.util.HashMap; +import java.util.Map; + +public class TypefaceTextView extends AppCompatTextView implements Checkable { + String fontName; + private boolean mChecked; + public static Map typefaceMap = new HashMap(); + private static final int[] CHECKED_STATE_SET = {16842912}; + + public TypefaceTextView(Context context) { + this(context, null); + } + + public TypefaceTextView(Context context, AttributeSet attributeSet) { + this(context, attributeSet, 0); + } + + public TypefaceTextView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.fontName = context.obtainStyledAttributes(attributeSet, R.styleable.TypefaceTextView, i, 0).getString(R.styleable.TypefaceTextView_typeface); + init(); + } + + public void setTypeface(String str) { + this.fontName = str; + init(); + } + + private void init() { + String[] enablePath; + try { + if (XXPermissions.isGranted(BaseApplication.getInstance(), Permission.READ_EXTERNAL_STORAGE, Permission.WRITE_EXTERNAL_STORAGE)) { + if (!TextUtils.isEmpty(this.fontName) + && (enablePath = FixDataPathUtils.getEnablePath(BaseApplication.getInstance(), this.fontName)) != null + && enablePath.length > 0 && !TextUtils.isEmpty(enablePath[0])) { + if (typefaceMap.get(this.fontName) != null) { + setTypeface(typefaceMap.get(this.fontName)); + } else { + Typeface createFromFile = Typeface.createFromFile(enablePath[0]); + setTypeface(createFromFile); + typefaceMap.put(this.fontName, createFromFile); + } + } + setIncludeFontPadding(false); + } + } catch (Exception unused) { + } + } + + @Override + protected int[] onCreateDrawableState(int i) { + int[] onCreateDrawableState = super.onCreateDrawableState(i + 1); + if (isChecked()) { + mergeDrawableStates(onCreateDrawableState, CHECKED_STATE_SET); + } + return onCreateDrawableState; + } + + @Override + public void setChecked(boolean z) { + this.mChecked = z; + refreshDrawableState(); + } + + @Override + public boolean isChecked() { + return this.mChecked; + } + + @Override + public void toggle() { + this.mChecked = !this.mChecked; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/AppsDialog.java b/app/src/main/java/com/handuan/os/view/jxw/widget/AppsDialog.java new file mode 100644 index 0000000..9db8bc5 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/AppsDialog.java @@ -0,0 +1,240 @@ +package com.handuan.os.view.jxw.widget; + +import android.app.Activity; +import android.app.Dialog; +import android.content.Context; +import android.graphics.Point; +import android.os.Bundle; +import android.text.TextUtils; +import android.view.Display; +import android.view.View; +import android.view.WindowManager; +import android.widget.ImageView; +import android.widget.RelativeLayout; +import android.widget.TextView; + +import androidx.recyclerview.widget.GridLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.google.gson.Gson; +import com.google.gson.reflect.TypeToken; +import com.handuan.os.R; +import com.handuan.os.base.BaseApplication; +import com.handuan.os.bean.jxw.ItemsBean; +import com.handuan.os.jxw.AssertUtils; + +import java.io.BufferedReader; +import java.io.File; +import java.io.FileOutputStream; +import java.io.FileReader; +import java.io.IOException; +import java.lang.reflect.Type; +import java.util.ArrayList; +import java.util.List; + +public class AppsDialog extends Dialog { + private String FILE_NAME; + private Activity activity; + AppAdapter appAdapter; + List appList; + int count; + private Callback mCallback; + RecyclerView rv_apps; + TextView tv_title; + String type; + + public interface Callback { + void onCallback(); + } + + public AppsDialog(Context context, String str) { + super(context, R.style.ActionSheetDialogStyle); + this.appList = new ArrayList(); + this.FILE_NAME = "app_list_"; + this.activity = (Activity) context; + this.type = str; + this.FILE_NAME += str; + } + + @Override + protected void onCreate(Bundle bundle) { + super.onCreate(bundle); + setContentView(R.layout.dialog_yw_apps); + WindowManager windowManager = getWindow().getWindowManager(); + getWindow().setBackgroundDrawableResource(17170445); + Display defaultDisplay = windowManager.getDefaultDisplay(); + WindowManager.LayoutParams attributes = getWindow().getAttributes(); + defaultDisplay.getSize(new Point()); + getWindow().setAttributes(attributes); + setCanceledOnTouchOutside(true); + setCancelable(true); + getWindow().setDimAmount(0.3f); + initView(); + } + + private void initView() { + GridLayoutManager gridLayoutManager; + this.rv_apps = findViewById(R.id.rv_apps); + this.tv_title = findViewById(R.id.tv_title); + this.appAdapter = new AppAdapter(getApps()); + if (this.type.equals("yw")) { + this.tv_title.setText("语文学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 5); + this.count = 2; + } else if (this.type.equals("sx")) { + this.tv_title.setText("数学学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 5); + this.count = 2; + } else if (this.type.equals("yy")) { + this.tv_title.setText("英语学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 5); + this.count = 2; + } else if (this.type.equals("wl")) { + this.tv_title.setText("物理学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 4); + this.count = 1; + } else if (this.type.equals("hx")) { + this.tv_title.setText("化学学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 5); + this.count = 1; + } else if (this.type.equals("sw")) { + this.tv_title.setText("生物学习应用"); + gridLayoutManager = new GridLayoutManager(this.activity, 3); + this.count = 1; + } else { + gridLayoutManager = null; + } + this.rv_apps.setLayoutManager(gridLayoutManager); + this.rv_apps.setAdapter(this.appAdapter); + getMyList(); + findViewById(R.id.ll_gb).setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + AppsDialog.this.dismiss(); + } + }); + } + + public void setOnCallback(Callback callback) { + this.mCallback = callback; + } + + public class AppAdapter extends BaseQuickAdapter { + public AppAdapter(List list) { + super(R.layout.item_dialog_app, list); + } + + @Override + public void convert(BaseViewHolder baseViewHolder, final ItemsBean itemsBean) { + RelativeLayout relativeLayout = baseViewHolder.getView(R.id.rl_root); + ((ImageView) baseViewHolder.getView(R.id.iv_app_icon)).setImageResource(this.mContext.getResources().getIdentifier(itemsBean.getIcon(), "drawable", this.mContext.getPackageName())); + ((TextView) baseViewHolder.getView(R.id.tv_app_name)).setText(itemsBean.getText()); + relativeLayout.setTag(AppsDialog.this.activity.getResources().getString(this.mContext.getResources().getIdentifier(itemsBean.getTag(), "string", this.mContext.getPackageName()))); + relativeLayout.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TextUtils.isEmpty(itemsBean.getTag())) { + return; + } + AppsDialog.this.jumpTag(itemsBean, view); + } + }); + } + } + + private List getApps() { + String grade = "一年级"; + Gson gson = new Gson(); + String jsonString = AssertUtils.getFromAssets(BaseApplication.getInstance(), "script/" + this.type + "_apps.json"); + Type type = new TypeToken>() { + }.getType(); + List itemsBeans = gson.fromJson(jsonString, type); + List arrayList = new ArrayList<>(); + for (ItemsBean itemsBean : itemsBeans) { + if ("六年级".equals(grade)) { + String learnStage = itemsBean.getLearnStage(); + if (learnStage.contains("," + grade)) { + arrayList.add(itemsBean); + } + } else if (itemsBean.getLearnStage().contains(grade)) { + arrayList.add(itemsBean); + } + } + return arrayList; + } + + public void jumpTag(ItemsBean itemsBean, View view) { + if (this.activity != null) { + String viewTag = view.getTag().toString(); + saveTag(itemsBean); + Callback callback = this.mCallback; + if (callback != null) { + callback.onCallback(); + } +// MyApp.getInstance().mBottomBtnOnClickListener.setContext(this.activity); +// MyApp.getInstance().mBottomBtnOnClickListener.onClick(viewTag); + } + } + + private void saveTag(ItemsBean itemsBean) { + int i = 0; + while (true) { + if (i >= this.appList.size()) { + break; + } else if (this.appList.get(i).getTag().equals(itemsBean.getTag())) { + this.appList.remove(i); + break; + } else { + i++; + } + } + this.appList.add(0, itemsBean); + try { + FileOutputStream fileOutputStream = new FileOutputStream(BaseApplication.getInstance().getFileStreamPath(this.FILE_NAME), false); + for (int i2 = 0; i2 < this.appList.size() && i2 <= this.count; i2++) { + fileOutputStream.write((this.appList.get(i2).getText() + "|" + this.appList.get(i2).getIcon() + "|" + this.appList.get(i2).getTag() + "\n").getBytes()); + } + fileOutputStream.flush(); + fileOutputStream.close(); + } catch (IOException e) { + e.printStackTrace(); + } + } + + private void getMyList() { + File fileStreamPath = BaseApplication.getInstance().getFileStreamPath(this.FILE_NAME); + if (fileStreamPath.exists()) { + try { + BufferedReader bufferedReader = new BufferedReader(new FileReader(fileStreamPath)); + while (true) { + String readLine = bufferedReader.readLine(); + if (readLine != null) { + ItemsBean itemsBean = new ItemsBean(); + itemsBean.setText(readLine.split("\\|")[0]); + itemsBean.setIcon(readLine.split("\\|")[1]); + itemsBean.setTag(readLine.split("\\|")[2]); + this.appList.add(itemsBean); + } else { + bufferedReader.close(); + return; + } + } + } catch (IOException e) { + e.printStackTrace(); + } + } else { + this.appList.addAll(getdefaultApps()); + } + } + + private List getdefaultApps() { + Gson gson = new Gson(); + String jsonString = AssertUtils.getFromAssets(BaseApplication.getInstance(), "script/" + this.type + "_default_app.json"); + Type type = new TypeToken>() { + }.getType(); + List itemsBeans = gson.fromJson(jsonString, type); + return itemsBeans; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/DailyTasksView.java b/app/src/main/java/com/handuan/os/view/jxw/widget/DailyTasksView.java new file mode 100644 index 0000000..7ded16d --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/DailyTasksView.java @@ -0,0 +1,126 @@ +package com.handuan.os.view.jxw.widget; + + +import android.content.Context; +import android.content.Intent; +import android.util.AttributeSet; +import android.view.View; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.RelativeLayout; + +import androidx.recyclerview.widget.LinearLayoutManager; +import androidx.recyclerview.widget.RecyclerView; + +import com.handuan.os.R; +import com.handuan.os.bean.jxw.TaskBean; +import com.handuan.os.jxw.ToastUtil; +import com.handuan.os.jxw.Util; + +import java.util.ArrayList; +import java.util.List; + +public class DailyTasksView extends RelativeLayout { + List datas; + LinearLayout ll_not_data; + private Callback mCallback; + Context mContext; + RecyclerView rl_rw; + TasksAdapter tasksAdapter; + ImageView tv_1; + ImageView tv_2; + + public interface Callback { + void onCallback(); + } + + public DailyTasksView(Context context) { + super(context); + this.datas = new ArrayList(); + this.mContext = context; + init(); + } + + public DailyTasksView(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.datas = new ArrayList(); + this.mContext = context; + init(); + } + + public DailyTasksView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.datas = new ArrayList(); + this.mContext = context; + init(); + } + + public void showNotNetwork() { + this.ll_not_data.setVisibility(VISIBLE); + } + + public void hideNotNetwork() { + this.ll_not_data.setVisibility(GONE); + } + + private void init() { + View inflate = View.inflate(getContext(), R.layout.layout_daily_tasks, null); + addView(inflate); + this.rl_rw = inflate.findViewById(R.id.rl_rw); + this.ll_not_data = inflate.findViewById(R.id.ll_not_data); + this.tv_1 = inflate.findViewById(R.id.tv_1); + this.tv_2 = inflate.findViewById(R.id.tv_2); + LinearLayoutManager linearLayoutManager = new LinearLayoutManager(getContext()); + linearLayoutManager.setOrientation(LinearLayoutManager.VERTICAL); + this.rl_rw.setLayoutManager(linearLayoutManager); + if (!Util.isNetworkAvailable(this.mContext)) { + this.ll_not_data.setVisibility(VISIBLE); + } else { + this.ll_not_data.setVisibility(GONE); + } + this.tv_1.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (Util.isNetworkAvailable(DailyTasksView.this.mContext)) { + if (DailyTasksView.this.mCallback != null) { + DailyTasksView.this.mCallback.onCallback(); + } + DailyTasksView.this.ll_not_data.setVisibility(GONE); + return; + } + ToastUtil.showTextToastDia(DailyTasksView.this.mContext, "加载失败,请检查网络后重试"); + } + }); + this.tv_2.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + DailyTasksView.this.getContext().startActivity(new Intent("android.settings.WIFI_SETTINGS")); + } + }); + } + + public TasksAdapter getTasksAdapter() { + TasksAdapter tasksAdapter = this.tasksAdapter; + return tasksAdapter; + } + + public void setData(List list) { + this.datas.clear(); + this.datas = list; + this.tasksAdapter = new TasksAdapter(list); + this.rl_rw.setAdapter(this.tasksAdapter); + if (!Util.isNetworkAvailable(this.mContext)) { + this.ll_not_data.setVisibility(VISIBLE); + } else { + this.ll_not_data.setVisibility(GONE); + } + } + + public List getData() { + return this.datas; + } + + public void setOnCallback(Callback callback) { + this.mCallback = callback; + } +} diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView.java b/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView.java new file mode 100644 index 0000000..1cc6fcc --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView.java @@ -0,0 +1,61 @@ +package com.handuan.os.view.jxw.widget; + + +import android.content.Context; +import android.content.res.Resources; +import android.content.res.TypedArray; +import android.util.AttributeSet; +import android.util.Log; +import android.view.View; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import com.handuan.os.R; + +public class DashuDiaView extends LinearLayout { + int grade; + ImageView iv_djbg; + Context mContext; + TextView tv_dj; + + public DashuDiaView(Context context) { + super(context); + this.mContext = context; + } + + public DashuDiaView(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.mContext = context; + TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.DushuGrade); + this.grade = obtainStyledAttributes.getInteger(R.styleable.DushuGrade_drade, 0); + obtainStyledAttributes.recycle(); + init(); + } + + public DashuDiaView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.mContext = context; + TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.DushuGrade, i, 0); + this.grade = obtainStyledAttributes.getInteger(R.styleable.DushuGrade_drade, 0); + obtainStyledAttributes.recycle(); + init(); + } + + private void init() { + View inflate = View.inflate(getContext(), R.layout.layout_dashu_dia, null); + addView(inflate); + this.iv_djbg = inflate.findViewById(R.id.iv_djbg); + this.tv_dj = inflate.findViewById(R.id.tv_dj); + TextView textView = this.tv_dj; + textView.setText("LV" + this.grade); + } + + public void setdj(int i) { + Log.e("zsj", this.grade + "---------" + i); + if (this.grade <= i) { + Resources resources = getResources(); + this.iv_djbg.setBackgroundResource(resources.getIdentifier("icon_dia_ds_" + this.grade, "drawable", this.mContext.getPackageName())); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView10.java b/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView10.java new file mode 100644 index 0000000..66cc2ba --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/DashuDiaView10.java @@ -0,0 +1,58 @@ +package com.handuan.os.view.jxw.widget; + +import android.content.Context; +import android.content.res.Resources; +import android.content.res.TypedArray; +import android.util.AttributeSet; +import android.view.View; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.TextView; + +import com.handuan.os.R; + +public class DashuDiaView10 extends LinearLayout { + int grade; + ImageView iv_djbg; + Context mContext; + TextView tv_dj; + + public DashuDiaView10(Context context) { + super(context); + this.mContext = context; + } + + public DashuDiaView10(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.mContext = context; + TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.DushuGrade); + this.grade = obtainStyledAttributes.getInteger(R.styleable.DushuGrade_drade, 0); + obtainStyledAttributes.recycle(); + init(); + } + + public DashuDiaView10(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.mContext = context; + TypedArray obtainStyledAttributes = context.obtainStyledAttributes(attributeSet, R.styleable.DushuGrade, i, 0); + this.grade = obtainStyledAttributes.getInteger(R.styleable.DushuGrade_drade, 0); + obtainStyledAttributes.recycle(); + init(); + } + + private void init() { + View inflate = View.inflate(getContext(), R.layout.layout_dashu_dia_10, null); + addView(inflate); + this.iv_djbg = inflate.findViewById(R.id.iv_djbg); + this.tv_dj = inflate.findViewById(R.id.tv_dj); + TextView textView = this.tv_dj; + textView.setText("LV" + this.grade); + } + + public void setdj(int i) { + if (this.grade <= i) { + Resources resources = getResources(); + this.iv_djbg.setBackgroundResource(resources.getIdentifier("icon_dia_ds_" + this.grade, "drawable", this.mContext.getPackageName())); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/JxwPAGView.java b/app/src/main/java/com/handuan/os/view/jxw/widget/JxwPAGView.java new file mode 100644 index 0000000..275118a --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/JxwPAGView.java @@ -0,0 +1,24 @@ +package com.handuan.os.view.jxw.widget; + +import android.content.Context; +import android.util.AttributeSet; +import org.libpag.PAGFile; +import org.libpag.PAGView; + +public class JxwPAGView extends PAGView { + Context mContext; + + public JxwPAGView(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.mContext = context; + } + + public JxwPAGView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.mContext = context; + } + + public void setAssets(String str) { + setComposition(PAGFile.Load(this.mContext.getAssets(), str)); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/MyBannerIndicator.java b/app/src/main/java/com/handuan/os/view/jxw/widget/MyBannerIndicator.java new file mode 100644 index 0000000..a8bfa79 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/MyBannerIndicator.java @@ -0,0 +1,73 @@ +package com.handuan.os.view.jxw.widget; + +import android.content.Context; +import android.graphics.Canvas; +import android.graphics.Color; +import android.graphics.Paint; +import android.util.AttributeSet; +import android.view.View; + +public class MyBannerIndicator extends View { + private int currentPosition; + private int mCellCount; + private int mCellMargin; + private int mCellRadius; + private int mIndicatorColor; + private int mNoIndicatorColor; + private Paint mPaint; + + public MyBannerIndicator(Context context) { + this(context, null); + } + + public MyBannerIndicator(Context context, AttributeSet attributeSet) { + this(context, attributeSet, 0); + } + + public MyBannerIndicator(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.mCellRadius = 8; + this.mCellMargin = 15; + this.mIndicatorColor = Color.parseColor("#FFFFFF"); + this.mNoIndicatorColor = Color.parseColor("#66FFFFFF"); + init(); + } + + public void init() { + this.mPaint = new Paint(); + this.mPaint.setAntiAlias(true); + } + + public void setCellCount(int i) { + this.mCellCount = i; + invalidate(); + } + + public void setCurrentPosition(int i) { + this.currentPosition = i; + invalidate(); + } + + @Override + protected void onMeasure(int i, int i2) { + super.onMeasure(i, i2); + int i3 = this.mCellCount; + setMeasuredDimension(resolveSize(getPaddingLeft() + getPaddingRight() + (this.mCellRadius * 2 * i3) + (this.mCellMargin * (i3 - 1)), i), + resolveSize(getPaddingTop() + getPaddingBottom() + (this.mCellRadius * 2), i2)); + } + + @Override + protected void onDraw(Canvas canvas) { + super.onDraw(canvas); + for (int i = 0; i < this.mCellCount; i++) { + if (i == this.currentPosition) { + this.mPaint.setColor(this.mIndicatorColor); + } else { + this.mPaint.setColor(this.mNoIndicatorColor); + } + int paddingLeft = getPaddingLeft(); + int i2 = this.mCellRadius; + canvas.drawCircle(paddingLeft + (i * i2 * 2) + (this.mCellMargin * i) + i2, getHeight() / 2, this.mCellRadius, this.mPaint); + } + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/NoScrollViewPager.java b/app/src/main/java/com/handuan/os/view/jxw/widget/NoScrollViewPager.java new file mode 100644 index 0000000..a19d7d0 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/NoScrollViewPager.java @@ -0,0 +1,52 @@ +package com.handuan.os.view.jxw.widget; + +import android.content.Context; +import android.util.AttributeSet; +import android.view.MotionEvent; + +import androidx.viewpager.widget.ViewPager; + +public class NoScrollViewPager extends ViewPager { + private boolean noScroll; + private boolean noScrollAnim; + + public NoScrollViewPager(Context context) { + super(context); + this.noScroll = false; + this.noScrollAnim = false; + } + + public NoScrollViewPager(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.noScroll = false; + this.noScrollAnim = false; + } + + public void setNoScroll(boolean noScroll) { + this.noScroll = noScroll; + } + + public void setScrollAnim(boolean noScrollAnim) { + this.noScrollAnim = noScrollAnim; + } + + @Override + public boolean onTouchEvent(MotionEvent motionEvent) { + return !this.noScroll && super.onTouchEvent(motionEvent); + } + + @Override + public boolean onInterceptTouchEvent(MotionEvent motionEvent) { + return !this.noScroll && super.onInterceptTouchEvent(motionEvent); + } + + @Override + public void setCurrentItem(int item, boolean smoothScroll) { + super.setCurrentItem(item, smoothScroll); + } + + @Override + public void setCurrentItem(int item) { + super.setCurrentItem(item, this.noScrollAnim); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/NoSlideViewPager.java b/app/src/main/java/com/handuan/os/view/jxw/widget/NoSlideViewPager.java new file mode 100644 index 0000000..abea9b4 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/NoSlideViewPager.java @@ -0,0 +1,83 @@ +package com.handuan.os.view.jxw.widget; + +import android.content.Context; +import android.util.AttributeSet; +import android.view.MotionEvent; + +import androidx.viewpager.widget.ViewPager; + +/** + * 禁用滑动,且在 setCurrentItem 时强制直接切换页面的 ViewPager。 + */ +import android.content.Context; +import android.util.AttributeSet; +import android.view.MotionEvent; +import androidx.viewpager.widget.ViewPager; + +public class NoSlideViewPager extends ViewPager { + + public NoSlideViewPager(Context context) { + super(context); + } + + public NoSlideViewPager(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + } + + // ============== 修复点击事件的关键修改 START ============== + + /** + * 重写 onInterceptTouchEvent,**不再强制返回 false**。 + * 保持 ViewPager 默认的事件拦截逻辑。 + * ViewPager父类将能正确识别 ACTION_DOWN,并将事件传递给子View。 + */ + @Override + public boolean onInterceptTouchEvent(MotionEvent ev) { + // 让父类 ViewPager 来处理事件拦截的判断。 + // 对于 ACTION_DOWN,父类通常返回 false,让子View处理。 + // 对于 ACTION_MOVE,如果触发了拖拽,父类会返回 true 来拦截。 + // 为了确保不拦截,我们可以直接在 ACTION_MOVE 之前返回 false。 + // 但是为了兼容性,我们直接返回 false,并依赖 onTouchEvent 禁用滑动。 + // 最佳做法是:始终返回 false,确保事件能传到子View。 + return false; + } + + /** + * 重写 onTouchEvent,允许点击,禁用滑动。 + * **只处理 ACTION_DOWN 和 ACTION_UP,忽略 ACTION_MOVE**。 + */ + @Override + public boolean onTouchEvent(MotionEvent ev) { + // 如果是 ACTION_DOWN 或 ACTION_UP,我们将其视为点击事件, + // 允许 ViewPager 内部的子View/Fragment的View处理这个完整的点击序列。 + if (ev.getAction() == MotionEvent.ACTION_DOWN || ev.getAction() == MotionEvent.ACTION_UP) { + // 返回 true 表示我们处理了这个事件,但由于 onInterceptTouchEvent 返回 false, + // 实际上事件会传递给子View处理,这里返回 true 只是为了保持事件链完整性(例如,如果父View拦截了)。 + // 更好的做法是让父类处理 ACTION_DOWN/UP 的完整序列,这里我们专注于禁用 MOVE。 + return super.onTouchEvent(ev); + } + + // 忽略所有 ACTION_MOVE 和 ACTION_CANCEL 等非 DOWN/UP 事件 + // 这样 ViewPager 就不会根据移动来切换页面了。 + return false; + } + + // ============== 修复点击事件的关键修改 END ============== + + + /** + * 重写 setCurrentItem,强制 smoothScroll 为 false。(保持上次的功能) + */ + @Override + public void setCurrentItem(int item, boolean smoothScroll) { + super.setCurrentItem(item, false); + } + + /** + * 重写 setCurrentItem,确保调用的是强制无平滑滚动的版本。(保持上次的功能) + */ + @Override + public void setCurrentItem(int item) { + super.setCurrentItem(item, false); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/TasksAdapter.java b/app/src/main/java/com/handuan/os/view/jxw/widget/TasksAdapter.java new file mode 100644 index 0000000..cadebe7 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/TasksAdapter.java @@ -0,0 +1,65 @@ +package com.handuan.os.view.jxw.widget; + +import android.view.View; +import android.widget.TextView; + +import com.chad.library.adapter.base.BaseQuickAdapter; +import com.chad.library.adapter.base.BaseViewHolder; +import com.handuan.os.R; +import com.handuan.os.bean.jxw.TaskBean; +import com.handuan.os.jxw.StudyRecordAPKInfo; + +import java.util.List; + +public class TasksAdapter extends BaseQuickAdapter { + private OnItemClickListener listener; + + public interface OnItemClickListener { + void onClick(int i); + + void onQwcClick(int i); + } + + public TasksAdapter(List list) { + super(R.layout.item_task, list); + } + + @Override + public void convert(final BaseViewHolder baseViewHolder, TaskBean taskBean) { + baseViewHolder.setText(R.id.tv_title, taskBean.getTaskName()); + baseViewHolder.setText(R.id.tv_exp, "+" + taskBean.getExperience()); + TextView textView = baseViewHolder.getView(R.id.iv_qwc); + TextView textView2 = baseViewHolder.getView(R.id.iv_lq); + TextView textView3 = baseViewHolder.getView(R.id.iv_ywc); + textView.setVisibility(View.GONE); + textView2.setVisibility(View.GONE); + textView3.setVisibility(View.GONE); + if (taskBean.getState().equals("0")) { + textView.setVisibility(View.VISIBLE); + } else if (taskBean.getState().equals("1")) { + textView2.setVisibility(View.VISIBLE); + } else if (taskBean.getState().equals(StudyRecordAPKInfo.ARG_FILE_LIST_MOVIE)) { + textView3.setVisibility(View.VISIBLE); + } + textView2.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TasksAdapter.this.listener != null) { + TasksAdapter.this.listener.onClick(baseViewHolder.getAdapterPosition()); + } + } + }); + textView.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (TasksAdapter.this.listener != null) { + TasksAdapter.this.listener.onQwcClick(baseViewHolder.getAdapterPosition()); + } + } + }); + } + + public void setOnItemClickListener(OnItemClickListener onItemClickListener) { + this.listener = onItemClickListener; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/TreeView.java b/app/src/main/java/com/handuan/os/view/jxw/widget/TreeView.java new file mode 100644 index 0000000..87db275 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/TreeView.java @@ -0,0 +1,790 @@ +package com.handuan.os.view.jxw.widget; + +import android.app.Activity; +import android.content.Context; +import android.content.res.AssetFileDescriptor; +import android.graphics.drawable.BitmapDrawable; +import android.media.MediaPlayer; +import android.os.Handler; +import android.os.Looper; +import android.os.Message; +import android.text.TextUtils; +import android.util.AttributeSet; +import android.util.DisplayMetrics; +import android.util.Log; +import android.view.View; +import android.view.ViewGroup; +import android.view.WindowManager; +import android.widget.ImageView; +import android.widget.LinearLayout; +import android.widget.PopupWindow; +import android.widget.RelativeLayout; +import android.widget.TextView; +import com.google.android.exoplayer2.trackselection.AdaptiveTrackSelection; +import com.handuan.os.R; +import com.handuan.os.bean.jxw.TaskBean; +import com.handuan.os.jxw.CommonUtil; +import com.handuan.os.jxw.Constant; +import com.handuan.os.jxw.JiaoShuiDialog; +import com.handuan.os.jxw.SPUtils; +import com.handuan.os.jxw.StudyRecordAPKInfo; +import com.handuan.os.jxw.Util; +import com.ufreedom.uikit.FloatingText; +import com.ufreedom.uikit.effect.CurveFloatingPathEffect; +import com.ufreedom.uikit.effect.CurvePathFloatingAnimator; +import java.util.ArrayList; +import java.util.List; +import java.util.Random; +import org.libpag.PAGView; + +public class TreeView extends RelativeLayout { + private String PREPARE_START_MH_SOUND_PATH; + Activity activity; + int current_dj; + List dataList; + DashuDiaView dsdv0; + DashuDiaView dsdv1; + DashuDiaView10 dsdv10; + DashuDiaView dsdv2; + DashuDiaView dsdv3; + DashuDiaView dsdv4; + DashuDiaView dsdv5; + DashuDiaView dsdv6; + DashuDiaView dsdv7; + DashuDiaView dsdv8; + DashuDiaView dsdv9; + List expBeanList; + Handler handler; + JxwPAGView iv_dashu; + ImageView iv_sh; + private OnItemClickListener listener; + LinearLayout ll_xljt; + int[] location; + Context mContext; + private MediaPlayer mPlayer; + JxwPAGView pad_xddx; + PopupWindow pop_js; + WaterR relative; +// NetRepository repository; + RelativeLayout rl_root; + TextView tv_jiaoshui; + TextView tv_xljt; + TextView tv_yijiaoshui; + + public interface OnItemClickListener { + void onClick(); + } + + public TreeView(Context context) { + this(context, null); + } + + public TreeView(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.PREPARE_START_MH_SOUND_PATH = "sound/dsyx.mp3"; + this.expBeanList = new ArrayList(); +// this.repository = new NetRepository(); + this.dataList = new ArrayList(); + this.current_dj = -1; + this.handler = new Handler(Looper.getMainLooper()) { + @Override + public void handleMessage(Message message) { + super.handleMessage(message); + int i = message.what; + if (i == 1) { + TreeView.this.tv_jiaoshui.setVisibility(GONE); + } else if (i == 2) { + TreeView.this.tv_yijiaoshui.setVisibility(GONE); + } else if (i == 3) { + TreeView.this.ll_xljt.setVisibility(GONE); + } else if (i != 200) { + } else { + if (message.obj.toString().equals("今天已经添加,不需要重复添加!")) { + TreeView.this.tv_jiaoshui.setVisibility(VISIBLE); + TreeView.this.handler.sendEmptyMessageDelayed(1, AdaptiveTrackSelection.DEFAULT_MIN_TIME_BETWEEN_BUFFER_REEVALUTATION_MS); + } else if (message.obj.toString().contains("添加成功")) { + Util.insertData(TreeView.this.mContext, "pb_czjh_sh_click", "click", 1L, "水壶浇水次数", "pb_czjh", "", Constant.MODULE); + SPUtils.saveString("jsDate", Util.getDate()); + TreeView.this.iv_sh.setVisibility(GONE); + TreeView.this.tv_yijiaoshui.setVisibility(GONE); + JiaoShuiDialog jiaoShuiDialog = new JiaoShuiDialog(TreeView.this.mContext); + jiaoShuiDialog.show(); + jiaoShuiDialog.setOnCallback(new JiaoShuiDialog.Callback() { + @Override + public void onCallback() { + TreeView.this.iv_sh.setVisibility(VISIBLE); + } + }); + TreeView.this.getTaskUserInfo(); + } + } + } + }; + this.location = new int[2]; + this.activity = (Activity) context; + this.mContext = context; + initViews(); + initData(); + } + + public void onResume() { + Log.e("tree", "onResume"); + JxwPAGView jxwPAGView = this.iv_dashu; + if (jxwPAGView != null) { + jxwPAGView.setRepeatCount(-1); + this.iv_dashu.play(); + } + JxwPAGView jxwPAGView2 = this.pad_xddx; + if (jxwPAGView2 != null) { + jxwPAGView2.setRepeatCount(-1); + this.pad_xddx.play(); + } + } + + public void onPause() { + Log.e("tree", "onPause"); + JxwPAGView jxwPAGView = this.iv_dashu; + if (jxwPAGView != null) { + jxwPAGView.pause(); + } + JxwPAGView jxwPAGView2 = this.pad_xddx; + if (jxwPAGView2 != null) { + jxwPAGView2.pause(); + } + } + + private void initViews() { + View inflate = View.inflate(getContext(), R.layout.layout_tree, null); + this.iv_sh = inflate.findViewById(R.id.iv_sh); + this.relative = inflate.findViewById(R.id.relative); + this.tv_yijiaoshui = inflate.findViewById(R.id.tv_yijiaoshui); + this.tv_jiaoshui = inflate.findViewById(R.id.tv_jiaoshui); + this.ll_xljt = inflate.findViewById(R.id.ll_xljt); + this.tv_xljt = inflate.findViewById(R.id.tv_xljt); + this.rl_root = inflate.findViewById(R.id.rl_root); + this.iv_dashu = inflate.findViewById(R.id.iv_dashu); + this.pad_xddx = inflate.findViewById(R.id.pad_xddx); + this.pad_xddx.setAssets("pag/xddx.pag"); + this.pad_xddx.setRepeatCount(-1); + this.pad_xddx.play(); + this.mPlayer = new MediaPlayer(); + if (Util.getDate().equals(SPUtils.getString("jsDate"))) { + this.tv_yijiaoshui.setVisibility(GONE); + } else { + this.tv_yijiaoshui.setVisibility(VISIBLE); + this.handler.sendEmptyMessageDelayed(2, 3000L); + } + this.iv_dashu.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + JxwPAGView jxwPAGView = TreeView.this.iv_dashu; + jxwPAGView.setAssets("pag/lv_" + TreeView.this.current_dj + "_jh.pag"); + TreeView.this.playSound(); + try { + TreeView.this.tv_xljt.setText(TreeView.this.dataList.get(new Random().nextInt(TreeView.this.dataList.size()))); + TreeView.this.ll_xljt.setVisibility(VISIBLE); + TreeView.this.handler.removeMessages(3); + TreeView.this.handler.sendEmptyMessageDelayed(3, 3000L); + } catch (Exception unused) { + } + } + }); + this.iv_dashu.addListener(new PAGView.PAGViewListener() { + @Override + public void onAnimationStart(PAGView pAGView) { + } + + @Override + public void onAnimationUpdate(PAGView pAGView) { + } + + @Override + public void onAnimationEnd(PAGView pAGView) { + Log.e("zsj", "onAnimationEnd"); + } + + @Override + public void onAnimationCancel(PAGView pAGView) { + Log.e("zsj", "onAnimationCancel"); + } + + @Override + public void onAnimationRepeat(PAGView pAGView) { + JxwPAGView jxwPAGView = TreeView.this.iv_dashu; + jxwPAGView.setAssets("pag/lv_" + TreeView.this.current_dj + "_dashu.pag"); + } + }); + this.relative.setOnWaterItemListener(new WaterR.OnWaterItemListener() { + @Override + public void onItemClick(TaskBean taskBean) { + FloatingText.FloatingTextBuilder floatingPathEffect = new FloatingText.FloatingTextBuilder((Activity) TreeView.this.mContext).textColor(-1).textSize(TreeView.this.getResources().getDimensionPixelSize(R.dimen.x40)).floatingAnimatorEffect(new CurvePathFloatingAnimator()).floatingPathEffect(new CurveFloatingPathEffect()); + FloatingText build = floatingPathEffect.textContent("+" + taskBean.getExperience()).build(); + build.attach2Window(); + build.startFloating(TreeView.this.iv_dashu); + TreeView.this.expBeanList.remove(taskBean); + TreeView.this.getTaskExp(taskBean.getId(), StudyRecordAPKInfo.ARG_FILE_LIST_MOVIE); + } + }); + this.iv_sh.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View view) { + if (CommonUtil.isFastClick()) { + TreeView.this.tv_yijiaoshui.setVisibility(GONE); + TreeView.this.tv_jiaoshui.setVisibility(GONE); + TreeView.this.getWateringAdd(); + } + } + }); + addView(inflate); + } + + + public void addExp(List list) { + this.expBeanList.clear(); + this.expBeanList.addAll(list); + this.relative.removeAllViews(); + WaterR waterR = this.relative; + waterR.isR = true; + waterR.listX.clear(); + this.relative.listY.clear(); + int dimensionPixelSize = getResources().getDimensionPixelSize(R.dimen.x50); + int dimensionPixelSize2 = getResources().getDimensionPixelSize(R.dimen.x30); + for (int i = 0; i < this.expBeanList.size(); i++) { + if (i == 0) { + addChildView(this.expBeanList.get(i), this.relative, i + 1, dimensionPixelSize * 2, dimensionPixelSize2 * 2); + } else if (i == 1) { + addChildView(this.expBeanList.get(i), this.relative, i + 1, dimensionPixelSize * 5, dimensionPixelSize2 * 1); + } else if (i == 2) { + addChildView(this.expBeanList.get(i), this.relative, i + 1, dimensionPixelSize * 7, dimensionPixelSize2 * 4); + } else if (i == 3) { + addChildView(this.expBeanList.get(i), this.relative, i + 1, dimensionPixelSize * 3, dimensionPixelSize2 * 5); + } + } + this.relative.invalidate(); + } + + private void addChildView(final TaskBean taskBean, final WaterR waterR, int i, final int i2, final int i3) { + waterR.postDelayed(new Runnable() { + @Override + public void run() { + ViewGroup.LayoutParams layoutParams = new ViewGroup.LayoutParams(-2, -2); + WaterView waterView = new WaterView(TreeView.this.mContext, taskBean); + waterView.setLayoutParams(layoutParams); + waterR.setChildPosition(i2, i3); + waterR.addView(waterView); + } + }, (i - 1) * 200); + } + + public void treeRequest() { + getTaskStudyList(); + getTaskUserInfo(); + } + + public void getTaskStudyList() { +// this.repository.getTaskStudyList(new IDataCallback>() { +// @Override +// public void success(List list) { +// if (list == null || list.size() <= 0) { +// return; +// } +// TreeView.this.addExp(list); +// } +// +// @Override +// public void failure(int i, String str) { +// Log.e("jxw", str); +// } +// }); + } + + public void getTaskExp(String str, String str2) { +// try { +// this.repository.getTaskExp(str, str2, new IDataCallback() { +// @Override +// public void success(String str3) { +// TreeView.this.getTaskUserInfo(); +// if (TreeView.this.listener != null) { +// TreeView.this.listener.onClick(); +// } +// } +// +// @Override +// public void failure(int i, String str3) { +// Log.e("jxw", str3); +// } +// }); +// } catch (Exception e) { +// e.getMessage(); +// } + } + + public void getTaskUserInfo() { +// this.repository.getTaskUserInfo(new IDataCallback() { +// @Override +// public void success(UserExperience userExperience) { +// Log.e("jxw", userExperience + ""); +// try { +// if (TreeView.this.current_dj == -1) { +// TreeView.this.current_dj = Integer.parseInt(userExperience.getLevelCode().substring(2, userExperience.getLevelCode().length())); +// JxwPAGView jxwPAGView = TreeView.this.iv_dashu; +// jxwPAGView.setAssets("pag/lv_" + TreeView.this.current_dj + "_dashu.pag"); +// TreeView.this.iv_dashu.setRepeatCount(-1); +// TreeView.this.iv_dashu.play(); +// } else if (TreeView.this.current_dj != -1 && Integer.parseInt(userExperience.getLevelCode().substring(2, userExperience.getLevelCode().length())) > TreeView.this.current_dj) { +// JxwPAGView jxwPAGView2 = TreeView.this.iv_dashu; +// jxwPAGView2.setAssets("pag/lv_" + TreeView.this.current_dj + "_sj.pag"); +// TreeView.this.current_dj = Integer.parseInt(userExperience.getLevelCode().substring(2, userExperience.getLevelCode().length())); +// } +// SPUtils.saveString("treeDj", String.valueOf(TreeView.this.current_dj)); +// SPUtils.put(TreeView.this.mContext, "Experience", Integer.valueOf(userExperience.getExperience())); +// SPUtils.put(TreeView.this.mContext, "MaxExperience", Integer.valueOf(userExperience.getLevelMaxExperience())); +// } catch (Exception unused) { +// } +// } +// +// @Override +// public void failure(int i, String str) { +// if (!TextUtils.isEmpty(SPUtils.getString("treeDj"))) { +// TreeView.this.current_dj = Integer.parseInt(SPUtils.getString("treeDj")); +// } else { +// TreeView.this.current_dj = 0; +// } +// JxwPAGView jxwPAGView = TreeView.this.iv_dashu; +// jxwPAGView.setAssets("pag/lv_" + TreeView.this.current_dj + "_dashu.pag"); +// TreeView.this.iv_dashu.setRepeatCount(-1); +// TreeView.this.iv_dashu.play(); +// Log.e("jxw", str); +// } +// }); + } + + public void getWateringAdd() { +// try { +// this.repository.getWateringAdd(new IDataCallback() { +// @Override +// public void success(String str) { +// Log.e("jxw", str); +// Message obtain = Message.obtain(); +// obtain.obj = str; +// obtain.what = 200; +// TreeView.this.handler.sendMessage(obtain); +// } +// +// @Override +// public void failure(int i, String str) { +// Log.e("jxw", str); +// } +// }); +// } catch (Exception e) { +// e.getMessage(); +// } + } + + public static float dpToPixel(Context context, float f) { + return f * (getDisplayMetrics(context).densityDpi / 160.0f); + } + + public static DisplayMetrics getDisplayMetrics(Context context) { + DisplayMetrics displayMetrics = new DisplayMetrics(); + ((WindowManager) context.getSystemService(Context.WINDOW_SERVICE)).getDefaultDisplay().getMetrics(displayMetrics); + return displayMetrics; + } + + private void initData() { + this.dataList.add("一年之计在于春,一日之计在于晨。"); + this.dataList.add("一寸光阴一寸金,寸金难买寸光阴。"); + this.dataList.add("种瓜得瓜,种豆得豆。"); + this.dataList.add("前人栽树,后人乘凉。"); + this.dataList.add("千里之行,始于足下。"); + this.dataList.add("百尺竿头,更进一步。"); + this.dataList.add("朝霞不出门,晚霞行千里。"); + this.dataList.add("有雨山戴帽,无雨半山腰。"); + this.dataList.add("早晨下雨当日晴,晚上下雨到天明。"); + this.dataList.add("蚂蚁搬家蛇过道,大雨不久要来到。"); + this.dataList.add("不知则问,不能则学。"); + this.dataList.add("读书百遍,而义自见。"); + this.dataList.add("读万卷书,行万里路。"); + this.dataList.add("己所不欲,勿施于人。"); + this.dataList.add("与朋友交,言而有信。"); + this.dataList.add("不以规矩,不能成方圆。"); + this.dataList.add("有山皆图画,无水不文章。"); + this.dataList.add("白马西风塞上,杏花烟雨江南。"); + this.dataList.add("清风明月本无价,近水远山皆有情。"); + this.dataList.add("雾锁山头山锁雾,天连水尾水连天。"); + this.dataList.add("穷且益坚,不坠青云之志。"); + this.dataList.add("予人玫瑰,手有余香。"); + this.dataList.add("平时肯帮人,急时有人帮。"); + this.dataList.add("与其锦上添花,不如雪中送炭。"); + this.dataList.add("诚信者,天下之结也。"); + this.dataList.add("灯不拨不亮,理不辩不明。"); + this.dataList.add("有理走遍天下,无理寸步难行。"); + this.dataList.add("一时强弱在于力,万古胜负在于理。"); + this.dataList.add("二人同心,其利断金。"); + this.dataList.add("三个臭皮匠,顶个诸葛亮。"); + this.dataList.add("一个篱笆三个桩,一个好汉三个帮。"); + this.dataList.add("仁者爱人,有礼者敬人。"); + this.dataList.add("与人善言,暖于布帛;伤人以言,深于矛戟。"); + this.dataList.add("见善则迁,有过则改。"); + this.dataList.add("过而不改,是谓过矣。"); + this.dataList.add("人谁无过?过而能改,善莫大焉。"); + this.dataList.add("兵来将挡,水来土掩。"); + this.dataList.add("不入虎穴,焉得虎子。"); + this.dataList.add("眼见为实,耳听为虚。"); + this.dataList.add("近朱者赤,近墨者黑。"); + this.dataList.add("好问则裕,自用则小。"); + this.dataList.add("博学之,审问之,慎思之,明辨之,笃行之。"); + this.dataList.add("智能之士,不学不成,不问不知。"); + this.dataList.add("人非生而知之者,孰能无惑?"); + this.dataList.add("尺有所短,寸有所长。"); + this.dataList.add("机不可失,时不再来。"); + this.dataList.add("差之毫厘,谬以千里。"); + this.dataList.add("病从口入,祸从口出。"); + this.dataList.add("一言既出,驷马难追。"); + this.dataList.add("比上不足,比下有余。"); + this.dataList.add("诗和音乐一样,生命全在节奏。"); + this.dataList.add("天行健,君子以自强不息。"); + this.dataList.add("胜人者有力,自胜者强。"); + this.dataList.add("生于忧患而死于安乐。"); + this.dataList.add("少年不知勤学苦,老来方知读书迟。"); + this.dataList.add("一日读书一日功,一日不读十日空。"); + this.dataList.add("学习不怕根底浅,只要迈步总不迟。"); + this.dataList.add("书山有路勤为径,学海无涯苦作舟。"); + this.dataList.add("不饱食以终日,不弃功于寸阴。"); + this.dataList.add("盛年不重来,一日难再晨。及时当勉励,岁月不待人。"); + this.dataList.add("莫等闲,白了少年头,空悲切。"); + this.dataList.add("多少事,从来急;天地转,光阴迫。一万年太久,只争朝夕。"); + this.dataList.add("克勤于邦,克俭于家。"); + this.dataList.add("居安思危,戒奢以俭。"); + this.dataList.add("由俭入奢易,由奢入俭难。"); + this.dataList.add("一粥一饭,当思来处不易;半丝半缕,恒念物力维艰。"); + this.dataList.add("君子喻于义,小人喻于利。"); + this.dataList.add("君子坦荡荡,小人长戚戚。"); + this.dataList.add("人有耻,则能有所不为。"); + this.dataList.add("捐躯赴国难,视死忽如归。"); + this.dataList.add("祖宗疆土,当以死守,不可以尺寸与人。"); + this.dataList.add("无情未必真豪杰,怜子如何不丈夫。"); + this.dataList.add("其实地上本没有路,走的人多了,也便成了路。"); + this.dataList.add("惟有民魂是值得宝贵的,惟有他发扬起来,中国才有真进步。"); + this.dataList.add("读书须用意,一字值千金。"); + this.dataList.add("莫道君行早,更有早行人。"); + this.dataList.add("听君一席话,胜读十年书。"); + this.dataList.add("路遥知马力,日久见人心。"); + this.dataList.add("近水知鱼性,近山识鸟音。"); + this.dataList.add("有意栽花花不发,无心插柳柳成荫。"); + this.dataList.add("良药苦口利于病,忠言逆耳利于行。"); + this.dataList.add("树欲静而风不止,子欲养而亲不待。"); + this.dataList.add("常将有日思无日,莫把无时当有时。"); + this.dataList.add("书到用时方恨少,事非经过不知难。"); + this.dataList.add("穷则变,变则通,通则久。"); + this.dataList.add("苟日新,日日新,又日新。"); + this.dataList.add("青,取之于蓝,而青于蓝。"); + this.dataList.add("苟利于民,不必法古;苟周于事,不必循旧。"); + this.dataList.add("不知则问,不能则学。"); + this.dataList.add("读书百遍,而义自见。"); + this.dataList.add("读万卷书,行万里路。"); + this.dataList.add("己所不欲,勿施于人。"); + this.dataList.add("与朋友交,言而有信。"); + this.dataList.add("不以规矩,不能成方圆。"); + this.dataList.add("穷且益坚,不坠青云之志。"); + this.dataList.add("诚信者,天下之结也。"); + this.dataList.add("仁者爱人,有礼者敬人。"); + this.dataList.add("与人善言,暖于布帛;伤人以言,深于矛戟。"); + this.dataList.add("见善则迁,有过则改。"); + this.dataList.add("过而不改,是谓过矣。"); + this.dataList.add("人谁无过?过而能改,善莫大焉。"); + this.dataList.add("好问则裕,自用则小。"); + this.dataList.add("博学之,审问之,慎思之,明辨之,笃行之。"); + this.dataList.add("智能之士,不学不成,不问不知。"); + this.dataList.add("人非生而知之者,孰能无惑?"); + this.dataList.add("诗和音乐一样,生命全在节奏。"); + this.dataList.add("诗是人类向未来寄发的信息,诗给人类以朝向理想的勇气。"); + this.dataList.add("诗是强烈感情的自然流露,它源于宁静中回忆起来的情感。"); + this.dataList.add("天行健,君子以自强不息。"); + this.dataList.add("胜人者有力,自胜者强。"); + this.dataList.add("生于忧患而死于安乐。"); + this.dataList.add("少年不知勤学苦,老来方知读书迟。"); + this.dataList.add("一日读书一日功,一日不读十日空。"); + this.dataList.add("学习不怕根底浅,只要迈步总不迟。"); + this.dataList.add("书山有路勤为径,学海无涯苦作舟。"); + this.dataList.add("不饱食以终日,不弃功于寸阴。"); + this.dataList.add("盛年不重来,一日难再晨。及时当勉励,岁月不待人。"); + this.dataList.add("莫等闲,白了少年头,空悲切。"); + this.dataList.add("多少事,从来急;天地转,光阴迫。一万年太久,只争朝夕。"); + this.dataList.add("克勤于邦,克俭于家。"); + this.dataList.add("居安思危,戒奢以俭。"); + this.dataList.add("由俭入奢易,由奢入俭难。"); + this.dataList.add("一粥一饭,当思来处不易;半丝半缕,恒念物力维艰。"); + this.dataList.add("君子喻于义,小人喻于利。"); + this.dataList.add("君子坦荡荡,小人长戚戚。"); + this.dataList.add("恻隐之心,仁之端也。"); + this.dataList.add("人有耻,则能有所不为。"); + this.dataList.add("捐躯赴国难,视死忽如归。"); + this.dataList.add("祖宗疆土,当以死守,不可以尺寸与人。"); + this.dataList.add("无情未必真豪杰,怜子如何不丈夫。"); + this.dataList.add("其实地上本没有路,走的人多了,也便成了路。"); + this.dataList.add("惟有民魂是值得宝贵的,惟有他发扬起来,中国才有真进步。"); + this.dataList.add("读书须用意,一字值千金。"); + this.dataList.add("莫道君行早,更有早行人。"); + this.dataList.add("穷则变,变则通,通则久。"); + this.dataList.add("苟日新,日日新,又日新。"); + this.dataList.add("青,取之于蓝,而青于蓝。"); + this.dataList.add("苟利于民,不必法古;苟周于事,不必循旧。"); + this.dataList.add("一种理想,就是一种力!"); + this.dataList.add("世上最快乐的事,莫过于为理想而奋斗。"); + this.dataList.add("为中华之崛起而读书。"); + this.dataList.add("活着又没有目标的人是可怕的。"); + this.dataList.add("哪里有天才,我是把别人喝咖啡的工夫都用在学习上的。"); + this.dataList.add("世上无难事,只要肯攀登。"); + this.dataList.add("灵感,是由于顽强的劳动而获得的奖赏。"); + this.dataList.add("人类要在竞争中生存,便要奋斗。"); + this.dataList.add("天才在于积累,聪明在于勤奋。"); + this.dataList.add("业精于勤,荒于嬉;行成于思,毁于随。"); + this.dataList.add("古人学问无遗力,少壮工夫老始成。"); + this.dataList.add("只要功夫深,铁杵磨成针。"); + this.dataList.add("苟有恒,何必三更起五更眠;最无益,只怕一日曝十日寒。"); + this.dataList.add("一日一钱,十日十钱。绳锯木断,水滴石穿。"); + this.dataList.add("最困难之时,就是离成功不远之日。"); + this.dataList.add("逆水行舟用力撑,一篙松劲退千寻。"); + this.dataList.add("鞠躬尽瘁,死而后已。"); + this.dataList.add("先天下之忧而忧,后天下之乐而乐。"); + this.dataList.add("人生价值,应该看他贡献什么,而不是取得什么。"); + this.dataList.add("只要人人都献出一点爱,世界将变成美好的人间。"); + this.dataList.add("太阳之所以伟大,在于它永远消耗自己。"); + this.dataList.add("春蚕到死丝方尽,蜡炬成挥泪始干。"); + this.dataList.add("落红不是无情物,化作春泥更护花。"); + this.dataList.add("横眉冷对千夫指,俯首甘为孺子牛。"); + this.dataList.add("老骥伏枥,志在千里;烈士暮年,壮心不已。"); + this.dataList.add("有志不在年高,无志空活百岁。"); + this.dataList.add("不想当元帅的士兵不是好士兵。"); + this.dataList.add("无目标而生活,犹如没有罗盘而航行。"); + this.dataList.add("将相本无种,男儿当自强。"); + this.dataList.add("万夫一力,天下无敌。"); + this.dataList.add("一个篱笆三个桩,一个好汉三个帮。"); + this.dataList.add("天时不如地利,地利不如人和。"); + this.dataList.add("君子可招而不可诱,可弃而不可诱。"); + this.dataList.add("不可自暴自弃自屈。"); + this.dataList.add("仰不愧于天,俯不怍(惭愧)于地。"); + this.dataList.add("人不可有傲气,但不可无傲骨。"); + this.dataList.add("知识是引导人们看到光明和真实境界的灯烛。"); + this.dataList.add("知识是人生旅途中的资粮。"); + this.dataList.add("明日之帝国将是智力之帝国。"); + this.dataList.add("没有知识就不可能对生活做出正确的解释。"); + this.dataList.add("人有多少知识,就有多少力量,他的知识和他的能力是相当的。"); + this.dataList.add("爱护书籍吧,它是知识的源泉。"); + this.dataList.add("书是世界宝贵财富,是国家和历史的优秀遗产。"); + this.dataList.add("读了一本书,就像对生活打开了一扇窗户。"); + this.dataList.add("读活书,活读书,读书活。"); + this.dataList.add("读书给人以乐趣,给人以光彩,给人以才干。"); + this.dataList.add("光阴给我们经验,读书给我们知识。"); + this.dataList.add("人无忠信,不可立于世。"); + this.dataList.add("言不信者,行不果。"); + this.dataList.add("丈夫一言许人,千金不易。"); + this.dataList.add("人生是花,而爱是花蜜。"); + this.dataList.add("积薄而为厚,聚少而为多。"); + this.dataList.add("不积跬步,无以至千里;不积小流,无以成江海。"); + this.dataList.add("千里始足下,高山起微尘,吾道亦如此,行之贵日新。"); + this.dataList.add("逆境是通往真理的第一条道路。"); + this.dataList.add("患难与困苦是磨练人格的最高学府。"); + this.dataList.add("逆水行舟,不进则退。"); + this.dataList.add("母爱是世间最伟大的力量。"); + this.dataList.add("母爱是一种巨大的火焰。"); + this.dataList.add("世界上有一种最美丽的声音,那便是母亲的呼唤。"); + this.dataList.add("母亲的心是一个深渊,在它的最深处你总会得到宽恕。"); + this.dataList.add("“我的第一个启蒙老师是我的母亲。”"); + this.dataList.add("一位好母亲抵得上一百个教师。"); + this.dataList.add("天下无不是的父母;世间最难得者兄弟。"); + this.dataList.add("人生自古谁无死,留取丹心照汗青。"); + this.dataList.add("先天下之忧而忧,后天下之乐而乐。"); + this.dataList.add("风声雨声读书声声声入耳;国事家事天下事事事关心。"); + this.dataList.add("捐躯赴国难,视死忽如归。"); + this.dataList.add("苟利国家生死以,岂因祸福避趋之。"); + this.dataList.add("恨不抗日死,留作今日羞。国破尚如此,我何惜此头。"); + this.dataList.add("我们爱我们的民族,这是我们自信心的泉源。"); + this.dataList.add("祖国如有难,汝应作前锋。"); + this.dataList.add("我是中国人民的儿子,我深深的爱着我的祖国和人民。"); + this.dataList.add("业精于勤,荒于嬉;行成于思,毁于随。"); + this.dataList.add("学而不思则罔,思而不学则殆。"); + this.dataList.add("知之者不如好之者,好之者不如乐之者。"); + this.dataList.add("三人行,必有我师也。择其善者而从之,其不善者而改之。"); + this.dataList.add("读书破万卷,下笔如有神。"); + this.dataList.add("读书有三到,谓心到,眼到,口到。"); + this.dataList.add("立身以立学为先,立学以读书为本。"); + this.dataList.add("黑发不知勤学早,白首方悔读书迟。"); + this.dataList.add("书卷多情似故人,晨昏忧乐每相亲。"); + this.dataList.add("书犹药也,善读之可以医愚。"); + this.dataList.add("少壮不努力,老大徒伤悲。"); + this.dataList.add("莫等闲,白了少年头,空悲切。"); + this.dataList.add("发奋识遍天下字,立志读尽人间书。"); + this.dataList.add("非淡泊无以明志,非宁静无以致远。"); + this.dataList.add("熟读唐诗三百首,不会作诗也会吟。"); + this.dataList.add("书到用时方恨少,事非经过不知难。"); + this.dataList.add("问渠那得清如许,为有源头活水来。"); + this.dataList.add("旧书不厌百回读,熟读精思子自知。"); + this.dataList.add("路漫漫其修道远,吾将上下而求索。"); + this.dataList.add("饭可以一日不吃,觉可以一日不睡,书不可以一日不读。"); + this.dataList.add("读过一本好书,像交了一个益友。"); + this.dataList.add("与肝胆人共事,从无字句处读书。"); + this.dataList.add("时间就像海绵里的水,只要愿挤,总还是有的。"); + this.dataList.add("千教万教教人求真,千学万学学做真人。"); + this.dataList.add("少年易学老难成,一寸光阴不可轻。"); + this.dataList.add("吾生也有涯,而知也无涯。"); + this.dataList.add("少壮不努力,老大徒伤悲。"); + this.dataList.add("时间就是生命,时间就是速度,时间就是力量。"); + this.dataList.add("莫等闲,白了少年头,空悲切。"); + this.dataList.add("盛年不重来,一日难再晨。及时当勉励,岁月不待人。"); + this.dataList.add("一年之计在于春,一日之计在于晨。"); + this.dataList.add("时间就象海绵里的水一样,只要你愿挤,总还是有的"); + this.dataList.add("一年之计在于春,一日之计在于晨。"); + this.dataList.add("一寸光阴一寸金,寸金难买寸光阴。"); + this.dataList.add("朝霞不出门,晚霞行千里。"); + this.dataList.add("有雨山戴帽,无雨半山腰。"); + this.dataList.add("早晨下雨当日晴,晚上下雨到天明。"); + this.dataList.add("蚂蚁搬家蛇过道,大雨不久要来到。"); + this.dataList.add("平时肯帮人,急时有人帮。"); + this.dataList.add("与其锦上添花,不如雪中送炭。"); + this.dataList.add("灯不拨不亮,理不辩不明。"); + this.dataList.add("有理走遍天下,无理寸步难行。"); + this.dataList.add("一时强弱在于力,万古胜负在于理。"); + this.dataList.add("八月里来雁门开,雁儿脚上带霜来。"); + this.dataList.add("一场秋雨一场寒,十场秋雨要穿棉。"); + this.dataList.add("八月暖,九月温,十月还有小阳春。"); + this.dataList.add("听君一席话,胜读十年书。"); + this.dataList.add("路遥知马力,日久见人心。"); + this.dataList.add("近水知鱼性,近山识鸟音。"); + this.dataList.add("百闻不如一见,百见不如一干。"); + this.dataList.add("不当家,不知柴米贵;不生子,不知父母恩。"); + this.dataList.add("不摸锅底手不黑,不拿油瓶手不腻。"); + this.dataList.add("不挑担子不知重,不走长路不知远。"); + this.dataList.add("不下水,一辈子不会游泳;不扬帆,一辈子不会撑船。"); + this.dataList.add("不在被中睡,不知被儿宽。"); + this.dataList.add("菜没盐无味,话没理无力。"); + this.dataList.add("草遮不住鹰眼,水遮不住鱼眼。"); + this.dataList.add("吃人的嘴软,论人的理短。"); + this.dataList.add("船稳不怕风大,有理通行天下。"); + this.dataList.add("打柴问樵夫,驶船问艄公。"); + this.dataList.add("打铁的要自己把钳,种地的要自己下田。"); + this.dataList.add("当家才知盐米贵,出门才晓路难行。"); + this.dataList.add("稻多打出米,人多讲出理。"); + this.dataList.add("灯不拨不亮,理不辩不明。"); + this.dataList.add("灯不亮,要人拨;事不明,要人说。"); + this.dataList.add("多锉出快锯,多做长知识。"); + this.dataList.add("发回水,积层泥;经一事,长一智。"); + this.dataList.add("隔行如隔山,隔行不隔理。"); + this.dataList.add("鼓不敲不响,理不辩不明。"); + this.dataList.add("光说不练假把式,光练不说真把式,连说带练全把式。"); + this.dataList.add("好茶不怕细品,好事不怕细论。"); + this.dataList.add("好酒不怕酿,好人不怕讲。"); + this.dataList.add("湖里游着大鲤鱼,不如桌上小鲫鱼。"); + this.dataList.add("会走走不过影,会说说不过理。"); + this.dataList.add("脚跑不过雨,嘴强不过理。"); + this.dataList.add("经一番挫折,长一番见识。"); + this.dataList.add("井越掏,水越清;事越摆,理越明。"); + this.dataList.add("砍柴砍小头,问路问老头。"); + this.dataList.add("口说不如身到,耳闻不如目睹。"); + this.dataList.add("老姜辣味大,老人经验多。"); + this.dataList.add("老牛肉有嚼头,老人言有听头。"); + this.dataList.add("老人不讲古,后生会失谱。"); + this.dataList.add("力是压大的,胆是吓大的。"); + this.dataList.add("路不平,众人踩;事不平,大家管。"); + this.dataList.add("碾谷要碾出米来,说话要说出理来。"); + this.dataList.add("牛无力拖横耙,人无理说横话。"); + this.dataList.add("千学不如一看,千看不如一练。"); + this.dataList.add("人多出正理,谷多出好米。"); + this.dataList.add("人横有道理,马横有缰绳。"); + this.dataList.add("人心隔肚皮,看人看行为。"); + this.dataList.add("人行千里路,胜读十年书。"); + this.dataList.add("人在世上练,刀在石上磨。"); + this.dataList.add("认理不认人,帮理不帮亲。水大漫不过船,手大遮不住天。"); + this.dataList.add("认理不认人,不怕不了事。"); + this.dataList.add("三天不念口生,三年不做手生。"); + this.dataList.add("砂锅不捣不漏,木头不凿不通。"); + this.dataList.add("山是一步一步登上来的,船是一橹一橹摇出去的。"); + this.dataList.add("舌头是肉长的,事实是铁打的。"); + this.dataList.add("十年练得好文秀才,十年练不成田秀才。"); + this.dataList.add("是蛇一身冷,是狼一身腥。"); + this.dataList.add("树老半空心,人老百事通。"); + this.dataList.add("水不平要流,理不平要说。"); + this.dataList.add("水落现石头,日久见人心。"); + this.dataList.add("水退石头在,好人说不坏。"); + this.dataList.add("坛口封得住,人口封不住。"); + this.dataList.add("天上无云不下雨,世间无理事不成。"); + this.dataList.add("天下的弓都是弯的,世上的理都是直的。"); + this.dataList.add("万句言语吃不饱,一捧流水能解渴。"); + this.dataList.add("香花不一定好看,会说不一定能干。"); + this.dataList.add("药农进山见草药,猎人进山见禽兽。"); + this.dataList.add("要吃辣子栽辣秧,要吃鲤鱼走长江。"); + this.dataList.add("要知父母恩,怀里抱儿孙。"); + this.dataList.add("要知山中事,乡间问老农。"); + this.dataList.add("一等二靠三落空,一想二干三成功。"); + this.dataList.add("一人说话全有理,两人说话见高低。"); + this.dataList.add("一时强弱在于力,万古胜负在于理。"); + this.dataList.add("以势服人口,以理服人心。"); + this.dataList.add("有斧砍得树倒,有理说的不倒。"); + this.dataList.add("有理摆到事上,好钢使到刃上。"); + this.dataList.add("有理不可丢,无理不可争。"); + this.dataList.add("有理不怕势来压,人正不怕影子歪。"); + this.dataList.add("有理不在言高,有话说在面前。"); + this.dataList.add("有理的想着说,没理的抢着说。"); + this.dataList.add("有理走遍天下,无理寸步难行。"); + this.dataList.add("有志不在年高,有理不在会说。"); + } + + public void playSound() { + try { + AssetFileDescriptor openFd = this.mContext.getAssets().openFd(this.PREPARE_START_MH_SOUND_PATH); + this.mPlayer.reset(); + this.mPlayer.setDataSource(openFd.getFileDescriptor(), openFd.getStartOffset(), openFd.getLength()); + this.mPlayer.prepare(); + this.mPlayer.start(); + } catch (Exception e) { + e.printStackTrace(); + } + } + + private void showJS(View view) { + View inflate = this.activity.getLayoutInflater().inflate(R.layout.layout_jiesao, (ViewGroup) null); + this.pop_js = new PopupWindow(inflate, -2, -2, true); + this.dsdv0 = inflate.findViewById(R.id.dsdv0); + this.dsdv1 = inflate.findViewById(R.id.dsdv1); + this.dsdv2 = inflate.findViewById(R.id.dsdv2); + this.dsdv3 = inflate.findViewById(R.id.dsdv3); + this.dsdv4 = inflate.findViewById(R.id.dsdv4); + this.dsdv5 = inflate.findViewById(R.id.dsdv5); + this.dsdv6 = inflate.findViewById(R.id.dsdv6); + this.dsdv7 = inflate.findViewById(R.id.dsdv7); + this.dsdv8 = inflate.findViewById(R.id.dsdv8); + this.dsdv9 = inflate.findViewById(R.id.dsdv9); + this.dsdv10 = inflate.findViewById(R.id.dsdv10); + this.dsdv0.setdj(this.current_dj); + this.dsdv1.setdj(this.current_dj); + this.dsdv2.setdj(this.current_dj); + this.dsdv3.setdj(this.current_dj); + this.dsdv4.setdj(this.current_dj); + this.dsdv5.setdj(this.current_dj); + this.dsdv6.setdj(this.current_dj); + this.dsdv7.setdj(this.current_dj); + this.dsdv8.setdj(this.current_dj); + this.dsdv9.setdj(this.current_dj); + this.dsdv10.setdj(this.current_dj); + WindowManager.LayoutParams attributes = this.activity.getWindow().getAttributes(); + attributes.alpha = 0.5f; + this.activity.getWindow().addFlags(2); + this.activity.getWindow().setAttributes(attributes); + this.pop_js.setOnDismissListener(new PopupWindow.OnDismissListener() { + @Override + public void onDismiss() { + WindowManager.LayoutParams attributes2 = TreeView.this.activity.getWindow().getAttributes(); + attributes2.alpha = 1.0f; + TreeView.this.activity.getWindow().setAttributes(attributes2); + } + }); + view.getLocationOnScreen(this.location); + this.pop_js.setBackgroundDrawable(new BitmapDrawable()); + this.pop_js.showAtLocation(view, 48, getResources().getDimensionPixelSize(R.dimen.x719) / 2, this.location[1] - getResources().getDimensionPixelSize(R.dimen.x783)); + } + + public void setOnItemClickListener(OnItemClickListener onItemClickListener) { + this.listener = onItemClickListener; + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/WaterR.java b/app/src/main/java/com/handuan/os/view/jxw/widget/WaterR.java new file mode 100644 index 0000000..9f8990c --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/WaterR.java @@ -0,0 +1,151 @@ +package com.handuan.os.view.jxw.widget; + +import android.animation.Animator; +import android.animation.AnimatorListenerAdapter; +import android.animation.AnimatorSet; +import android.animation.ObjectAnimator; +import android.content.Context; +import android.graphics.Rect; +import android.util.AttributeSet; +import android.util.Log; +import android.view.MotionEvent; +import android.view.View; +import android.widget.RelativeLayout; + +import com.handuan.os.bean.jxw.TaskBean; + +import java.util.ArrayList; +import java.util.List; + +public class WaterR extends RelativeLayout { + boolean isCollect; + public boolean isR; + public List listX; + public List listY; + private OnWaterItemListener mOnWaterItemListener; + + public interface OnWaterItemListener { + void onItemClick(TaskBean taskBean); + } + + public void setChildPosition(int i, int i2) { + this.listX.add(Integer.valueOf(i)); + this.listY.add(Integer.valueOf(i2)); + } + + public WaterR(Context context) { + super(context); + this.listX = new ArrayList(); + this.listY = new ArrayList(); + this.isR = true; + this.isCollect = false; + } + + public WaterR(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.listX = new ArrayList(); + this.listY = new ArrayList(); + this.isR = true; + this.isCollect = false; + } + + public WaterR(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.listX = new ArrayList(); + this.listY = new ArrayList(); + this.isR = true; + this.isCollect = false; + } + + @Override // android.widget.RelativeLayout, android.view.View + protected void onMeasure(int i, int i2) { + super.onMeasure(i, i2); + measureChildren(i, i2); + } + + @Override + public boolean onTouchEvent(MotionEvent motionEvent) { + if (motionEvent.getAction() == 0) { + int x = (int) motionEvent.getX(); + int y = (int) motionEvent.getY(); + Rect rect = new Rect(); + for (int i = 0; i < getChildCount(); i++) { + getChildAt(i).getHitRect(rect); + if (rect.contains(x, y) && this.mOnWaterItemListener != null) { + if (this.isCollect) { + return true; + } + getChildAt(i).performClick(); + this.mOnWaterItemListener.onItemClick(((WaterView) getChildAt(i)).getTaskBean()); + startAnimator(getChildAt(i)); + Log.e("zsj", "-----------经验球" + i); + return true; + } + } + } + return super.onTouchEvent(motionEvent); + } + + private void startAnimator(final View view) { + if (this.isCollect) { + return; + } + this.isCollect = true; + ObjectAnimator ofFloat = ObjectAnimator.ofFloat(view, "translationY", 100.0f); + ofFloat.start(); + ObjectAnimator ofFloat2 = ObjectAnimator.ofFloat(view, "alpha", 1.0f, 0.0f); + ofFloat2.start(); + AnimatorSet animatorSet = new AnimatorSet(); + animatorSet.play(ofFloat).with(ofFloat2); + animatorSet.setDuration(1500L); + animatorSet.start(); + animatorSet.addListener(new AnimatorListenerAdapter() { // from class: com.jxw.launcher.widget.WaterR.1 + @Override // android.animation.AnimatorListenerAdapter, android.animation.Animator.AnimatorListener + public void onAnimationEnd(Animator animator) { + WaterR.this.removeViewInLayout(view); + view.setVisibility(View.GONE); + WaterR waterR = WaterR.this; + waterR.isR = false; + waterR.isCollect = false; + } + }); + } + + @Override // android.widget.RelativeLayout, android.view.ViewGroup, android.view.View + protected void onLayout(boolean z, int i, int i2, int i3, int i4) { + if (this.isR) { + int childCount = getChildCount(); + for (int i5 = 0; i5 < childCount; i5++) { + View childAt = getChildAt(i5); + int measuredWidth = childAt.getMeasuredWidth(); + int measuredHeight = childAt.getMeasuredHeight(); + if (childAt.getVisibility() != 8) { + childAt.layout(((Integer) this.listX.get(i5)).intValue(), ((Integer) this.listY.get(i5)).intValue(), measuredWidth + ((Integer) this.listX.get(i5)).intValue(), measuredHeight + ((Integer) this.listY.get(i5)).intValue()); + } + } + } + } + + private void doSetAnim(View view) { + if (this.isCollect) { + return; + } + this.isCollect = true; + ObjectAnimator ofFloat = ObjectAnimator.ofFloat(view, "translationX", 0.0f, 0.0f); + ObjectAnimator ofFloat2 = ObjectAnimator.ofFloat(view, "translationY", 0.0f, 0.0f); + ObjectAnimator ofFloat3 = ObjectAnimator.ofFloat(view, "alpha", 1.0f, 0.0f); + AnimatorSet animatorSet = new AnimatorSet(); + animatorSet.playTogether(ofFloat, ofFloat2, ofFloat3); + animatorSet.setDuration(3000L); + animatorSet.start(); + } + + public void setOnWaterItemListener(OnWaterItemListener onWaterItemListener) { + this.mOnWaterItemListener = onWaterItemListener; + } + + @Override + public void invalidate() { + super.invalidate(); + } +} \ No newline at end of file diff --git a/app/src/main/java/com/handuan/os/view/jxw/widget/WaterView.java b/app/src/main/java/com/handuan/os/view/jxw/widget/WaterView.java new file mode 100644 index 0000000..99d3e57 --- /dev/null +++ b/app/src/main/java/com/handuan/os/view/jxw/widget/WaterView.java @@ -0,0 +1,132 @@ +package com.handuan.os.view.jxw.widget; + +import android.animation.ObjectAnimator; +import android.content.Context; +import android.content.res.Resources; +import android.graphics.Canvas; +import android.graphics.Paint; +import android.util.AttributeSet; +import android.view.View; +import android.view.animation.LinearInterpolator; +import android.widget.LinearLayout; +import android.widget.TextView; + +import com.handuan.os.R; +import com.handuan.os.bean.jxw.TaskBean; + +public class WaterView extends LinearLayout { + TaskBean expBean; + private ObjectAnimator mAnimator; + private int mRadius; + private Paint paint; + private float proportion; + private float strokeWidth; + + public WaterView(Context context, TaskBean taskBean) { + super(context); + this.strokeWidth = 0.5f; + this.mRadius = getResources().getDimensionPixelSize(R.dimen.x50); + this.expBean = taskBean; + init(); + } + + public WaterView(Context context, AttributeSet attributeSet) { + super(context, attributeSet); + this.strokeWidth = 0.5f; + this.mRadius = getResources().getDimensionPixelSize(R.dimen.x50); + init(); + } + + public WaterView(Context context, AttributeSet attributeSet, int i) { + super(context, attributeSet, i); + this.strokeWidth = 0.5f; + this.mRadius = getResources().getDimensionPixelSize(R.dimen.x50); + init(); + } + + public TaskBean getTaskBean() { + return this.expBean; + } + + private void init() { + this.paint = new Paint(); + this.paint.setAntiAlias(true); + View inflate = View.inflate(getContext(), R.layout.item_exp, null); + ((TextView) inflate.findViewById(R.id.tv_title)).setText(this.expBean.getModuleName()); + ((TextView) inflate.findViewById(R.id.tv_exp)).setText(this.expBean.getExperience()); + addView(inflate); + } + + @Override // android.view.View + public void draw(Canvas canvas) { + super.draw(canvas); + } + + @Override // android.widget.LinearLayout, android.view.View + protected void onMeasure(int i, int i2) { + super.onMeasure(i, i2); + setMeasuredDimension(dp2px((int) ((this.mRadius + this.strokeWidth) * 2.0f)), dp2px((int) ((this.mRadius + this.strokeWidth) * 2.0f))); + } + + public void setmRadius(int i) { + this.mRadius = i; + invalidate(); + } + + @Override // android.view.ViewGroup, android.view.View + protected void onAttachedToWindow() { + super.onAttachedToWindow(); + start(); + } + + @Override // android.view.ViewGroup, android.view.View + protected void onDetachedFromWindow() { + super.onDetachedFromWindow(); + stop(); + } + + @Override // android.view.View + protected void onVisibilityChanged(View view, int i) { + super.onVisibilityChanged(view, i); + if (i == 0) { + start(); + } else { + stop(); + } + } + + public void start() { + ObjectAnimator objectAnimator = this.mAnimator; + if (objectAnimator == null) { + this.mAnimator = ObjectAnimator.ofFloat(this, "translationY", -6.0f, 6.0f, -6.0f); + this.mAnimator.setDuration(3500L); + this.mAnimator.setInterpolator(new LinearInterpolator()); + this.mAnimator.setRepeatMode(1); + this.mAnimator.setRepeatCount(-1); + this.mAnimator.start(); + } else if (objectAnimator.isStarted()) { + } else { + this.mAnimator.start(); + } + } + + public void stop() { + ObjectAnimator objectAnimator = this.mAnimator; + if (objectAnimator != null) { + objectAnimator.cancel(); + this.mAnimator = null; + } + } + + public float getProportion() { + return this.proportion; + } + + public void setProportion(float f) { + this.proportion = f; + } + + public static int dp2px(float f) { + return (int) ((f * Resources.getSystem().getDisplayMetrics().density) + 0.5f); + } +} \ No newline at end of file diff --git a/app/src/main/res/drawable-nodpi/add.png b/app/src/main/res/drawable-nodpi/add.png new file mode 100644 index 0000000..37db9e7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/add.png differ diff --git a/app/src/main/res/drawable-nodpi/back.png b/app/src/main/res/drawable-nodpi/back.png new file mode 100644 index 0000000..075986e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/back.png differ diff --git a/app/src/main/res/drawable-nodpi/back_pressed.png b/app/src/main/res/drawable-nodpi/back_pressed.png new file mode 100644 index 0000000..7e8d2f6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/back_pressed.png differ diff --git a/app/src/main/res/drawable-nodpi/back_xxpt.png b/app/src/main/res/drawable-nodpi/back_xxpt.png new file mode 100644 index 0000000..0b2e574 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/back_xxpt.png differ diff --git a/app/src/main/res/drawable-nodpi/bg_change_psw.png b/app/src/main/res/drawable-nodpi/bg_change_psw.png new file mode 100644 index 0000000..299efb9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/bg_change_psw.png differ diff --git a/app/src/main/res/drawable-nodpi/bg_jc.png b/app/src/main/res/drawable-nodpi/bg_jc.png new file mode 100644 index 0000000..6bb79e5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/bg_jc.png differ diff --git a/app/src/main/res/drawable-nodpi/bg_time_no_data.png b/app/src/main/res/drawable-nodpi/bg_time_no_data.png new file mode 100644 index 0000000..da4ee00 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/bg_time_no_data.png differ diff --git a/app/src/main/res/drawable-nodpi/bg_zchjy.png b/app/src/main/res/drawable-nodpi/bg_zchjy.png new file mode 100644 index 0000000..9176382 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/bg_zchjy.png differ diff --git a/app/src/main/res/drawable-nodpi/btn_zjjc_close.png b/app/src/main/res/drawable-nodpi/btn_zjjc_close.png new file mode 100644 index 0000000..6264f2a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/btn_zjjc_close.png differ diff --git a/app/src/main/res/drawable-nodpi/btn_zjjc_open.png b/app/src/main/res/drawable-nodpi/btn_zjjc_open.png new file mode 100644 index 0000000..9f1fb98 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/btn_zjjc_open.png differ diff --git a/app/src/main/res/drawable-nodpi/but_zced.png b/app/src/main/res/drawable-nodpi/but_zced.png new file mode 100644 index 0000000..ecb2c14 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/but_zced.png differ diff --git a/app/src/main/res/drawable-nodpi/cyyy_back.png b/app/src/main/res/drawable-nodpi/cyyy_back.png new file mode 100644 index 0000000..6c86cf9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/cyyy_back.png differ diff --git a/app/src/main/res/drawable-nodpi/cyyy_bj.png b/app/src/main/res/drawable-nodpi/cyyy_bj.png new file mode 100644 index 0000000..9b9aebe Binary files /dev/null and b/app/src/main/res/drawable-nodpi/cyyy_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/cyyy_wc.png b/app/src/main/res/drawable-nodpi/cyyy_wc.png new file mode 100644 index 0000000..64de40b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/cyyy_wc.png differ diff --git a/app/src/main/res/drawable-nodpi/daoban.png b/app/src/main/res/drawable-nodpi/daoban.png new file mode 100644 index 0000000..2f89768 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/daoban.png differ diff --git a/app/src/main/res/drawable-nodpi/ease_search_clear_normal.png b/app/src/main/res/drawable-nodpi/ease_search_clear_normal.png new file mode 100644 index 0000000..0d2b530 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ease_search_clear_normal.png differ diff --git a/app/src/main/res/drawable-nodpi/fengexian.png b/app/src/main/res/drawable-nodpi/fengexian.png new file mode 100644 index 0000000..0092067 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/fengexian.png differ diff --git a/app/src/main/res/drawable-nodpi/grade_icon.png b/app/src/main/res/drawable-nodpi/grade_icon.png new file mode 100644 index 0000000..90fd2fc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grade_icon.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_bj.png b/app/src/main/res/drawable-nodpi/grzx_bj.png new file mode 100644 index 0000000..8ed24eb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_grxx.png b/app/src/main/res/drawable-nodpi/grzx_grxx.png new file mode 100644 index 0000000..33d873c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_grxx.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_gysb.png b/app/src/main/res/drawable-nodpi/grzx_gysb.png new file mode 100644 index 0000000..c55c053 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_gysb.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_jtcy.png b/app/src/main/res/drawable-nodpi/grzx_jtcy.png new file mode 100644 index 0000000..a09dd44 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_jtcy.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_lj1.png b/app/src/main/res/drawable-nodpi/grzx_lj1.png new file mode 100644 index 0000000..3940623 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_lj1.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_lj2.png b/app/src/main/res/drawable-nodpi/grzx_lj2.png new file mode 100644 index 0000000..a86396c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_lj2.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_sybz.png b/app/src/main/res/drawable-nodpi/grzx_sybz.png new file mode 100644 index 0000000..64e585b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_sybz.png differ diff --git a/app/src/main/res/drawable-nodpi/grzx_wtyfk.png b/app/src/main/res/drawable-nodpi/grzx_wtyfk.png new file mode 100644 index 0000000..6f4e51c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/grzx_wtyfk.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_add_img.png b/app/src/main/res/drawable-nodpi/ic_add_img.png new file mode 100644 index 0000000..45fcf04 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_add_img.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_img_fork.png b/app/src/main/res/drawable-nodpi/ic_img_fork.png new file mode 100644 index 0000000..be6866d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_img_fork.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_launcher.png b/app/src/main/res/drawable-nodpi/ic_launcher.png new file mode 100644 index 0000000..b468d99 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_launcher.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_pay_close.png b/app/src/main/res/drawable-nodpi/ic_pay_close.png new file mode 100644 index 0000000..09caaa8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_pay_close.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_sp_back.png b/app/src/main/res/drawable-nodpi/ic_sp_back.png new file mode 100644 index 0000000..d2199b3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_sp_back.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_video_enlarge.png b/app/src/main/res/drawable-nodpi/ic_video_enlarge.png new file mode 100644 index 0000000..303a810 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_video_enlarge.png differ diff --git a/app/src/main/res/drawable-nodpi/ic_video_shrink.png b/app/src/main/res/drawable-nodpi/ic_video_shrink.png new file mode 100644 index 0000000..d0cc669 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/ic_video_shrink.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_add_g.png b/app/src/main/res/drawable-nodpi/icon_add_g.png new file mode 100644 index 0000000..0f0ffc3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_add_g.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_add_k.png b/app/src/main/res/drawable-nodpi/icon_add_k.png new file mode 100644 index 0000000..8fa0ae2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_add_k.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aijt.png b/app/src/main/res/drawable-nodpi/icon_ai_aijt.png new file mode 100644 index 0000000..bd655bb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aijt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aijtjs.png b/app/src/main/res/drawable-nodpi/icon_ai_aijtjs.png new file mode 100644 index 0000000..9d1b0e5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aijtjs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aijzx.png b/app/src/main/res/drawable-nodpi/icon_ai_aijzx.png new file mode 100644 index 0000000..3ffd433 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aijzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aixhb.png b/app/src/main/res/drawable-nodpi/icon_ai_aixhb.png new file mode 100644 index 0000000..45b49fa Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aixhb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aixxgj.png b/app/src/main/res/drawable-nodpi/icon_ai_aixxgj.png new file mode 100644 index 0000000..ee0586b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aixxgj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aizjx.png b/app/src/main/res/drawable-nodpi/icon_ai_aizjx.png new file mode 100644 index 0000000..60768f9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aizjx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_aiznxxt.png b/app/src/main/res/drawable-nodpi/icon_ai_aiznxxt.png new file mode 100644 index 0000000..f919f4b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_aiznxxt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_fdzy.png b/app/src/main/res/drawable-nodpi/icon_ai_fdzy.png new file mode 100644 index 0000000..fa7a2ee Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_fdzy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_kyls.png b/app/src/main/res/drawable-nodpi/icon_ai_kyls.png new file mode 100644 index 0000000..2ced3ce Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_kyls.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_pgkst.png b/app/src/main/res/drawable-nodpi/icon_ai_pgkst.png new file mode 100644 index 0000000..605a6ab Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_pgkst.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_pgzy.png b/app/src/main/res/drawable-nodpi/icon_ai_pgzy.png new file mode 100644 index 0000000..371764c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_pgzy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_pzst.png b/app/src/main/res/drawable-nodpi/icon_ai_pzst.png new file mode 100644 index 0000000..e39586e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_pzst.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_ykyl.png b/app/src/main/res/drawable-nodpi/icon_ai_ykyl.png new file mode 100644 index 0000000..a64da82 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_zndy.png b/app/src/main/res/drawable-nodpi/icon_ai_zndy.png new file mode 100644 index 0000000..bc56777 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_zndy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ai_zwpg.png b/app/src/main/res/drawable-nodpi/icon_ai_zwpg.png new file mode 100644 index 0000000..dc145a3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ai_zwpg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_arrow.png b/app/src/main/res/drawable-nodpi/icon_arrow.png new file mode 100644 index 0000000..1c85cdb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_arrow.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_back.png b/app/src/main/res/drawable-nodpi/icon_back.png new file mode 100644 index 0000000..5690f1a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_back.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_back_1.png b/app/src/main/res/drawable-nodpi/icon_back_1.png new file mode 100644 index 0000000..913ef85 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_back_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_azpt.png b/app/src/main/res/drawable-nodpi/icon_bbx_azpt.png new file mode 100644 index 0000000..3dab6be Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_azpt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_jzgk.png b/app/src/main/res/drawable-nodpi/icon_bbx_jzgk.png new file mode 100644 index 0000000..81b0208 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_jzgk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_kcb.png b/app/src/main/res/drawable-nodpi/icon_bbx_kcb.png new file mode 100644 index 0000000..810482c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_kcb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_qhbz.png b/app/src/main/res/drawable-nodpi/icon_bbx_qhbz.png new file mode 100644 index 0000000..87481fa Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_qhbz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_syzs.png b/app/src/main/res/drawable-nodpi/icon_bbx_syzs.png new file mode 100644 index 0000000..aab42ee Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_syzs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_sz.png b/app/src/main/res/drawable-nodpi/icon_bbx_sz.png new file mode 100644 index 0000000..69cfcca Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_sz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_xzzx.png b/app/src/main/res/drawable-nodpi/icon_bbx_xzzx.png new file mode 100644 index 0000000..ded8fd1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_xzzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_yjjs.png b/app/src/main/res/drawable-nodpi/icon_bbx_yjjs.png new file mode 100644 index 0000000..0d98071 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_yjjs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_yyfy.png b/app/src/main/res/drawable-nodpi/icon_bbx_yyfy.png new file mode 100644 index 0000000..d1056b0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_yyfy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_yygx.png b/app/src/main/res/drawable-nodpi/icon_bbx_yygx.png new file mode 100644 index 0000000..b8ef73f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_yygx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_yysd.png b/app/src/main/res/drawable-nodpi/icon_bbx_yysd.png new file mode 100644 index 0000000..2cd753a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_yysd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bbx_znhy.png b/app/src/main/res/drawable-nodpi/icon_bbx_znhy.png new file mode 100644 index 0000000..a5d0d05 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bbx_znhy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bfz.webp b/app/src/main/res/drawable-nodpi/icon_bfz.webp new file mode 100644 index 0000000..4baf126 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bfz.webp differ diff --git a/app/src/main/res/drawable-nodpi/icon_byclgz.png b/app/src/main/res/drawable-nodpi/icon_byclgz.png new file mode 100644 index 0000000..18fd403 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_byclgz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz1.png b/app/src/main/res/drawable-nodpi/icon_bz1.png new file mode 100644 index 0000000..bd140e0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz2.png b/app/src/main/res/drawable-nodpi/icon_bz2.png new file mode 100644 index 0000000..1b1c007 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_0.png b/app/src/main/res/drawable-nodpi/icon_bz_0.png new file mode 100644 index 0000000..d3627a8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_0.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_1.png b/app/src/main/res/drawable-nodpi/icon_bz_1.png new file mode 100644 index 0000000..c1cc4ac Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_2.png b/app/src/main/res/drawable-nodpi/icon_bz_2.png new file mode 100644 index 0000000..feae5c7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_3.png b/app/src/main/res/drawable-nodpi/icon_bz_3.png new file mode 100644 index 0000000..7b8611a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_4.png b/app/src/main/res/drawable-nodpi/icon_bz_4.png new file mode 100644 index 0000000..56d46f3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_5.png b/app/src/main/res/drawable-nodpi/icon_bz_5.png new file mode 100644 index 0000000..1214e45 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_5.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_6.png b/app/src/main/res/drawable-nodpi/icon_bz_6.png new file mode 100644 index 0000000..2faa5fc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_6.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_7.png b/app/src/main/res/drawable-nodpi/icon_bz_7.png new file mode 100644 index 0000000..4836ffe Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_7.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_bz_8.png b/app/src/main/res/drawable-nodpi/icon_bz_8.png new file mode 100644 index 0000000..7205ee7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_bz_8.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_cxjz.png b/app/src/main/res/drawable-nodpi/icon_cxjz.png new file mode 100644 index 0000000..5e84f41 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_cxjz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_dashudehua.png b/app/src/main/res/drawable-nodpi/icon_czjh_dashudehua.png new file mode 100644 index 0000000..d2fcdb0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_dashudehua.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_jdt_bg.png b/app/src/main/res/drawable-nodpi/icon_czjh_jdt_bg.png new file mode 100644 index 0000000..0c51bbd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_jdt_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_jiaoshuihu.png b/app/src/main/res/drawable-nodpi/icon_czjh_jiaoshuihu.png new file mode 100644 index 0000000..ea3794c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_jiaoshuihu.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_tishi.png b/app/src/main/res/drawable-nodpi/icon_czjh_tishi.png new file mode 100644 index 0000000..87b7651 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_tishi.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_xiaoshudehua.png b/app/src/main/res/drawable-nodpi/icon_czjh_xiaoshudehua.png new file mode 100644 index 0000000..ec13ebc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_xiaoshudehua.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_czjh_xiaoxuanfushit.png b/app/src/main/res/drawable-nodpi/icon_czjh_xiaoxuanfushit.png new file mode 100644 index 0000000..be61005 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_czjh_xiaoxuanfushit.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dashu.png b/app/src/main/res/drawable-nodpi/icon_dashu.png new file mode 100644 index 0000000..29546c7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dashu.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ddyfz_jpkc.png b/app/src/main/res/drawable-nodpi/icon_ddyfz_jpkc.png new file mode 100644 index 0000000..f4d6425 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ddyfz_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_deb.png b/app/src/main/res/drawable-nodpi/icon_deb.png new file mode 100644 index 0000000..e05173f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_deb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_deb_2.png b/app/src/main/res/drawable-nodpi/icon_deb_2.png new file mode 100644 index 0000000..f36f0e3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_deb_2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_deb_3.png b/app/src/main/res/drawable-nodpi/icon_deb_3.png new file mode 100644 index 0000000..bbcec07 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_deb_3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_0.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_0.png new file mode 100644 index 0000000..c706425 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_0.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_1.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_1.png new file mode 100644 index 0000000..e1a61e7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_10.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_10.png new file mode 100644 index 0000000..86dc1b4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_10.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_2.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_2.png new file mode 100644 index 0000000..49c8b8d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_3.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_3.png new file mode 100644 index 0000000..8f75117 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_4.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_4.png new file mode 100644 index 0000000..3893401 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_5.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_5.png new file mode 100644 index 0000000..d8f4221 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_5.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_6.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_6.png new file mode 100644 index 0000000..755494e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_6.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_7.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_7.png new file mode 100644 index 0000000..766fb42 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_7.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_8.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_8.png new file mode 100644 index 0000000..b79203a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_8.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_9.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_9.png new file mode 100644 index 0000000..e24e188 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_9.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_bg.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_bg.png new file mode 100644 index 0000000..26fa72b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_ds.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_ds.png new file mode 100644 index 0000000..8ad530c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_ds.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_jtx.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtx.png new file mode 100644 index 0000000..e42f3f1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_jty.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_jty.png new file mode 100644 index 0000000..dc14132 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_jty.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_jtyx.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtyx.png new file mode 100644 index 0000000..cf6458e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtyx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_jtz.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtz.png new file mode 100644 index 0000000..9ef153f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_jtz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_ds_xs.png b/app/src/main/res/drawable-nodpi/icon_dia_ds_xs.png new file mode 100644 index 0000000..4803613 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_ds_xs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dia_gb.png b/app/src/main/res/drawable-nodpi/icon_dia_gb.png new file mode 100644 index 0000000..a34139a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dia_gb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dialog_bj.png b/app/src/main/res/drawable-nodpi/icon_dialog_bj.png new file mode 100644 index 0000000..fac4dbd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dialog_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dj1.png b/app/src/main/res/drawable-nodpi/icon_dj1.png new file mode 100644 index 0000000..dfe64ac Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dj1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dl_dlhkzx.png b/app/src/main/res/drawable-nodpi/icon_dl_dlhkzx.png new file mode 100644 index 0000000..e2605f6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dl_dlhkzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dl_jpkc.png b/app/src/main/res/drawable-nodpi/icon_dl_jpkc.png new file mode 100644 index 0000000..896150d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dl_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dl_ykyl.png b/app/src/main/res/drawable-nodpi/icon_dl_ykyl.png new file mode 100644 index 0000000..3488016 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dl_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dl_zxts.png b/app/src/main/res/drawable-nodpi/icon_dl_zxts.png new file mode 100644 index 0000000..d90e8df Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dl_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dottedline.png b/app/src/main/res/drawable-nodpi/icon_dottedline.png new file mode 100644 index 0000000..94a69f0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dottedline.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dqbz_xz.png b/app/src/main/res/drawable-nodpi/icon_dqbz_xz.png new file mode 100644 index 0000000..3a354a6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dqbz_xz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_bg.png b/app/src/main/res/drawable-nodpi/icon_ds_bg.png new file mode 100644 index 0000000..06765e9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_ksyd.png b/app/src/main/res/drawable-nodpi/icon_ds_ksyd.png new file mode 100644 index 0000000..c01e16a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_ksyd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu1.png b/app/src/main/res/drawable-nodpi/icon_ds_shu1.png new file mode 100644 index 0000000..3fd6810 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu2.png b/app/src/main/res/drawable-nodpi/icon_ds_shu2.png new file mode 100644 index 0000000..b06d79f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu3.png b/app/src/main/res/drawable-nodpi/icon_ds_shu3.png new file mode 100644 index 0000000..f0aa3d3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu4.png b/app/src/main/res/drawable-nodpi/icon_ds_shu4.png new file mode 100644 index 0000000..3f84e55 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu5.png b/app/src/main/res/drawable-nodpi/icon_ds_shu5.png new file mode 100644 index 0000000..ae62e21 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu5.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_shu6.png b/app/src/main/res/drawable-nodpi/icon_ds_shu6.png new file mode 100644 index 0000000..7b68d2c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_shu6.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_xljt.png b/app/src/main/res/drawable-nodpi/icon_ds_xljt.png new file mode 100644 index 0000000..b60b116 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_xljt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ds_yxzq.png b/app/src/main/res/drawable-nodpi/icon_ds_yxzq.png new file mode 100644 index 0000000..f487b71 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ds_yxzq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dyfx_x.png b/app/src/main/res/drawable-nodpi/icon_dyfx_x.png new file mode 100644 index 0000000..f299c95 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dyfx_x.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dyfx_xbbj.png b/app/src/main/res/drawable-nodpi/icon_dyfx_xbbj.png new file mode 100644 index 0000000..06a7bfc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dyfx_xbbj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dyfx_zsdjj.png b/app/src/main/res/drawable-nodpi/icon_dyfx_zsdjj.png new file mode 100644 index 0000000..b3a209c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dyfx_zsdjj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dyfx_zskj.png b/app/src/main/res/drawable-nodpi/icon_dyfx_zskj.png new file mode 100644 index 0000000..cb86768 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dyfx_zskj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_dyfx_ztjj.png b/app/src/main/res/drawable-nodpi/icon_dyfx_ztjj.png new file mode 100644 index 0000000..c32f2a9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_dyfx_ztjj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ewmbd.png b/app/src/main/res/drawable-nodpi/icon_ewmbd.png new file mode 100644 index 0000000..2fd9ba5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ewmbd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ewmbd_1.png b/app/src/main/res/drawable-nodpi/icon_ewmbd_1.png new file mode 100644 index 0000000..a0ac019 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ewmbd_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_exp_bg.png b/app/src/main/res/drawable-nodpi/icon_exp_bg.png new file mode 100644 index 0000000..42cd004 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_exp_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_exp_bg_1.png b/app/src/main/res/drawable-nodpi/icon_exp_bg_1.png new file mode 100644 index 0000000..553b860 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_exp_bg_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_fd_kwdd.png b/app/src/main/res/drawable-nodpi/icon_fd_kwdd.png new file mode 100644 index 0000000..efbf2a7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_fd_kwdd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_fk_bycl.png b/app/src/main/res/drawable-nodpi/icon_fk_bycl.png new file mode 100644 index 0000000..528bdec Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_fk_bycl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_fk_ycl.png b/app/src/main/res/drawable-nodpi/icon_fk_ycl.png new file mode 100644 index 0000000..6747523 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_fk_ycl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_fkjl.png b/app/src/main/res/drawable-nodpi/icon_fkjl.png new file mode 100644 index 0000000..71f3047 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_fkjl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_fkjl1.png b/app/src/main/res/drawable-nodpi/icon_fkjl1.png new file mode 100644 index 0000000..0200077 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_fkjl1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_gk_addtime.png b/app/src/main/res/drawable-nodpi/icon_gk_addtime.png new file mode 100644 index 0000000..fc5c450 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_gk_addtime.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_gk_left.png b/app/src/main/res/drawable-nodpi/icon_gk_left.png new file mode 100644 index 0000000..27d9314 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_gk_left.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_gk_right.png b/app/src/main/res/drawable-nodpi/icon_gk_right.png new file mode 100644 index 0000000..a5fe38f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_gk_right.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_gksl.png b/app/src/main/res/drawable-nodpi/icon_gksl.png new file mode 100644 index 0000000..db87c53 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_gksl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_gr_wx.png b/app/src/main/res/drawable-nodpi/icon_gr_wx.png new file mode 100644 index 0000000..bb039cf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_gr_wx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_grzx_gly.png b/app/src/main/res/drawable-nodpi/icon_grzx_gly.png new file mode 100644 index 0000000..d67de97 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_grzx_gly.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_home_qh.png b/app/src/main/res/drawable-nodpi/icon_home_qh.png new file mode 100644 index 0000000..929948a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_home_qh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_gsdq.png b/app/src/main/res/drawable-nodpi/icon_hx_gsdq.png new file mode 100644 index 0000000..a572814 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_gsdq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_hxsys.png b/app/src/main/res/drawable-nodpi/icon_hx_hxsys.png new file mode 100644 index 0000000..8de1c48 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_hxsys.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_hxzkzx.png b/app/src/main/res/drawable-nodpi/icon_hx_hxzkzx.png new file mode 100644 index 0000000..8396d07 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_hxzkzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_jpkc.png b/app/src/main/res/drawable-nodpi/icon_hx_jpkc.png new file mode 100644 index 0000000..c325b05 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_ykyl.png b/app/src/main/res/drawable-nodpi/icon_hx_ykyl.png new file mode 100644 index 0000000..e753e9a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_yszqb.png b/app/src/main/res/drawable-nodpi/icon_hx_yszqb.png new file mode 100644 index 0000000..1585378 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_yszqb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hx_zxts.png b/app/src/main/res/drawable-nodpi/icon_hx_zxts.png new file mode 100644 index 0000000..7c7f8a4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hx_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_hyp.png b/app/src/main/res/drawable-nodpi/icon_hyp.png new file mode 100644 index 0000000..10108c5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_hyp.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_img_default.png b/app/src/main/res/drawable-nodpi/icon_img_default.png new file mode 100644 index 0000000..d824661 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_img_default.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_jiaoshuihudehua.png b/app/src/main/res/drawable-nodpi/icon_jiaoshuihudehua.png new file mode 100644 index 0000000..e44cb45 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_jiaoshuihudehua.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_jinyong.png b/app/src/main/res/drawable-nodpi/icon_jinyong.png new file mode 100644 index 0000000..e3eb4c0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_jinyong.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_jq.png b/app/src/main/res/drawable-nodpi/icon_jq.png new file mode 100644 index 0000000..67e28ab Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_jq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_js.png b/app/src/main/res/drawable-nodpi/icon_js.png new file mode 100644 index 0000000..1959804 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_js.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_jt_left.png b/app/src/main/res/drawable-nodpi/icon_jt_left.png new file mode 100644 index 0000000..b472f14 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_jt_left.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_kbdd_zb.png b/app/src/main/res/drawable-nodpi/icon_kbdd_zb.png new file mode 100644 index 0000000..9871175 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_kbdd_zb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_kx_jpkc.png b/app/src/main/res/drawable-nodpi/icon_kx_jpkc.png new file mode 100644 index 0000000..2335e49 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_kx_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_launcher_maidian.png b/app/src/main/res/drawable-nodpi/icon_launcher_maidian.png new file mode 100644 index 0000000..5c07718 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_launcher_maidian.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_launcher_sysbfq.png b/app/src/main/res/drawable-nodpi/icon_launcher_sysbfq.png new file mode 100644 index 0000000..457370d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_launcher_sysbfq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_loading.png b/app/src/main/res/drawable-nodpi/icon_loading.png new file mode 100644 index 0000000..99bdb5b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_loading.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_loading_bs.png b/app/src/main/res/drawable-nodpi/icon_loading_bs.png new file mode 100644 index 0000000..91beaac Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_loading_bs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ls_jpkc.png b/app/src/main/res/drawable-nodpi/icon_ls_jpkc.png new file mode 100644 index 0000000..4305239 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ls_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ls_ykyl.png b/app/src/main/res/drawable-nodpi/icon_ls_ykyl.png new file mode 100644 index 0000000..6cff593 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ls_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_not_network.png b/app/src/main/res/drawable-nodpi/icon_not_network.png new file mode 100644 index 0000000..dd079dc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_not_network.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_not_network1.png b/app/src/main/res/drawable-nodpi/icon_not_network1.png new file mode 100644 index 0000000..17b41ba Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_not_network1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_not_network2.png b/app/src/main/res/drawable-nodpi/icon_not_network2.png new file mode 100644 index 0000000..1dd9322 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_not_network2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_cxjz.png b/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_cxjz.png new file mode 100644 index 0000000..cf2264b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_cxjz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_jcwl.png b/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_jcwl.png new file mode 100644 index 0000000..c53486a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_notwl_btn_bg_jcwl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_pop_xlbj.png b/app/src/main/res/drawable-nodpi/icon_pop_xlbj.png new file mode 100644 index 0000000..564ace9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_pop_xlbj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_progress_drawable.9.png b/app/src/main/res/drawable-nodpi/icon_progress_drawable.9.png new file mode 100644 index 0000000..83a174c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_progress_drawable.9.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_qhbz_bj.png b/app/src/main/res/drawable-nodpi/icon_qhbz_bj.png new file mode 100644 index 0000000..700971d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_qhbz_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_qhbz_text.png b/app/src/main/res/drawable-nodpi/icon_qhbz_text.png new file mode 100644 index 0000000..a95fdb5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_qhbz_text.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_qxpy.png b/app/src/main/res/drawable-nodpi/icon_qxpy.png new file mode 100644 index 0000000..093f2c8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_qxpy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_gy.png b/app/src/main/res/drawable-nodpi/icon_set_gy.png new file mode 100644 index 0000000..2e2b4ff Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_gy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_ly.png b/app/src/main/res/drawable-nodpi/icon_set_ly.png new file mode 100644 index 0000000..051fcc3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_ly.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_pb.png b/app/src/main/res/drawable-nodpi/icon_set_pb.png new file mode 100644 index 0000000..508335e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_pb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_sjgk.png b/app/src/main/res/drawable-nodpi/icon_set_sjgk.png new file mode 100644 index 0000000..b8dfb76 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_sjgk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_sy.png b/app/src/main/res/drawable-nodpi/icon_set_sy.png new file mode 100644 index 0000000..ae0d48b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_sy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_tj.png b/app/src/main/res/drawable-nodpi/icon_set_tj.png new file mode 100644 index 0000000..e065a08 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_tj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_wl.png b/app/src/main/res/drawable-nodpi/icon_set_wl.png new file mode 100644 index 0000000..aa1e07c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_wl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_xs.png b/app/src/main/res/drawable-nodpi/icon_set_xs.png new file mode 100644 index 0000000..81fa870 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_xs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_xtgx.png b/app/src/main/res/drawable-nodpi/icon_set_xtgx.png new file mode 100644 index 0000000..e9098d4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_xtgx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_yy.png b/app/src/main/res/drawable-nodpi/icon_set_yy.png new file mode 100644 index 0000000..18d2160 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_yy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_yygl.png b/app/src/main/res/drawable-nodpi/icon_set_yygl.png new file mode 100644 index 0000000..76e218c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_yygl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_yylb.png b/app/src/main/res/drawable-nodpi/icon_set_yylb.png new file mode 100644 index 0000000..7a68ca6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_yylb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_set_zh.png b/app/src/main/res/drawable-nodpi/icon_set_zh.png new file mode 100644 index 0000000..faa8e38 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_set_zh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sjbj.png b/app/src/main/res/drawable-nodpi/icon_sjbj.png new file mode 100644 index 0000000..622038f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sjbj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_slxl_gb.png b/app/src/main/res/drawable-nodpi/icon_slxl_gb.png new file mode 100644 index 0000000..e7d159c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_slxl_gb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_slxl_jyz.png b/app/src/main/res/drawable-nodpi/icon_slxl_jyz.png new file mode 100644 index 0000000..1b95934 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_slxl_jyz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sq.png b/app/src/main/res/drawable-nodpi/icon_sq.png new file mode 100644 index 0000000..f987cad Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sw_hkzx.png b/app/src/main/res/drawable-nodpi/icon_sw_hkzx.png new file mode 100644 index 0000000..14c613e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sw_hkzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sw_jpkc.png b/app/src/main/res/drawable-nodpi/icon_sw_jpkc.png new file mode 100644 index 0000000..765b08b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sw_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sw_swsys.png b/app/src/main/res/drawable-nodpi/icon_sw_swsys.png new file mode 100644 index 0000000..36cddc9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sw_swsys.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sw_ykyl.png b/app/src/main/res/drawable-nodpi/icon_sw_ykyl.png new file mode 100644 index 0000000..099340d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sw_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sw_zxts.png b/app/src/main/res/drawable-nodpi/icon_sw_zxts.png new file mode 100644 index 0000000..9694637 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sw_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_cyas.png b/app/src/main/res/drawable-nodpi/icon_sx_cyas.png new file mode 100644 index 0000000..25dd09c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_cyas.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_czsxdylfx.png b/app/src/main/res/drawable-nodpi/icon_sx_czsxdylfx.png new file mode 100644 index 0000000..f47feeb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_czsxdylfx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_delfx.png b/app/src/main/res/drawable-nodpi/icon_sx_delfx.png new file mode 100644 index 0000000..dc65639 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_delfx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_gsdq.png b/app/src/main/res/drawable-nodpi/icon_sx_gsdq.png new file mode 100644 index 0000000..8b2a9e8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_gsdq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_jhtx.png b/app/src/main/res/drawable-nodpi/icon_sx_jhtx.png new file mode 100644 index 0000000..6e69e0d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_jhtx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_jpkc.png b/app/src/main/res/drawable-nodpi/icon_sx_jpkc.png new file mode 100644 index 0000000..ad614a1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_ksdcg.png b/app/src/main/res/drawable-nodpi/icon_sx_ksdcg.png new file mode 100644 index 0000000..40b866d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_ksdcg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_sdjjc.png b/app/src/main/res/drawable-nodpi/icon_sx_sdjjc.png new file mode 100644 index 0000000..0c266fa Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_sdjjc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_sskj.png b/app/src/main/res/drawable-nodpi/icon_sx_sskj.png new file mode 100644 index 0000000..6dd9e27 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_sskj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_sswq.png b/app/src/main/res/drawable-nodpi/icon_sx_sswq.png new file mode 100644 index 0000000..a2f54e2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_sswq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_tbfd_bg.png b/app/src/main/res/drawable-nodpi/icon_sx_tbfd_bg.png new file mode 100644 index 0000000..f595f78 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_tbfd_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_txjq.png b/app/src/main/res/drawable-nodpi/icon_sx_txjq.png new file mode 100644 index 0000000..ad8d561 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_txjq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_xsczt.png b/app/src/main/res/drawable-nodpi/icon_sx_xsczt.png new file mode 100644 index 0000000..0847871 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_xsczt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_xtfx.png b/app/src/main/res/drawable-nodpi/icon_sx_xtfx.png new file mode 100644 index 0000000..7ff08ff Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_xtfx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_ykyl.png b/app/src/main/res/drawable-nodpi/icon_sx_ykyl.png new file mode 100644 index 0000000..7710889 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_yytxl.png b/app/src/main/res/drawable-nodpi/icon_sx_yytxl.png new file mode 100644 index 0000000..76c56b2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_yytxl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sx_zxts.png b/app/src/main/res/drawable-nodpi/icon_sx_zxts.png new file mode 100644 index 0000000..f5cbcdd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sx_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_hbdh.png b/app/src/main/res/drawable-nodpi/icon_syk_hbdh.png new file mode 100644 index 0000000..c20789d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_hbdh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_kpbk.png b/app/src/main/res/drawable-nodpi/icon_syk_kpbk.png new file mode 100644 index 0000000..ae9e02c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_kpbk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_kxsys.png b/app/src/main/res/drawable-nodpi/icon_syk_kxsys.png new file mode 100644 index 0000000..7edfee6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_kxsys.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_lswh.png b/app/src/main/res/drawable-nodpi/icon_syk_lswh.png new file mode 100644 index 0000000..a5f0a5e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_lswh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_ms.png b/app/src/main/res/drawable-nodpi/icon_syk_ms.png new file mode 100644 index 0000000..1e455e6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_ms.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_syk_sf.png b/app/src/main/res/drawable-nodpi/icon_syk_sf.png new file mode 100644 index 0000000..3869768 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_syk_sf.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifi1.png b/app/src/main/res/drawable-nodpi/icon_sz_wifi1.png new file mode 100644 index 0000000..bc7ad89 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifi1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifi2.png b/app/src/main/res/drawable-nodpi/icon_sz_wifi2.png new file mode 100644 index 0000000..9c59570 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifi2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifi3.png b/app/src/main/res/drawable-nodpi/icon_sz_wifi3.png new file mode 100644 index 0000000..5d92130 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifi3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifi4.png b/app/src/main/res/drawable-nodpi/icon_sz_wifi4.png new file mode 100644 index 0000000..c09d04c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifi4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifilj1.png b/app/src/main/res/drawable-nodpi/icon_sz_wifilj1.png new file mode 100644 index 0000000..240dace Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifilj1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifilj2.png b/app/src/main/res/drawable-nodpi/icon_sz_wifilj2.png new file mode 100644 index 0000000..32c00eb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifilj2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifilj3.png b/app/src/main/res/drawable-nodpi/icon_sz_wifilj3.png new file mode 100644 index 0000000..7e2891a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifilj3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_sz_wifilj4.png b/app/src/main/res/drawable-nodpi/icon_sz_wifilj4.png new file mode 100644 index 0000000..56e95f2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_sz_wifilj4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_aixx.png b/app/src/main/res/drawable-nodpi/icon_tab_aixx.png new file mode 100644 index 0000000..2b26942 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_aixx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_aixx_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_aixx_pre.png new file mode 100644 index 0000000..8d23049 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_aixx_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_b.png b/app/src/main/res/drawable-nodpi/icon_tab_b.png new file mode 100644 index 0000000..be7d0c4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_b.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_ds.png b/app/src/main/res/drawable-nodpi/icon_tab_ds.png new file mode 100644 index 0000000..a83c5c9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_ds.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_ds_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_ds_pre.png new file mode 100644 index 0000000..41c25bf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_ds_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_lsaq.png b/app/src/main/res/drawable-nodpi/icon_tab_lsaq.png new file mode 100644 index 0000000..808583b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_lsaq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_lsaq_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_lsaq_pre.png new file mode 100644 index 0000000..23202f5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_lsaq_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_qtxx.png b/app/src/main/res/drawable-nodpi/icon_tab_qtxx.png new file mode 100644 index 0000000..133b8e3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_qtxx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_qtxx_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_qtxx_pre.png new file mode 100644 index 0000000..9068c8e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_qtxx_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_sx.png b/app/src/main/res/drawable-nodpi/icon_tab_sx.png new file mode 100644 index 0000000..a29c9bf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_sx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_sx_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_sx_pre.png new file mode 100644 index 0000000..836eec7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_sx_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_syk.png b/app/src/main/res/drawable-nodpi/icon_tab_syk.png new file mode 100644 index 0000000..bb8fc93 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_syk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_syk_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_syk_pre.png new file mode 100644 index 0000000..28b15a5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_syk_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_wd.png b/app/src/main/res/drawable-nodpi/icon_tab_wd.png new file mode 100644 index 0000000..3aa5b85 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_wd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_wd_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_wd_pre.png new file mode 100644 index 0000000..1679dc5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_wd_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_x.png b/app/src/main/res/drawable-nodpi/icon_tab_x.png new file mode 100644 index 0000000..8e3f51a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_x.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_xk.png b/app/src/main/res/drawable-nodpi/icon_tab_xk.png new file mode 100644 index 0000000..d84b411 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_xk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_xk_xz.png b/app/src/main/res/drawable-nodpi/icon_tab_xk_xz.png new file mode 100644 index 0000000..4afc548 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_xk_xz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_yw.png b/app/src/main/res/drawable-nodpi/icon_tab_yw.png new file mode 100644 index 0000000..41cc63c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_yw.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_yw_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_yw_pre.png new file mode 100644 index 0000000..400ba0f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_yw_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_yy.png b/app/src/main/res/drawable-nodpi/icon_tab_yy.png new file mode 100644 index 0000000..b18732c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_yy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tab_yy_pre.png b/app/src/main/res/drawable-nodpi/icon_tab_yy_pre.png new file mode 100644 index 0000000..215b491 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tab_yy_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tbdd_diandu.png b/app/src/main/res/drawable-nodpi/icon_tbdd_diandu.png new file mode 100644 index 0000000..0720ee5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tbdd_diandu.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tjcgtb.png b/app/src/main/res/drawable-nodpi/icon_tjcgtb.png new file mode 100644 index 0000000..667f1cd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tjcgtb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tjsb.png b/app/src/main/res/drawable-nodpi/icon_tjsb.png new file mode 100644 index 0000000..125ccca Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tjsb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx.png b/app/src/main/res/drawable-nodpi/icon_tx.png new file mode 100644 index 0000000..e7a3e49 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx1.png b/app/src/main/res/drawable-nodpi/icon_tx1.png new file mode 100644 index 0000000..17fe394 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx2.png b/app/src/main/res/drawable-nodpi/icon_tx2.png new file mode 100644 index 0000000..ae2bda6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx3.png b/app/src/main/res/drawable-nodpi/icon_tx3.png new file mode 100644 index 0000000..3ce99d2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx3.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx4.png b/app/src/main/res/drawable-nodpi/icon_tx4.png new file mode 100644 index 0000000..4572954 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx4.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx5.png b/app/src/main/res/drawable-nodpi/icon_tx5.png new file mode 100644 index 0000000..fd7b192 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx5.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx6.png b/app/src/main/res/drawable-nodpi/icon_tx6.png new file mode 100644 index 0000000..e3fec06 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx6.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx7.png b/app/src/main/res/drawable-nodpi/icon_tx7.png new file mode 100644 index 0000000..8478e26 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx7.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx8.png b/app/src/main/res/drawable-nodpi/icon_tx8.png new file mode 100644 index 0000000..48807c0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx8.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx_right.png b/app/src/main/res/drawable-nodpi/icon_tx_right.png new file mode 100644 index 0000000..47ad205 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx_right.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_tx_xz.png b/app/src/main/res/drawable-nodpi/icon_tx_xz.png new file mode 100644 index 0000000..98068e9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_tx_xz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_u_back.png b/app/src/main/res/drawable-nodpi/icon_u_back.png new file mode 100644 index 0000000..6d36301 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_u_back.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_update_not.png b/app/src/main/res/drawable-nodpi/icon_update_not.png new file mode 100644 index 0000000..9bbf135 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_update_not.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_bj.png b/app/src/main/res/drawable-nodpi/icon_wd_bj.png new file mode 100644 index 0000000..a185a68 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_by.png b/app/src/main/res/drawable-nodpi/icon_wd_by.png new file mode 100644 index 0000000..178532f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_by.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_dkbg.png b/app/src/main/res/drawable-nodpi/icon_wd_dkbg.png new file mode 100644 index 0000000..457c6a7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_dkbg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_dkbk.png b/app/src/main/res/drawable-nodpi/icon_wd_dkbk.png new file mode 100644 index 0000000..7b1372b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_dkbk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_dkcg.png b/app/src/main/res/drawable-nodpi/icon_wd_dkcg.png new file mode 100644 index 0000000..97dcd99 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_dkcg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_exp.png b/app/src/main/res/drawable-nodpi/icon_wd_exp.png new file mode 100644 index 0000000..8d523ce Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_exp.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_exp_2.png b/app/src/main/res/drawable-nodpi/icon_wd_exp_2.png new file mode 100644 index 0000000..4fbad28 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_exp_2.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_hj.png b/app/src/main/res/drawable-nodpi/icon_wd_hj.png new file mode 100644 index 0000000..9641b01 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_hj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_qt.png b/app/src/main/res/drawable-nodpi/icon_wd_qt.png new file mode 100644 index 0000000..a3ab99a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_qt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_scb.png b/app/src/main/res/drawable-nodpi/icon_wd_scb.png new file mode 100644 index 0000000..f9c24af Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_scb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_sd.png b/app/src/main/res/drawable-nodpi/icon_wd_sd.png new file mode 100644 index 0000000..c2fec59 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_sd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_wjx.png b/app/src/main/res/drawable-nodpi/icon_wd_wjx.png new file mode 100644 index 0000000..49313a6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_wjx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_wjx_pre.png b/app/src/main/res/drawable-nodpi/icon_wd_wjx_pre.png new file mode 100644 index 0000000..b7ace9a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_wjx_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_xwcd.png b/app/src/main/res/drawable-nodpi/icon_wd_xwcd.png new file mode 100644 index 0000000..5a4d32f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_xwcd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wd_zs.png b/app/src/main/res/drawable-nodpi/icon_wd_zs.png new file mode 100644 index 0000000..4b8783d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wd_zs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wdsj_wnr.png b/app/src/main/res/drawable-nodpi/icon_wdsj_wnr.png new file mode 100644 index 0000000..5c982e7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wdsj_wnr.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd.png b/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd.png new file mode 100644 index 0000000..2a0a9cf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd_youer.png b/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd_youer.png new file mode 100644 index 0000000..3ea6aa0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_bg_pwd_youer.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_connect_bj.png b/app/src/main/res/drawable-nodpi/icon_wifi_connect_bj.png new file mode 100644 index 0000000..fac4dbd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_connect_bj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_f.png b/app/src/main/res/drawable-nodpi/icon_wifi_f.png new file mode 100644 index 0000000..48433a4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_f.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_head_bg.png b/app/src/main/res/drawable-nodpi/icon_wifi_head_bg.png new file mode 100644 index 0000000..fc2cbc9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_head_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_head_bg_youer.png b/app/src/main/res/drawable-nodpi/icon_wifi_head_bg_youer.png new file mode 100644 index 0000000..8c37e28 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_head_bg_youer.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_info_bg.png b/app/src/main/res/drawable-nodpi/icon_wifi_info_bg.png new file mode 100644 index 0000000..7f617b1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_info_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_info_right.png b/app/src/main/res/drawable-nodpi/icon_wifi_info_right.png new file mode 100644 index 0000000..dccb11d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_info_right.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_info_right_youer.png b/app/src/main/res/drawable-nodpi/icon_wifi_info_right_youer.png new file mode 100644 index 0000000..f29cf55 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_info_right_youer.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_register_bg.png b/app/src/main/res/drawable-nodpi/icon_wifi_register_bg.png new file mode 100644 index 0000000..3fd40d5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_register_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_rot_load.png b/app/src/main/res/drawable-nodpi/icon_wifi_rot_load.png new file mode 100644 index 0000000..4b6af1d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_rot_load.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_splash_bg.png b/app/src/main/res/drawable-nodpi/icon_wifi_splash_bg.png new file mode 100644 index 0000000..82a2c08 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_splash_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_splash_wlan_logo.png b/app/src/main/res/drawable-nodpi/icon_wifi_splash_wlan_logo.png new file mode 100644 index 0000000..f31caab Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_splash_wlan_logo.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_yj_dk.png b/app/src/main/res/drawable-nodpi/icon_wifi_yj_dk.png new file mode 100644 index 0000000..1625a6b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_yj_dk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wifi_yj_gb.png b/app/src/main/res/drawable-nodpi/icon_wifi_yj_gb.png new file mode 100644 index 0000000..866d2b1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wifi_yj_gb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wjmm.png b/app/src/main/res/drawable-nodpi/icon_wjmm.png new file mode 100644 index 0000000..e6d60ff Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wjmm.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_aidyfxl_bg.png b/app/src/main/res/drawable-nodpi/icon_wl_aidyfxl_bg.png new file mode 100644 index 0000000..c2c3f1d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_aidyfxl_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_aijdc.png b/app/src/main/res/drawable-nodpi/icon_wl_aijdc.png new file mode 100644 index 0000000..bb3dcd9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_aijdc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_brdzj.png b/app/src/main/res/drawable-nodpi/icon_wl_brdzj.png new file mode 100644 index 0000000..3c0eb21 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_brdzj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_dnxfx_bg.png b/app/src/main/res/drawable-nodpi/icon_wl_dnxfx_bg.png new file mode 100644 index 0000000..92afdc6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_dnxfx_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_gsdq.png b/app/src/main/res/drawable-nodpi/icon_wl_gsdq.png new file mode 100644 index 0000000..3f474a4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_gsdq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_jpkc.png b/app/src/main/res/drawable-nodpi/icon_wl_jpkc.png new file mode 100644 index 0000000..d318f4f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_wlsys.png b/app/src/main/res/drawable-nodpi/icon_wl_wlsys.png new file mode 100644 index 0000000..ee3d423 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_wlsys.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_wlzkzx.png b/app/src/main/res/drawable-nodpi/icon_wl_wlzkzx.png new file mode 100644 index 0000000..97e2db2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_wlzkzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_ykyl.png b/app/src/main/res/drawable-nodpi/icon_wl_ykyl.png new file mode 100644 index 0000000..c9470a8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wl_zxts.png b/app/src/main/res/drawable-nodpi/icon_wl_zxts.png new file mode 100644 index 0000000..30e88c7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wl_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_wuwangluo_baise.png b/app/src/main/res/drawable-nodpi/icon_wuwangluo_baise.png new file mode 100644 index 0000000..d69628a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_wuwangluo_baise.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_x.png b/app/src/main/res/drawable-nodpi/icon_x.png new file mode 100644 index 0000000..c6fb7f2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_x.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xb.png b/app/src/main/res/drawable-nodpi/icon_xb.png new file mode 100644 index 0000000..b715af7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xb_xz.png b/app/src/main/res/drawable-nodpi/icon_xb_xz.png new file mode 100644 index 0000000..5500852 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xb_xz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xb_xz_youer.png b/app/src/main/res/drawable-nodpi/icon_xb_xz_youer.png new file mode 100644 index 0000000..deac270 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xb_xz_youer.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xb_youer.png b/app/src/main/res/drawable-nodpi/icon_xb_youer.png new file mode 100644 index 0000000..0585297 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xb_youer.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xianshi.png b/app/src/main/res/drawable-nodpi/icon_xianshi.png new file mode 100644 index 0000000..397dc40 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xianshi.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xiaoshudehua.png b/app/src/main/res/drawable-nodpi/icon_xiaoshudehua.png new file mode 100644 index 0000000..3ca403d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xiaoshudehua.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_bg.png b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_bg.png new file mode 100644 index 0000000..280bee0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbfd.png new file mode 100644 index 0000000..9a232a9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbsp.png b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbsp.png new file mode 100644 index 0000000..ed9a541 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_ddyfz_tbsp.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_dl_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_dl_tbfd.png new file mode 100644 index 0000000..b252fbc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_dl_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_hx_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_hx_tbfd.png new file mode 100644 index 0000000..6d2bdca Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_hx_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_kx_bg.png b/app/src/main/res/drawable-nodpi/icon_xk_kx_bg.png new file mode 100644 index 0000000..bb49c79 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_kx_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_kx_mlkxxsy.png b/app/src/main/res/drawable-nodpi/icon_xk_kx_mlkxxsy.png new file mode 100644 index 0000000..1594d16 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_kx_mlkxxsy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd.png new file mode 100644 index 0000000..e4522c4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd_1.png b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd_1.png new file mode 100644 index 0000000..3dae506 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbfd_1.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_kx_tbsp.png b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbsp.png new file mode 100644 index 0000000..bd92d28 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_kx_tbsp.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_ls_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_ls_tbfd.png new file mode 100644 index 0000000..aceb3e8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_ls_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_sw_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_sw_tbfd.png new file mode 100644 index 0000000..8f94432 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_sw_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_tab_bg.png b/app/src/main/res/drawable-nodpi/icon_xk_tab_bg.png new file mode 100644 index 0000000..4aae51d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_tab_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_tab_bg_pre.png b/app/src/main/res/drawable-nodpi/icon_xk_tab_bg_pre.png new file mode 100644 index 0000000..2633ab8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_tab_bg_pre.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_wl_khl.png b/app/src/main/res/drawable-nodpi/icon_xk_wl_khl.png new file mode 100644 index 0000000..cca00d1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_wl_khl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_wl_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_wl_tbfd.png new file mode 100644 index 0000000..c2e96da Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_wl_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_zjx_c.png b/app/src/main/res/drawable-nodpi/icon_xk_zjx_c.png new file mode 100644 index 0000000..ea4b210 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_zjx_c.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_zjx_l.png b/app/src/main/res/drawable-nodpi/icon_xk_zjx_l.png new file mode 100644 index 0000000..8738fec Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_zjx_l.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_zjx_r.png b/app/src/main/res/drawable-nodpi/icon_xk_zjx_r.png new file mode 100644 index 0000000..779df2e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_zjx_r.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xk_zz_tbfd.png b/app/src/main/res/drawable-nodpi/icon_xk_zz_tbfd.png new file mode 100644 index 0000000..254f6bb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xk_zz_tbfd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xl.png b/app/src/main/res/drawable-nodpi/icon_xl.png new file mode 100644 index 0000000..608e0a8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_xljt.png b/app/src/main/res/drawable-nodpi/icon_xljt.png new file mode 100644 index 0000000..3f39b1f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_xljt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ybjc_gb.png b/app/src/main/res/drawable-nodpi/icon_ybjc_gb.png new file mode 100644 index 0000000..b97a0da Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ybjc_gb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yclgz.png b/app/src/main/res/drawable-nodpi/icon_yclgz.png new file mode 100644 index 0000000..6ab053c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yclgz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_youer_wifi_f.png b/app/src/main/res/drawable-nodpi/icon_youer_wifi_f.png new file mode 100644 index 0000000..b4f0f8e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_youer_wifi_f.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_aidyfxl_bg.png b/app/src/main/res/drawable-nodpi/icon_yw_aidyfxl_bg.png new file mode 100644 index 0000000..34a91e4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_aidyfxl_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_aijdbk.png b/app/src/main/res/drawable-nodpi/icon_yw_aijdbk.png new file mode 100644 index 0000000..92119a5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_aijdbk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_aijdc.png b/app/src/main/res/drawable-nodpi/icon_yw_aijdc.png new file mode 100644 index 0000000..8cec765 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_aijdc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_brdzj.png b/app/src/main/res/drawable-nodpi/icon_yw_brdzj.png new file mode 100644 index 0000000..4d20893 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_brdzj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_dnxfx_bg.png b/app/src/main/res/drawable-nodpi/icon_yw_dnxfx_bg.png new file mode 100644 index 0000000..09d7663 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_dnxfx_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_dyfx.png b/app/src/main/res/drawable-nodpi/icon_yw_dyfx.png new file mode 100644 index 0000000..5cf7881 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_dyfx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_hchj.png b/app/src/main/res/drawable-nodpi/icon_yw_hchj.png new file mode 100644 index 0000000..6ef3e31 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_hchj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_hzcg.png b/app/src/main/res/drawable-nodpi/icon_yw_hzcg.png new file mode 100644 index 0000000..8491261 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_hzcg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_hzjc.png b/app/src/main/res/drawable-nodpi/icon_yw_hzjc.png new file mode 100644 index 0000000..0e0dca5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_hzjc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_jpkc.png b/app/src/main/res/drawable-nodpi/icon_yw_jpkc.png new file mode 100644 index 0000000..a2d683c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_khl.png b/app/src/main/res/drawable-nodpi/icon_yw_khl.png new file mode 100644 index 0000000..cb8715f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_khl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_ktxh.png b/app/src/main/res/drawable-nodpi/icon_yw_ktxh.png new file mode 100644 index 0000000..478e5dd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_ktxh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_mnk.png b/app/src/main/res/drawable-nodpi/icon_yw_mnk.png new file mode 100644 index 0000000..18e60a7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_mnk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_qm.png b/app/src/main/res/drawable-nodpi/icon_yw_qm.png new file mode 100644 index 0000000..99b8e60 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_qm.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_qxpy.png b/app/src/main/res/drawable-nodpi/icon_yw_qxpy.png new file mode 100644 index 0000000..093f2c8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_qxpy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_qz.png b/app/src/main/res/drawable-nodpi/icon_yw_qz.png new file mode 100644 index 0000000..94927a4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_qz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_scgw.png b/app/src/main/res/drawable-nodpi/icon_yw_scgw.png new file mode 100644 index 0000000..1fe3c77 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_scgw.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbdd_bg.png b/app/src/main/res/drawable-nodpi/icon_yw_tbdd_bg.png new file mode 100644 index 0000000..1276ace Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbdd_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbdd_dizuo.png b/app/src/main/res/drawable-nodpi/icon_yw_tbdd_dizuo.png new file mode 100644 index 0000000..f6258fd Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbdd_dizuo.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbfd_bg.png b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_bg.png new file mode 100644 index 0000000..35a2f67 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbfd_khfx.png b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_khfx.png new file mode 100644 index 0000000..f73535c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_khfx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbfd_kqyx.png b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_kqyx.png new file mode 100644 index 0000000..b904ad8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_kqyx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbfd_ktdb.png b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_ktdb.png new file mode 100644 index 0000000..b566805 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_ktdb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbfd_zsdwk.png b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_zsdwk.png new file mode 100644 index 0000000..e876e5c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbfd_zsdwk.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbgs.png b/app/src/main/res/drawable-nodpi/icon_yw_tbgs.png new file mode 100644 index 0000000..837af11 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbgs.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbjzx.png b/app/src/main/res/drawable-nodpi/icon_yw_tbjzx.png new file mode 100644 index 0000000..c150ad0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbjzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tbtl.png b/app/src/main/res/drawable-nodpi/icon_yw_tbtl.png new file mode 100644 index 0000000..5fcb954 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tbtl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_tjsb.png b/app/src/main/res/drawable-nodpi/icon_yw_tjsb.png new file mode 100644 index 0000000..4b917b8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_tjsb.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_xsckdzx.png b/app/src/main/res/drawable-nodpi/icon_yw_xsckdzx.png new file mode 100644 index 0000000..4132c7f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_xsckdzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_ydyxz.png b/app/src/main/res/drawable-nodpi/icon_yw_ydyxz.png new file mode 100644 index 0000000..3489340 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_ydyxz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_ykyl.png b/app/src/main/res/drawable-nodpi/icon_yw_ykyl.png new file mode 100644 index 0000000..fff3ca7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zcdtz.png b/app/src/main/res/drawable-nodpi/icon_yw_zcdtz.png new file mode 100644 index 0000000..7aaba6a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zcdtz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zctx.png b/app/src/main/res/drawable-nodpi/icon_yw_zctx.png new file mode 100644 index 0000000..64670e7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zctx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zhbd.png b/app/src/main/res/drawable-nodpi/icon_yw_zhbd.png new file mode 100644 index 0000000..cefaf4e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zhbd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zjx_c.png b/app/src/main/res/drawable-nodpi/icon_yw_zjx_c.png new file mode 100644 index 0000000..fa3140a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zjx_c.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zjx_l.png b/app/src/main/res/drawable-nodpi/icon_yw_zjx_l.png new file mode 100644 index 0000000..0d9a2cc Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zjx_l.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zjx_r.png b/app/src/main/res/drawable-nodpi/icon_yw_zjx_r.png new file mode 100644 index 0000000..e961634 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zjx_r.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zjxx_right.png b/app/src/main/res/drawable-nodpi/icon_yw_zjxx_right.png new file mode 100644 index 0000000..1ce5439 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zjxx_right.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zkywkdzx.png b/app/src/main/res/drawable-nodpi/icon_yw_zkywkdzx.png new file mode 100644 index 0000000..1aaed80 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zkywkdzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zwzx.png b/app/src/main/res/drawable-nodpi/icon_yw_zwzx.png new file mode 100644 index 0000000..ffbc6cf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zwzx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yw_zxts.png b/app/src/main/res/drawable-nodpi/icon_yw_zxts.png new file mode 100644 index 0000000..336a62e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yw_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_abczm.png b/app/src/main/res/drawable-nodpi/icon_yy_abczm.png new file mode 100644 index 0000000..8ea0569 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_abczm.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_bdc.png b/app/src/main/res/drawable-nodpi/icon_yy_bdc.png new file mode 100644 index 0000000..a1fcc74 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_bdc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_dcdjt.png b/app/src/main/res/drawable-nodpi/icon_yy_dcdjt.png new file mode 100644 index 0000000..e431e37 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_dcdjt.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_dcttl.png b/app/src/main/res/drawable-nodpi/icon_yy_dcttl.png new file mode 100644 index 0000000..e48d872 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_dcttl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_flch.png b/app/src/main/res/drawable-nodpi/icon_yy_flch.png new file mode 100644 index 0000000..6c0f612 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_flch.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_jpkc.png b/app/src/main/res/drawable-nodpi/icon_yy_jpkc.png new file mode 100644 index 0000000..1665c27 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_klxyy.png b/app/src/main/res/drawable-nodpi/icon_yy_klxyy.png new file mode 100644 index 0000000..9eb434e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_klxyy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_lccj.png b/app/src/main/res/drawable-nodpi/icon_yy_lccj.png new file mode 100644 index 0000000..9224e44 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_lccj.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_psdcg.png b/app/src/main/res/drawable-nodpi/icon_yy_psdcg.png new file mode 100644 index 0000000..9789f5e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_psdcg.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_qjdh.png b/app/src/main/res/drawable-nodpi/icon_yy_qjdh.png new file mode 100644 index 0000000..27ce5cf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_qjdh.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_qwpy.png b/app/src/main/res/drawable-nodpi/icon_yy_qwpy.png new file mode 100644 index 0000000..c4fb618 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_qwpy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_tbtl.png b/app/src/main/res/drawable-nodpi/icon_yy_tbtl.png new file mode 100644 index 0000000..45899fb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_tbtl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_xx_jpkc.png b/app/src/main/res/drawable-nodpi/icon_yy_xx_jpkc.png new file mode 100644 index 0000000..b94b3d6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_xx_jpkc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_xx_lwxfy.png b/app/src/main/res/drawable-nodpi/icon_yy_xx_lwxfy.png new file mode 100644 index 0000000..f2b32c2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_xx_lwxfy.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_xx_zxts.png b/app/src/main/res/drawable-nodpi/icon_yy_xx_zxts.png new file mode 100644 index 0000000..a613c77 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_xx_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_xzdby.png b/app/src/main/res/drawable-nodpi/icon_yy_xzdby.png new file mode 100644 index 0000000..ccfc7eb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_xzdby.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_xzts.png b/app/src/main/res/drawable-nodpi/icon_yy_xzts.png new file mode 100644 index 0000000..a3b4e17 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_xzts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_ybxx.png b/app/src/main/res/drawable-nodpi/icon_yy_ybxx.png new file mode 100644 index 0000000..ae3a14e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_ybxx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_yd.png b/app/src/main/res/drawable-nodpi/icon_yy_yd.png new file mode 100644 index 0000000..d941f68 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_yd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_ydxz.png b/app/src/main/res/drawable-nodpi/icon_yy_ydxz.png new file mode 100644 index 0000000..f44dc6d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_ydxz.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_yfdq.png b/app/src/main/res/drawable-nodpi/icon_yy_yfdq.png new file mode 100644 index 0000000..5262deb Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_yfdq.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_ykyl.png b/app/src/main/res/drawable-nodpi/icon_yy_ykyl.png new file mode 100644 index 0000000..9d96e9e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_ykyl.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_yyts.png b/app/src/main/res/drawable-nodpi/icon_yy_yyts.png new file mode 100644 index 0000000..eb1d7c6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_yyts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_zrpd.png b/app/src/main/res/drawable-nodpi/icon_yy_zrpd.png new file mode 100644 index 0000000..5de6c5e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_zrpd.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_zx_aijdc.png b/app/src/main/res/drawable-nodpi/icon_yy_zx_aijdc.png new file mode 100644 index 0000000..9243982 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_zx_aijdc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_zx_tsks.png b/app/src/main/res/drawable-nodpi/icon_yy_zx_tsks.png new file mode 100644 index 0000000..f4b0c4b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_zx_tsks.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yy_zxts.png b/app/src/main/res/drawable-nodpi/icon_yy_zxts.png new file mode 100644 index 0000000..8a5aa79 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yy_zxts.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_yygk_ewmtc.png b/app/src/main/res/drawable-nodpi/icon_yygk_ewmtc.png new file mode 100644 index 0000000..e6b8fc6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_yygk_ewmtc.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_zanting.png b/app/src/main/res/drawable-nodpi/icon_zanting.png new file mode 100644 index 0000000..62818ab Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_zanting.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_zc_wx.png b/app/src/main/res/drawable-nodpi/icon_zc_wx.png new file mode 100644 index 0000000..78532d0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_zc_wx.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_hssr_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_hssr_guan.png new file mode 100644 index 0000000..970a83a Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_hssr_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_hssr_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_hssr_kai.png new file mode 100644 index 0000000..a431d39 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_hssr_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_guan.png new file mode 100644 index 0000000..c2694f9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_kai.png new file mode 100644 index 0000000..cabacb6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lanssr_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_guan.png new file mode 100644 index 0000000..8c2e1d0 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_kai.png new file mode 100644 index 0000000..e6ac6b8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_ldbh_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lllg_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_lllg_guan.png new file mode 100644 index 0000000..c4d970d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lllg_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lllg_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_lllg_kai.png new file mode 100644 index 0000000..e6339fe Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lllg_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lssr_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_lssr_guan.png new file mode 100644 index 0000000..c63c9a7 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lssr_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_lssr_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_lssr_kai.png new file mode 100644 index 0000000..f00bd88 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_lssr_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_ydms_guan.png b/app/src/main/res/drawable-nodpi/icon_znhy_ydms_guan.png new file mode 100644 index 0000000..1cccebf Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_ydms_guan.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_znhy_ydms_kai.png b/app/src/main/res/drawable-nodpi/icon_znhy_ydms_kai.png new file mode 100644 index 0000000..118161c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_znhy_ydms_kai.png differ diff --git a/app/src/main/res/drawable-nodpi/icon_ztz.webp b/app/src/main/res/drawable-nodpi/icon_ztz.webp new file mode 100644 index 0000000..ca7e6a8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/icon_ztz.webp differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_0.png b/app/src/main/res/drawable-nodpi/img_home_bg_0.png new file mode 100644 index 0000000..14bf8c1 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_0.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_1.png b/app/src/main/res/drawable-nodpi/img_home_bg_1.png new file mode 100644 index 0000000..c90b41e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_1.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_2.png b/app/src/main/res/drawable-nodpi/img_home_bg_2.png new file mode 100644 index 0000000..0c51846 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_2.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_3.png b/app/src/main/res/drawable-nodpi/img_home_bg_3.png new file mode 100644 index 0000000..4ba2773 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_3.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_4.png b/app/src/main/res/drawable-nodpi/img_home_bg_4.png new file mode 100644 index 0000000..ceb9911 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_4.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_5.png b/app/src/main/res/drawable-nodpi/img_home_bg_5.png new file mode 100644 index 0000000..d0b9f9b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_5.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_6.png b/app/src/main/res/drawable-nodpi/img_home_bg_6.png new file mode 100644 index 0000000..5156217 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_6.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_7.png b/app/src/main/res/drawable-nodpi/img_home_bg_7.png new file mode 100644 index 0000000..6b09d53 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_7.png differ diff --git a/app/src/main/res/drawable-nodpi/img_home_bg_8.png b/app/src/main/res/drawable-nodpi/img_home_bg_8.png new file mode 100644 index 0000000..f616aa4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_home_bg_8.png differ diff --git a/app/src/main/res/drawable-nodpi/img_vip.png b/app/src/main/res/drawable-nodpi/img_vip.png new file mode 100644 index 0000000..d0c6567 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_vip.png differ diff --git a/app/src/main/res/drawable-nodpi/img_wuwangluo_sztz.webp b/app/src/main/res/drawable-nodpi/img_wuwangluo_sztz.webp new file mode 100644 index 0000000..3d3643f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_wuwangluo_sztz.webp differ diff --git a/app/src/main/res/drawable-nodpi/img_yw_myjc.png b/app/src/main/res/drawable-nodpi/img_yw_myjc.png new file mode 100644 index 0000000..48eb71c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_yw_myjc.png differ diff --git a/app/src/main/res/drawable-nodpi/img_zc_nanhai.png b/app/src/main/res/drawable-nodpi/img_zc_nanhai.png new file mode 100644 index 0000000..1d88ab6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_zc_nanhai.png differ diff --git a/app/src/main/res/drawable-nodpi/img_zc_nvhai.png b/app/src/main/res/drawable-nodpi/img_zc_nvhai.png new file mode 100644 index 0000000..13fa5e8 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_zc_nvhai.png differ diff --git a/app/src/main/res/drawable-nodpi/img_zhucesuoding.png b/app/src/main/res/drawable-nodpi/img_zhucesuoding.png new file mode 100644 index 0000000..fb9a631 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/img_zhucesuoding.png differ diff --git a/app/src/main/res/drawable-nodpi/jdt.9.png b/app/src/main/res/drawable-nodpi/jdt.9.png new file mode 100644 index 0000000..d3cf2d5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/jdt.9.png differ diff --git a/app/src/main/res/drawable-nodpi/jiaobiao.png b/app/src/main/res/drawable-nodpi/jiaobiao.png new file mode 100644 index 0000000..a78b397 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/jiaobiao.png differ diff --git a/app/src/main/res/drawable-nodpi/list_selector.xml b/app/src/main/res/drawable-nodpi/list_selector.xml new file mode 100644 index 0000000..fec7029 --- /dev/null +++ b/app/src/main/res/drawable-nodpi/list_selector.xml @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/app/src/main/res/drawable-nodpi/loading.png b/app/src/main/res/drawable-nodpi/loading.png new file mode 100644 index 0000000..239012e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/loading.png differ diff --git a/app/src/main/res/drawable-nodpi/lodding.webp b/app/src/main/res/drawable-nodpi/lodding.webp new file mode 100644 index 0000000..868444c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/lodding.webp differ diff --git a/app/src/main/res/drawable-nodpi/lodding_gif.gif b/app/src/main/res/drawable-nodpi/lodding_gif.gif new file mode 100644 index 0000000..140c859 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/lodding_gif.gif differ diff --git a/app/src/main/res/drawable-nodpi/login_delete.png b/app/src/main/res/drawable-nodpi/login_delete.png new file mode 100644 index 0000000..eee8487 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/login_delete.png differ diff --git a/app/src/main/res/drawable-nodpi/mdpi_bottom_y.png b/app/src/main/res/drawable-nodpi/mdpi_bottom_y.png new file mode 100644 index 0000000..d9870f2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/mdpi_bottom_y.png differ diff --git a/app/src/main/res/drawable-nodpi/mdpi_bottom_z.png b/app/src/main/res/drawable-nodpi/mdpi_bottom_z.png new file mode 100644 index 0000000..549fcec Binary files /dev/null and b/app/src/main/res/drawable-nodpi/mdpi_bottom_z.png differ diff --git a/app/src/main/res/drawable-nodpi/mdpi_fh.png b/app/src/main/res/drawable-nodpi/mdpi_fh.png new file mode 100644 index 0000000..83620d5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/mdpi_fh.png differ diff --git a/app/src/main/res/drawable-nodpi/mdpi_icon_qst.png b/app/src/main/res/drawable-nodpi/mdpi_icon_qst.png new file mode 100644 index 0000000..bb59f42 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/mdpi_icon_qst.png differ diff --git a/app/src/main/res/drawable-nodpi/mdpi_icon_up.png b/app/src/main/res/drawable-nodpi/mdpi_icon_up.png new file mode 100644 index 0000000..31f2171 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/mdpi_icon_up.png differ diff --git a/app/src/main/res/drawable-nodpi/shape_bg.png b/app/src/main/res/drawable-nodpi/shape_bg.png new file mode 100644 index 0000000..82e9888 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/shape_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/sjgk_add.png b/app/src/main/res/drawable-nodpi/sjgk_add.png new file mode 100644 index 0000000..0438aed Binary files /dev/null and b/app/src/main/res/drawable-nodpi/sjgk_add.png differ diff --git a/app/src/main/res/drawable-nodpi/sjgk_add_two.png b/app/src/main/res/drawable-nodpi/sjgk_add_two.png new file mode 100644 index 0000000..e8948d3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/sjgk_add_two.png differ diff --git a/app/src/main/res/drawable-nodpi/tip_btn.png b/app/src/main/res/drawable-nodpi/tip_btn.png new file mode 100644 index 0000000..50a3d1b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tip_btn.png differ diff --git a/app/src/main/res/drawable-nodpi/tip_jt.png b/app/src/main/res/drawable-nodpi/tip_jt.png new file mode 100644 index 0000000..7d242d9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tip_jt.png differ diff --git a/app/src/main/res/drawable-nodpi/tsg_ydbg.png b/app/src/main/res/drawable-nodpi/tsg_ydbg.png new file mode 100644 index 0000000..e02df27 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tsg_ydbg.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_boy_1.png b/app/src/main/res/drawable-nodpi/tx_boy_1.png new file mode 100644 index 0000000..df39da3 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_boy_1.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_boy_2.png b/app/src/main/res/drawable-nodpi/tx_boy_2.png new file mode 100644 index 0000000..ff9f105 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_boy_2.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_boy_3.png b/app/src/main/res/drawable-nodpi/tx_boy_3.png new file mode 100644 index 0000000..b85653e Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_boy_3.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_girl_1.png b/app/src/main/res/drawable-nodpi/tx_girl_1.png new file mode 100644 index 0000000..8fc4eba Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_girl_1.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_girl_2.png b/app/src/main/res/drawable-nodpi/tx_girl_2.png new file mode 100644 index 0000000..3fa5350 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_girl_2.png differ diff --git a/app/src/main/res/drawable-nodpi/tx_girl_3.png b/app/src/main/res/drawable-nodpi/tx_girl_3.png new file mode 100644 index 0000000..9e9ffae Binary files /dev/null and b/app/src/main/res/drawable-nodpi/tx_girl_3.png differ diff --git a/app/src/main/res/drawable-nodpi/update_apk.png b/app/src/main/res/drawable-nodpi/update_apk.png new file mode 100644 index 0000000..6df8b3c Binary files /dev/null and b/app/src/main/res/drawable-nodpi/update_apk.png differ diff --git a/app/src/main/res/drawable-nodpi/update_apk_check.png b/app/src/main/res/drawable-nodpi/update_apk_check.png new file mode 100644 index 0000000..2c5204d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/update_apk_check.png differ diff --git a/app/src/main/res/drawable-nodpi/video_dcdjt.jpg b/app/src/main/res/drawable-nodpi/video_dcdjt.jpg new file mode 100644 index 0000000..26df8a4 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/video_dcdjt.jpg differ diff --git a/app/src/main/res/drawable-nodpi/xdfzq_sp.png b/app/src/main/res/drawable-nodpi/xdfzq_sp.png new file mode 100644 index 0000000..83fbd5b Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xdfzq_sp.png differ diff --git a/app/src/main/res/drawable-nodpi/xhdpi_cyyy_tj.png b/app/src/main/res/drawable-nodpi/xhdpi_cyyy_tj.png new file mode 100644 index 0000000..3f201d5 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xhdpi_cyyy_tj.png differ diff --git a/app/src/main/res/drawable-nodpi/xhdpi_icon_sc.png b/app/src/main/res/drawable-nodpi/xhdpi_icon_sc.png new file mode 100644 index 0000000..0b0935d Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xhdpi_icon_sc.png differ diff --git a/app/src/main/res/drawable-nodpi/xhdpi_img_gnyd8888.png b/app/src/main/res/drawable-nodpi/xhdpi_img_gnyd8888.png new file mode 100644 index 0000000..bd3ffb6 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xhdpi_img_gnyd8888.png differ diff --git a/app/src/main/res/drawable-nodpi/xx_bg.png b/app/src/main/res/drawable-nodpi/xx_bg.png new file mode 100644 index 0000000..c5505f2 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xx_bg.png differ diff --git a/app/src/main/res/drawable-nodpi/xy_check_not.png b/app/src/main/res/drawable-nodpi/xy_check_not.png new file mode 100644 index 0000000..653113f Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xy_check_not.png differ diff --git a/app/src/main/res/drawable-nodpi/xy_check_yes.png b/app/src/main/res/drawable-nodpi/xy_check_yes.png new file mode 100644 index 0000000..ee1fec9 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/xy_check_yes.png differ diff --git a/app/src/main/res/drawable-nodpi/yysc_tc.png b/app/src/main/res/drawable-nodpi/yysc_tc.png new file mode 100644 index 0000000..5e6d931 Binary files /dev/null and b/app/src/main/res/drawable-nodpi/yysc_tc.png differ diff --git a/app/src/main/res/drawable/bg_shape_212562_40.xml b/app/src/main/res/drawable/bg_shape_212562_40.xml new file mode 100644 index 0000000..c280797 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_212562_40.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_b6f3fa_40.xml b/app/src/main/res/drawable/bg_shape_b6f3fa_40.xml new file mode 100644 index 0000000..0ec2a84 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_b6f3fa_40.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_d9d9d9_20.xml b/app/src/main/res/drawable/bg_shape_d9d9d9_20.xml new file mode 100644 index 0000000..33e2295 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_d9d9d9_20.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_ffffff_40.xml b/app/src/main/res/drawable/bg_shape_ffffff_40.xml new file mode 100644 index 0000000..2cf3835 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_ffffff_40.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_lq.xml b/app/src/main/res/drawable/bg_shape_lq.xml new file mode 100644 index 0000000..c1ba114 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_lq.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_qwc.xml b/app/src/main/res/drawable/bg_shape_qwc.xml new file mode 100644 index 0000000..0b2d60c --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_qwc.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_tbdd_book_bg.xml b/app/src/main/res/drawable/bg_shape_tbdd_book_bg.xml new file mode 100644 index 0000000..d0c2473 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_tbdd_book_bg.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_txbg.xml b/app/src/main/res/drawable/bg_shape_txbg.xml new file mode 100644 index 0000000..bf98e2f --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_txbg.xml @@ -0,0 +1,8 @@ + + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_ywc.xml b/app/src/main/res/drawable/bg_shape_ywc.xml new file mode 100644 index 0000000..8f4a586 --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_ywc.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_shape_zjxx.xml b/app/src/main/res/drawable/bg_shape_zjxx.xml new file mode 100644 index 0000000..ee906dc --- /dev/null +++ b/app/src/main/res/drawable/bg_shape_zjxx.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/bg_toast.xml b/app/src/main/res/drawable/bg_toast.xml new file mode 100644 index 0000000..6da1eef --- /dev/null +++ b/app/src/main/res/drawable/bg_toast.xml @@ -0,0 +1,5 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/drawable/vertical_scrollbar.xml b/app/src/main/res/drawable/vertical_scrollbar.xml new file mode 100644 index 0000000..f036aee --- /dev/null +++ b/app/src/main/res/drawable/vertical_scrollbar.xml @@ -0,0 +1,10 @@ + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_home.xml b/app/src/main/res/layout/activity_home.xml new file mode 100644 index 0000000..6780303 --- /dev/null +++ b/app/src/main/res/layout/activity_home.xml @@ -0,0 +1,144 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/activity_main.xml b/app/src/main/res/layout/activity_main.xml index 7ec6833..fa6d157 100644 --- a/app/src/main/res/layout/activity_main.xml +++ b/app/src/main/res/layout/activity_main.xml @@ -23,11 +23,22 @@ + + diff --git a/app/src/main/res/layout/dialog_jiaoshui.xml b/app/src/main/res/layout/dialog_jiaoshui.xml new file mode 100644 index 0000000..9b0ae19 --- /dev/null +++ b/app/src/main/res/layout/dialog_jiaoshui.xml @@ -0,0 +1,13 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/dialog_yw_apps.xml b/app/src/main/res/layout/dialog_yw_apps.xml new file mode 100644 index 0000000..1896bbf --- /dev/null +++ b/app/src/main/res/layout/dialog_yw_apps.xml @@ -0,0 +1,54 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_ddyfz.xml b/app/src/main/res/layout/fg_content_ddyfz.xml new file mode 100644 index 0000000..4c4ac56 --- /dev/null +++ b/app/src/main/res/layout/fg_content_ddyfz.xml @@ -0,0 +1,421 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_dl.xml b/app/src/main/res/layout/fg_content_dl.xml new file mode 100644 index 0000000..3f749c8 --- /dev/null +++ b/app/src/main/res/layout/fg_content_dl.xml @@ -0,0 +1,504 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_hx.xml b/app/src/main/res/layout/fg_content_hx.xml new file mode 100644 index 0000000..d5377e0 --- /dev/null +++ b/app/src/main/res/layout/fg_content_hx.xml @@ -0,0 +1,461 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_kx.xml b/app/src/main/res/layout/fg_content_kx.xml new file mode 100644 index 0000000..4dd0bc3 --- /dev/null +++ b/app/src/main/res/layout/fg_content_kx.xml @@ -0,0 +1,421 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_ls.xml b/app/src/main/res/layout/fg_content_ls.xml new file mode 100644 index 0000000..5de6e45 --- /dev/null +++ b/app/src/main/res/layout/fg_content_ls.xml @@ -0,0 +1,421 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_sw.xml b/app/src/main/res/layout/fg_content_sw.xml new file mode 100644 index 0000000..5756a38 --- /dev/null +++ b/app/src/main/res/layout/fg_content_sw.xml @@ -0,0 +1,462 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_wl.xml b/app/src/main/res/layout/fg_content_wl.xml new file mode 100644 index 0000000..bd55a91 --- /dev/null +++ b/app/src/main/res/layout/fg_content_wl.xml @@ -0,0 +1,461 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fg_content_zz.xml b/app/src/main/res/layout/fg_content_zz.xml new file mode 100644 index 0000000..e427361 --- /dev/null +++ b/app/src/main/res/layout/fg_content_zz.xml @@ -0,0 +1,421 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_ai.xml b/app/src/main/res/layout/fragment_ai.xml new file mode 100644 index 0000000..8cde45a --- /dev/null +++ b/app/src/main/res/layout/fragment_ai.xml @@ -0,0 +1,99 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_chinese.xml b/app/src/main/res/layout/fragment_chinese.xml index 3feb8cb..353914e 100644 --- a/app/src/main/res/layout/fragment_chinese.xml +++ b/app/src/main/res/layout/fragment_chinese.xml @@ -6,469 +6,542 @@ + - - + - + - - - - - - - - + + android:id="@+id/ll_tab_tbjzx" + android:layout_width="109dp" + android:layout_height="wrap_content" + android:gravity="center_horizontal" + android:orientation="vertical"> - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + + + + + + + + + + + + + + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginTop="50dp" + android:gravity="center_horizontal" + android:orientation="horizontal"> + + + + + + + + + + + + + + + + + + + + + + android:layout_width="187dp" + android:layout_height="237dp" + android:layout_marginLeft="12dp" + android:background="@drawable/icon_yw_khl" + android:onClick="onGoJzx" + android:tag="0|语文" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + android:layout_width="187dp" + android:layout_height="237dp" + android:layout_marginLeft="12dp" + android:background="@drawable/icon_yw_aidyfxl_bg" + android:onClick="onGoJzx" + android:tag="9|语文" /> + + + - - - + android:id="@+id/iv_brdzj" + android:layout_width="168dp" + android:layout_height="237dp" + android:layout_marginRight="12dp" + android:background="@drawable/icon_yw_brdzj" + android:onClick="onGoJzx" + android:tag="5|语文" /> - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_complex.xml b/app/src/main/res/layout/fragment_complex.xml index 1cfa2d1..c61da5c 100644 --- a/app/src/main/res/layout/fragment_complex.xml +++ b/app/src/main/res/layout/fragment_complex.xml @@ -8,443 +8,117 @@ - + android:layout_height="match_parent" + android:gravity="center_horizontal" + android:orientation="vertical"> + android:layout_width="wrap_content" + android:layout_height="wrap_content" + app:layout_constraintBottom_toBottomOf="parent" + app:layout_constraintEnd_toEndOf="parent" + app:layout_constraintStart_toStartOf="parent" + app:layout_constraintTop_toTopOf="parent"> - + app:layout_constraintTop_toTopOf="parent" /> - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_english.xml b/app/src/main/res/layout/fragment_english.xml index e183ad6..7c29ff1 100644 --- a/app/src/main/res/layout/fragment_english.xml +++ b/app/src/main/res/layout/fragment_english.xml @@ -8,160 +8,551 @@ - - + - + - - - + + + + + android:background="@drawable/icon_yw_tbjzx" /> + + + + + + android:id="@+id/iv_tab_dyfx" + android:layout_width="80dp" + android:layout_height="27dp" + android:layout_marginTop="8dp" + android:background="@drawable/icon_yw_dyfx" + android:visibility="gone" /> + + + + + + android:id="@+id/iv_tab_jdbk" + android:layout_width="80dp" + android:layout_height="27dp" + android:layout_marginTop="8dp" + android:background="@drawable/icon_yw_aijdbk" + android:visibility="gone" /> + + - - - - - - - - + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginTop="50dp" + android:gravity="center_horizontal" + android:orientation="horizontal"> - + + + + + + + + + + + + + + + + + + android:layout_width="150dp" + android:layout_height="103dp" + android:layout_alignParentBottom="true" + android:layout_marginTop="9dp" + android:background="@drawable/icon_yw_tbfd_bg" + android:onClick="onClick" + android:tag="@string/tag_args_new_tbfd_yy" /> + + + + + + + + + + + + + + + + android:layout_width="9dp" + android:layout_height="9dp" + android:layout_marginTop="2dp" + android:layout_marginBottom="2dp" + android:background="@drawable/icon_dyfx_x" /> + + + + + + + + android:layout_width="9dp" + android:layout_height="9dp" + android:layout_marginTop="2dp" + android:layout_marginBottom="2dp" + android:background="@drawable/icon_dyfx_x" /> - - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_math.xml b/app/src/main/res/layout/fragment_math.xml index 8ed2206..699ed2f 100644 --- a/app/src/main/res/layout/fragment_math.xml +++ b/app/src/main/res/layout/fragment_math.xml @@ -8,420 +8,478 @@ - - + - + - - - - - - + + android:id="@+id/ll_tab_tbjzx" + android:layout_width="109dp" + android:layout_height="wrap_content" + android:gravity="center_horizontal" + android:orientation="vertical"> - + - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + - + - + + + + + + + + + + + + + + android:layout_height="wrap_content" + android:layout_gravity="center_horizontal" + android:layout_marginTop="50dp" + android:gravity="center_horizontal" + android:orientation="horizontal"> - - - + android:layout_width="150dp" + android:layout_height="238dp" + android:layout_alignParentBottom="true" + android:layout_marginLeft="12dp" + android:background="@drawable/icon_sx_tbfd_bg" + android:onClick="onClick" + android:tag="@string/tag_args_new_tbfd_sx" /> + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + - \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_mine.xml b/app/src/main/res/layout/fragment_mine.xml new file mode 100644 index 0000000..276093c --- /dev/null +++ b/app/src/main/res/layout/fragment_mine.xml @@ -0,0 +1,367 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_read.xml b/app/src/main/res/layout/fragment_read.xml new file mode 100644 index 0000000..796af03 --- /dev/null +++ b/app/src/main/res/layout/fragment_read.xml @@ -0,0 +1,243 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/fragment_safe.xml b/app/src/main/res/layout/fragment_safe.xml new file mode 100644 index 0000000..997086e --- /dev/null +++ b/app/src/main/res/layout/fragment_safe.xml @@ -0,0 +1,112 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_banner.xml b/app/src/main/res/layout/item_banner.xml new file mode 100644 index 0000000..20c5c21 --- /dev/null +++ b/app/src/main/res/layout/item_banner.xml @@ -0,0 +1,78 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_dialog_app.xml b/app/src/main/res/layout/item_dialog_app.xml new file mode 100644 index 0000000..4527fde --- /dev/null +++ b/app/src/main/res/layout/item_dialog_app.xml @@ -0,0 +1,24 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_exp.xml b/app/src/main/res/layout/item_exp.xml new file mode 100644 index 0000000..f78a10e --- /dev/null +++ b/app/src/main/res/layout/item_exp.xml @@ -0,0 +1,46 @@ + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_tab.xml b/app/src/main/res/layout/item_tab.xml new file mode 100644 index 0000000..0f4fa7b --- /dev/null +++ b/app/src/main/res/layout/item_tab.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_tab_1.xml b/app/src/main/res/layout/item_tab_1.xml new file mode 100644 index 0000000..2e8f87f --- /dev/null +++ b/app/src/main/res/layout/item_tab_1.xml @@ -0,0 +1,19 @@ + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_task.xml b/app/src/main/res/layout/item_task.xml new file mode 100644 index 0000000..009505a --- /dev/null +++ b/app/src/main/res/layout/item_task.xml @@ -0,0 +1,75 @@ + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/item_wl_app.xml b/app/src/main/res/layout/item_wl_app.xml new file mode 100644 index 0000000..0dc541f --- /dev/null +++ b/app/src/main/res/layout/item_wl_app.xml @@ -0,0 +1,23 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_daily_tasks.xml b/app/src/main/res/layout/layout_daily_tasks.xml new file mode 100644 index 0000000..fa44bdc --- /dev/null +++ b/app/src/main/res/layout/layout_daily_tasks.xml @@ -0,0 +1,96 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_dashu_dia.xml b/app/src/main/res/layout/layout_dashu_dia.xml new file mode 100644 index 0000000..282da20 --- /dev/null +++ b/app/src/main/res/layout/layout_dashu_dia.xml @@ -0,0 +1,24 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_dashu_dia_10.xml b/app/src/main/res/layout/layout_dashu_dia_10.xml new file mode 100644 index 0000000..77117b1 --- /dev/null +++ b/app/src/main/res/layout/layout_dashu_dia_10.xml @@ -0,0 +1,23 @@ + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_jiesao.xml b/app/src/main/res/layout/layout_jiesao.xml new file mode 100644 index 0000000..e42fcff --- /dev/null +++ b/app/src/main/res/layout/layout_jiesao.xml @@ -0,0 +1,220 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/layout_tree.xml b/app/src/main/res/layout/layout_tree.xml new file mode 100644 index 0000000..c4ba6dd --- /dev/null +++ b/app/src/main/res/layout/layout_tree.xml @@ -0,0 +1,110 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/layout/toast_text_layout.xml b/app/src/main/res/layout/toast_text_layout.xml new file mode 100644 index 0000000..f0d9280 --- /dev/null +++ b/app/src/main/res/layout/toast_text_layout.xml @@ -0,0 +1,20 @@ + + + + + diff --git a/app/src/main/res/values/attrs.xml b/app/src/main/res/values/attrs.xml index 7db21ff..e62aeac 100644 --- a/app/src/main/res/values/attrs.xml +++ b/app/src/main/res/values/attrs.xml @@ -28,4 +28,21 @@ "大" "最大" + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/app/src/main/res/values/colors.xml b/app/src/main/res/values/colors.xml index 7f1f7a7..6bf6b6e 100644 --- a/app/src/main/res/values/colors.xml +++ b/app/src/main/res/values/colors.xml @@ -63,4 +63,7 @@ #1AFFFFFF #E6FFFFFF + #70B1B1B1 + #ffffff + diff --git a/app/src/main/res/values/colors_jxw.xml b/app/src/main/res/values/colors_jxw.xml new file mode 100644 index 0000000..7ca640f --- /dev/null +++ b/app/src/main/res/values/colors_jxw.xml @@ -0,0 +1,15 @@ + + + #ffffffff + #00000000 + #ffdddddd + #ff33b5e5 + #ffbbbbbb + #ff33b5e5 + #ffffffff + #bbffffff + #ff33b5e5 + + + + \ No newline at end of file diff --git a/app/src/main/res/values/dimens.xml b/app/src/main/res/values/dimens.xml new file mode 100644 index 0000000..df88fe4 --- /dev/null +++ b/app/src/main/res/values/dimens.xml @@ -0,0 +1,3290 @@ + + + 16dp + 72dp + 56dp + 0dp + 0dp + 4dp + 16dp + 10dp + 6dp + 48dp + 180dp + 5dp + -3dp + 48dp + 48dp + 36dp + 48dp + 48dp + @dimen/abc_control_inset_material + 6dp + 8dp + @dimen/abc_control_padding_material + 720dp + 320dp + 2dp + 4dp + 4dp + 2dp + 80% + 100% + 320dp + 320dp + 8dp + 8dp + 65% + 95% + 24dp + 18dp + 8dp + 0.3 + 0.26 + 32dp + 8dp + 8dp + 7dp + 4dp + 10dp + 16dp + @dimen/abc_action_bar_content_inset_material + 296dp + 4dp + 48dp + 320dp + 2dp + 2dp + 20dp + 0px + 14sp + 14sp + 14sp + 12sp + 34sp + 45sp + 56sp + 112sp + 24sp + 22sp + 18sp + 14sp + 16sp + 14sp + 16sp + 16dp + 20sp + 20dp + 40dp + 150dp + 4dp + 6dp + 8dp + 4dp + 2dp + 320dp + 320dp + 50dp + 3dp + 1dp + 4dp + 12dp + 1dp + 4dp + 4dp + 20dp + 2dp + 7dp + 15dp + 5dp + 7dp + 7dp + 0.3 + 0.26 + 10dp + 50dp + 20dp + 4dp + 40dp + 52dp + 71dp + 24dp + 3dp + 9dp + 56dp + 0dp + 8dp + 0dp + 50dp + 56dp + 25dp + 0.26 + 0.2 + 0.12 + 0.5 + 0.38 + 0.7 + 0.54 + 20dp + 800dp + 120dp + 32dp + 13sp + 12dp + 8dp + 64dp + 64dp + 10dp + @dimen/notification_content_margin_start + 16dp + 4dp + 3dp + 24dp + 13sp + 10dp + 5dp + 20sp + 17sp + 44dp + 20dp + 18sp + 150dp + 14sp + 2dp + 2dp + 2dp + 2dp + 28dp + 20dp + 17dp + 2dp + 16dp + 8dp + 8dp + 96dp + 6.5dp + 0dp + 16dp + 80dp + 24dp + 1px + 10px + 100px + 1000px + 1001px + 1002px + 1003px + 1004px + 1005px + 1006px + 1007px + 1008px + 1009px + 101px + 1010px + 1011px + 1012px + 1013px + 1014px + 1015px + 1016px + 1017px + 1018px + 1019px + 102px + 1020px + 1021px + 1022px + 1023px + 1024px + 1025px + 1026px + 1027px + 1028px + 1029px + 103px + 1030px + 1031px + 1032px + 1033px + 1034px + 1035px + 1036px + 1037px + 1038px + 1039px + 104px + 1040px + 1041px + 1042px + 1043px + 1044px + 1045px + 1046px + 1047px + 1048px + 1049px + 105px + 1050px + 1051px + 1052px + 1053px + 1054px + 1055px + 1056px + 1057px + 1058px + 1059px + 106px + 1060px + 1061px + 1062px + 1063px + 1064px + 1065px + 1066px + 1067px + 1068px + 1069px + 107px + 1070px + 1071px + 1072px + 1073px + 1074px + 1075px + 1076px + 1077px + 1078px + 1079px + 108px + 1080px + 1081px + 1082px + 1083px + 1084px + 1085px + 1086px + 1087px + 1088px + 1089px + 109px + 1090px + 1091px + 1092px + 1093px + 1094px + 1095px + 1096px + 1097px + 1098px + 1099px + 11px + 110px + 1100px + 1101px + 1102px + 1103px + 1104px + 1105px + 1106px + 1107px + 1108px + 1109px + 111px + 1110px + 1111px + 1112px + 1113px + 1114px + 1115px + 1116px + 1117px + 1118px + 1119px + 112px + 1120px + 1121px + 1122px + 1123px + 1124px + 1125px + 1126px + 1127px + 1128px + 1129px + 113px + 1130px + 1131px + 1132px + 1133px + 1134px + 1135px + 1136px + 1137px + 1138px + 1139px + 114px + 1140px + 1141px + 1142px + 1143px + 1144px + 1145px + 1146px + 1147px + 1148px + 1149px + 115px + 1150px + 1151px + 1152px + 1153px + 1154px + 1155px + 1156px + 1157px + 1158px + 1159px + 116px + 1160px + 1161px + 1162px + 1163px + 1164px + 1165px + 1166px + 1167px + 1168px + 1169px + 117px + 1170px + 1171px + 1172px + 1173px + 1174px + 1175px + 1176px + 1177px + 1178px + 1179px + 118px + 1180px + 1181px + 1182px + 1183px + 1184px + 1185px + 1186px + 1187px + 1188px + 1189px + 119px + 1190px + 1191px + 1192px + 1193px + 1194px + 1195px + 1196px + 1197px + 1198px + 1199px + 12px + 120px + 1200px + 121px + 122px + 123px + 124px + 125px + 126px + 127px + 128px + 129px + 13px + 130px + 131px + 132px + 133px + 134px + 135px + 136px + 137px + 138px + 139px + 14px + 140px + 141px + 142px + 143px + 144px + 145px + 146px + 147px + 148px + 149px + 15px + 150px + 151px + 152px + 153px + 154px + 155px + 156px + 157px + 158px + 159px + 16px + 160px + 161px + 162px + 163px + 164px + 165px + 166px + 167px + 168px + 169px + 17px + 170px + 171px + 172px + 173px + 174px + 175px + 176px + 177px + 178px + 179px + 18px + 180px + 181px + 182px + 183px + 184px + 185px + 186px + 187px + 188px + 189px + 19px + 190px + 191px + 192px + 193px + 194px + 195px + 196px + 197px + 198px + 199px + 2px + 20px + 200px + 201px + 202px + 203px + 204px + 205px + 206px + 207px + 208px + 209px + 21px + 210px + 211px + 212px + 213px + 214px + 215px + 216px + 217px + 218px + 219px + 22px + 220px + 221px + 222px + 223px + 224px + 225px + 226px + 227px + 228px + 229px + 23px + 230px + 231px + 232px + 233px + 234px + 235px + 236px + 237px + 238px + 239px + 24px + 240px + 241px + 242px + 243px + 244px + 245px + 246px + 247px + 248px + 249px + 25px + 250px + 251px + 252px + 253px + 254px + 255px + 256px + 257px + 258px + 259px + 26px + 260px + 261px + 262px + 263px + 264px + 265px + 266px + 267px + 268px + 269px + 27px + 270px + 271px + 272px + 273px + 274px + 275px + 276px + 277px + 278px + 279px + 28px + 280px + 281px + 282px + 283px + 284px + 285px + 286px + 287px + 288px + 289px + 29px + 290px + 291px + 292px + 293px + 294px + 295px + 296px + 297px + 298px + 299px + 3px + 30px + 300px + 301px + 302px + 303px + 304px + 305px + 306px + 307px + 308px + 309px + 31px + 310px + 311px + 312px + 313px + 314px + 315px + 316px + 317px + 318px + 319px + 32px + 320px + 321px + 322px + 323px + 324px + 325px + 326px + 327px + 328px + 329px + 33px + 330px + 331px + 332px + 333px + 334px + 335px + 336px + 337px + 338px + 339px + 34px + 340px + 341px + 342px + 343px + 344px + 345px + 346px + 347px + 348px + 349px + 35px + 350px + 351px + 352px + 353px + 354px + 355px + 356px + 357px + 358px + 359px + 36px + 360px + 361px + 362px + 363px + 364px + 365px + 366px + 367px + 368px + 369px + 37px + 370px + 371px + 372px + 373px + 374px + 375px + 376px + 377px + 378px + 379px + 38px + 380px + 381px + 382px + 383px + 384px + 385px + 386px + 387px + 388px + 389px + 39px + 390px + 391px + 392px + 393px + 394px + 395px + 396px + 397px + 398px + 399px + 4px + 40px + 400px + 401px + 402px + 403px + 404px + 405px + 406px + 407px + 408px + 409px + 41px + 410px + 411px + 412px + 413px + 414px + 415px + 416px + 417px + 418px + 419px + 42px + 420px + 421px + 422px + 423px + 424px + 425px + 426px + 427px + 428px + 429px + 43px + 430px + 431px + 432px + 433px + 434px + 435px + 436px + 437px + 438px + 439px + 44px + 440px + 441px + 442px + 443px + 444px + 445px + 446px + 447px + 448px + 449px + 45px + 450px + 451px + 452px + 453px + 454px + 455px + 456px + 457px + 458px + 459px + 46px + 460px + 461px + 462px + 463px + 464px + 465px + 466px + 467px + 468px + 469px + 47px + 470px + 471px + 472px + 473px + 474px + 475px + 476px + 477px + 478px + 479px + 48px + 480px + 481px + 482px + 483px + 484px + 485px + 486px + 487px + 488px + 489px + 49px + 490px + 491px + 492px + 493px + 494px + 495px + 496px + 497px + 498px + 499px + 5px + 50px + 500px + 501px + 502px + 503px + 504px + 505px + 506px + 507px + 508px + 509px + 51px + 510px + 511px + 512px + 513px + 514px + 515px + 516px + 517px + 518px + 519px + 52px + 520px + 521px + 522px + 523px + 524px + 525px + 526px + 527px + 528px + 529px + 53px + 530px + 531px + 532px + 533px + 534px + 535px + 536px + 537px + 538px + 539px + 54px + 540px + 541px + 542px + 543px + 544px + 545px + 546px + 547px + 548px + 549px + 55px + 550px + 551px + 552px + 553px + 554px + 555px + 556px + 557px + 558px + 559px + 56px + 560px + 561px + 562px + 563px + 564px + 565px + 566px + 567px + 568px + 569px + 57px + 570px + 571px + 572px + 573px + 574px + 575px + 576px + 577px + 578px + 579px + 58px + 580px + 581px + 582px + 583px + 584px + 585px + 586px + 587px + 588px + 589px + 59px + 590px + 591px + 592px + 593px + 594px + 595px + 596px + 597px + 598px + 599px + 6px + 60px + 600px + 601px + 602px + 603px + 604px + 605px + 606px + 607px + 608px + 609px + 61px + 610px + 611px + 612px + 613px + 614px + 615px + 616px + 617px + 618px + 619px + 62px + 620px + 621px + 622px + 623px + 624px + 625px + 626px + 627px + 628px + 629px + 63px + 630px + 631px + 632px + 633px + 634px + 635px + 636px + 637px + 638px + 639px + 64px + 640px + 641px + 642px + 643px + 644px + 645px + 646px + 647px + 648px + 649px + 65px + 650px + 651px + 652px + 653px + 654px + 655px + 656px + 657px + 658px + 659px + 66px + 660px + 661px + 662px + 663px + 664px + 665px + 666px + 667px + 668px + 669px + 67px + 670px + 671px + 672px + 673px + 674px + 675px + 676px + 677px + 678px + 679px + 68px + 680px + 681px + 682px + 683px + 684px + 685px + 686px + 687px + 688px + 689px + 69px + 690px + 691px + 692px + 693px + 694px + 695px + 696px + 697px + 698px + 699px + 7px + 70px + 700px + 701px + 702px + 703px + 704px + 705px + 706px + 707px + 708px + 709px + 71px + 710px + 711px + 712px + 713px + 714px + 715px + 716px + 717px + 718px + 719px + 72px + 720px + 721px + 722px + 723px + 724px + 725px + 726px + 727px + 728px + 729px + 73px + 730px + 731px + 732px + 733px + 734px + 735px + 736px + 737px + 738px + 739px + 74px + 740px + 741px + 742px + 743px + 744px + 745px + 746px + 747px + 748px + 749px + 75px + 750px + 751px + 752px + 753px + 754px + 755px + 756px + 757px + 758px + 759px + 76px + 760px + 761px + 762px + 763px + 764px + 765px + 766px + 767px + 768px + 769px + 77px + 770px + 771px + 772px + 773px + 774px + 775px + 776px + 777px + 778px + 779px + 78px + 780px + 781px + 782px + 783px + 784px + 785px + 786px + 787px + 788px + 789px + 79px + 790px + 791px + 792px + 793px + 794px + 795px + 796px + 797px + 798px + 799px + 8px + 80px + 800px + 801px + 802px + 803px + 804px + 805px + 806px + 807px + 808px + 809px + 81px + 810px + 811px + 812px + 813px + 814px + 815px + 816px + 817px + 818px + 819px + 82px + 820px + 821px + 822px + 823px + 824px + 825px + 826px + 827px + 828px + 829px + 83px + 830px + 831px + 832px + 833px + 834px + 835px + 836px + 837px + 838px + 839px + 84px + 840px + 841px + 842px + 843px + 844px + 845px + 846px + 847px + 848px + 849px + 85px + 850px + 851px + 852px + 853px + 854px + 855px + 856px + 857px + 858px + 859px + 86px + 860px + 861px + 862px + 863px + 864px + 865px + 866px + 867px + 868px + 869px + 87px + 870px + 871px + 872px + 873px + 874px + 875px + 876px + 877px + 878px + 879px + 88px + 880px + 881px + 882px + 883px + 884px + 885px + 886px + 887px + 888px + 889px + 89px + 890px + 891px + 892px + 893px + 894px + 895px + 896px + 897px + 898px + 899px + 9px + 90px + 900px + 901px + 902px + 903px + 904px + 905px + 906px + 907px + 908px + 909px + 91px + 910px + 911px + 912px + 913px + 914px + 915px + 916px + 917px + 918px + 919px + 92px + 920px + 921px + 922px + 923px + 924px + 925px + 926px + 927px + 928px + 929px + 93px + 930px + 931px + 932px + 933px + 934px + 935px + 936px + 937px + 938px + 939px + 94px + 940px + 941px + 942px + 943px + 944px + 945px + 946px + 947px + 948px + 949px + 95px + 950px + 951px + 952px + 953px + 954px + 955px + 956px + 957px + 958px + 959px + 96px + 960px + 961px + 962px + 963px + 964px + 965px + 966px + 967px + 968px + 969px + 97px + 970px + 971px + 972px + 973px + 974px + 975px + 976px + 977px + 978px + 979px + 98px + 980px + 981px + 982px + 983px + 984px + 985px + 986px + 987px + 988px + 989px + 99px + 990px + 991px + 992px + 993px + 994px + 995px + 996px + 997px + 998px + 999px + 1px + 10px + 100px + 1000px + 1001px + 1002px + 1003px + 1004px + 1005px + 1006px + 1007px + 1008px + 1009px + 101px + 1010px + 1011px + 1012px + 1013px + 1014px + 1015px + 1016px + 1017px + 1018px + 1019px + 102px + 1020px + 1021px + 1022px + 1023px + 1024px + 1025px + 1026px + 1027px + 1028px + 1029px + 103px + 1030px + 1031px + 1032px + 1033px + 1034px + 1035px + 1036px + 1037px + 1038px + 1039px + 104px + 1040px + 1041px + 1042px + 1043px + 1044px + 1045px + 1046px + 1047px + 1048px + 1049px + 105px + 1050px + 1051px + 1052px + 1053px + 1054px + 1055px + 1056px + 1057px + 1058px + 1059px + 106px + 1060px + 1061px + 1062px + 1063px + 1064px + 1065px + 1066px + 1067px + 1068px + 1069px + 107px + 1070px + 1071px + 1072px + 1073px + 1074px + 1075px + 1076px + 1077px + 1078px + 1079px + 108px + 1080px + 1081px + 1082px + 1083px + 1084px + 1085px + 1086px + 1087px + 1088px + 1089px + 109px + 1090px + 1091px + 1092px + 1093px + 1094px + 1095px + 1096px + 1097px + 1098px + 1099px + 11px + 110px + 1100px + 1101px + 1102px + 1103px + 1104px + 1105px + 1106px + 1107px + 1108px + 1109px + 111px + 1110px + 1111px + 1112px + 1113px + 1114px + 1115px + 1116px + 1117px + 1118px + 1119px + 112px + 1120px + 1121px + 1122px + 1123px + 1124px + 1125px + 1126px + 1127px + 1128px + 1129px + 113px + 1130px + 1131px + 1132px + 1133px + 1134px + 1135px + 1136px + 1137px + 1138px + 1139px + 114px + 1140px + 1141px + 1142px + 1143px + 1144px + 1145px + 1146px + 1147px + 1148px + 1149px + 115px + 1150px + 1151px + 1152px + 1153px + 1154px + 1155px + 1156px + 1157px + 1158px + 1159px + 116px + 1160px + 1161px + 1162px + 1163px + 1164px + 1165px + 1166px + 1167px + 1168px + 1169px + 117px + 1170px + 1171px + 1172px + 1173px + 1174px + 1175px + 1176px + 1177px + 1178px + 1179px + 118px + 1180px + 1181px + 1182px + 1183px + 1184px + 1185px + 1186px + 1187px + 1188px + 1189px + 119px + 1190px + 1191px + 1192px + 1193px + 1194px + 1195px + 1196px + 1197px + 1198px + 1199px + 12px + 120px + 1200px + 1201px + 1202px + 1203px + 1204px + 1205px + 1206px + 1207px + 1208px + 1209px + 121px + 1210px + 1211px + 1212px + 1213px + 1214px + 1215px + 1216px + 1217px + 1218px + 1219px + 122px + 1220px + 1221px + 1222px + 1223px + 1224px + 1225px + 1226px + 1227px + 1228px + 1229px + 123px + 1230px + 1231px + 1232px + 1233px + 1234px + 1235px + 1236px + 1237px + 1238px + 1239px + 124px + 1240px + 1241px + 1242px + 1243px + 1244px + 1245px + 1246px + 1247px + 1248px + 1249px + 125px + 1250px + 1251px + 1252px + 1253px + 1254px + 1255px + 1256px + 1257px + 1258px + 1259px + 126px + 1260px + 1261px + 1262px + 1263px + 1264px + 1265px + 1266px + 1267px + 1268px + 1269px + 127px + 1270px + 1271px + 1272px + 1273px + 1274px + 1275px + 1276px + 1277px + 1278px + 1279px + 128px + 1280px + 1281px + 1282px + 1283px + 1284px + 1285px + 1286px + 1287px + 1288px + 1289px + 129px + 1290px + 1291px + 1292px + 1293px + 1294px + 1295px + 1296px + 1297px + 1298px + 1299px + 13px + 130px + 1300px + 1301px + 1302px + 1303px + 1304px + 1305px + 1306px + 1307px + 1308px + 1309px + 131px + 1310px + 1311px + 1312px + 1313px + 1314px + 1315px + 1316px + 1317px + 1318px + 1319px + 132px + 1320px + 1321px + 1322px + 1323px + 1324px + 1325px + 1326px + 1327px + 1328px + 1329px + 133px + 1330px + 1331px + 1332px + 1333px + 1334px + 1335px + 1336px + 1337px + 1338px + 1339px + 134px + 1340px + 1341px + 1342px + 1343px + 1344px + 1345px + 1346px + 1347px + 1348px + 1349px + 135px + 1350px + 1351px + 1352px + 1353px + 1354px + 1355px + 1356px + 1357px + 1358px + 1359px + 136px + 1360px + 1361px + 1362px + 1363px + 1364px + 1365px + 1366px + 1367px + 1368px + 1369px + 137px + 1370px + 1371px + 1372px + 1373px + 1374px + 1375px + 1376px + 1377px + 1378px + 1379px + 138px + 1380px + 1381px + 1382px + 1383px + 1384px + 1385px + 1386px + 1387px + 1388px + 1389px + 139px + 1390px + 1391px + 1392px + 1393px + 1394px + 1395px + 1396px + 1397px + 1398px + 1399px + 14px + 140px + 1400px + 1401px + 1402px + 1403px + 1404px + 1405px + 1406px + 1407px + 1408px + 1409px + 141px + 1410px + 1411px + 1412px + 1413px + 1414px + 1415px + 1416px + 1417px + 1418px + 1419px + 142px + 1420px + 1421px + 1422px + 1423px + 1424px + 1425px + 1426px + 1427px + 1428px + 1429px + 143px + 1430px + 1431px + 1432px + 1433px + 1434px + 1435px + 1436px + 1437px + 1438px + 1439px + 144px + 1440px + 1441px + 1442px + 1443px + 1444px + 1445px + 1446px + 1447px + 1448px + 1449px + 145px + 1450px + 1451px + 1452px + 1453px + 1454px + 1455px + 1456px + 1457px + 1458px + 1459px + 146px + 1460px + 1461px + 1462px + 1463px + 1464px + 1465px + 1466px + 1467px + 1468px + 1469px + 147px + 1470px + 1471px + 1472px + 1473px + 1474px + 1475px + 1476px + 1477px + 1478px + 1479px + 148px + 1480px + 1481px + 1482px + 1483px + 1484px + 1485px + 1486px + 1487px + 1488px + 1489px + 149px + 1490px + 1491px + 1492px + 1493px + 1494px + 1495px + 1496px + 1497px + 1498px + 1499px + 15px + 150px + 1500px + 1501px + 1502px + 1503px + 1504px + 1505px + 1506px + 1507px + 1508px + 1509px + 151px + 1510px + 1511px + 1512px + 1513px + 1514px + 1515px + 1516px + 1517px + 1518px + 1519px + 152px + 1520px + 1521px + 1522px + 1523px + 1524px + 1525px + 1526px + 1527px + 1528px + 1529px + 153px + 1530px + 1531px + 1532px + 1533px + 1534px + 1535px + 1536px + 1537px + 1538px + 1539px + 154px + 1540px + 1541px + 1542px + 1543px + 1544px + 1545px + 1546px + 1547px + 1548px + 1549px + 155px + 1550px + 1551px + 1552px + 1553px + 1554px + 1555px + 1556px + 1557px + 1558px + 1559px + 156px + 1560px + 1561px + 1562px + 1563px + 1564px + 1565px + 1566px + 1567px + 1568px + 1569px + 157px + 1570px + 1571px + 1572px + 1573px + 1574px + 1575px + 1576px + 1577px + 1578px + 1579px + 158px + 1580px + 1581px + 1582px + 1583px + 1584px + 1585px + 1586px + 1587px + 1588px + 1589px + 159px + 1590px + 1591px + 1592px + 1593px + 1594px + 1595px + 1596px + 1597px + 1598px + 1599px + 16px + 160px + 1600px + 1601px + 1602px + 1603px + 1604px + 1605px + 1606px + 1607px + 1608px + 1609px + 161px + 1610px + 1611px + 1612px + 1613px + 1614px + 1615px + 1616px + 1617px + 1618px + 1619px + 162px + 1620px + 1621px + 1622px + 1623px + 1624px + 1625px + 1626px + 1627px + 1628px + 1629px + 163px + 1630px + 1631px + 1632px + 1633px + 1634px + 1635px + 1636px + 1637px + 1638px + 1639px + 164px + 1640px + 1641px + 1642px + 1643px + 1644px + 1645px + 1646px + 1647px + 1648px + 1649px + 165px + 1650px + 1651px + 1652px + 1653px + 1654px + 1655px + 1656px + 1657px + 1658px + 1659px + 166px + 1660px + 1661px + 1662px + 1663px + 1664px + 1665px + 1666px + 1667px + 1668px + 1669px + 167px + 1670px + 1671px + 1672px + 1673px + 1674px + 1675px + 1676px + 1677px + 1678px + 1679px + 168px + 1680px + 1681px + 1682px + 1683px + 1684px + 1685px + 1686px + 1687px + 1688px + 1689px + 169px + 1690px + 1691px + 1692px + 1693px + 1694px + 1695px + 1696px + 1697px + 1698px + 1699px + 17px + 170px + 1700px + 1701px + 1702px + 1703px + 1704px + 1705px + 1706px + 1707px + 1708px + 1709px + 171px + 1710px + 1711px + 1712px + 1713px + 1714px + 1715px + 1716px + 1717px + 1718px + 1719px + 172px + 1720px + 1721px + 1722px + 1723px + 1724px + 1725px + 1726px + 1727px + 1728px + 1729px + 173px + 1730px + 1731px + 1732px + 1733px + 1734px + 1735px + 1736px + 1737px + 1738px + 1739px + 174px + 1740px + 1741px + 1742px + 1743px + 1744px + 1745px + 1746px + 1747px + 1748px + 1749px + 175px + 1750px + 1751px + 1752px + 1753px + 1754px + 1755px + 1756px + 1757px + 1758px + 1759px + 176px + 1760px + 1761px + 1762px + 1763px + 1764px + 1765px + 1766px + 1767px + 1768px + 1769px + 177px + 1770px + 1771px + 1772px + 1773px + 1774px + 1775px + 1776px + 1777px + 1778px + 1779px + 178px + 1780px + 1781px + 1782px + 1783px + 1784px + 1785px + 1786px + 1787px + 1788px + 1789px + 179px + 1790px + 1791px + 1792px + 1793px + 1794px + 1795px + 1796px + 1797px + 1798px + 1799px + 18px + 180px + 1800px + 1801px + 1802px + 1803px + 1804px + 1805px + 1806px + 1807px + 1808px + 1809px + 181px + 1810px + 1811px + 1812px + 1813px + 1814px + 1815px + 1816px + 1817px + 1818px + 1819px + 182px + 1820px + 1821px + 1822px + 1823px + 1824px + 1825px + 1826px + 1827px + 1828px + 1829px + 183px + 1830px + 1831px + 1832px + 1833px + 1834px + 1835px + 1836px + 1837px + 1838px + 1839px + 184px + 1840px + 1841px + 1842px + 1843px + 1844px + 1845px + 1846px + 1847px + 1848px + 1849px + 185px + 1850px + 1851px + 1852px + 1853px + 1854px + 1855px + 1856px + 1857px + 1858px + 1859px + 186px + 1860px + 1861px + 1862px + 1863px + 1864px + 1865px + 1866px + 1867px + 1868px + 1869px + 187px + 1870px + 1871px + 1872px + 1873px + 1874px + 1875px + 1876px + 1877px + 1878px + 1879px + 188px + 1880px + 1881px + 1882px + 1883px + 1884px + 1885px + 1886px + 1887px + 1888px + 1889px + 189px + 1890px + 1891px + 1892px + 1893px + 1894px + 1895px + 1896px + 1897px + 1898px + 1899px + 19px + 190px + 1900px + 1901px + 1902px + 1903px + 1904px + 1905px + 1906px + 1907px + 1908px + 1909px + 191px + 1910px + 1911px + 1912px + 1913px + 1914px + 1915px + 1916px + 1917px + 1918px + 1919px + 192px + 1920px + 193px + 194px + 195px + 196px + 197px + 198px + 199px + 2px + 20px + 200px + 201px + 202px + 203px + 204px + 205px + 206px + 207px + 208px + 209px + 21px + 210px + 211px + 212px + 213px + 214px + 215px + 216px + 217px + 218px + 219px + 22px + 220px + 221px + 222px + 223px + 224px + 225px + 226px + 227px + 228px + 229px + 23px + 230px + 231px + 232px + 233px + 234px + 235px + 236px + 237px + 238px + 239px + 24px + 240px + 241px + 242px + 243px + 244px + 245px + 246px + 247px + 248px + 249px + 25px + 250px + 251px + 252px + 253px + 254px + 255px + 256px + 257px + 258px + 259px + 26px + 260px + 261px + 262px + 263px + 264px + 265px + 266px + 267px + 268px + 269px + 27px + 270px + 271px + 272px + 273px + 274px + 275px + 276px + 277px + 278px + 279px + 28px + 280px + 281px + 282px + 283px + 284px + 285px + 286px + 287px + 288px + 289px + 29px + 290px + 291px + 292px + 293px + 294px + 295px + 296px + 297px + 298px + 299px + 3px + 30px + 300px + 301px + 302px + 303px + 304px + 305px + 306px + 307px + 308px + 309px + 31px + 310px + 311px + 312px + 313px + 314px + 315px + 316px + 317px + 318px + 319px + 32px + 320px + 321px + 322px + 323px + 324px + 325px + 326px + 327px + 328px + 329px + 33px + 330px + 331px + 332px + 333px + 334px + 335px + 336px + 337px + 338px + 339px + 34px + 340px + 341px + 342px + 343px + 344px + 345px + 346px + 347px + 348px + 349px + 35px + 350px + 351px + 352px + 353px + 354px + 355px + 356px + 357px + 358px + 359px + 36px + 360px + 361px + 362px + 363px + 364px + 365px + 366px + 367px + 368px + 369px + 37px + 370px + 371px + 372px + 373px + 374px + 375px + 376px + 377px + 378px + 379px + 38px + 380px + 381px + 382px + 383px + 384px + 385px + 386px + 387px + 388px + 389px + 39px + 390px + 391px + 392px + 393px + 394px + 395px + 396px + 397px + 398px + 399px + 4px + 40px + 400px + 401px + 402px + 403px + 404px + 405px + 406px + 407px + 408px + 409px + 41px + 410px + 411px + 412px + 413px + 414px + 415px + 416px + 417px + 418px + 419px + 42px + 420px + 421px + 422px + 423px + 424px + 425px + 426px + 427px + 428px + 429px + 43px + 430px + 431px + 432px + 433px + 434px + 435px + 436px + 437px + 438px + 439px + 44px + 440px + 441px + 442px + 443px + 444px + 445px + 446px + 447px + 448px + 449px + 45px + 450px + 451px + 452px + 453px + 454px + 455px + 456px + 457px + 458px + 459px + 46px + 460px + 461px + 462px + 463px + 464px + 465px + 466px + 467px + 468px + 469px + 47px + 470px + 471px + 472px + 473px + 474px + 475px + 476px + 477px + 478px + 479px + 48px + 480px + 481px + 482px + 483px + 484px + 485px + 486px + 487px + 488px + 489px + 49px + 490px + 491px + 492px + 493px + 494px + 495px + 496px + 497px + 498px + 499px + 5px + 50px + 500px + 501px + 502px + 503px + 504px + 505px + 506px + 507px + 508px + 509px + 51px + 510px + 511px + 512px + 513px + 514px + 515px + 516px + 517px + 518px + 519px + 52px + 520px + 521px + 522px + 523px + 524px + 525px + 526px + 527px + 528px + 529px + 53px + 530px + 531px + 532px + 533px + 534px + 535px + 536px + 537px + 538px + 539px + 54px + 540px + 541px + 542px + 543px + 544px + 545px + 546px + 547px + 548px + 549px + 55px + 550px + 551px + 552px + 553px + 554px + 555px + 556px + 557px + 558px + 559px + 56px + 560px + 561px + 562px + 563px + 564px + 565px + 566px + 567px + 568px + 569px + 57px + 570px + 571px + 572px + 573px + 574px + 575px + 576px + 577px + 578px + 579px + 58px + 580px + 581px + 582px + 583px + 584px + 585px + 586px + 587px + 588px + 589px + 59px + 590px + 591px + 592px + 593px + 594px + 595px + 596px + 597px + 598px + 599px + 6px + 60px + 600px + 601px + 602px + 603px + 604px + 605px + 606px + 607px + 608px + 609px + 61px + 610px + 611px + 612px + 613px + 614px + 615px + 616px + 617px + 618px + 619px + 62px + 620px + 621px + 622px + 623px + 624px + 625px + 626px + 627px + 628px + 629px + 63px + 630px + 631px + 632px + 633px + 634px + 635px + 636px + 637px + 638px + 639px + 64px + 640px + 641px + 642px + 643px + 644px + 645px + 646px + 647px + 648px + 649px + 65px + 650px + 651px + 652px + 653px + 654px + 655px + 656px + 657px + 658px + 659px + 66px + 660px + 661px + 662px + 663px + 664px + 665px + 666px + 667px + 668px + 669px + 67px + 670px + 671px + 672px + 673px + 674px + 675px + 676px + 677px + 678px + 679px + 68px + 680px + 681px + 682px + 683px + 684px + 685px + 686px + 687px + 688px + 689px + 69px + 690px + 691px + 692px + 693px + 694px + 695px + 696px + 697px + 698px + 699px + 7px + 70px + 700px + 701px + 702px + 703px + 704px + 705px + 706px + 707px + 708px + 709px + 71px + 710px + 711px + 712px + 713px + 714px + 715px + 716px + 717px + 718px + 719px + 72px + 720px + 721px + 722px + 723px + 724px + 725px + 726px + 727px + 728px + 729px + 73px + 730px + 731px + 732px + 733px + 734px + 735px + 736px + 737px + 738px + 739px + 74px + 740px + 741px + 742px + 743px + 744px + 745px + 746px + 747px + 748px + 749px + 75px + 750px + 751px + 752px + 753px + 754px + 755px + 756px + 757px + 758px + 759px + 76px + 760px + 761px + 762px + 763px + 764px + 765px + 766px + 767px + 768px + 769px + 77px + 770px + 771px + 772px + 773px + 774px + 775px + 776px + 777px + 778px + 779px + 78px + 780px + 781px + 782px + 783px + 784px + 785px + 786px + 787px + 788px + 789px + 79px + 790px + 791px + 792px + 793px + 794px + 795px + 796px + 797px + 798px + 799px + 8px + 80px + 800px + 801px + 802px + 803px + 804px + 805px + 806px + 807px + 808px + 809px + 81px + 810px + 811px + 812px + 813px + 814px + 815px + 816px + 817px + 818px + 819px + 82px + 820px + 821px + 822px + 823px + 824px + 825px + 826px + 827px + 828px + 829px + 83px + 830px + 831px + 832px + 833px + 834px + 835px + 836px + 837px + 838px + 839px + 84px + 840px + 841px + 842px + 843px + 844px + 845px + 846px + 847px + 848px + 849px + 85px + 850px + 851px + 852px + 853px + 854px + 855px + 856px + 857px + 858px + 859px + 86px + 860px + 861px + 862px + 863px + 864px + 865px + 866px + 867px + 868px + 869px + 87px + 870px + 871px + 872px + 873px + 874px + 875px + 876px + 877px + 878px + 879px + 88px + 880px + 881px + 882px + 883px + 884px + 885px + 886px + 887px + 888px + 889px + 89px + 890px + 891px + 892px + 893px + 894px + 895px + 896px + 897px + 898px + 899px + 9px + 90px + 900px + 901px + 902px + 903px + 904px + 905px + 906px + 907px + 908px + 909px + 91px + 910px + 911px + 912px + 913px + 914px + 915px + 916px + 917px + 918px + 919px + 92px + 920px + 921px + 922px + 923px + 924px + 925px + 926px + 927px + 928px + 929px + 93px + 930px + 931px + 932px + 933px + 934px + 935px + 936px + 937px + 938px + 939px + 94px + 940px + 941px + 942px + 943px + 944px + 945px + 946px + 947px + 948px + 949px + 95px + 950px + 951px + 952px + 953px + 954px + 955px + 956px + 957px + 958px + 959px + 96px + 960px + 961px + 962px + 963px + 964px + 965px + 966px + 967px + 968px + 969px + 97px + 970px + 971px + 972px + 973px + 974px + 975px + 976px + 977px + 978px + 979px + 98px + 980px + 981px + 982px + 983px + 984px + 985px + 986px + 987px + 988px + 989px + 99px + 990px + 991px + 992px + 993px + 994px + 995px + 996px + 997px + 998px + 999px + \ No newline at end of file diff --git a/app/src/main/res/values/string_jxw.xml b/app/src/main/res/values/string_jxw.xml new file mode 100644 index 0000000..a213272 --- /dev/null +++ b/app/src/main/res/values/string_jxw.xml @@ -0,0 +1,830 @@ + + + Navigate home + Navigate up + More options + Done + See all + Choose an app + OFF + ON + sans-serif + sans-serif-medium + sans-serif-medium + sans-serif + sans-serif + sans-serif + sans-serif + sans-serif-light + sans-serif + sans-serif + sans-serif + sans-serif-medium + Alt+ + Ctrl+ + delete + enter + Function+ + Meta+ + Shift+ + space + Sym+ + Menu+ + Search… + Clear query + Search query + Search + Submit query + Voice search + Share with + Share with %s + Collapse + 请选择要添加的应用 + Camera + Cancel + Tap to continue + Coming soon to download the file + Continue + downloaded:%s + Downloading:%s + error~ + Download + Download failed! + The task already exists, do not repeat click to download! + Files + Download + Wi-Fi disconnected. Continue the download via mobile data network? + Go away + leaving %s and opening another app? + Loading ... + The selected file can not be larger than %s MB + Do you want to continue anyway? + SSL Certificate error. + The certificate has expired. + The certificate Hostname mismatch. + The certificate is not yet valid. + The certificate authority is not trusted. + Note + SSL Certificate Error + You have a new notice + All Photo + + 后台下载 + Adapter is NULL! + Library + 没有更多数据 + 加载失败,请点我重试 + 正在加载中... + 取消 + 已连接 + 正在连接 + Photo crop failure + Photo crop success + 删除 + 若要使用其他功能,可关闭窗口在后台继续下载哦! + 下载中%2$d%% + %1$s下载暂停,谢谢! + The image format does not support this operation! + No SD card + Fast forward + Fullscreen mode + Next track + Pause + Play + Previous track + Repeat all + Repeat none + Repeat one + Rewind + Shuffle + Stop + Download completed + Download + Downloading + Download failed + Downloads + Removing downloads + %1$s, %2$s + %1$.2f Mbps + Mono + %1$d × %2$d + Auto + None + Audio + Text + Video + Stereo + Surround sound + 5.1 surround sound + 7.1 surround sound + Unknown + %1$d Piece + Gallery + + indicator color attribute : “@color/colorID or #000000” + 跳过 + 流利度: + 句子太长\n不能评测 + 平均语速: + 准确度: + 完整度: + Maxsize should be greater than zero + 蔬菜大作战 + 颜色找不同 + 下一步 + 暂不下载 + 应用未安装,下载后即可使用 + 当前找不到网络 + Photo empty + 播放地址无效 + 通知 + 确定要删除该应用吗? + Gallery init failure! + 密码 + Unable to get pictures + This app requesting access to your Gallery + Photo Crop + Photo Edit + Failed to get the picture! + 取消 + + + + + + 确定 + + Please reopen Gallery + Preview + 请输入手机号 + 请输入注册号 + 请输入注册号激活学习中心 + 保存 + Saving picture… + Search + Has reached the maximum number selection! + selected(%1$d/%2$d) + %s falsify area,\n Represents the height[%.1fdp] of drag at run time,\n It does not show anything. + The content view in SmartRefreshLayout is empty. Do you forget to add it in xml layout file? + Load Failed + Load Success + Loading… + No More Data + Pull Up To Load More + Wait For Refreshing… + Release To Load More + Refresh Failed + Refresh Success + Wait For Loading… + Pull Down To Refresh + Refreshing… + Release To Refresh + Release To Second Floor + \'Last Update\' M-d HH:mm + 999+ + 取消 + 继续下载 + 你已切换到移动网络,是否继续当前下载? + 网络提示 + 继续下载 + 点击安装 + 点击重试 + 点击查看 + 下载失败 + 下载完成 + 正在下载 + 有新版本 + 检查新版本失败,请稍后重试 + 正在检查,请稍候... + 你已经是最新版了 + 下次再说 + 继续 + 更新说明 + 包大小 + 安装 + 重试 + 更新时间 + 立即更新 + 版本 + 确定 + com.yxg.airoom,io.dcloud.PandoraEntry,,airoom,AI智习室 + com.jxw.souti,com.jxw.souti.ui.activity.LoadingActivity,int:entranceType:1,,搜题 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.WrongActivity,,,同步辅导错题 + com.jxw.lwxfy,com.jxw.yyhb.ui.activity.MainActivity,,,新飞跃 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:成长教育#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:大奖绘本#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:儿歌童谣#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:经典故事#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:家庭生活#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:旅游冒险#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:启蒙认知#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:社会生活#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:通识百科#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:兴趣培养#boolean:background_music:false,,英语绘本 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,string:table_name:自然生态#boolean:background_music:false,,英语绘本 + com.jxw.question,com.jxw.question.module.ui.activity.ProgramEntryActivity,int:page_navigate:4,,精准学错题 + com.jxw.aixhb,com.jxw.aixhb.mvi.ui.activity.MainActivity,,,AI小伙伴 + com.jxw.znhy,com.jxw.znhy.ui.activity.AIEyeActivity,,,AI眼保健操 + com.selfstudy.jingying,com.zhuoxu.ui.home.HomeCocos2dxActivity,,,AI自习室 + com.arivoc.wordhd,com.arivoc.kouyu100.WelcomeActivity,,,词汇100 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:八年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:八年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:五年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:五年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:四年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:四年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:九年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:九年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:一年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:一年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:七年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:七年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:六年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:六年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:三年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:三年级,,单词大讲堂 + com.jxw.newyouer.video,com.jxw.newyouer.activity.WordLectureActivity,String:gradeName:二年级#String:pressName:人教版,jxwgb_newyouer_video,单词大讲堂 + com.jxw.jpkc,com.jxw.jpkc.ui.word.WordLectureActivity,String:key_grade:二年级,,单词大讲堂 + cn.idashi.app,cn.idashi.app.ui.common.StartPageActivity,,dsyb,大师一百 + com.hongen.app.word.local,org.cocos2dx.lua.SplashActivity,,,洪恩识字 + com.aitutor.hippo,com.bytedance.edu.tutor.SplashActivity,,,河马爱学 + com.lhcx.drawing,com.inno.drawing.MainActivity,画时多多,DrawingPainting_icustom_release,画时多多 + com.jxw.znhy,com.jxw.znhy.ui.activity.TipsActivity,,,护眼百科 + com.jxw.znhy,com.jxw.znhy.ui.activity.ReadActivity,int:type:2,,护眼百科 + com.jxw.znhy,com.jxw.znhy.ui.activity.ReadActivity,int:type:3,,护眼百科 + com.jxw.znhy,com.jxw.znhy.ui.activity.ReadActivity,int:type:1,,护眼百科 + app.irpan,app.irpan.MainActivity,,irpan,irpan + com.caizhi.cloud,noclass,记忆大师,yxbd,超级记忆 + com.caizhi.cloud,noclass,记忆课堂,yxbd,超级记忆 + com.idsontech.airaise.plus.hd,io.dcloud.PandoraEntry,,,精准提分训练营 + com.idsontech.airaise.pro.hd,io.dcloud.PandoraEntry,,,精准提分训练营 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:地理会考专项#String:subject:地理#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:化学中考专项#String:subject:化学#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:生物会考专项#String:subject:生物#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:高考专题系统复习#String:subject:数学#String:index:3,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考第二轮复习#String:subject:数学#String:index:1,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考第一轮复习#String:subject:数学#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考专题系统复习#String:subject:数学#String:index:2,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:物理中考专项#String:subject:物理#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.PoetrySpecialActivity,String:title:小升初古诗词专项#String:subject:语文#String:index:2,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:小升初考点专项#String:subject:语文#String:index:1,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:小升初作文专项#String:subject:语文#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考考点专项#String:subject:语文#String:index:3,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:高考写作大提升#String:subject:英语#String:index:3,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:高考语法大全#String:subject:英语#String:index:2,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考写作大提升#String:subject:英语#String:index:1,jxwgb_newyouer_video,考前冲刺 + com.jxw.newyouer.video,com.jxw.newyouer.activity.ExamSprintActivity,String:title:中考语法大全#String:subject:英语#String:index:0,jxwgb_newyouer_video,考前冲刺 + com.caizhi.cloud,noclass,快速阅读,yxbd,超级记忆 + com.idsontech.fastread.tlm.hd,io.dcloud.PandoraEntry,,,快速阅读训练营 + com.arivoc.kouyu,com.arivoc.kouyu100.WelcomeActivity,,,口语100 + com.tal.anytimeask,com.tal.tiku.splash.SplashActivity,,,口语老师 + com.jxw.singsound,com.jxw.singsound.ui.SplashActivity,,jxwgb_5.0_kypc,口语评测 + com.android.launcher3,com.android.launcher3.uioverrides.QuickstepLauncher,,,安卓平台 + com.jxw.launcher,com.jxw.launcher.APPActivity,,,添加 + com.selfstudy.tashawur,com.zhuoxu.ui.home.HomeCocos2dxActivity,,aidmx,塔萨吾尔自习室 + com.jxw.aijtjs,com.jxw.aijtjs.ui.activity.MainActivity,String:key_pid:1651#String:key_subject:英语#String:key_title:高中英语专题#String:key_type:GZYYZT,,精品课 + com.jxw.aijtjs,com.jxw.aijtjs.ui.activity.CameraActivity,int:camera_type:3,,ai家庭教师 + com.jxw.aijtjs,com.jxw.aijtjs.ui.activity.CameraActivity,int:camera_type:2,,ai家庭教师 + com.jxw.aijtjs,com.jxw.aijtjs.ui.activity.CameraActivity,int:camera_type:1,,ai家庭教师 + com.jxw.huiben,com.jxw.huiben.activity.SplashActivity,keben,,,学王指读 + com.jxw.qkxx,com.jxw.qkxx.asxl.MainActivity,String:providerType:CYAS,,超越奥数 + com.jxw.bdc,com.jxw.bdc.ui.welcome.WelcomeActivity,String:title:背单词,,背单词 + com.android.dialer,com.android.dialer.app.DialtactsActivity,,,拨打电话 + com.jxw.ctdy,com.jxw.ctdy.activity.MainActivity,,,错题打印 + com.jxw.dcttl,com.jxw.dcttl.ui.BookDetailActivity,,,单词天天练 + com.jxw.wuweijidanci,com.jxw.wuweijidanci.DictationActivity,true,jxwgb_5.0_wuweijidanci,五维记单词单词听写 + com.jxw.yyfy,com.jxw.yyfy.WelcomeActivity,,,多国翻译 + com.android.dialer,com.android.dialer.main.impl.MainActivity,,,电话 + com.larus.nova,com.larus.home.impl.privacy.PrivacyAgreeActivity,,,豆包 + com.aitutor.hippo,com.bytedance.edu.tutor.SplashActivity,,,豆包x + com.jxw.download,com.jxw.download.main.ui.HomeActivity,,,下载中心 + com.android.mms,com.android.mms.ui.BootActivity,,,短信 + com.jxw.flch,com.jxw.flch.ui.activity.MainHomeActivity,,,分类词汇 + com.jxw.tbgs,com.jxw.tbgs.ui.welcome.WelcomeActivity,String:projectId:jxw_pb_gsc,,古诗词 + com.jxw.qkxx,com.jxw.qkxx.GsdqActivity,String:providerSubject:化学#String:title:化学公式大全,,全科学习 + com.jxw.qkxx,com.jxw.qkxx.GsdqActivity,String:providerSubject:生物#String:title:生物公式大全,,全科学习 + com.jxw.qkxx,com.jxw.qkxx.GsdqActivity,String:providerSubject:数学#String:title:数学公式大全,,全科学习 + com.jxw.qkxx,com.jxw.qkxx.GsdqActivity,String:providerSubject:物理#String:title:物理公式大全,,全科学习 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.MainActivity,,,试卷中心 + com.jxw.znhy,com.jxw.znhy.ui.activity.TipsActivity,,,护眼小贴士 + com.jxw.hzdcg,com.jxw.hzdcg.ui.LuncherActivity,,,汉字闯关 + com.jxw.hzjc,com.jxw.hzjc.MainActivity,String:title:汉字基础,,汉字基础 + com.jxw.jpkc,com.jxw.jpkc.ui.jhtx.activity.main.JcjhMainActivity,,,几何图形 + com.jxw.xdfzq,com.jxw.xdfzq.ui.activity.MainActivity,,,金牌辅导 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.downloadsCollections.activity.main.DownloadsCollectionsMainActivity,String:key_model_type:MY_COLLECTIONS,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.downloadsCollections.activity.main.DownloadsCollectionsMainActivity,String:key_model_type:MY_DOWNLOAD,,精品课 + com.sprd.sprdnote,com.sprd.sprdnote.NoteActivity,,,记事本 + com.android.calculator2,com.android.calculator2.Calculator,,,计算器 + com.jxw.launcher,com.jxw.launcher.user.SettingsActivity,,,便捷设置 + com.jxw.pushservice,com.jxw.pushservice.MainActivity,,,家长管理 + 地理 + 化学 + 科学 + 历史 + + 生物 + 数学 + 物理 + 语文 + 英语 + 政治 + com.jxw.kcb,com.jxw.kcb.ui.activity.WelcomeActivity,String:StartArgs:keben#String:title:课程表,,课程表 + com.jxw.jpkc,com.jxw.jpkc.ui.klxyy.activity.main.KlxyyMainActivity,,,快乐学英语 + com.jxw.ksdcg,com.jxw.ksdcg.view.activity.WelcomeActivity,,,口算大闯关 + com.jxw.gb.kspg,com.jxw.gb.kspg.ui.activitys.MainActivity,,,口算批改 + com.kugou.android.lite,com.kugou.android.app.splash.SplashActivity,,,酷我音乐 + com.jxw.aikyls,com.jxw.aiteacher.ui.SplashActivity,,,ai口语老师 + com.jxw.lccj,com.jxw.lccj.activity.MainActivity,,,连词成句 + com.android.soundrecorder,com.android.soundrecorder.SoundRecorder,,,录音机 + com.android.soundrecorder,com.sprd.soundrecorder.RecorderActivity,,,录音机 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.ExamPagerActivity,int:type:1671,,试卷中心 + com.jxw.examsystem,com.jxw.examsystem.StartExamActivity,,,模拟考场 + com.jxw.share,com.jxw.share.launcher.MainActivity,String:StartArgs:keben#String:title:每日分享,,每日分享 + com.jxw.jpkc,com.jxw.jpkc.ui.teacher.TeacherListActivity,,,名师风采 + com.jxw.qjdh,com.jxw.qjdh.activity.WelcomeActivity,,,情景对话 + com.jxw.qwpy,com.jxw.qwpy.ui.activity.MainActivity,,,趣味配音 + com.jxw.online_study,com.jxw.online_study.activity.XBookStudyActivity,f:/ansystem/固化数据/趣味英语.JXW,jxwgb_5.0_tongbuxuexi,趣味英语 + com.jxwgb.qxpy,com.jxw.qxpy.ui.LuncherActivity,,,趣学拼音 + com.jxw.rjdd,com.jxw.rjdd.ui.main.MainActivity,,,人教点读 + com.android.calendar,com.android.calendar.AllInOneActivity,,,日历 + com.jxw.zncd,com.jxw.ui.NeologismActivity,,,生词本 + com.jxw.mathgame,com.jxw.mathgame.ui.activity.SDJJCSplashActivity,,,数独竞技场 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.ExamPagerActivity,string:phaseName:高中,,试卷中心 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.ExamPagerActivity,string:phaseName:初中,,试卷中心 + com.mediatek.videoplayer,com.mediatek.videoplayer.MovieListActivity,,,视频播放器 + com.example.arithmeticformula,com.example.arithmeticformula.MainActivity,,,算术口诀 + com.jxw.mathgame,com.jxw.mathgame.ui.activity.SplashActivity,,,算术围墙 + com.jxw.download,com.jxw.sys.ui.SysMainActivity,String:subjectName:化学,,实验室 + com.jxw.download,com.jxw.sys.ui.SysMainActivity,String:subjectName:生物,,实验室 + com.jxw.download,com.jxw.sys.ui.SysMainActivity,String:subjectName:物理,,实验室 + com.jxw.instruction,com.jxw.instruction.SMSActivity,,,使用手册 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32048#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32025#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:31979#int:key_index:3,,精品课程 + com.jxw.hdhb,com.jxw.hdhb.MainActivity,,,互动绘本 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32000#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32012#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32068#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:31980#int:key_index:3,,精品课程 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_type:32038#int:key_index:3,,精品课程 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:地理,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:化学,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:科学,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:历史,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:生物,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:数学,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:物理,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:语文,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:英语,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subject:政治,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subjectId:科学,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subjectId:数学,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subjectId:语文,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subjectId:英语,,同步辅导 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.MainActivity,String:subjectId:道德与法治,,同步辅导 + com.jxw.tbgs,com.jxw.tbgs.ui.welcome.WelcomeActivity,,,同步古诗 + com.jxw.music,com.jxw.yyts.ui.MyCollectActivity,,,英语听说和同步听力的收藏首页 + com.jxw.music,com.jxw.yyts.ui.TbtlCNActivity,,,同步听力 + com.jxw.music,com.jxw.yyts.ui.TbtlENActivity,,,同步听力 + com.android.deskclock,com.android.deskclock.DeskClock,,,时钟 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,int:index:1,,指尖查词 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,int:index:3,,指尖查词 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,int:index:4,,指尖查词 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,int:index:2,,指尖查词 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,int:index:0,,指尖查词 + com.jxw.online_study,com.jxw.online_study.activity.XBookStudyActivity,f:/ansystem/固化数据/中学听力训练.JXW,jxwgb_5.0_tongbuxuexi,中学听力训练 + com.jxwgb.tsks,com.jxwgb.tsks.ui.activity.MainActivity,,,听说考试 + com.android.contacts,com.android.contacts.activities.PeopleActivity,,,通讯录 + com.jxw.txrw,com.jxw.txrw.activity.MainActivity,String:subject:语文,,听写任务 + com.jxw.txrw,com.jxw.txrw.activity.MainActivity,String:subject:英语,,听写任务 + com.android.documentsui,com.android.documentsui.files.FilesActivity,,,文件管理 + com.google.android.apps.nbu.files,com.google.android.apps.nbu.files.home.HomeActivity,,,文件管理 + com.jxw.wuweijidanci,com.jxw.wuweijidanci.MainActivity,,jxwgb_5.0_wuweijidanci,五维记单词 + com.jxw.tbgs,com.jxw.tbgs.ui.welcome.WelcomeActivity,String:projectId:jxw_pb_wyw,,文言文 + com.jxw.xbzq,com.jxw.xbzq.ui.activity.MainActivity,,,优选专区 + com.android.gallery3d,com.android.gallery3d.v2.app.GalleryActivity2,,,相册 + com.android.camera2,com.android.camera.CameraLauncher,,,相机 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:道德与法治,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:地理,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:化学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:历史,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:生物,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:数学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:物理,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:语文,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:英语,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:0#String:key_subject:政治,,精品课 + uni.UNI85F0458,io.dcloud.PandoraEntry,,,心理测试 + com.jxw.usagedate,com.jxw.usagedate.ui.MainActivity,,,学情管理 + com.jxw.zncd,com.jxw.zncd.MainActivity,,,学王词典 + com.jxw.JXWAppMarket,com.jxw.JXWAppMarket.MainActivity,,jxwgb_xwsc_c80959aa1b1839b7dc389c9ec902f807,学王市场 + com.jxw.znhy,com.jxw.znhy.ui.activity.ExercisesActivity,,,眼保健操 + com.jxw.englishsoundmark,com.jxw.englishsoundmark.Activity.MainActivity,,,音标学习 + com.jxw.huiben,com.jxw.huiben.activity.SplashActivity,huiben,,,学王指读 + com.android.music,com.android.music.MusicBrowserActivity,,,音乐 + com.jxw.clean,com.jxw.clean.MainActivity,,,一键加速 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:政治,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:政治,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:地理,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:化学,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:科学,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:历史,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:生物,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:数学,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:物理,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:语文,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:英语,,一课一练 + com.jxw.tbfd,com.jxw.tbfd.ui.activity.HomeActivity,String:subject:政治,,一课一练 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5513,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13258#String:key_type:QCZG_YR_TNXL#String:key_title:21天家庭运动课#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5583,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5543,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5545,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5544,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5584,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13249#String:key_type:QCZG_YR_AQYS#String:key_title:安全意识#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5502,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5532,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5621#String:key_name:波洛克艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:表面张力,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:伯努利定律,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5558,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5597,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5549,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5542,,精品课 + com.jxw.ddpy,org.cocos2dx.lua.LauncherActivity,,,哆哆拼音 + com.jxw.ddsz,org.cocos2dx.lua.LauncherActivity,,,哆哆识字 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13117#String:key_type:QCZG_YR_DLTM#String:key_title:地理探秘#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5621#String:key_name:达利艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5571,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5484,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5483,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5490,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5514,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:电与磁,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:14445#String:key_type:ZJJQR_YR_EGLD#String:key_title:儿歌律动#String:key_subject:语言启蒙,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5504,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5505,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5516,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13323,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5563,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5620,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5481,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5561,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5548,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5482,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5476,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5562,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13220#String:key_type:QCZG_YR_XJCN#String:key_title:古诗学习#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:光学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13206#String:key_type:QCZG_YR_CNGS#String:key_title:国学经典#String:key_subject:语言,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:4677,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13329#String:key_type:QCZG_YR_HBDH#String:key_title:绘本动画#String:key_subject:语言,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5582,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5540,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5580,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:虹吸现象,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5590,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:14485#String:key_type:ZJJQR_YR_TNXL#String:key_title:体能训练#String:key_subject:健康教育,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13264#String:key_type:QCZG_YR_JTJY#String:key_title:家庭教育#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:空气与压强,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5560,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13175#String:key_type:QCZG_YR_LDEG#String:key_title:儿歌律动#String:key_subject:语言,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:力学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:密度与浮力,,精品课 + com.jxw.med,com.jxw.med.play.MedListActivity,,,磨耳朵 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5539,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13268#String:key_type:QCZG_YR_MLKXXSY#String:key_title:魔力科学小实验#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13160#String:key_type:QCZG_YR_ART#String:key_title:美术#String:key_subject:艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5491,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:毛细现象,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13133#String:key_type:QCZG_YR_MXZL#String:key_title:名校之旅#String:key_subject:社会,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13132#String:key_type:QCZG_YR_MYSJ#String:key_title:漫游世界#String:key_subject:社会,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界·南极探险,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界·世界名校,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界之登陆月球,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界·中国名校,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界之环球美食,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5511#String:key_name:漫游世界之世界之最,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13154#String:key_type:QCZG_YR_NTYS#String:key_title:黏土#String:key_subject:艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13257#String:key_type:QCZG_YR_TNXL#String:key_title:奇多体适能#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13139#String:key_type:QCZG_YR_QSPY#String:key_title:情商培养#String:key_subject:社会,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5550,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13245#String:key_type:QCZG_YR_TNXL#String:key_title:亲子运动家庭强化课#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5557,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5617,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5565,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:热学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5600,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5546,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:声学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13109#String:key_type:QCZG_YR_SHKX#String:key_title:生活科学#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5621#String:key_name:生活能力,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13243#String:key_type:QCZG_YR_SHNL#String:key_title:生活习惯#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5568,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5618,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5479,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5515,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5564,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5619,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5555,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5593,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13104#String:key_type:QCZG_YR_SX#String:key_title:数学#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5594,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13113#String:key_type:QCZG_YR_TMDZR#String:key_title:探秘大自然#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5517,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5541,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:14485#String:key_type:ZJJQR_YR_TNXL#String:key_title:体能训练#String:key_subject:健康教育,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5581,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5551,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5547,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5566,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5579,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5556,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:物体特征与材料性能,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13256#String:key_type:QCZG_YR_XLJK#String:key_title:心理健康#String:key_subject:健康,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5585,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:运动与惯性,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5569,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5485,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5570,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13155#String:key_type:QCZG_YR_ZHYS#String:key_title:艺术综合#String:key_subject:艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13198#String:key_type:QCZG_YR_YWGS#String:key_title:英文故事#String:key_subject:语言,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13224#String:key_type:QCZG_YR_XJEN#String:key_title:英文字母歌#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13149#String:key_type:QCZG_YR_MUSIC#String:key_title:音乐#String:key_subject:艺术,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5577,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5578,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:14445#String:key_type:ZJJQR_YR_EGLD#String:key_title:儿歌律动#String:key_subject:语言启蒙,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5480,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13142#String:key_type:QCZG_YR_ZHWH#String:key_title:中华文化#String:key_subject:社会,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5512#String:key_name:中华五千年第二季,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5512#String:key_name:中华五千年第一季,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13103#String:key_type:QCZG_YR_ZLKF#String:key_title:智力开发#String:key_subject:科学,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5586,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5587,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13219#String:key_type:QCZG_YR_XJEN#String:key_title:自然拼读初阶#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13221#String:key_type:QCZG_YR_XJEN#String:key_title:自然拼读高阶#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13222#String:key_type:QCZG_YR_XJEN#String:key_title:主题词汇大比拼#String:key_subject:幼小衔接,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13174#String:key_type:QCZG_YR_CNGS#String:key_title:中文故事#String:key_subject:语言,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:5601#String:key_name:重心,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13140#String:key_type:QCZG_YR_ZYQM#String:key_title:职业启蒙#String:key_subject:社会,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.youer.SpecialYouerActivity,String:key_pid:13148#String:key_type:QCZG_YR_ZZYS#String:key_title:折纸#String:key_subject:艺术,,精品课 + com.jxw.yszqb,com.jxw.main.activity.WelcomeActivity,,,元素周期表 + com.jxw.yyhb,com.jxw.yyhb.ui.activity.MainActivity,,,英语绘本 + com.jxw.music,com.jxw.yyts.ui.HomeYYTSActivity,,,英语听说 + com.jxw.qkxx,com.jxw.qkxx.asxl.MainActivity,String:providerType:YYTXL,,应用题训练 + com.jxw.qkxx,com.jxw.qkxx.YfdqActivity,String:title:语法大全,,语法大全 + com.jxw.zcdtz,org.cocos2dx.lua.CocosLauncherActivity,,,字词大挑战 + com.jxw.zhbd,com.jxw.zhbd.MainActivity,,,中华宝典 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1392,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1403,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1423,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1402,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1416,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:810,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1410,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.MainActivity,int:home_tab:0#int:jump_type:1,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:936,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.activitys.BookDetailActivity,int:jump_type:1#int:book_id:1421,,智慧图书馆 + com.jxwgb.zhtsg,com.jxw.home.ui.MainActivity,int:home_tab:2#int:jump_type:1,,智慧图书馆 + com.jxw.zncd,com.jxw.zncd.OCRWordActivity,,,查词典 + com.jxw.zncd,com.jxw.zncd.OCRWordActivity,,,查词典 + com.jxw.souti,com.jxw.souti.ui.activity.MainActivity,,,拍照搜题 + com.jxw.znhy,com.jxw.znhy.ui.activity.MainActivity,,,智能护眼 + com.jxw.zhinenghuyan,com.jxw.zhinenghuyan.MainActivity,,,智能护眼 + com.jxw.znhy,com.jxw.znhy.ui.activity.CheckActivity,int:index:1,,智能护眼-护眼模式 + com.iflytek.cyber.iot.show.core,com.iflytek.cyber.iot.show.core.EvsLauncherActivity,,,智能语音 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:1,,精品课 + com.yssg.proj,org.cocos2dx.javascript.AppActivity,,,贞视力训练 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.ExamPagerActivity,int:type:1675,,试卷中心 + com.jxw.jpkc,com.jxw.jpkc.ui.main.MainActivity,int:key_index:2,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1616,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1552#String:key_subject:数学#String:key_title:中学数学专题#String:key_type:ZXSXZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1550#String:key_subject:语文#String:key_title:中学语文专题#String:key_type:ZXYWZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1551#String:key_subject:英语#String:key_title:中学英语专题#String:key_type:ZXYYZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1753,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:13426,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1752#String:key_subject:数学#String:key_title:高考数学专题#String:key_type:GZSXZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1650#String:key_subject:语文#String:key_title:高中语文专题#String:key_type:GZYWZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1651#String:key_subject:英语#String:key_title:高中英语专题#String:key_type:GZYYZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1556,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1554,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:33596,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:7230,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:15572,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1591,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1684,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1593,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:7247,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1617,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1577,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1564,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1549#String:key_subject:数学#String:key_title:小学数学专题#String:key_type:XXSXZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:1547#String:key_subject:语文#String:key_title:小学语文专题#String:key_type:XXYWZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialThreeActivity,String:key_id:33510#String:key_subject:英语#String:key_title:小学英语专题#String:key_type:XXYYZT,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1592,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1760,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1677,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1557,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1657,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1648,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1594,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1595,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:13437,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:13434,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1555,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1683,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1682,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1553,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1660,,精品课 + com.jxw.jpkc,com.jxw.jpkc.ui.special.SpecialHomeActivity,String:key_pid:1590,,精品课 + com.jxw.gb.zwpg,com.jxw.gb.zwpg.ui.activity.MainActivity,,,作文批改 + com.jxw.zwpg,com.jxw.zwpg.MainActivity,,,作文批改 + com.jxw.zwpg,com.jxw.zwpg.CameraActivity,int:type:2,,作文批改 + com.jxw.zwpg,com.jxw.zwpg.CameraActivity,int:type:1,,作文批改 + com.jxw.zwpg,com.jxw.zwpg.CompositionListActivity,int:type:2,,作文批改 + com.jxw.zwpg,com.jxw.zwpg.CompositionListActivity,int:type:1,,作文批改 + com.eduyun.app.factory.ykt,com.nd.smartcan.appfactory.demo.SplashActivity,,,国家中小学智慧教育平台 + com.baidu.homework,com.baidu.homework.activity.init.InitActivity,,,作业帮 + com.tech.translate,com.tech.translate.MainActivity,,,中英互译 + com.jxw.souti,com.jxw.souti.ui.activity.LoadingActivity,int:searchType:2,,作业批改 + com.jxw.souti,com.jxw.souti.ui.activity.LoadingActivity,int:searchType:2,,作业批改 + uni.UNIEEABC32,io.dcloud.PandoraEntry,,,巧解题 + com.android.calendar,com.android.calendar.homepage.AllInOneActivity,,,日历 + com.android.calendar,com.android.calendar.AllInOneActivity,,,日历 + com.android.settings,com.android.settings.Settings,,,系统设置 + com.tal.anytimeask,com.tal.tiku.splash.SplashActivity,,,随时间 + com.android.settings,com.android.settings.Settings,,,设置 + com.jxw.tbdd,com.jxw.yyhb.ui.activity.MainActivity,,jxwgb_6.0_tbdd,同步点读 + com.jxw.tbdd,com.jxw.yyhb.ui.activity.MainActivity,int:subject:0,jxwgb_6.0_tbdd,同步点读 + com.jxw.tbdd,com.jxw.yyhb.ui.activity.MainActivity,int:subject:1,jxwgb_6.0_tbdd,同步点读 + com.jxw.question,com.jxw.question.module.ui.activity.ProgramEntryActivity,,jxwgb_6.0_tiku_xiaodu,题库 + com.jxw.zjcc,com.jxw.zjcc.MainActivity,,jxwgb_6.0_xwzdtl,指尖查词 + com.jxw.launcher,com.jxw.update.UpdateNewActivity,,,应用更新 + com.jxw.launcher,com.jxw.launcher.XtazActivity,,,系统安装 + com.tencent.mm,com.tencent.mm.ui.LauncherUI,,,微信 + com.example.administrator.tongguangjiaoyu,com.beeantec.classcard.ui.page.LauncherActivity,,,王后熊教育 + com.google.android.documentsui,com.android.documentsui.files.FilesActivity,,,文件管理 + com.sprd.fileexplorer,com.sprd.fileexplorer.activities.FileExploreActivity,,,文件管理 + com.android.documentsui,com.android.documentsui.files.FilesActivity,,,文件管理 + com.jxw.xhgpt,com.jxw.xhgpt.activity.XgptGuideActivity,int:gpt_guide_type:0,,XGPT + com.jxw.xhgpt,com.jxw.xhgpt.activity.XgptGuideActivity,int:gpt_guide_type:1,,XGPT + com.jxw.xhgpt,com.jxw.xhgpt.activity.XgptGuideActivity,int:gpt_guide_type:2,,XGPT + com.wy.gkwenshang,com.wy.gkwenshang.ActStart_,,, + com.jxw.launcher,com.jxw.launcher.ExtraDownloadActivity,,,系统安装 + com.selfstudy.xueerjia,com.zhuoxu.ui.home.HomeCocos2dxActivity,,xueerjia,AI自习室 + com.jxw.xwsf,com.jxw.xwsf.SplashActivity,,,学王书房 + com.jxw.launcher,com.jxw.launcher.GRZXActivity,xx,,个人中心 + com.jxw.launcher,com.jxw.launcher.YrGRZXActivity,yr,,个人中心 + com.jxw.yxpzbt,com.jxw.yxpzbt.ui.LuncherActivity,,,颜色找不同 + com.caizhi.cloud,noclass,英文记忆,yxbd,超级记忆 + com.yssg.proj,org.cocos2dx.javascript.AppActivity,,yxpslxl,视力训练 + com.jxw.znhy,com.jxw.znhy.ui.activity.CheckActivity,int:justReport:1,,用眼报告 + com.caizhi.cloud,noclass,综合记忆,yxbd,超级记忆 + com.jxw.sjzx,com.jxw.sjzx.ui.activity.MainActivity,,,真题卷 + com.caizhi.cloud,noclass,中文记忆,yxbd,超级记忆 + uni.UNI6CEA583,io.dcloud.PandoraEntry,,,学能教室 + com.jxw.schultegrid,com.jxw.schultegrid.SettingActivity,,jxwgb_5.0_zhuanzhulixunlian,专注力训练 + Take photo failure + 您当前正在使用移动网络,继续播放将消耗流量 + 停止播放 + 继续播放 + 立即下载 + 去联网激活 + 去激活 + 无网络连接,是否进行网络设置 + 跳过 + 年龄 + 安装 + 安卓版本 + 安卓平台 + 安卓应用 + 版本号 + 笔画名称 + 笔画示例 + 便捷设置 + 本机应用 + 不能重复添加! + 重新激活 + 重新加载 + 儿歌律动 + Google Play商店 + 个人信息 + 个人中心 + 古文 + 更新 + 更新内容 + 更新说明 + 关于 + 关于设备 + 互动绘本 + 头像 + 汉字闯关 + 汉字基础 + 检测到有%1$s个应用更新 + 检查更新 + 检查网络 + 激活 + 激活中 + 精品课程 + 课本点读 + 控笔训练 + 可将应用添加到学习桌面,允许孩子使用 + 立即更新 + 加载中... + 蓝牙 + 描红演示 + 密码错误! + 牛刀小试 + 昵称 + 10岁 + 11岁 + 12岁 + 13岁 + 14岁 + 15岁 + 16岁 + 17岁 + 18岁 + 3岁 + 4岁 + 5岁 + 6岁 + 7岁 + 8岁 + 9岁 + 你没有需要更新的内容哦~ + 屏保 + 清除 + :*?<> 等符号,请重新输入 + 请更新后使用 + 请检查网络后重试 + 清理完成! + 请输入昵称 + 请输入1-8位的文字或字母 + 趣味拼音 + 请选择年龄 + 请选择要添加的应用 + 日历 + 诗词 + 设置 + 性别 + 男孩 + 女孩 + 时间管控 + 书写讲解 + 手写示范 + 声音 + 双语绘本 + 时钟 + 设置允许使用设备的时间 + 同步辅导 + 同步视频 + 添加应用 + 按照提示在这里写一写吧 + 文件管理 + 网络 + 网络出小差了 + 网络断开了,快去检查网络吧~ + 完善个人信息 + 完善个人信息将为你更好的匹配学习内容 + 相册 + 修改成功 + 型号 + 相机 + 显示 + 系统更新 + 学王词典 + 学习机中的学习应用 + 学习桌面 + 学习中心 + 写一写 + 写作指导 + 下载中心 + 一键更新 + 语言 + 语音翻译 + 应用管理 + 应用更新 + 应用列表 + 暂不更新 + 可将左边的应用添加到学习桌面哦 + 注册号 + 字词挑战 + 自定义头像 + 中华宝典 + 暂停 + 中文图书馆 + 正在学习 + 正在验证身份 + Please wait… + WIFI连接 + 退\t出 + 设\t置 + pag/exp_baoxiang_ywc.pag + pag/exp_liwuhe_ywc.pag + \ No newline at end of file diff --git a/app/src/main/res/values/styles.xml b/app/src/main/res/values/styles.xml index ab89fa7..c35590c 100644 --- a/app/src/main/res/values/styles.xml +++ b/app/src/main/res/values/styles.xml @@ -109,4 +109,22 @@ @drawable/custom_radio_selector + + + + + + diff --git a/build.gradle b/build.gradle index 4419b55..273241b 100644 --- a/build.gradle +++ b/build.gradle @@ -3,11 +3,13 @@ buildscript { repositories { google() - mavenCentral() +// mavenCentral() maven { url "https://jitpack.io" } - maven { url 'http://developer.huawei.com/repo/' } - maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' } - maven { url 'http://maven.aliyun.com/nexus/content/repositories/releases/' } + maven { url 'https://developer.huawei.com/repo/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url "https://maven.aliyun.com/repository/jcenter" } + maven { url 'https://maven.aliyun.com/repository/public' } + maven { url 'https://maven.aliyun.com/repository/google' } } dependencies { @@ -26,11 +28,13 @@ allprojects { } repositories { google() - mavenCentral() +// mavenCentral() maven { url "https://jitpack.io" } - maven { url 'http://developer.huawei.com/repo/' } - maven { url 'http://maven.aliyun.com/nexus/content/repositories/jcenter' } - maven { url 'http://maven.aliyun.com/nexus/content/repositories/releases/' } + maven { url 'https://developer.huawei.com/repo/' } + maven { url 'https://maven.aliyun.com/repository/central' } + maven { url "https://maven.aliyun.com/repository/jcenter" } + maven { url 'https://maven.aliyun.com/repository/public' } + maven { url 'https://maven.aliyun.com/repository/google' } } gradle.projectsEvaluated { diff --git a/settings.gradle b/settings.gradle index 995e2e3..cf2eaba 100644 --- a/settings.gradle +++ b/settings.gradle @@ -1,2 +1,2 @@ include ':app', ':niceimageview', ':FlycoTabLayoutZ_Lib', ':verification-view', ':PhotoPreview' -rootProject.name='韩端桌面Lenovo' \ No newline at end of file +rootProject.name='九学王6_5桌面Lenovo' \ No newline at end of file