From 6180e2986ca3c39262486458cee97e54d5f67450 Mon Sep 17 00:00:00 2001
From: 18034727885 <973609879@qq.com>
Date: 星期五, 24 七月 2026 15:18:16 +0800
Subject: [PATCH] 修复问题
---
app/src/main/java/com/igo/user/ui/SplashActivity.kt | 75 +++++++++++++++----------------------
1 files changed, 30 insertions(+), 45 deletions(-)
diff --git a/app/src/main/java/com/igo/user/ui/SplashActivity.kt b/app/src/main/java/com/igo/user/ui/SplashActivity.kt
index 27c5f77..4fc99a0 100644
--- a/app/src/main/java/com/igo/user/ui/SplashActivity.kt
+++ b/app/src/main/java/com/igo/user/ui/SplashActivity.kt
@@ -1,24 +1,18 @@
package com.igo.user.ui
import android.Manifest
-import android.content.pm.PackageManager
import android.os.Bundle
import android.os.CountDownTimer
import android.util.Log
import android.view.Window
import android.view.WindowManager
-import androidx.core.app.ActivityCompat
import androidx.core.os.bundleOf
+import cn.sinata.rxnetty.LogHelper
import cn.sinata.xldutils.activity.BaseActivity
import cn.sinata.xldutils.utils.SPUtils
import cn.sinata.xldutils.utils.myToast
import cn.sinata.xldutils.utils.optString
-import com.google.android.gms.maps.model.LatLng
-import com.google.gson.Gson
import com.igo.user.IGoApplication
-import com.igo.user.IGoApplication.Companion.currentLatLng
-import com.igo.user.IGoApplication.Companion.lat
-import com.igo.user.IGoApplication.Companion.lon
import com.igo.user.R
import com.igo.user.dialog.UserRuleDialog
import com.igo.user.network.HttpManager
@@ -28,6 +22,7 @@
import com.igo.user.ui.HomeActivity.Companion.lonHome
import com.igo.user.utils.Const
import com.igo.user.utils.google.AMapKit
+import com.tbruyelle.rxpermissions2.RxPermissions
import com.twitter.sdk.android.core.DefaultLogger
import com.twitter.sdk.android.core.Twitter
import com.twitter.sdk.android.core.TwitterAuthConfig
@@ -106,14 +101,15 @@
}
private fun requestLocation() {
- if (ActivityCompat.checkSelfPermission(
- this,
- Manifest.permission.ACCESS_FINE_LOCATION
- ) == PackageManager.PERMISSION_GRANTED
- ) {
- initLocationOption()
- } else {
- startMain(false)
+ val subscribe = RxPermissions(this).request(
+ Manifest.permission.ACCESS_FINE_LOCATION,
+ Manifest.permission.ACCESS_COARSE_LOCATION
+ ).subscribe {
+ if (it) {
+ initLocationOption()
+ } else {
+ startMain(false)
+ }
}
}
@@ -121,34 +117,26 @@
* 高德定位设置
*/
private fun initLocationOption() {
- // zmc-remark 测试代码 给个初始位置
-// lat = 30.659221715540937
-// lon = 104.06676612263988
-// IGoApplication.chooseCityName = "成都"
-// IGoApplication.chooseCountry = "CN"
-// func.add(Function(1, getString(R.string.专车)))
-// func.add(Function(4, getString(R.string.快件)))
-
- currentLatLng = LatLng(lat, lon)
AMapKit.initLocation(this, success = {
- lat = it.latLng?.latitude ?: 0.0
- lon = it.latLng?.longitude ?: 0.0
- currentLatLng = LatLng(lat, lon)
-// ToastUtils.showLong("定位成功 lat = $lat , lon = $lon")
+ val latLng = it.latLng
+ if (latLng == null) {
+ myToast(getString(R.string.定位失败))
+ LogHelper.logRecord("定位失败")
+ startMain(false)
+ return@initLocation
+ }
+ LogHelper.logRecord("定位成功:latitude=${latLng.latitude} longitude=${latLng.longitude}")
+ IGoApplication.setLocation(latLng)
- latHome = it.latLng?.latitude ?: 0.0
- lonHome = it.latLng?.longitude ?: 0.0
+ latHome = latLng.latitude
+ lonHome = latLng.longitude
- Log.e("定位==============》", "${latHome},${lonHome}")
- Log.i("zmc-test", "initLocationOption: lat = $lat , lon = $lon")
-
- Log.e("城市", ("城市" + lonHome))
- HttpManager.isOpenCity(lat.toString(), lon.toString())
+ HttpManager.isOpenCity(latLng.latitude.toString(), latLng.longitude.toString())
.request(this, success = { _, data ->
data?.run {
- Log.i("zmc-test", "initLocationOption: ${Gson().toJson(data)}")
+ LogHelper.logRecord("城市信息: $it")
- if (!optString("name").isNullOrEmpty()) {//当前城市属于已开通城市
+ if (optString("name").isNotEmpty()) {//当前城市属于已开通城市
IGoApplication.chooseCityName = optString("name")
Log.e("城市", ("城市" + optString("name")))
@@ -160,22 +148,19 @@
func.add(Function(4, getString(R.string.快件)))
startMain(true)
} else {//未开通
- Log.e("zmc-test", "initLocationOption: 当前城市未开通")
+ LogHelper.logRecord("当前城市未开通")
myToast(getString(R.string.当前城市未开通))
startMain(false)
}
}
}, error = { code, msg ->
- Log.e("zmc-test", "initLocationOption: code = $code , msg = $msg")
+ LogHelper.logRecord("查询开通城市: code = $code , msg = $msg")
startMain(false)
})
}) {
-// ToastUtils.showLong("定位失败 $it")
- if (!isFinishing) {
- myToast(getString(R.string.定位失败))
- Log.e("zmc-test", "initLocationOption: 定位失败")
- startMain(false)
- }
+ myToast(getString(R.string.定位失败))
+ LogHelper.logRecord("定位失败")
+ startMain(false)
}
startTimer() //开启时间检查,5秒没走完就直接进首页选择城市
}
--
Gitblit v1.7.1