| | |
| | | import com.sinata.xqmuse.MainActivity |
| | | import com.sinata.xqmuse.R |
| | | import com.sinata.xqmuse.XQApplication |
| | | import com.sinata.xqmuse.dialog.TipDialog |
| | | import com.sinata.xqmuse.dialog.UserRuleDialog |
| | | import com.sinata.xqmuse.network.Apis |
| | | import com.sinata.xqmuse.network.HttpManager |
| | |
| | | import com.sinata.xqmuse.utils.Const |
| | | import com.umeng.commonsdk.UMConfigure |
| | | import kotlinx.android.synthetic.main.activity_splash.* |
| | | import org.jetbrains.anko.browse |
| | | import org.jetbrains.anko.startActivity |
| | | import org.jetbrains.anko.toast |
| | | import java.io.ByteArrayInputStream |
| | | import java.security.cert.CertificateException |
| | | import java.security.cert.CertificateFactory |
| | |
| | | if (SPUtils.instance().getBoolean(Const.User.IS_AGREE)){ |
| | | AMapLocationClient.updatePrivacyShow(this,true,true) |
| | | AMapLocationClient.updatePrivacyAgree(this,true) |
| | | startNext() |
| | | checkNewVersion() |
| | | }else{ |
| | | getAgreement() |
| | | } |
| | |
| | | AMapLocationClient.updatePrivacyShow(this@SplashActivity,true,true) |
| | | AMapLocationClient.updatePrivacyAgree(this@SplashActivity,true) |
| | | } else |
| | | startNext() |
| | | checkNewVersion() |
| | | } |
| | | }) |
| | | userRuleDialog.show(supportFragmentManager, "rule") |
| | |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 检查更新 |
| | | */ |
| | | private fun checkNewVersion() { |
| | | HttpManager.detailVersion().request(this,success = {_,data-> |
| | | if (data?.versionNo.isNullOrEmpty()||data!!.versionNo <= getAppVersion(this)?:"") //已经是新版本 |
| | | startNext() |
| | | else if (data.versionNo == SPUtils.instance().getString(Const.IGNORE_VERSION)){ //已手动跳过当前版本 |
| | | startNext() |
| | | }else |
| | | TipDialog.show(supportFragmentManager,data.remark,object : TipDialog.OnClickCallback{ |
| | | override fun onOk() { |
| | | browse(data.androidFile) |
| | | finish() |
| | | } |
| | | |
| | | override fun onCancel() { |
| | | SPUtils.instance().put(Const.IGNORE_VERSION,data?.versionNo).apply() |
| | | startNext() |
| | | } |
| | | },"立即更新","下次再说",false,"有新版本啦!") |
| | | }){_,_-> |
| | | startNext() |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * 获取版本号 |
| | | * @return 当前应用的版本号 |
| | | */ |
| | | private fun getAppVersion(context: Context): String? { |
| | | return try { |
| | | val manager = context.packageManager |
| | | val info = manager.getPackageInfo(context.packageName, 0) |
| | | info.versionName |
| | | } catch (e: Exception) { |
| | | e.printStackTrace() |
| | | "null" |
| | | } |
| | | } |
| | | |
| | | /*** |
| | | * 跳转下一步 |
| | | */ |
| | | private fun gotoMainOrLogin(){ |
| | | object : CountDownTimer(2000, 500) { |
| | | object : CountDownTimer(1500, 500) { |
| | | override fun onFinish() { |
| | | startActivity<MainActivity>("code" to code) |
| | | finish() |