Ver código fonte

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

20241218TB223FC(测试jar包)
wangwanlei 9 meses atrás
pai
commit
65a52c562f

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

@@ -0,0 +1,33 @@
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 Ver arquivo

@@ -133,4 +133,11 @@ object UriAdress {
133 133
      * 设备--解除锁定(锁定后,本地输入密码校验通过后调用)
134 134
      */
135 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 Ver arquivo

@@ -3,6 +3,7 @@ package com.xhly.manageapp.ui.login.netservice
3 3
 import com.xhly.corelib.network.bean.ResponseData
4 4
 import com.xhly.manageapp.bean.login.CheckLoginBean
5 5
 import com.xhly.manageapp.bean.login.LoginBean
6
+import com.xhly.manageapp.bean.scheme.AutoAppBean
6 7
 import com.xhly.manageapp.bean.user.UserBean
7 8
 import com.xhly.manageapp.network.UriAdress
8 9
 import retrofit2.http.Body
@@ -79,4 +80,10 @@ interface LoginService {
79 80
      */
80 81
     @POST(UriAdress.EDIT_UNLOCK)
81 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 Ver arquivo

@@ -76,6 +76,7 @@ import com.xhly.manageapp.utils.CustomAppUtils
76 76
 import com.xhly.manageapp.utils.InstallUtils
77 77
 import com.xhly.manageapp.utils.PadInfoUtils
78 78
 import com.xhly.manageapp.utils.StrategyUtils
79
+import com.xhly.manageapp.utils.ZJAPPUtils
79 80
 import com.xhly.manageapp.workmanager.TimingWorker
80 81
 import kotlinx.coroutines.Dispatchers
81 82
 import kotlinx.coroutines.launch
@@ -404,6 +405,12 @@ class MainActivity : BaseActivity<MainViewModel, ActivityMainBinding>(),Download
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 414
         startWorkManager()
408 415
         lastTimeLong=System.currentTimeMillis()
409 416
         updateAllStrategy()
@@ -561,6 +568,9 @@ class MainActivity : BaseActivity<MainViewModel, ActivityMainBinding>(),Download
561 568
     override fun onResume() {
562 569
         super.onResume()
563 570
         Const.backNum++
571
+        userBean?.let {
572
+            viewModel.postAutoAppDetail(it.regionid)
573
+        }
564 574
         if (mainLockFlag&&lastTimeLong+10*60*1000<System.currentTimeMillis()){
565 575
             //如果时锁定状态进入这个页面则请求一次策略,限制为10分钟
566 576
             lastTimeLong=System.currentTimeMillis()

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

@@ -9,6 +9,7 @@ import com.xhly.manageapp.bean.log.LogEventBean
9 9
 import com.xhly.manageapp.bean.log.LogPushBean
10 10
 import com.xhly.manageapp.bean.log.LogPushResultBean
11 11
 import com.xhly.manageapp.bean.log.LogdOperateBean
12
+import com.xhly.manageapp.bean.scheme.AutoAppBean
12 13
 import com.xhly.manageapp.network.log.LogService
13 14
 import com.xhly.manageapp.ui.login.netservice.LoginService
14 15
 
@@ -29,6 +30,8 @@ open class BaseViewModel : CommonBaseViewModel() {
29 30
     val logResultData:LiveData<LogPushResultBean> =logResult
30 31
     private val logEventResult=MutableLiveData<LogEventBean>()
31 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,4 +168,21 @@ open class BaseViewModel : CommonBaseViewModel() {
165 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
 }

Carregando…
Cancelar
Salvar