update:2020.10.19
fix:设备号获取问题,兼容Android10,报错修复 add:
This commit is contained in:
119
app/src/main/java/com/info/sn/utils/amapUtils.java
Normal file
119
app/src/main/java/com/info/sn/utils/amapUtils.java
Normal file
@@ -0,0 +1,119 @@
|
||||
/**
|
||||
*
|
||||
*/
|
||||
package com.info.sn.utils;
|
||||
|
||||
import android.content.Context;
|
||||
import android.content.pm.PackageInfo;
|
||||
import android.content.pm.PackageManager;
|
||||
import android.text.TextUtils;
|
||||
|
||||
import com.amap.api.location.AMapLocation;
|
||||
|
||||
import java.text.SimpleDateFormat;
|
||||
import java.util.Locale;
|
||||
|
||||
/**
|
||||
* 辅助工具类
|
||||
* @创建时间: 2015年11月24日 上午11:46:50
|
||||
* @项目名称: AMapLocationDemo2.x
|
||||
* @author hongming.wang
|
||||
* @文件名称: amapUtils.java
|
||||
* @类型名称: amapUtils
|
||||
*/
|
||||
public class amapUtils {
|
||||
/**
|
||||
* 开始定位
|
||||
*/
|
||||
public final static int MSG_LOCATION_START = 0;
|
||||
/**
|
||||
* 定位完成
|
||||
*/
|
||||
public final static int MSG_LOCATION_FINISH = 1;
|
||||
/**
|
||||
* 停止定位
|
||||
*/
|
||||
public final static int MSG_LOCATION_STOP= 2;
|
||||
|
||||
public final static String KEY_URL = "URL";
|
||||
public final static String URL_H5LOCATION = "file:///android_asset/sdkLoc.html";
|
||||
/**
|
||||
* 根据定位结果返回定位信息的字符串
|
||||
* @param location
|
||||
* @return
|
||||
*/
|
||||
public synchronized static String getLocationStr(AMapLocation location){
|
||||
if(null == location){
|
||||
return null;
|
||||
}
|
||||
StringBuffer sb = new StringBuffer();
|
||||
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||
if(location.getErrorCode() == 0){
|
||||
sb.append("定位成功" + "\n");
|
||||
sb.append("定位类型: " + location.getLocationType() + "\n");
|
||||
sb.append("经 度 : " + location.getLongitude() + "\n");
|
||||
sb.append("纬 度 : " + location.getLatitude() + "\n");
|
||||
sb.append("精 度 : " + location.getAccuracy() + "米" + "\n");
|
||||
sb.append("提供者 : " + location.getProvider() + "\n");
|
||||
|
||||
sb.append("速 度 : " + location.getSpeed() + "米/秒" + "\n");
|
||||
sb.append("角 度 : " + location.getBearing() + "\n");
|
||||
// 获取当前提供定位服务的卫星个数
|
||||
sb.append("星 数 : " + location.getSatellites() + "\n");
|
||||
sb.append("国 家 : " + location.getCountry() + "\n");
|
||||
sb.append("省 : " + location.getProvince() + "\n");
|
||||
sb.append("市 : " + location.getCity() + "\n");
|
||||
sb.append("城市编码 : " + location.getCityCode() + "\n");
|
||||
sb.append("区 : " + location.getDistrict() + "\n");
|
||||
sb.append("区域 码 : " + location.getAdCode() + "\n");
|
||||
sb.append("地 址 : " + location.getAddress() + "\n");
|
||||
sb.append("兴趣点 : " + location.getPoiName() + "\n");
|
||||
//定位完成的时间
|
||||
sb.append("定位时间: " + formatUTC(location.getTime(), "yyyy-MM-dd HH:mm:ss") + "\n");
|
||||
} else {
|
||||
//定位失败
|
||||
sb.append("定位失败" + "\n");
|
||||
sb.append("错误码:" + location.getErrorCode() + "\n");
|
||||
sb.append("错误信息:" + location.getErrorInfo() + "\n");
|
||||
sb.append("错误描述:" + location.getLocationDetail() + "\n");
|
||||
}
|
||||
//定位之后的回调时间
|
||||
sb.append("回调时间: " + formatUTC(System.currentTimeMillis(), "yyyy-MM-dd HH:mm:ss") + "\n");
|
||||
return sb.toString();
|
||||
}
|
||||
|
||||
private static SimpleDateFormat sdf = null;
|
||||
public static String formatUTC(long l, String strPattern) {
|
||||
if (TextUtils.isEmpty(strPattern)) {
|
||||
strPattern = "yyyy-MM-dd HH:mm:ss";
|
||||
}
|
||||
if (sdf == null) {
|
||||
try {
|
||||
sdf = new SimpleDateFormat(strPattern, Locale.CHINA);
|
||||
} catch (Throwable e) {
|
||||
}
|
||||
} else {
|
||||
sdf.applyPattern(strPattern);
|
||||
}
|
||||
return sdf == null ? "NULL" : sdf.format(l);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取app的名称
|
||||
* @param context
|
||||
* @return
|
||||
*/
|
||||
public static String getAppName(Context context) {
|
||||
String appName = "";
|
||||
try {
|
||||
PackageManager packageManager = context.getPackageManager();
|
||||
PackageInfo packageInfo = packageManager.getPackageInfo(
|
||||
context.getPackageName(), 0);
|
||||
int labelRes = packageInfo.applicationInfo.labelRes;
|
||||
appName = context.getResources().getString(labelRes);
|
||||
} catch (Throwable e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
return appName;
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user