From 8d72ec1b07a4fe0863b41b1140a8c0e679867b93 Mon Sep 17 00:00:00 2001 From: lmw <125975490@qq.com> Date: 星期四, 03 四月 2025 17:44:29 +0800 Subject: [PATCH] save --- app/src/main/java/com/sinata/xqmuse/ui/SplashActivity.kt | 82 +++++++++++++++++++++++++++++++++-------- 1 files changed, 66 insertions(+), 16 deletions(-) diff --git a/app/src/main/java/com/sinata/xqmuse/ui/SplashActivity.kt b/app/src/main/java/com/sinata/xqmuse/ui/SplashActivity.kt index 2315c36..e765042 100644 --- a/app/src/main/java/com/sinata/xqmuse/ui/SplashActivity.kt +++ b/app/src/main/java/com/sinata/xqmuse/ui/SplashActivity.kt @@ -12,17 +12,22 @@ import androidx.core.os.bundleOf import cn.sinata.xldutils.activity.BaseActivity import cn.sinata.xldutils.utils.SPUtils +import com.amap.api.location.AMapLocationClient +import com.amap.apis.utils.core.api.AMapUtilCoreApi import com.sinata.xqmuse.MainActivity import com.sinata.xqmuse.R -import com.sinata.xqmuse.JkApplication +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.network.request -import com.sinata.xqmuse.ui.guide.GuideActivity 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 @@ -45,18 +50,21 @@ ) super.onCreate(savedInstanceState) setContentView(R.layout.activity_splash) -// getImg() + getImg() val data = intent.data if (data!=null){ val url = data.toString() Log.e("mmp","路径:${url}") - if (url.startsWith("jkfitness://jkcyl.cn?code=")){ - code = url.substring(url.indexOf("=")+1) - Log.e("mmp","解析参数:code=${code}") - } +// if (url.startsWith("xqmuse://xqmuse.cn?mid=")){ //何健豪:不做跳转详情 +// code = url.substring(url.indexOf("=")+1) +// Log.e("mmp","解析参数:音频id=${code}") +// } } + AMapUtilCoreApi.setCollectInfoEnable(false) if (SPUtils.instance().getBoolean(Const.User.IS_AGREE)){ - startNext() + AMapLocationClient.updatePrivacyShow(this,true,true) + AMapLocationClient.updatePrivacyAgree(this,true) + checkNewVersion() }else{ getAgreement() } @@ -83,10 +91,12 @@ userRuleDialog.arguments = bundleOf("privacy" to privacy, "user" to user) userRuleDialog.setDismissCallback(object : UserRuleDialog.OnDismiss { override fun onDismiss() { - if (!SPUtils.instance().getBoolean(Const.User.IS_AGREE, false)) + if (!SPUtils.instance().getBoolean(Const.User.IS_AGREE, false)){ finish() - else - startNext() + AMapLocationClient.updatePrivacyShow(this@SplashActivity,true,true) + AMapLocationClient.updatePrivacyAgree(this@SplashActivity,true) + } else + checkNewVersion() } }) userRuleDialog.show(supportFragmentManager, "rule") @@ -95,7 +105,6 @@ private fun getImg() { val map = hashMapOf<String, Any>() - map["type"] = 1 HttpManager.queryString(Apis.querySystemImg,map).request(this){ _, data-> iv_img.setImageURI(data?:"") } @@ -142,17 +151,58 @@ return mm.replaceAll("") } - /*** * 判断是否第一次启动 */ private fun startNext(){ - (application as JkApplication).initSdk() + (application as XQApplication).initSdk() if (SPUtils.instance().getBoolean(Const.FIRST_LAUNCH,true)){ //第一次启动显示引导页 SPUtils.instance().put(Const.FIRST_LAUNCH,false).apply() - startActivity<GuideActivity>() + startActivity<MainActivity>("code" to code,"isFirst" to true) + finish() }else{ gotoMainOrLogin() + } + } + + /** + * 检查更新 + */ + 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" } } @@ -160,7 +210,7 @@ * 跳转下一步 */ private fun gotoMainOrLogin(){ - object : CountDownTimer(2000, 500) { + object : CountDownTimer(1500, 500) { override fun onFinish() { startActivity<MainActivity>("code" to code) finish() -- Gitblit v1.7.1