Browse Source

优化因为权限问题导致华为无法上架

hy 1 year ago
parent
commit
771731cc38

+ 62 - 73
app/src/main/java/com/electric/chargingpile/activity/MainMapActivity.java

@ -1530,25 +1530,7 @@ public class MainMapActivity extends Activity implements LocationSource, AMapLoc
1530 1530
                        requestLocationPermission();
1531 1531
                    }
1532 1532
                } else { // 首次启动
1533
1534 1533
                    ProfileManager.getInstance().setStartedRequestLocationPermission(MainMapActivity.this, true);
1535
                    new LocationPermissionsDialog(context)
1536
                            .builder()
1537
                            .setMsg("需要确定您所在的城市,首页才能显示您所在的城市的站点信息,请您授权定位")
1538
                            .setLeftButton("取消",v -> {
1539
1540
                            })
1541
                            .setRightButton("确定",v->{
1542
                                EasyPermissions.requestPermissions(
1543
                                        this,
1544
                                        "为了定位您的位置,推荐充电桩,充电桩位置路线导航需要开启位置权限,是否前往开启?",
1545
                                        RC_Location_FIRST_PERM,
1546
                                        Manifest.permission.ACCESS_FINE_LOCATION,
1547
                                        Manifest.permission.ACCESS_COARSE_LOCATION
1548
                                );
1549
1550
                            }).show();
1551
1552 1534
                }
1553 1535
1554 1536
                if (hasLocationPermission()) {
@ -4412,73 +4394,80 @@ public class MainMapActivity extends Activity implements LocationSource, AMapLoc
4412 4394
4413 4395
    @Override
4414 4396
    public void onClick(Marker marker, List<ClusterItem> clusterItems) {
4415
        LatLngBounds.Builder builder = new LatLngBounds.Builder();
4416
        for (ClusterItem clusterItem : clusterItems) {
4417
            builder.include(clusterItem.getPosition());
4418
        }
4419
        //这里处理一下Marker的点击事件
4420
        if (clusterItems.size() == 1) {
4421
            MobclickAgent.onEvent(context, "0102");
4422
            Log.e(TAG, "onClick: !!" + "!!");
4423
            rl_control.setVisibility(View.GONE);
4424
            moveRefresh = false;
4425
            ClusterItem clusterItem = clusterItems.get(0);
4426
            markerPosition = clusterItem.getPosition();
4427
            RegionItem regionItem = (RegionItem) clusterItems.get(0);
4428
            zhan_list chargePoint = regionItem.getChargePoint();
4429
4430
            String own_pay = chargePoint.getOwn_pay();
4431
            String supplier = chargePoint.getSupplier();
4432
            String suit_car = chargePoint.getSuit_car();
4433
            if (null != own_pay && own_pay.equals("1")) {
4434
                marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig1));
4435
            } else {
4436
                if (null != suit_car && suit_car.equals("特斯拉")) {
4437
                    marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig3));
4397
        if (!hasLocationPermission()) {
4398
            requestLocationPermission();
4399
        }else{
4400
             LatLngBounds.Builder builder = new LatLngBounds.Builder();
4401
            for (ClusterItem clusterItem : clusterItems) {
4402
                builder.include(clusterItem.getPosition());
4403
            }
4404
            //这里处理一下Marker的点击事件
4405
            if (clusterItems.size() == 1) {
4406
                MobclickAgent.onEvent(context, "0102");
4407
                Log.e(TAG, "onClick: !!" + "!!");
4408
                rl_control.setVisibility(View.GONE);
4409
                moveRefresh = false;
4410
                ClusterItem clusterItem = clusterItems.get(0);
4411
                markerPosition = clusterItem.getPosition();
4412
                RegionItem regionItem = (RegionItem) clusterItems.get(0);
4413
                zhan_list chargePoint = regionItem.getChargePoint();
4414
4415
                String own_pay = chargePoint.getOwn_pay();
4416
                String supplier = chargePoint.getSupplier();
4417
                String suit_car = chargePoint.getSuit_car();
4418
                if (null != own_pay && own_pay.equals("1")) {
4419
                    marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig1));
4438 4420
                } else {
4439
                    if (null != supplier && WelcomeActivity.canCost.contains(supplier)) {
4440
                        marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig2));
4441
                    } else {
4421
                    if (null != suit_car && suit_car.equals("特斯拉")) {
4442 4422
                        marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig3));
