Commit 124a2e0a by 刘鹏

Merge branch 'fix/lp/lp_fix_ffrom_hg' into 'release'

feat: 合规整改、新ffrom支持

See merge request app_android_lib/YDL-Component!187
parents 21405993 dc2117e2
......@@ -10,7 +10,7 @@ ext {
"m-fm" : "0.0.30.09",
"m-user" : "0.0.62.55",
"m-home" : "0.0.23.95",
"m-im" : "0.0.21.60",
"m-im" : "0.0.21.61",
"m-dynamic" : "0.0.7.74",
"m-article" : "0.0.0.10",
"m-muse" : "0.0.28.81",
......@@ -23,12 +23,12 @@ ext {
//mdt 组件
"ydl-tuicore" : "0.0.25",
//第一步
"ydl-platform" : "0.0.41.41",
"ydl-platform" : "0.0.41.44",
//第二步 若干
"ydl-webview" : "0.0.38.94",
"ydl-media" : "0.0.21.52",
"ydl-pay" : "0.0.18.19",
"ydl-pay" : "0.0.18.21",
"m-audioim" : "0.0.49.30.23",
"ydl-flutter-base": "0.0.14.38",
......@@ -36,7 +36,7 @@ ext {
//以下 几乎不会动
"router" : "0.0.1",
"ydl-net" : "0.0.3.94",
"ydl-utils" : "0.0.3.8",
"ydl-utils" : "0.0.3.12",
//-------------- 业务模块 API 层 --------------
......@@ -96,7 +96,7 @@ ext {
"m-fm" : "0.0.30.09",
"m-user" : "0.0.62.55",
"m-home" : "0.0.23.95",
"m-im" : "0.0.21.60",
"m-im" : "0.0.21.61",
"m-dynamic" : "0.0.7.74",
"m-article" : "0.0.0.10",
......@@ -110,19 +110,19 @@ ext {
//mdt 组件
"ydl-tuicore" : "0.0.25",
//第一步
"ydl-platform" : "0.0.41.41",
"ydl-platform" : "0.0.41.44",
//第二步 若干
"ydl-webview" : "0.0.38.94",
"ydl-media" : "0.0.21.52",
"ydl-pay" : "0.0.18.19",
"ydl-pay" : "0.0.18.21",
"m-audioim" : "0.0.49.30.23",
"ydl-flutter-base": "0.0.14.38",
//以下 几乎不会动
"router" : "0.0.1",
"ydl-net" : "0.0.3.94",
"ydl-utils" : "0.0.3.8",
"ydl-utils" : "0.0.3.12",
//-------------- 业务模块 API 层 --------------
"m-audioim-api" : "0.0.6",
......
......@@ -544,17 +544,13 @@ public class NetworkUtil {
*/
public static String getActiveMacAddress(Context context) {
if (!DeviceTool.checkHasAgreeSecret()) {
return "";
}
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
if (info != null) {
return info.getMacAddress();
if (DeviceTool.checkHasAgreeSecret()) {
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo info = wifi.getConnectionInfo();
if (info != null) {
return info.getMacAddress();
}
}
return "";
}
......
......@@ -236,7 +236,7 @@ class NimSDKOptionConfig {
} else {
String appFrom = BaseApp.Companion.getInstance().getGlobalConfig().getAppFrom();
if (YDLConstants.FROM_YDL.equals(appFrom)) {
if (YDLConstants.FROM_YDL.equals(appFrom) || YDLConstants.FROM_YDL2.equals(appFrom)) {
// 小米推送
config.xmAppId = "2882303761517432980";
config.xmAppKey = "5241743243980";
......
......@@ -18,9 +18,10 @@ public class WxPayParam extends CommonPayParam {
if(!TextUtils.isEmpty(BaseApp.instance.getGlobalConfig().getAppWxPayType())) {
type =BaseApp.instance.getGlobalConfig().getAppWxPayType();
}else {
if (YDLConstants.FROM_XLZX.equals(BaseApp.instance.getGlobalConfig().getAppFrom())) {
String appFrom = BaseApp.instance.getGlobalConfig().getAppFrom();
if (YDLConstants.FROM_XLZX.equals(appFrom)) {
type = "wxapp_consult";
} else if(YDLConstants.FROM_YDL.equals(BaseApp.instance.getGlobalConfig().getAppFrom())) {
} else if (YDLConstants.FROM_YDL.equals(appFrom) || YDLConstants.FROM_YDL2.equals(appFrom)) {
type = "wxapp_hz";
}
}
......
......@@ -122,80 +122,12 @@ public class RxDeviceTool {
}
/**
* IMEI (唯一标识序列号)
* <p>需与{@link #isPhone(Context)}一起使用</p>
* <p>需添加权限 {@code <uses-permission android:name="android.permission.READ_PHONE_STATE"/>}</p>
*
* @param context 上下文
* @return IMEI
*/
// public static String getIMEI(Context context) {
// String deviceId;
// if (isPhone(context)) {
// deviceId = getDeviceIdIMEI(context);
// } else {
// deviceId = getAndroidId(context);
// }
// return deviceId;
// }
/**
* 获取设备的IMSI
*
* @param context
* @return
*/
// public static String getIMSI(Context context) {
// return getSubscriberId(context);
// }
/**
* 获取设备的IMEI
*
* @param context
* @return
*/
// public static String getDeviceIdIMEI(Context context) {
// String id;
// //android.telephony.TelephonyManager
// TelephonyManager mTelephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// if (mTelephony.getDeviceId() != null) {
// id = mTelephony.getDeviceId();
// } else {
// //android.provider.Settings;
// id = Settings.Secure.getString(context.getApplicationContext().getContentResolver(), Settings.Secure.ANDROID_ID);
// }
// return id;
// }
/**
* 获取设备的软件版本号
*
* @param context
* @return
*/
// public static String getDeviceSoftwareVersion(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getDeviceSoftwareVersion();
// }
/**
* 获取android系统版本号
*/
public static String getOsBuileVersion() {
return Build.VERSION.RELEASE;
}
/**
* 获取手机号
*
* @param context
* @return
*/
// public static String getLine1Number(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getLine1Number();
// }
/**
* 获取ISO标准的国家码,即国际长途区号
......@@ -308,28 +240,6 @@ public class RxDeviceTool {
}
/**
* 获取唯一的用户ID
*
* @param context
* @return
*/
// public static String getSubscriberId(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getSubscriberId();
// }
/**
* 获取语音邮件号码
*
* @param context
* @return
*/
// public static String getVoiceMailNumber(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getVoiceMailNumber();
// }
/**
* 获取ANDROID ID
*
* @param context
......@@ -449,66 +359,6 @@ public class RxDeviceTool {
return result;
}
/**
* 获取设备信息
*
* @param context
* @return
*/
// public static String getDeviceInfo(Context context) {
// try {
// org.json.JSONObject json = new org.json.JSONObject();
// TelephonyManager tm = (TelephonyManager) context
// .getSystemService(Context.TELEPHONY_SERVICE);
// String device_id = null;
// if (checkPermission(context, Manifest.permission.READ_PHONE_STATE)) {
// device_id = getDeviceIdIMEI(context);
// }
// String mac = null;
// FileReader fstream = null;
// try {
// fstream = new FileReader("/sys/class/net/wlan0/address");
// } catch (FileNotFoundException e) {
// fstream = new FileReader("/sys/class/net/eth0/address");
// }
// BufferedReader in = null;
// if (fstream != null) {
// try {
// in = new BufferedReader(fstream, 1024);
// mac = in.readLine();
// } catch (IOException e) {
// } finally {
// if (fstream != null) {
// try {
// fstream.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
// if (in != null) {
// try {
// in.close();
// } catch (IOException e) {
// e.printStackTrace();
// }
// }
// }
// }
// json.put("mac", mac);
// if (TextUtils.isEmpty(device_id)) {
// device_id = mac;
// }
// if (TextUtils.isEmpty(device_id)) {
// device_id = Settings.Secure.getString(context.getContentResolver(),
// Settings.Secure.ANDROID_ID);
// }
// json.put("device_id", device_id);
// return json.toString();
// } catch (Exception e) {
// e.printStackTrace();
// }
// return null;
// }
/**
......
......@@ -22,9 +22,10 @@ public class WXRechargeIdParam extends BaseCommand {
if(!TextUtils.isEmpty(BaseApp.instance.getGlobalConfig().getAppWxPayType())) {
type =BaseApp.instance.getGlobalConfig().getAppWxPayType();
}else {
if (YDLConstants.FROM_XLZX.equals(BaseApp.instance.getGlobalConfig().getAppFrom())) {
String appFrom = BaseApp.instance.getGlobalConfig().getAppFrom();
if (YDLConstants.FROM_XLZX.equals(appFrom)) {
type = "wxapp_consult";
} else if(YDLConstants.FROM_YDL.equals(BaseApp.instance.getGlobalConfig().getAppFrom())) {
} else if (YDLConstants.FROM_YDL.equals(appFrom) || YDLConstants.FROM_YDL2.equals(appFrom)) {
type = "wxapp_hz";
}
}
......
......@@ -6,10 +6,8 @@ import android.os.Build
import com.alibaba.android.arouter.launcher.ARouter
import com.bun.miitmdid.core.JLibrary
import com.tencent.mmkv.MMKV
import com.ydl.devicesidlib.DeviceIDHelper
import com.ydl.ydlcommon.base.BaseApp
import com.ydl.ydlcommon.data.http.UpLoadLogUtils
import com.ydl.ydlcommon.utils.AppProgressUtils
import com.ydl.ydlcommon.utils.BuryPointUtils
import com.ydl.ydlcommon.utils.LogUtil
import com.ydl.ydlcommon.utils.log.LogHelper
......
......@@ -17,10 +17,12 @@ object YDLConstants {
const val BUNDLE = "bundle"
const val FROM_YDL = "android"
//壹点灵sem渠道ffrom
const val FROM_YDL2 = "BaiduSem"
const val FROM_XLZX = "ATK_7_android"
//自定义注解,限制入参类型
@StringDef(FROM_YDL, FROM_XLZX)
@StringDef(FROM_YDL, FROM_XLZX, FROM_YDL2)
annotation class AppFrom
......
......@@ -20,8 +20,8 @@ import android.text.TextUtils;
import android.util.Log;
import com.tbruyelle.rxpermissions2.RxPermissions;
import com.yidianling.common.tools.RxTool;
import com.ydl.ydlcommon.BuildConfig;
import com.yidianling.common.tools.RxTool;
import java.io.BufferedReader;
import java.io.FileReader;
......@@ -122,32 +122,32 @@ public class DeviceTool {
@SuppressLint("MissingPermission")
public static final String getIMEI() {
Activity topTaskActivity = ActivityManager.Companion.getInstance().getTopTaskActivity();
if (!checkHasAgreeSecret()) {
return "";
}
try {
String imei = "";
RxPermissions rxPermissions = new RxPermissions(topTaskActivity);
if (rxPermissions.isGranted(Manifest.permission.READ_PHONE_STATE)) {
//实例化TelephonyManager对象
TelephonyManager telephonyManager = (TelephonyManager) topTaskActivity.getSystemService(Context.TELEPHONY_SERVICE);
if (null == telephonyManager){
return "";
}
//获取IMEI号
imei = telephonyManager.getDeviceId();
if (checkHasAgreeSecret()) {
try {
String imei = "";
RxPermissions rxPermissions = new RxPermissions(topTaskActivity);
if (rxPermissions.isGranted(Manifest.permission.READ_PHONE_STATE)) {
//实例化TelephonyManager对象
TelephonyManager telephonyManager = (TelephonyManager) topTaskActivity.getSystemService(Context.TELEPHONY_SERVICE);
if (null == telephonyManager) {
return "";
}
//获取IMEI号
imei = telephonyManager.getDeviceId();
if (imei == null) {
return "";
if (imei == null) {
return "";
}
}
return RxTool.Md5(imei);
} catch (Exception e) {
e.printStackTrace();
return "";
}
return RxTool.Md5(imei);
} catch (Exception e) {
e.printStackTrace();
} else {
return "";
}
}
/**
* 检查是否同意隐私协议
......@@ -162,30 +162,35 @@ public class DeviceTool {
public static String getEncryptionAndroidID() {
if (!checkHasAgreeSecret()) {
return "";
}
try {
@SuppressLint("HardwareIds") String id = Settings.Secure.getString(
RxTool.getContext().getContentResolver(),
Settings.Secure.ANDROID_ID
);
return TextUtils.isEmpty(id) ? "" : id;
} catch (Exception e) {
if (checkHasAgreeSecret()) {
try {
@SuppressLint("HardwareIds") String id = Settings.Secure.getString(
RxTool.getContext().getContentResolver(),
Settings.Secure.ANDROID_ID
);
return TextUtils.isEmpty(id) ? "" : id;
} catch (Exception e) {
return "";
}
}else {
return "";
}
}
public static String getAndroidID() {
if (!checkHasAgreeSecret()) {
return "";
}
try {
@SuppressLint("HardwareIds") String id = Settings.Secure.getString(
RxTool.getContext().getContentResolver(),
Settings.Secure.ANDROID_ID
);
return TextUtils.isEmpty(id) ? "" : RxTool.Md5(id);
} catch (Exception e) {
if (checkHasAgreeSecret()) {
try {
@SuppressLint("HardwareIds") String id = Settings.Secure.getString(
RxTool.getContext().getContentResolver(),
Settings.Secure.ANDROID_ID
);
return TextUtils.isEmpty(id) ? "" : RxTool.Md5(id);
} catch (Exception e) {
return "";
}
} else {
return "";
}
}
......@@ -269,65 +274,65 @@ public class DeviceTool {
}
public static String getMac(Context context) {
if (!checkHasAgreeSecret()) {
return "02:00:00:00:00:00";
}
String strMac = null;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
strMac = getLocalMacAddressFromWifiInfo(context);
return strMac;
} else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N
&& Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
strMac = getMacAddress(context);
return strMac;
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
if (!TextUtils.isEmpty(getMacAddress())) {
strMac = getMacAddress();
if (checkHasAgreeSecret()) {
String strMac = null;
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
strMac = getLocalMacAddressFromWifiInfo(context);
return strMac;
} else if (!TextUtils.isEmpty(getMachineHardwareAddress())) {
strMac = getMachineHardwareAddress();
return strMac;
} else {
strMac = getLocalMacAddressFromBusybox();
} else if (Build.VERSION.SDK_INT < Build.VERSION_CODES.N
&& Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
strMac = getMacAddress(context);
return strMac;
} else if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.N) {
if (!TextUtils.isEmpty(getMacAddress())) {
strMac = getMacAddress();
return strMac;
} else if (!TextUtils.isEmpty(getMachineHardwareAddress())) {
strMac = getMachineHardwareAddress();
return strMac;
} else {
strMac = getLocalMacAddressFromBusybox();
return strMac;
}
}
}
return "02:00:00:00:00:00";
}
/*
* 获取MAC地址
*GPRS链接和WIFI链接返回同一个MAC地址
* */
public static String getMacFromHardware() {
if (!checkHasAgreeSecret()) {
return "02:00:00:00:00:00";
}
try {
List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface nif : all) {
if (!nif.getName().equalsIgnoreCase("wlan0")) continue;
if (checkHasAgreeSecret()) {
try {
List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface nif : all) {
if (!nif.getName().equalsIgnoreCase("wlan0")) {
continue;
}
byte[] macBytes = nif.getHardwareAddress();
if (macBytes == null) {
return "";
}
byte[] macBytes = nif.getHardwareAddress();
if (macBytes == null) {
return "";
}
StringBuilder res1 = new StringBuilder();
for (byte b : macBytes) {
res1.append(String.format("%02X:", b));
}
StringBuilder res1 = new StringBuilder();
for (byte b : macBytes) {
res1.append(String.format("%02X:", b));
}
if (res1.length() > 0) {
res1.deleteCharAt(res1.length() - 1);
if (res1.length() > 0) {
res1.deleteCharAt(res1.length() - 1);
}
return res1.toString();
}
return res1.toString();
} catch (Exception e) {
e.printStackTrace();
}
} catch (Exception e) {
e.printStackTrace();
}
return "02:00:00:00:00:00";
}
/**
*
......@@ -351,40 +356,41 @@ public class DeviceTool {
* @return
*/
public static String getLocalWifiIpAddress(Context context) {
if (!checkHasAgreeSecret()) {
if (checkHasAgreeSecret()) {
try {
WifiManager wifiManager = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int i = wifiInfo.getIpAddress();
return int2ip(i);
} catch (Exception ex) {
return " 获取IP出错鸟!!!!请保证是WIFI,或者请重新打开网络!\n" + ex.getMessage();
}
}else {
return "隐私协议未同意,不让获取";
}
try {
WifiManager wifiManager = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = wifiManager.getConnectionInfo();
int i = wifiInfo.getIpAddress();
return int2ip(i);
} catch (Exception ex) {
return " 获取IP出错鸟!!!!请保证是WIFI,或者请重新打开网络!\n" + ex.getMessage();
}
// return null;
}
//GPRS连接下的ip
/**
* GPRS连接下的ip
* */
public static String getLocalGPRSIpAddress() {
if (!checkHasAgreeSecret()) {
return null;
}
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
if (checkHasAgreeSecret()) {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {
Log.e("WifiPreferenceIpAddress", ex.toString());
}
} catch (SocketException ex) {
Log.e("WifiPreferenceIpAddress", ex.toString());
}
return null;
}
......@@ -393,137 +399,127 @@ public class DeviceTool {
* @return
*/
public static String getNewMac() {
if (!checkHasAgreeSecret()) {
return null;
}
try {
List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface nif : all) {
if (!nif.getName().equalsIgnoreCase("wlan0")) continue;
if (checkHasAgreeSecret()) {
try {
List<NetworkInterface> all = Collections.list(NetworkInterface.getNetworkInterfaces());
for (NetworkInterface nif : all) {
if (!nif.getName().equalsIgnoreCase("wlan0")) continue;
byte[] macBytes = nif.getHardwareAddress();
if (macBytes == null) {
return null;
}
byte[] macBytes = nif.getHardwareAddress();
if (macBytes == null) {
return null;
}
StringBuilder res1 = new StringBuilder();
for (byte b : macBytes) {
res1.append(String.format("%02X:", b));
}
StringBuilder res1 = new StringBuilder();
for (byte b : macBytes) {
res1.append(String.format("%02X:", b));
}
if (res1.length() > 0) {
res1.deleteCharAt(res1.length() - 1);
if (res1.length() > 0) {
res1.deleteCharAt(res1.length() - 1);
}
return res1.toString();
}
return res1.toString();
} catch (Exception ex) {
ex.printStackTrace();
}
} catch (Exception ex) {
ex.printStackTrace();
}
return null;
}
public static String getLocalMacAddressFromWifiInfo(Context context) {
if (!checkHasAgreeSecret()) {
if (checkHasAgreeSecret()) {
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo winfo = wifi.getConnectionInfo();
String mac = winfo.getMacAddress();
return mac;
} else {
return null;
}
WifiManager wifi = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
WifiInfo winfo = wifi.getConnectionInfo();
String mac = winfo.getMacAddress();
return mac;
}
/*
* 获取IPV6地址
* */
public static String getLocalIpV6() {
if (!checkHasAgreeSecret()) {
return null;
}
try {
for (Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
// logger.error("ip1 " + inetAddress);
/* logger.error("getHostName " + inetAddress.getHostName());
logger.error("getCanonicalHostName " + inetAddress.getCanonicalHostName());
logger.error("getAddress " + Arrays.toString(inetAddress.getAddress()));
logger.error("getHostAddress " + inetAddress.getHostAddress());*/
if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet6Address) {
return inetAddress.getHostAddress();
if (checkHasAgreeSecret()) {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress() && inetAddress instanceof Inet6Address) {
return inetAddress.getHostAddress();
}
}
}
} catch (Exception ex) {
Log.e("IP Address", ex.toString());
}
} catch (Exception ex) {
Log.e("IP Address", ex.toString());
}
return null;
}
public static String getMacAddress(Context context) {
if (!checkHasAgreeSecret()) {
return null;
}
// 如果是6.0以下,直接通过wifimanager获取
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
String macAddress0 = getMacAddress0(context);
if (!TextUtils.isEmpty(macAddress0)) {
return macAddress0;
}
}
String str = "";
String macSerial = "";
try {
Process pp = Runtime.getRuntime().exec(
"cat /sys/class/net/wlan0/address");
InputStreamReader ir = new InputStreamReader(pp.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (; null != str; ) {
str = input.readLine();
if (str != null) {
macSerial = str.trim();// 去空格
break;
if (checkHasAgreeSecret()) {
// 如果是6.0以下,直接通过wifimanager获取
if (Build.VERSION.SDK_INT < Build.VERSION_CODES.M) {
String macAddress0 = getMacAddress0(context);
if (!TextUtils.isEmpty(macAddress0)) {
return macAddress0;
}
}
} catch (Exception ex) {
Log.e("----->" + "NetInfoManager", "getMacAddress:" + ex.toString());
}
if (macSerial == null || "".equals(macSerial)) {
String str = "";
String macSerial = "";
try {
return loadFileAsString("/sys/class/net/eth0/address")
.toUpperCase().substring(0, 17);
} catch (Exception e) {
e.printStackTrace();
Log.e("----->" + "NetInfoManager",
"getMacAddress:" + e.toString());
Process pp = Runtime.getRuntime().exec(
"cat /sys/class/net/wlan0/address");
InputStreamReader ir = new InputStreamReader(pp.getInputStream());
LineNumberReader input = new LineNumberReader(ir);
for (; null != str; ) {
str = input.readLine();
if (str != null) {
macSerial = str.trim();// 去空格
break;
}
}
} catch (Exception ex) {
Log.e("----->" + "NetInfoManager", "getMacAddress:" + ex.toString());
}
if (macSerial == null || "".equals(macSerial)) {
try {
return loadFileAsString("/sys/class/net/eth0/address")
.toUpperCase().substring(0, 17);
} catch (Exception e) {
e.printStackTrace();
Log.e("----->" + "NetInfoManager",
"getMacAddress:" + e.toString());
}
}
return macSerial;
} else {
return null;
}
return macSerial;
}
private static String getMacAddress0(Context context) {
if (!checkHasAgreeSecret()) {
return null;
}
if (isAccessWifiStateAuthorized(context)) {
WifiManager wifiMgr = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = null;
try {
wifiInfo = wifiMgr.getConnectionInfo();
return wifiInfo.getMacAddress();
} catch (Exception e) {
Log.e("----->" + "NetInfoManager",
"getMacAddress0:" + e.toString());
if (checkHasAgreeSecret()) {
if (isAccessWifiStateAuthorized(context)) {
WifiManager wifiMgr = (WifiManager) context
.getSystemService(Context.WIFI_SERVICE);
WifiInfo wifiInfo = null;
try {
wifiInfo = wifiMgr.getConnectionInfo();
return wifiInfo.getMacAddress();
} catch (Exception e) {
Log.e("----->" + "NetInfoManager",
"getMacAddress0:" + e.toString());
}
}
}
return "";
}
/**
......@@ -567,25 +563,25 @@ public class DeviceTool {
* @return
*/
public static String getMacAddress() {
if (!checkHasAgreeSecret()) {
return null;
}
String strMacAddr = null;
try {
// 获得IpD地址
InetAddress ip = getLocalInetAddress();
byte[] b = NetworkInterface.getByInetAddress(ip)
.getHardwareAddress();
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < b.length; i++) {
if (i != 0) {
buffer.append(':');
if (checkHasAgreeSecret()) {
try {
// 获得IpD地址
InetAddress ip = getLocalInetAddress();
byte[] b = NetworkInterface.getByInetAddress(ip)
.getHardwareAddress();
StringBuffer buffer = new StringBuffer();
for (int i = 0; i < b.length; i++) {
if (i != 0) {
buffer.append(':');
}
String str = Integer.toHexString(b[i] & 0xFF);
buffer.append(str.length() == 1 ? 0 + str : str);
}
String str = Integer.toHexString(b[i] & 0xFF);
buffer.append(str.length() == 1 ? 0 + str : str);
strMacAddr = buffer.toString().toUpperCase();
} catch (Exception e) {
e.printStackTrace();
}
strMacAddr = buffer.toString().toUpperCase();
} catch (Exception e) {
}
return strMacAddr;
}
......@@ -595,34 +591,34 @@ public class DeviceTool {
* @return
*/
private static InetAddress getLocalInetAddress() {
if (!checkHasAgreeSecret()) {
return null;
}
InetAddress ip = null;
try {
// 列举
Enumeration<NetworkInterface> en_netInterface = NetworkInterface
.getNetworkInterfaces();
while (en_netInterface.hasMoreElements()) {// 是否还有元素
NetworkInterface ni = (NetworkInterface) en_netInterface
.nextElement();// 得到下一个元素
Enumeration<InetAddress> en_ip = ni.getInetAddresses();// 得到一个ip地址的列举
while (en_ip.hasMoreElements()) {
ip = en_ip.nextElement();
if (!ip.isLoopbackAddress()
&& ip.getHostAddress().indexOf(":") == -1)
if (checkHasAgreeSecret()) {
try {
// 列举
Enumeration<NetworkInterface> en_netInterface = NetworkInterface
.getNetworkInterfaces();
while (en_netInterface.hasMoreElements()) {// 是否还有元素
NetworkInterface ni = (NetworkInterface) en_netInterface
.nextElement();// 得到下一个元素
Enumeration<InetAddress> en_ip = ni.getInetAddresses();// 得到一个ip地址的列举
while (en_ip.hasMoreElements()) {
ip = en_ip.nextElement();
if (!ip.isLoopbackAddress()
&& ip.getHostAddress().indexOf(":") == -1) {
break;
} else {
ip = null;
}
}
if (ip != null) {
break;
else
ip = null;
}
}
} catch (SocketException e) {
if (ip != null) {
break;
}
e.printStackTrace();
}
} catch (SocketException e) {
e.printStackTrace();
}
return ip;
}
......@@ -633,51 +629,50 @@ public class DeviceTool {
* @return
*/
public static String getLocalIpAddress() {
if (!checkHasAgreeSecret()) {
return null;
}
try {
for (Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf
.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
if (checkHasAgreeSecret()) {
try {
for (Enumeration<NetworkInterface> en = NetworkInterface
.getNetworkInterfaces(); en.hasMoreElements(); ) {
NetworkInterface intf = en.nextElement();
for (Enumeration<InetAddress> enumIpAddr = intf
.getInetAddresses(); enumIpAddr.hasMoreElements(); ) {
InetAddress inetAddress = enumIpAddr.nextElement();
if (!inetAddress.isLoopbackAddress()) {
return inetAddress.getHostAddress().toString();
}
}
}
} catch (SocketException ex) {
ex.printStackTrace();
}
} catch (SocketException ex) {
ex.printStackTrace();
}
return null;
}
public static String getMachineHardwareAddress() {
if (!checkHasAgreeSecret()) {
return null;
}
Enumeration<NetworkInterface> interfaces = null;
try {
interfaces = NetworkInterface.getNetworkInterfaces();
} catch (SocketException e) {
e.printStackTrace();
}
String hardWareAddress = null;
NetworkInterface iF = null;
if (interfaces == null) {
return null;
}
while (interfaces.hasMoreElements()) {
iF = interfaces.nextElement();
if (checkHasAgreeSecret()) {
Enumeration<NetworkInterface> interfaces = null;
try {
hardWareAddress = bytesToString(iF.getHardwareAddress());
if (hardWareAddress != null)
break;
interfaces = NetworkInterface.getNetworkInterfaces();
} catch (SocketException e) {
e.printStackTrace();
}
NetworkInterface iF = null;
if (interfaces == null) {
return null;
}
while (interfaces.hasMoreElements()) {
iF = interfaces.nextElement();
try {
hardWareAddress = bytesToString(iF.getHardwareAddress());
if (hardWareAddress != null)
break;
} catch (SocketException e) {
e.printStackTrace();
}
}
}
return hardWareAddress;
}
......@@ -703,22 +698,21 @@ public class DeviceTool {
}
public static String getLocalMacAddressFromBusybox() {
if (!checkHasAgreeSecret()) {
return "";
}
String result = "";
String Mac = "";
result = callCmd("busybox ifconfig", "HWaddr");
// 如果返回的result == null,则说明网络不可取
if (result == null) {
return "网络异常";
}
// 对该行数据进行解析
// 例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
if (result.length() > 0 && result.contains("HWaddr") == true) {
Mac = result.substring(result.indexOf("HWaddr") + 6,
result.length() - 1);
result = Mac;
if (checkHasAgreeSecret()) {
String Mac = "";
result = callCmd("busybox ifconfig", "HWaddr");
// 如果返回的result == null,则说明网络不可取
if (result == null) {
return "网络异常";
}
// 对该行数据进行解析
// 例如:eth0 Link encap:Ethernet HWaddr 00:16:E8:3E:DF:67
if (result.length() > 0 && result.contains("HWaddr") == true) {
Mac = result.substring(result.indexOf("HWaddr") + 6,
result.length() - 1);
result = Mac;
}
}
return result;
}
......
......@@ -5,7 +5,6 @@ import android.util.Log;
import com.umeng.analytics.MobclickAgent;
import com.ydl.burypointlib.BuryPointHelper;
//import com.ydl.devicesidlib.DemoHelper;
import com.ydl.devicesidlib.DeviceIDHelper;
import com.ydl.pushserver.pushagent.YdlPushAgent;
import com.ydl.pushserver.pushagent.common.listener.IYDLPushListener;
......@@ -18,6 +17,8 @@ import com.yidianling.common.tools.RxAppTool;
import com.yidianling.common.tools.RxDeviceTool;
import com.yidianling.common.tools.RxNetTool;
import static com.ydl.ydlcommon.utils.DeviceTool.checkHasAgreeSecret;
//import static com.bun.miitmdid.content.ContextKeeper.getApplicationContext;
//import com.ydl.burypointlib.BuryPointHelper;
......@@ -43,7 +44,10 @@ public class YdlBuryPointUtil {
RegisterEventBean registerEventBean = new RegisterEventBean();
registerEventBean.setAppId(context.getPackageName());
registerEventBean.setAppVersion(RxAppTool.getAppVersionName(context));
String deviceId = DeviceIDHelper.getInstance().getDeviceId();
String deviceId = "";
if (checkHasAgreeSecret()) {
deviceId = DeviceIDHelper.getInstance().getDeviceId();
}
registerEventBean.setDeviceId(deviceId);
registerEventBean.setManufacturer(RxDeviceTool.getBuildMANUFACTURER());
registerEventBean.setChannel(YdlCommonOut.Companion.getChannelName());
......@@ -92,7 +96,10 @@ public class YdlBuryPointUtil {
RegisterEventBean registerEventBean = new RegisterEventBean();
registerEventBean.setAppId(context.getPackageName());
registerEventBean.setAppVersion(RxAppTool.getAppVersionName(context));
String deviceId = DeviceIDHelper.getInstance().getDeviceId();
String deviceId ="";
if (checkHasAgreeSecret()) {
deviceId = DeviceIDHelper.getInstance().getDeviceId();
}
registerEventBean.setDeviceId(deviceId);
registerEventBean.setManufacturer(RxDeviceTool.getBuildMANUFACTURER());
registerEventBean.setChannel(YdlCommonOut.Companion.getChannelName());
......
......@@ -151,14 +151,17 @@ class ActionCountUtils {
* 第一次安装获取失败,第二次打开就能成功
* 所以Utils.getIMEI(topTaskActivity)传入activity解决这个问题
* */
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
if (DeviceTool.checkHasAgreeSecret()){
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
}
}
actionDataParams.deviceId(deviceId)
signs.forEachIndexed { index, s ->
//拓展参数个数确定,暂不使用反射调用
......@@ -266,14 +269,18 @@ class ActionCountUtils {
* 第一次安装获取失败,第二次打开就能成功
* 所以Utils.getIMEI(topTaskActivity)传入activity解决这个问题
* */
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
if (DeviceTool.checkHasAgreeSecret()){
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
}
}
baiduActionDataParams.deviceId(deviceId)
baiduActionDataParams.convertType(convertType)
baiduActionDataParams.convertTime(System.currentTimeMillis() / 1000)
......@@ -342,14 +349,18 @@ class ActionCountUtils {
actionDataParams.sign2 = sign2
actionDataParams.api = api
actionDataParams.appVersion(RxDeviceTool.getAppVersionName(BaseApp.getApp()))
val deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
var deviceId = ""
if (DeviceTool.checkHasAgreeSecret()){
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
}
}
actionDataParams.deviceId=deviceId
actionDataParams.time(System.currentTimeMillis())
......@@ -388,15 +399,18 @@ class ActionCountUtils {
actionDataParams.sign2 = sign2
actionDataParams.sign3 = sign3
actionDataParams.appVersion(RxDeviceTool.getAppVersionName(BaseApp.getApp()))
val deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
var deviceId = ""
if (DeviceTool.checkHasAgreeSecret()) {
deviceId = if (Build.VERSION.SDK_INT <= Build.VERSION_CODES.P) {
val topTaskActivity = ActivityManager.getInstance().getTopTaskActivity()
//获取imei
Utils.getIMEI(topTaskActivity)
} else {
//android Q及以上取oaid
DeviceIDHelper.getInstance().deviceId
}
}
actionDataParams.deviceId=deviceId
actionDataParams.deviceId = deviceId
actionDataParams.time(System.currentTimeMillis())
actionDataParams.appId(appId)
......@@ -434,22 +448,21 @@ class ActionCountUtils {
* @return
*/
fun getIpAddress(context: Context): String {
if (!DeviceTool.checkHasAgreeSecret()) {
return ""
}
// 获取WiFi服务
val wifiManager = context.getSystemService(Context.WIFI_SERVICE) as WifiManager
// 判断WiFi是否开启
if (wifiManager.isWifiEnabled) {
// 已经开启了WiFi
val wifiInfo = wifiManager.connectionInfo
val ipAddress = wifiInfo.ipAddress
return intToIp(ipAddress)
} else {
// 未开启WiFi
return getIpAddress()
if (DeviceTool.checkHasAgreeSecret()) {
// 获取WiFi服务
val wifiManager = context.getSystemService(Context.WIFI_SERVICE) as WifiManager
// 判断WiFi是否开启
if (wifiManager.isWifiEnabled) {
// 已经开启了WiFi
val wifiInfo = wifiManager.connectionInfo
val ipAddress = wifiInfo.ipAddress
return intToIp(ipAddress)
} else {
// 未开启WiFi
return getIpAddress()
}
}
return ""
}
private fun intToIp(ipAddress: Int): String {
......
......@@ -161,64 +161,6 @@ public class RxDeviceTool {
}
/**
* IMEI (唯一标识序列号)
* <p>需与{@link #isPhone(Context)}一起使用</p>
* <p>需添加权限 {@code <uses-permission android:name="android.permission.READ_PHONE_STATE"/>}</p>
*
* @param context 上下文
* @return IMEI
*/
// public static String getIMEI(Context context) {
// String deviceId;
// if (isPhone(context)) {
// deviceId = getDeviceIdIMEI(context);
// } else {
// deviceId = getAndroidId(context);
// }
// return deviceId;
// }
/**
* 获取设备的IMSI
*
* @param context
* @return
*/
// public static String getIMSI(Context context) {
// return getSubscriberId(context);
// }
/**
* 获取设备的IMEI
*
* @param context
* @return
*/
// public static String getDeviceIdIMEI(Context context) {
// String id;
// //android.telephony.TelephonyManager
// TelephonyManager mTelephony = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// if (mTelephony.getDeviceId() != null) {
// id = mTelephony.getDeviceId();
// } else {
// //android.provider.Settings;
// id = Settings.Secure.getString(context.getApplicationContext().getContentResolver(), Settings.Secure.ANDROID_ID);
// }
// return id;
// }
/**
* 获取设备的软件版本号
*
* @param context
* @return
*/
// public static String getDeviceSoftwareVersion(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getDeviceSoftwareVersion();
// }
/**
* 获取android系统版本号
*/
public static String getOsBuileVersion(){
......@@ -226,17 +168,6 @@ public class RxDeviceTool {
}
/**
* 获取手机号
*
* @param context
* @return
*/
// public static String getLine1Number(Context context) {
// TelephonyManager tm = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
// return tm.getLine1Number();
// }
/**
* 获取ISO标准的国家码,即国际长途区号
*
* @param context
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment