Browse Source

1.添加app默认启动应用接口。

20241218TB223FC(测试jar包)
wangwanlei 9 months ago
parent
commit
65a52c562f

+ 33
- 0
app/src/main/java/com/xhly/manageapp/bean/scheme/AutoAppBean.kt View File

1
+package com.xhly.manageapp.bean.scheme
2
+
3
+class AutoAppBean {
4
+    /**
5
+     * 主键id
6
+     */
7
+    var autoaid:Long?=0L
8
+
9
+    /**
10
+     * 应用包名
11
+     */
12
+    var appPackage:String?=null
13
+
14
+    /**
15
+     * 认证页面地址
16
+     */
17
+    var authUrl:String?=null
18
+
19
+    /**
20
+     * 单点类型:1账号 2手机号 3身份证号
21
+     */
22
+    var singleType:String?=null
23
+
24
+    /**
25
+     * 是否启用1启用2禁用
26
+     */
27
+    var enabled:Int=0
28
+
29
+    /**
30
+     * 版本
31
+     */
32
+    var rversion:Long?=0L
33
+}

+ 7
- 0
app/src/main/java/com/xhly/manageapp/network/UriAdress.kt View File

133
      * 设备--解除锁定(锁定后,本地输入密码校验通过后调用)
133
      * 设备--解除锁定(锁定后,本地输入密码校验通过后调用)
134
      */
134
      */
135
     const val EDIT_UNLOCK="deviceAuth/edit_unlock"
135
     const val EDIT_UNLOCK="deviceAuth/edit_unlock"
136
+
137
+    /**
138
+     * 开机设置-启动应用-平板用户(根据这个接口启动指定应用)
139
+     */
140
+    const val AUTOAPP_DETAIL="/autoapp/detail_pad"
141
+
142
+
136
 }
143
 }

+ 7
- 0
app/src/main/java/com/xhly/manageapp/ui/login/netservice/LoginService.kt View File

3
 import com.xhly.corelib.network.bean.ResponseData
3
 import com.xhly.corelib.network.bean.ResponseData
4
 import com.xhly.manageapp.bean.login.CheckLoginBean
4
 import com.xhly.manageapp.bean.login.CheckLoginBean
5
 import com.xhly.manageapp.bean.login.LoginBean
5
 import com.xhly.manageapp.bean.login.LoginBean
6
+import com.xhly.manageapp.bean.scheme.AutoAppBean
6
 import com.xhly.manageapp.bean.user.UserBean
7
 import com.xhly.manageapp.bean.user.UserBean
7
 import com.xhly.manageapp.network.UriAdress
8
 import com.xhly.manageapp.network.UriAdress
8
 import retrofit2.http.Body
9
 import retrofit2.http.Body
79
      */
80
      */
80
     @POST(UriAdress.EDIT_UNLOCK)
81
     @POST(UriAdress.EDIT_UNLOCK)
81
     suspend fun postEditUnlock(@Body map:HashMap<String,Any>):ResponseData<Any>
82
     suspend fun postEditUnlock(@Body map:HashMap<String,Any>):ResponseData<Any>
83
+
84
+    /**
85
+     * 开机设置-启动应用-平板用户(根据这个接口启动指定应用)
86
+     */
87
+    @POST(UriAdress.AUTOAPP_DETAIL)
88
+    suspend fun postAutoAppDetail(@Body map: HashMap<String, Any>):ResponseData<AutoAppBean>
82
 }
89
 }

+ 10
- 0
app/src/main/java/com/xhly/manageapp/ui/main/activity/MainActivity.kt View File

76
 import com.xhly.manageapp.utils.InstallUtils
76
 import com.xhly.manageapp.utils.InstallUtils
77
 import com.xhly.manageapp.utils.PadInfoUtils
77
 import com.xhly.manageapp.utils.PadInfoUtils
78
 import com.xhly.manageapp.utils.StrategyUtils
78
 import com.xhly.manageapp.utils.StrategyUtils
79
+import com.xhly.manageapp.utils.ZJAPPUtils
79
 import com.xhly.manageapp.workmanager.TimingWorker
