@@ -8,10 +8,8 @@ import android.telephony.TelephonyManager;
|
||||
import android.telephony.cdma.CdmaCellLocation;
|
||||
import android.telephony.gsm.GsmCellLocation;
|
||||
|
||||
import com.mogo.cloud.passport.MoGoAiCloudClientConfig;
|
||||
import com.mogo.commons.AbsMogoApplication;
|
||||
import com.mogo.commons.debug.DebugConfig;
|
||||
import com.mogo.eagle.core.utilcode.util.DeviceUtils;
|
||||
import com.mogo.utils.DeviceIdUtils;
|
||||
|
||||
import java.lang.reflect.InvocationTargetException;
|
||||
@@ -23,36 +21,36 @@ import java.lang.reflect.Method;
|
||||
|
||||
public class Utils {
|
||||
|
||||
public static String getCellId( Context context ) {
|
||||
TelephonyManager tm = ( TelephonyManager ) context.getSystemService( Context.TELEPHONY_SERVICE );
|
||||
if ( tm == null ) {
|
||||
public static String getCellId(Context context) {
|
||||
TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
|
||||
if (tm == null) {
|
||||
return "";
|
||||
}
|
||||
|
||||
PackageManager pm = context.getPackageManager();
|
||||
boolean accessCoarseLocationPermission = ( PackageManager.PERMISSION_GRANTED ==
|
||||
pm.checkPermission( Manifest.permission.ACCESS_COARSE_LOCATION, context.getPackageName() ) );
|
||||
boolean accessFineLocationPermission = ( PackageManager.PERMISSION_GRANTED ==
|
||||
pm.checkPermission( Manifest.permission.ACCESS_FINE_LOCATION, context.getPackageName() ) );
|
||||
if ( !accessCoarseLocationPermission || !accessFineLocationPermission )
|
||||
boolean accessCoarseLocationPermission = (PackageManager.PERMISSION_GRANTED ==
|
||||
pm.checkPermission(Manifest.permission.ACCESS_COARSE_LOCATION, context.getPackageName()));
|
||||
boolean accessFineLocationPermission = (PackageManager.PERMISSION_GRANTED ==
|
||||
pm.checkPermission(Manifest.permission.ACCESS_FINE_LOCATION, context.getPackageName()));
|
||||
if (!accessCoarseLocationPermission || !accessFineLocationPermission)
|
||||
return "noPermission";
|
||||
|
||||
CellLocation location = null;
|
||||
try {
|
||||
location = tm.getCellLocation();
|
||||
} catch ( Exception e ) {
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
if ( location != null ) {
|
||||
if (location != null) {
|
||||
// Gsm网络 , 联通移动的网络属于这一套
|
||||
if ( location instanceof GsmCellLocation ) {
|
||||
GsmCellLocation gsmLoc = ( GsmCellLocation ) location;
|
||||
if (location instanceof GsmCellLocation) {
|
||||
GsmCellLocation gsmLoc = (GsmCellLocation) location;
|
||||
int cellid = gsmLoc.getCid();
|
||||
return String.valueOf( cellid );
|
||||
return String.valueOf(cellid);
|
||||
// Cdma网络 , 电信网络属于这一种
|
||||
} else if ( location instanceof CdmaCellLocation ) {
|
||||
CdmaCellLocation cdmaLoc = ( CdmaCellLocation ) location;
|
||||
return String.valueOf( cdmaLoc.getBaseStationId() );
|
||||
} else if (location instanceof CdmaCellLocation) {
|
||||
CdmaCellLocation cdmaLoc = (CdmaCellLocation) location;
|
||||
return String.valueOf(cdmaLoc.getBaseStationId());
|
||||
}
|
||||
}
|
||||
return "";
|
||||
@@ -66,31 +64,25 @@ public class Utils {
|
||||
public static final String PROPERTIES = "android.os.SystemProperties";
|
||||
|
||||
public static String getDevicesId() {
|
||||
if ( DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE ) {
|
||||
return DeviceUtils.getUniqueDeviceId();
|
||||
if (DebugConfig.getCarMachineType() != DebugConfig.CAR_MACHINE_TYPE_SELF_INNOVATE) {
|
||||
return DeviceIdUtils.getDeviceId(AbsMogoApplication.getApp());
|
||||
}
|
||||
return getSystemProperties( GSM_SERIAL );
|
||||
return getSystemProperties(GSM_SERIAL);
|
||||
}
|
||||
|
||||
public static String getFotaVersion() {
|
||||
return getSystemProperties( FOTA_VERSION );
|
||||
return getSystemProperties(FOTA_VERSION);
|
||||
}
|
||||
|
||||
public static String getSystemProperties( String name ) {
|
||||
public static String getSystemProperties(String name) {
|
||||
String value = "";
|
||||
|
||||
try {
|
||||
Class< ? > c = Class.forName( PROPERTIES );
|
||||
Method get = c.getMethod( GET, String.class );
|
||||
value = ( String ) get.invoke( c, name );
|
||||
} catch ( ClassNotFoundException var3 ) {
|
||||
Class<?> c = Class.forName(PROPERTIES);
|
||||
Method get = c.getMethod(GET, String.class);
|
||||
value = (String) get.invoke(c, name);
|
||||
} catch (ClassNotFoundException | NoSuchMethodException | InvocationTargetException | IllegalAccessException var3) {
|
||||
var3.printStackTrace();
|
||||
} catch ( NoSuchMethodException var4 ) {
|
||||
var4.printStackTrace();
|
||||
} catch ( InvocationTargetException var5 ) {
|
||||
var5.printStackTrace();
|
||||
} catch ( IllegalAccessException var6 ) {
|
||||
var6.printStackTrace();
|
||||
}
|
||||
return value;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user