package com.grkj.iscs_mars import android.app.Application import android.content.Context import androidx.multidex.MultiDex import com.grkj.iscs_mars.ble.BleUtil import com.grkj.iscs_mars.extentions.serialNo import com.grkj.iscs_mars.model.Token import com.grkj.iscs_mars.util.ArcSoftUtil import com.grkj.iscs_mars.util.Executor import com.grkj.iscs_mars.util.FileUtil import com.grkj.iscs_mars.util.FileUtil.LOG_DIR import com.grkj.iscs_mars.util.MyCrashHandler import com.grkj.iscs_mars.util.NetApi import com.grkj.iscs_mars.util.NetHttpManager import com.grkj.iscs_mars.util.SPUtils import com.grkj.iscs_mars.util.log.LogUtil import com.sik.cronjob.managers.CronJobManager import com.sik.sikcore.SIKCore class MyApplication : Application() { companion object { var instance: MyApplication? = null /** * 任务管理器 */ val cronJobManager: CronJobManager by lazy { CronJobManager.getInstance(instance!!) } } override fun onCreate() { super.onCreate() instance = this SIKCore.init(this) // LogUtil.init(instance!!, FileUtil.ROOT_APP + FileUtil.LOG_DIR) // 路径:sdcard/Android/data/com.grkj.iscs/files/iscs/log LogUtil.init(this, "${FileUtil.getRootFolder(this)?.absolutePath}$LOG_DIR") BleUtil.instance?.initBle(this) NetHttpManager.getInstance().initCtx(this) BusinessManager.initMsgEventBus() ArcSoftUtil.checkActiveStatus(SIKCore.getApplication()) ArcSoftUtil.initEngine(SIKCore.getApplication()) NetApi.logout() SPUtils.clearLoginUser(this) Token.clear(this) Executor.runOnIO { BusinessManager.registerMainListener() } LogUtil.i("App start : ${serialNo()}") Thread.setDefaultUncaughtExceptionHandler(MyCrashHandler()) } override fun attachBaseContext(base: Context?) { super.attachBaseContext(base) MultiDex.install(base) } }