4423
                    } else {
4424
                        if (null != supplier && WelcomeActivity.canCost.contains(supplier)) {
4425
                            marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig2));
4426
                        } else {
4427
                            marker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newbig3));
4428
                        }
4443 4429
                    }
4444 4430
                }
4445
            }
4446 4431
4447
//            Log.e(TAG, "onClick: " + own_pay + "=====" + supplier);
4448
            if (nMarker != null && current_chargePoint.getId() != chargePoint.getId()) {
4449
                MarkerOptions markerOptionss = new MarkerOptions();
4450
                if (null != current_chargePoint.getOwn_pay() && current_chargePoint.getOwn_pay().equals("1")) {
4451
                    nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker1));
4452
                } else {
4453
                    if (null != current_chargePoint.getSuit_car() && current_chargePoint.getSuit_car().equals("特斯拉")) {
4454
                        nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker3));
4432
    //            Log.e(TAG, "onClick: " + own_pay + "=====" + supplier);
4433
                if (nMarker != null && current_chargePoint.getId() != chargePoint.getId()) {
4434
                    MarkerOptions markerOptionss = new MarkerOptions();
4435
                    if (null != current_chargePoint.getOwn_pay() && current_chargePoint.getOwn_pay().equals("1")) {
4436
                        nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker1));
4455 4437
                    } else {
4456
                        if (null != current_chargePoint.getSupplier() && WelcomeActivity.canCost.contains(current_chargePoint.getSupplier())) {
4457
                            nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker2));
4458
                        } else {
4438
                        if (null != current_chargePoint.getSuit_car() && current_chargePoint.getSuit_car().equals("特斯拉")) {
4459 4439
                            nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker3));
4440
                        } else {
4441
                            if (null != current_chargePoint.getSupplier() && WelcomeActivity.canCost.contains(current_chargePoint.getSupplier())) {
4442
                                nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker2));
4443
                            } else {
4444
                                nMarker.setIcon(BitmapDescriptorFactory.fromResource(R.drawable.icon_newmarker3));
4445
                            }
4460 4446
                        }
4461 4447
                    }
4448
                    nMarker = aMap.addMarker(markerOptionss);
4462 4449
                }
4463
                nMarker = aMap.addMarker(markerOptionss);
4464
            }
4465
//            Log.d(TAG, "onClick: latitude=" + position.latitude + "   long=" + position.longitude + "\n" + ((RegionItem) clusterItem).getChargePoint().toString());
4466
            Long zhan_id = ((RegionItem) clusterItem).getChargePoint().getId();
4467
            nMarker = marker;
4468
4469
            zhanInfo = null;
4470
            // add by hyg 显示气泡
4471
            nMarker.showInfoWindow();
4472
4473
            current_chargePoint = chargePoint;
4474
            dialog.show();
4475
            if (null != marker.getPosition()) {
4476
                getSingleZhanInfo(String.valueOf(zhan_id), marker.getPosition());
4450
    //            Log.d(TAG, "onClick: latitude=" + position.latitude + "   long=" + position.longitude + "\n" + ((RegionItem) clusterItem).getChargePoint().toString());
4451
                Long zhan_id = ((RegionItem) clusterItem).getChargePoint().getId();
4452
                nMarker = marker;
4453
4454
                zhanInfo = null;
4455
                // add by hyg 显示气泡
4456
                nMarker.showInfoWindow();
4457
4458
                current_chargePoint = chargePoint;
4459
                dialog.show();
4460
                if (null != marker.getPosition()) {
4461
                    getSingleZhanInfo(String.valueOf(zhan_id), marker.getPosition());
4462
                }
4463
            } else {
4464
                LatLngBounds latLngBounds = builder.build();
4465
                aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0));
4477 4466
            }
4478
        } else {
4479
            LatLngBounds latLngBounds = builder.build();
4480
            aMap.animateCamera(CameraUpdateFactory.newLatLngBounds(latLngBounds, 0));
4481 4467
        }
4468
4469
4470
4482 4471
    }
4483 4472
4484 4473
    private void clickMarkAndMove(int adHeight) {