From f10cda784bede39a861566850898747c38e6c94f Mon Sep 17 00:00:00 2001 From: wjc <1243177876@qq.com> Date: 星期二, 21 一月 2025 15:32:54 +0800 Subject: [PATCH] 2025年01月21日15:31:52 --- app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java | 233 ++++++++++++++++++++++++++++++++++++--------------------- 1 files changed, 147 insertions(+), 86 deletions(-) diff --git a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java index e1ab804..f4a5ad6 100644 --- a/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java +++ b/app/src/main/java/com/hdl/photovoltaic/ui/powerstation/HouseAndDeviceFragment.java @@ -1,11 +1,20 @@ package com.hdl.photovoltaic.ui.powerstation; +import android.Manifest; +import android.app.Dialog; +import android.content.Context; +import android.content.DialogInterface; import android.content.Intent; import android.content.pm.PackageManager; +import android.location.LocationManager; import android.os.Bundle; +import android.os.SystemClock; +import android.provider.Settings; +import android.util.Log; import android.view.View; -import android.widget.LinearLayout; -import android.widget.TextView; +import android.view.Window; +import android.widget.ImageView; +import android.widget.RelativeLayout; import androidx.annotation.NonNull; import androidx.appcompat.content.res.AppCompatResources; @@ -15,9 +24,11 @@ import com.google.gson.Gson; import com.hdl.linkpm.sdk.core.exception.HDLException; +import com.hdl.photovoltaic.HDLApp; import com.hdl.photovoltaic.R; import com.hdl.photovoltaic.bean.PageNumberObject; import com.hdl.photovoltaic.config.ConstantManage; +import com.hdl.photovoltaic.config.UserConfigManage; import com.hdl.photovoltaic.databinding.FragmentHouseListBinding; import com.hdl.photovoltaic.base.CustomBaseFragment; import com.hdl.photovoltaic.enums.HomepageTitleTabSwitch; @@ -28,9 +39,12 @@ import com.hdl.photovoltaic.enums.SortValue; import com.hdl.photovoltaic.listener.CloudCallBeak; import com.hdl.photovoltaic.listener.LinkCallBack; +import com.hdl.photovoltaic.listener.OnCallBeak; import com.hdl.photovoltaic.other.HdlCommonLogic; import com.hdl.photovoltaic.other.HdlDeviceLogic; +import com.hdl.photovoltaic.other.HdlDialogLogic; import com.hdl.photovoltaic.other.HdlLogLogic; +import com.hdl.photovoltaic.other.HdlOtaLogic; import com.hdl.photovoltaic.other.HdlResidenceLogic; import com.hdl.photovoltaic.other.HdlThreadLogic; import com.hdl.photovoltaic.other.HdlUniLogic; @@ -40,8 +54,11 @@ import com.hdl.photovoltaic.ui.bean.HouseIdBean; import com.hdl.photovoltaic.ui.bean.StatusOverviewBean; import com.hdl.photovoltaic.uni.HDLUniMP; +import com.hdl.photovoltaic.utils.GPSManagerUtils; import com.hdl.photovoltaic.utils.PermissionUtils; +import com.hdl.photovoltaic.utils.ProcessManagerUtils; import com.hdl.photovoltaic.utils.URLEncodingUtils; +import com.hdl.photovoltaic.widget.ConfirmationCancelDialog; import com.hdl.photovoltaic.widget.DefaultFilteringDialog; import com.hdl.photovoltaic.widget.DelayedConfirmationCancelDialog; import com.hdl.sdk.link.common.exception.HDLLinkException; @@ -148,38 +165,50 @@ } }); //鍏ㄩ儴 - viewBinding.powerStationAllIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.allLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.All; - selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //鏁呴殰 - viewBinding.powerStationFaultsIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.faultsLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.malfunction; - selectedStationStateStyle(viewBinding.powerStationFaultsIl.parentLl, viewBinding.powerStationFaultsIl.stationTotalTv, viewBinding.powerStationFaultsIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //绂荤嚎 - viewBinding.powerStationOfflineIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.offlineLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.off; - selectedStationStateStyle(viewBinding.powerStationOfflineIl.parentLl, viewBinding.powerStationOfflineIl.stationTotalTv, viewBinding.powerStationOfflineIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); //寰呮帴鍏� - viewBinding.powerStationConnectedIl.parentLl.setOnClickListener(new View.OnClickListener() { + viewBinding.connectedLl.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { powerStationStatusValue = PowerStationStatus.connecting; - selectedStationStateStyle(viewBinding.powerStationConnectedIl.parentLl, viewBinding.powerStationConnectedIl.stationTotalTv, viewBinding.powerStationConnectedIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff)); loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); } }); @@ -188,7 +217,14 @@ viewBinding.addIv.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { - HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null); + + requestPermissions(new OnCallBeak() { + @Override + public void onClickCallBeak() { +// UserConfigManage.getInstance().setUniBottomSafeDistanceBackgroundColor(1); +// HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null); + } + }); } }); @@ -258,11 +294,11 @@ @Override public void onClick(int position, HouseIdBean houseIdBean) { //鐐瑰嚮浣忓畢璇︽儏 - HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏---" + new Gson().toJson(houseIdBean), false); - HdlResidenceLogic.getInstance().switchHouse(houseIdBean); + UserConfigManage.getInstance().setUniBottomSafeDistanceBackgroundColor(0); + HdlResidenceLogic.getInstance().switchHouse(houseIdBean, true); String path = HDLUniMP.UNI_EVENT_OPEN_HOME_DETAILS + "?homeId=" + houseIdBean.getHomeId() + "&homeName=" + houseIdBean.getHomeName() + "&powerStationStatus=" + houseIdBean.getPowerStationStatus(); HdlUniLogic.getInstance().openUniMP(path, null); - + HdlLogLogic.print("鐐瑰嚮浣忓畢璇︽儏---" + new Gson().toJson(houseIdBean), false); } @Override @@ -362,8 +398,7 @@ @Override public void onClick(View v) { boolean isSelected = !v.isSelected(); - viewBinding.stationNameRl.setSelected(isSelected); - viewBinding.stationNameIv.setSelected(isSelected); + screenIconState(viewBinding.stationNameRl, viewBinding.stationNameIv, isSelected); key = SortType.homeNameSort; value = isSelected ? SortValue.ascending : SortValue.descending; loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -374,8 +409,7 @@ @Override public void onClick(View v) { boolean isSelected = !v.isSelected(); - viewBinding.stationPowerRl.setSelected(isSelected); - viewBinding.stationPowerIv.setSelected(isSelected); + screenIconState(viewBinding.stationPowerRl, viewBinding.stationPowerIv, isSelected); key = SortType.powerSort; value = isSelected ? SortValue.ascending : SortValue.descending; loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -386,8 +420,7 @@ @Override public void onClick(View v) { boolean isSelected = !v.isSelected(); - viewBinding.stationDayRl.setSelected(isSelected); - viewBinding.stationDayIv.setSelected(isSelected); + screenIconState(viewBinding.stationDayRl, viewBinding.stationDayIv, isSelected); key = SortType.todayElectricitySort; value = isSelected ? SortValue.ascending : SortValue.descending; loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -398,8 +431,7 @@ @Override public void onClick(View v) { boolean isSelected = !v.isSelected(); - viewBinding.stationMonthRl.setSelected(isSelected); - viewBinding.stationMonthIv.setSelected(isSelected); + screenIconState(viewBinding.stationMonthRl, viewBinding.stationMonthIv, isSelected); key = SortType.monthElectricitySort; value = isSelected ? SortValue.ascending : SortValue.descending; loadNextPageHouseList(true, key, value, installedCapacityMinValue, installedCapacityMaxValue, gridTypeValue, powerStationStatusValue, 1, true); @@ -493,16 +525,33 @@ } + /** + * 鏇存柊绛涢�夋潯浠剁姸鎬� + * + * @param relativeLayout 缁勪欢鍚嶇О + * @param imageView 缁勪欢鍚嶇О + * @param isSelected 鐘舵�� + */ + private void screenIconState(RelativeLayout relativeLayout, ImageView imageView, boolean isSelected) { + viewBinding.stationNameRl.setSelected(false); + viewBinding.stationNameIv.setSelected(false); + viewBinding.stationPowerRl.setSelected(false); + viewBinding.stationPowerIv.setSelected(false); + viewBinding.stationDayRl.setSelected(false); + viewBinding.stationDayIv.setSelected(false); + viewBinding.stationMonthRl.setSelected(false); + viewBinding.stationMonthIv.setSelected(false); + relativeLayout.setSelected(isSelected); + imageView.setSelected(isSelected); + } + private void initView() { viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE); viewBinding.deviceLabelParent.setVisibility(View.GONE); - - viewBinding.powerStationAllIl.stationTitleTv.setText(getString(R.string.message_all)); - viewBinding.powerStationFaultsIl.stationTitleTv.setText(getString(R.string.my_power_station_malfunction)); - viewBinding.powerStationOfflineIl.stationTitleTv.setText(getString(R.string.my_power_station_off_line)); - viewBinding.powerStationConnectedIl.stationTitleTv.setText(getString(R.string.to_be_added)); - - selectedStationStateStyle(viewBinding.powerStationAllIl.parentLl, viewBinding.powerStationAllIl.stationTotalTv, viewBinding.powerStationAllIl.stationTitleTv, true); + viewBinding.allLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_yes_ffffff)); + viewBinding.faultsLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.offlineLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); + viewBinding.connectedLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); //鐢电珯鏍囩 houseInfoAdapter = new HouseInfoAdapter(_mActivity); viewBinding.fragmentHouseSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity)); @@ -513,7 +562,7 @@ deviceInfoAdapter = new DeviceInfoAdapter(_mActivity); viewBinding.fragmentDeviceSrlListRc.setLayoutManager(new LinearLayoutManager(_mActivity)); viewBinding.fragmentDeviceSrlListRc.setAdapter(deviceInfoAdapter); - this.nullDataUpdateUi(); +// this.nullDataUpdateUi(); } @@ -522,8 +571,8 @@ */ private void selectedTitleLabelStyle() { if (isClickPowerStationLabel) { - viewBinding.powerStationLabel.setTextAppearance(R.style.Text20Style); - viewBinding.deviceLabel.setTextAppearance(R.style.Text16Style); + viewBinding.powerStationLabel.setTextAppearance(R.style.Text18Style); + viewBinding.deviceLabel.setTextAppearance(R.style.Text14Style); // viewBinding.editIv.setVisibility(View.VISIBLE);//缂栬緫鍥炬爣闅愯棌 viewBinding.addIv.setVisibility(View.VISIBLE);//娣诲姞鍥炬爣闅愯棌 viewBinding.powerStationLabelParent.setVisibility(View.VISIBLE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戞樉绀� @@ -532,8 +581,8 @@ viewBinding.deviceNullDataIc.getRoot().setVisibility(View.GONE); } } else { - viewBinding.deviceLabel.setTextAppearance(R.style.Text20Style); - viewBinding.powerStationLabel.setTextAppearance(R.style.Text16Style); + viewBinding.deviceLabel.setTextAppearance(R.style.Text18Style); + viewBinding.powerStationLabel.setTextAppearance(R.style.Text14Style); // viewBinding.editIv.setVisibility(View.GONE);//缂栬緫鍥炬爣闅愯棌 viewBinding.addIv.setVisibility(View.GONE);//娣诲姞鍥炬爣闅愯棌 viewBinding.powerStationLabelParent.setVisibility(View.GONE);//鐢电珯鏍囩銆愮埗瀹瑰櫒銆戦殣钘� @@ -545,40 +594,6 @@ } - /** - * 鏄剧ず閫変腑鐘舵�佹牱寮� - * - * @param linearLayout 缁勪欢 - * @param numberTv 缁勪欢 - * @param titleTv 缁勪欢 - * @param isShowSelectedStatus 鏄惁鏄剧ず鐘舵�佹牱寮� - */ - private void selectedStationStateStyle(LinearLayout linearLayout, TextView numberTv, TextView titleTv, boolean isShowSelectedStatus) { - viewBinding.powerStationAllIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); - viewBinding.powerStationFaultsIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); - viewBinding.powerStationOfflineIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); - viewBinding.powerStationConnectedIl.parentLl.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.station_status_no_ffffff)); - - viewBinding.powerStationAllIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationAllIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationFaultsIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationFaultsIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationOfflineIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationOfflineIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - viewBinding.powerStationConnectedIl.stationTotalTv.setTextColor(getResources().getColor(R.color.text_E6000000, null)); - viewBinding.powerStationConnectedIl.stationTitleTv.setTextColor(getResources().getColor(R.color.text_66000000, null)); - - - if (isShowSelectedStatus) { - linearLayout.setBackground(AppCompatResources.getDrawable(_mActivity, R.drawable.selected_8_38c494)); - numberTv.setTextColor(getResources().getColor(R.color.text_FFFFFFFF, null)); - titleTv.setTextColor(getResources().getColor(R.color.text_FFFFFFFF, null)); - } - - } private void initData() { if (isClickPowerStationLabel) { @@ -610,7 +625,7 @@ Gson gson = new Gson(); String json = eventBus.getData().toString(); HouseIdBean houseIdBean = gson.fromJson(json, HouseIdBean.class); - HdlResidenceLogic.getInstance().switchHouse(houseIdBean); + HdlResidenceLogic.getInstance().switchHouse(houseIdBean, true); } } else if (HDLUniMP.UNI_EVENT_REPLY_HOME_EDIT.equals(eventBus.getType())) { @@ -697,19 +712,19 @@ if (eventBus.getData().equals(PowerStationStatus.All)) { isClickPowerStationLabel = true; selectedTitleLabelStyle(); - viewBinding.powerStationAllIl.parentLl.performClick(); + viewBinding.allLl.performClick(); } else if (eventBus.getData().equals(PowerStationStatus.malfunction)) { isClickPowerStationLabel = true; selectedTitleLabelStyle(); - viewBinding.powerStationFaultsIl.parentLl.performClick(); + viewBinding.faultsLl.performClick(); } else if (eventBus.getData().equals(PowerStationStatus.off)) { isClickPowerStationLabel = true; selectedTitleLabelStyle(); - viewBinding.powerStationOfflineIl.parentLl.performClick(); + viewBinding.offlineLl.performClick(); } else if (eventBus.getData().equals(PowerStationStatus.connecting)) { isClickPowerStationLabel = true; selectedTitleLabelStyle(); - viewBinding.powerStationConnectedIl.parentLl.performClick(); + viewBinding.connectedLl.performClick(); } } else if (eventBus.getType().equals(ConstantManage.station_edit)) { //缂栬緫鍚庢洿鏂颁竴涓嬩綇瀹呭垪琛� @@ -735,10 +750,10 @@ if (statusOverviewBean == null) { return; } - viewBinding.powerStationAllIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal())); - viewBinding.powerStationFaultsIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault())); - viewBinding.powerStationOfflineIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); - viewBinding.powerStationConnectedIl.stationTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting())); + viewBinding.allTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getTotal())); + viewBinding.faultsTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getFault())); + viewBinding.offlineTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getOffline())); + viewBinding.connectedTotalTv.setText(HdlCommonLogic.convertString(statusOverviewBean.getConnecting())); } @Override @@ -1001,13 +1016,18 @@ if (requestCode == PermissionUtils.STATUS_SUCCESS) { for (int i = 0; i < permissions.length; i++) { if (grantResults[i] == PackageManager.PERMISSION_GRANTED) { - if (mPermissionsResultCallback != null) { - mPermissionsResultCallback.succeed(); + switch (permissions[i]) { + case Manifest.permission.ACCESS_FINE_LOCATION: { + UserConfigManage.getInstance().setUniBottomSafeDistanceBackgroundColor(1); + HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null); + locationUpdates(); + } + break; } + } else { - if (mPermissionsResultCallback != null) { - mPermissionsResultCallback.failing(); - } + HdlDialogLogic.getInstance().showSettingPermissionDialog(_mActivity, _mActivity.getString(R.string.set_location_permissions)); + break; } } @@ -1015,16 +1035,57 @@ } + public void requestPermissions(OnCallBeak onCallBeak) { - private PermissionsResultCallback mPermissionsResultCallback; + //ACCESS_FINE_LOCATION 鍏佽浣跨敤GPS瀹氫綅 + //ACCESS_COARSE_LOCATION 鍏佽浣跨敤WIFI鐑偣鎴栧熀绔欐潵鑾峰彇绮楃暐鐨勫畾浣� + String[] ary = PermissionUtils.checkPermission(_mActivity, new String[]{Manifest.permission.ACCESS_FINE_LOCATION, Manifest.permission.ACCESS_COARSE_LOCATION}); + if (ary.length > 0) { + this.requestPermissions(ary, PermissionUtils.STATUS_SUCCESS); + } else { - public interface PermissionsResultCallback { + UserConfigManage.getInstance().setUniBottomSafeDistanceBackgroundColor(1); + HdlUniLogic.getInstance().openUniMP(HDLUniMP.UNI_EVENT_OPEN_HOME_CREATION, null); + locationUpdates(); - void succeed(); - void failing(); + } } + /** + * 鍒濆鍖栥�愬紑鍚畾浣嶃�戝拰銆愪綅缃俊鎭�戞潈闄� + */ + private void locationUpdates() { + // 鍒濆鍖朙ocationManager瀵硅薄 + LocationManager locationManager = (LocationManager) _mActivity.getSystemService(Context.LOCATION_SERVICE); + GPSManagerUtils.getInstance().getLocation(_mActivity); + // 鍒ゆ柇璁惧鏄惁鏀寔瀹氫綅鍔熻兘 + if (!locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { + // 鎻愮ず鐢ㄦ埛鎵撳紑瀹氫綅鍔熻兘鎴栬�呭紩瀵肩敤鎴峰幓绯荤粺璁剧疆椤甸潰鎵撳紑瀹氫綅鍔熻兘 + ConfirmationCancelDialog confirmationCancelDialog = new ConfirmationCancelDialog(_mActivity); + confirmationCancelDialog.setContent(getString(R.string.system_positioning_switch)); + confirmationCancelDialog.setConfirmation(getString(R.string.go_to_settings)); + confirmationCancelDialog.show(); + confirmationCancelDialog.isHideTitle(true); + confirmationCancelDialog.setYesOnclickListener(new ConfirmationCancelDialog.onYesOnclickListener() { + @Override + public void Confirm() { + confirmationCancelDialog.dismiss(); + Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS); + intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + HDLApp.getInstance().startActivity(intent); + } + }); + confirmationCancelDialog.setNoOnclickListener(new ConfirmationCancelDialog.onNoOnclickListener() { + @Override + public void Cancel() { + confirmationCancelDialog.dismiss(); + } + }); + + } + + } } -- Gitblit v1.8.0