| | |
| | | import cn.sinata.xldutils.gone |
| | | import cn.sinata.xldutils.ioScheduler |
| | | import cn.sinata.xldutils.rxutils.ResultException |
| | | import cn.sinata.xldutils.utils.SpanBuilder |
| | | import cn.sinata.xldutils.utils.myToast |
| | | import cn.sinata.xldutils.utils.optInt |
| | | import cn.sinata.xldutils.utils.toTime |
| | | import cn.sinata.xldutils.utils.* |
| | | import cn.sinata.xldutils.visible |
| | | import com.amap.api.location.AMapLocationClient |
| | | import com.amap.api.location.AMapLocationClientOption |
| | |
| | | mMapView.onCreate(savedInstanceState) |
| | | getNotice() |
| | | getBottomAds() |
| | | initMap() |
| | | getRxPermission { |
| | | initMap() |
| | | initLocation() |
| | | } |
| | | initTab() |
| | |
| | | } |
| | | |
| | | fun getRxPermission(function: () -> Unit) { |
| | | val disposable = |
| | | RxPermissions(activity!!).request(Manifest.permission.ACCESS_FINE_LOCATION) |
| | | .subscribe { |
| | | if (it) { |
| | | function() |
| | | } else { |
| | | function() |
| | | myToast("没有定位权限") |
| | | if (!RxPermissions(requireActivity()).isGranted(Manifest.permission.ACCESS_FINE_LOCATION) //没有权限且明确拒绝就不再申请权限 |
| | | && SPUtils.instance().getBoolean(Const.User.IS_REFUSE_PERMISSION_LOCATION)){ |
| | | function() |
| | | // myToast("没有定位权限") |
| | | }else{ |
| | | val disposable = |
| | | RxPermissions(activity!!).request(Manifest.permission.ACCESS_FINE_LOCATION) |
| | | .subscribe { |
| | | if (it) { |
| | | function() |
| | | } else { |
| | | SPUtils.instance().put(Const.User.IS_REFUSE_PERMISSION_LOCATION,true).apply() |
| | | function() |
| | | } |
| | | } |
| | | } |
| | | onBindHelper(disposable) |
| | | onBindHelper(disposable) |
| | | } |
| | | } |
| | | |
| | | private var locCount = 0L //定位次数 |
| | |
| | | val myLocationStyle = MyLocationStyle() |
| | | myLocationStyle.strokeColor(resources.getColor(R.color.colorBrown)) |
| | | myLocationStyle.radiusFillColor(resources.getColor(R.color.colorTransBrown)) |
| | | myLocationStyle.interval(3000) |
| | | myLocationStyle.interval(10000) |
| | | myLocationStyle.anchor(0.5f, 0.5f) |
| | | myLocationStyle.myLocationType(MyLocationStyle.LOCATION_TYPE_LOCATION_ROTATE_NO_CENTER)// |
| | | myLocationStyle.myLocationIcon(BitmapDescriptorFactory.fromResource(R.mipmap.icon_coordinate)) |
| | |
| | | FBApplication.address = it.address |
| | | FBApplication.cityCode = it.extras.getString("adcode") ?: "" |
| | | if (locCount < 1) { |
| | | Log.e(Const.Tag, "首页:lat:" + mainActivity.lat + ",lon:" + mainActivity.lon) |
| | | if (mainActivity.lat != 0.0) |
| | | aMap.animateCamera( |
| | | CameraUpdateFactory.newLatLngZoom( |