80
 import com.xhly.manageapp.workmanager.TimingWorker
80
 import kotlinx.coroutines.Dispatchers
81
 import kotlinx.coroutines.Dispatchers
81
 import kotlinx.coroutines.launch
82
 import kotlinx.coroutines.launch
404
                 }
405
                 }
405
             }
406
             }
406
         }
407
         }
408
+        viewModel.autoAppData.observe(this){
409
+            //连接不为空,并且应用已安装则跳转应用
410
+            if (it.authUrl!=null&&AppUtils.isAppInstalled(this,it.appPackage)){
411
+                ZJAPPUtils.openApk(this,it.appPackage)
412
+            }
413
+        }
407
         startWorkManager()
414
         startWorkManager()
408
         lastTimeLong=System.currentTimeMillis()
415
         lastTimeLong=System.currentTimeMillis()
409
         updateAllStrategy()
416
         updateAllStrategy()
561
     override fun onResume() {
568
     override fun onResume() {
562
         super.onResume()
569
         super.onResume()
563
         Const.backNum++
570
         Const.backNum++
571
+        userBean?.let {
572
+            viewModel.postAutoAppDetail(it.regionid)
573
+        }
564
         if (mainLockFlag&&lastTimeLong+10*60*1000<System.currentTimeMillis()){
574
         if (mainLockFlag&&lastTimeLong+10*60*1000<System.currentTimeMillis()){
565
             //如果时锁定状态进入这个页面则请求一次策略,限制为10分钟
575
             //如果时锁定状态进入这个页面则请求一次策略,限制为10分钟
566
             lastTimeLong=System.currentTimeMillis()
576
             lastTimeLong=System.currentTimeMillis()

+ 20
- 0
app/src/main/java/com/xhly/manageapp/viewmodel/BaseViewModel.kt View File

9
 import com.xhly.manageapp.bean.log.LogPushBean
9
 import com.xhly.manageapp.bean.log.LogPushBean
10
 import com.xhly.manageapp.bean.log.LogPushResultBean
10
 import com.xhly.manageapp.bean.log.LogPushResultBean
11
 import com.xhly.manageapp.bean.log.LogdOperateBean
11
 import com.xhly.manageapp.bean.log.LogdOperateBean
12
+import com.xhly.manageapp.bean.scheme.AutoAppBean
12
 import com.xhly.manageapp.network.log.LogService
13
 import com.xhly.manageapp.network.log.LogService
13
 import com.xhly.manageapp.ui.login.netservice.LoginService
14
 import com.xhly.manageapp.ui.login.netservice.LoginService
14
 
15
 
29
     val logResultData:LiveData<LogPushResultBean> =logResult
30
     val logResultData:LiveData<LogPushResultBean> =logResult
30
     private val logEventResult=MutableLiveData<LogEventBean>()
31
     private val logEventResult=MutableLiveData<LogEventBean>()
31
     val logEventData:LiveData<LogEventBean> =logEventResult
32
     val logEventData:LiveData<LogEventBean> =logEventResult
33
+    private val autoAppResult=MutableLiveData<AutoAppBean>()
34
+    val autoAppData:LiveData<AutoAppBean> =autoAppResult
32
     /**
35
     /**
33
      * 解除当前锁屏
36
      * 解除当前锁屏
34
      */
37
      */
165
             var postExitLocked = loginService.postEditUnlock(map)
168
             var postExitLocked = loginService.postEditUnlock(map)
166
         }
169
         }
167
     }
170
     }
171
+
172
+    /**
173
+     * 开机设置-启动应用-平板用户(根据这个接口启动指定应用)
174
+     */
175
+
176
+    fun postAutoAppDetail(regionid:Long){
177
+        launchUI {
178
+            val map=HashMap<String,Any>()
179
+            map["regionid"]=regionid
180
+            val result= loginService.postAutoAppDetail(map)
181
+            if (result.code==0){
182
+                result.obj.let {
183
+                    autoAppResult.value=it
184
+                }
185
+            }
186
+        }
187
+    }
168
 }
188
 }

Loading…
Cancel
Save