gps开启

This commit is contained in:
jia 2024-10-16 22:34:16 +08:00
parent a65d5e8ac5
commit ab483dba59
1 changed files with 48 additions and 1 deletions

View File

@ -9,9 +9,11 @@ import android.app.AlertDialog;
import android.app.Dialog;
import android.bluetooth.BluetoothDevice;
import android.bluetooth.BluetoothGatt;
import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.pm.PackageManager;
import android.location.LocationManager;
import android.os.Build;
import android.os.Bundle;
import android.os.CountDownTimer;
@ -141,7 +143,7 @@ public class NewBindDeviceActivity extends AppCompatActivity {
initTitle();
initView();
initListener();
initWifiName();
checkNet();
checkWifiUtil = new CheckWifiUtil();
airKissUtil = new AirKissUtil();
type = getIntent().getStringExtra("type");
@ -163,8 +165,49 @@ public class NewBindDeviceActivity extends AppCompatActivity {
currentDevice = getIntent().getParcelableExtra("device");
}
EventBus.getDefault().register(this);
}
void checkNet(){
if (checkGPSIsOpen(this)){
initWifiName();
}else {
AlertDialog.Builder dialog = new AlertDialog.Builder(this, AlertDialog.THEME_HOLO_LIGHT);
dialog.setCancelable(true);
dialog.setTitle("提示");
dialog.setMessage("为了获取手机连接的wifi名称请打开定位");
dialog.setNegativeButton("取消", (arg0, arg1) -> {
arg0.dismiss();
});
dialog.setPositiveButton("去打开", (dialog1, which) -> {
dialog1.dismiss();
Intent intent = new Intent(Settings.ACTION_LOCATION_SOURCE_SETTINGS);
startActivityForResult(intent, 101);
});
dialog.show();
}
}
public static boolean checkGPSIsOpen(Context context) {
LocationManager locationManager = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
//return locationManager.isProviderEnabled(android.location.LocationManager.GPS_PROVIDER);
// 通过GPS卫星定位定位级别可以精确到街通过24颗卫星定位在室外和空旷的地方定位准确速度快
boolean gps = locationManager.isProviderEnabled(LocationManager.GPS_PROVIDER);
// 通过WLAN或移动网络(3G/2G)确定的位置也称作AGPS辅助GPS定位主要用于在室内或遮盖物建筑群或茂密的深林等密集的地方定位
boolean network = locationManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
if(gps || network) {
return true;
}
return false;
}
private void initWifiName() {
WifiAdmin wifiAdmin = new WifiAdmin(this);
String wifissid = wifiAdmin.getSSID();
@ -1269,6 +1312,10 @@ public class NewBindDeviceActivity extends AppCompatActivity {
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
L.i(requestCode+"jjia--------result---"+resultCode);
L.i(requestCode+"jjia--------result-1--"+requestCode);
if (101== requestCode && 0==resultCode){
checkNet();
}
}
private void showDialog(String msg){
layoutLoading.setVisibility(View.VISIBLE);