iKredit v1.2.0.3版本的 MD5 值为:2c00c5c79eecbd6be4c3c546c28d778d
以下内容为反编译后的 AndroidUtils.java 源代码,内容仅作参考
package com.ikreditgp.Utils;
import android.app.Activity;
import android.app.Application;
import android.content.ContentResolver;
import android.content.Context;
import android.content.pm.ApplicationInfo;
import android.content.pm.PackageManager;
import android.database.Cursor;
import android.location.LocationManager;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.Uri;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Environment;
import android.text.TextUtils;
import android.util.Log;
import android.view.View;
import android.view.ViewGroup;
import android.widget.EditText;
import android.widget.ListAdapter;
import android.widget.ListView;
import android.widget.TextView;
import com.android.sdklibrary.base.App;
import com.android.sdklibrary.utils.PermissionUtil;
import com.android.sdklibrary.utils.WifiUtil;
import com.facebook.internal.AnalyticsEvents;
import com.google.gson.Gson;
import com.google.gson.reflect.TypeToken;
import com.ikreditgp.activity.PermissionActivity;
import com.ikreditgp.bean.IpAddressBean;
import com.j256.ormlite.field.FieldType;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.net.Inet4Address;
import java.net.InetAddress;
import java.net.NetworkInterface;
import java.net.SocketException;
import java.net.URL;
import java.security.SecureRandom;
import java.security.cert.X509Certificate;
import java.util.Enumeration;
import java.util.List;
import javax.net.ssl.HostnameVerifier;
import javax.net.ssl.HttpsURLConnection;
import javax.net.ssl.SSLContext;
import javax.net.ssl.SSLSession;
import javax.net.ssl.TrustManager;
import javax.net.ssl.X509TrustManager;
public class AndroidUtils {
public static final HostnameVerifier DO_NOT_VERIFY = new HostnameVerifier() {
@Override
public final boolean verify(String str, SSLSession sSLSession) {
return AndroidUtils.lambda$static$0(str, sSLSession);
}
};
public static boolean lambda$static$0(String str, SSLSession sSLSession) {
return true;
}
public static boolean judgeSDCard() {
return Environment.getExternalStorageState().equals("mounted");
}
public static boolean isEmpty(Object obj) {
if (obj == null) {
return true;
}
if (obj instanceof TextView) {
return TextUtils.isEmpty(((TextView) obj).getText());
}
if (obj instanceof EditText) {
return TextUtils.isEmpty(((EditText) obj).getText());
}
return (obj instanceof String) && ((String) obj).trim().equals("");
}
public static boolean isNetworkAvailable(Activity activity) {
NetworkInfo[] allNetworkInfo;
ConnectivityManager connectivityManager = (ConnectivityManager) activity.getApplicationContext().getSystemService("connectivity");
if (connectivityManager != null && (allNetworkInfo = connectivityManager.getAllNetworkInfo()) != null && allNetworkInfo.length > 0) {
for (int i = 0; i < allNetworkInfo.length; i++) {
System.out.println(i + "===状态===" + allNetworkInfo[i].getState());
System.out.println(i + "===类型===" + allNetworkInfo[i].getTypeName());
if (allNetworkInfo[i].getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
}
return false;
}
public static String getIPAddress(Context context) {
NetworkInfo activeNetworkInfo = ((ConnectivityManager) context.getSystemService("connectivity")).getActiveNetworkInfo();
if (activeNetworkInfo != null && activeNetworkInfo.isConnected()) {
if (activeNetworkInfo.getType() == 0) {
try {
Enumeration<NetworkInterface> networkInterfaces = NetworkInterface.getNetworkInterfaces();
if (networkInterfaces == null) {
return null;
}
while (networkInterfaces.hasMoreElements()) {
Enumeration<InetAddress> inetAddresses = networkInterfaces.nextElement().getInetAddresses();
while (inetAddresses.hasMoreElements()) {
InetAddress nextElement = inetAddresses.nextElement();
if (!nextElement.isLoopbackAddress() && (nextElement instanceof Inet4Address)) {
return nextElement.getHostAddress();
}
}
}
} catch (SocketException e) {
e.printStackTrace();
}
} else if (activeNetworkInfo.getType() == 1) {
WifiInfo connectionInfo = ((WifiManager) context.getSystemService("wifi")).getConnectionInfo();
Log.e("MainActivity", "ssid = " + connectionInfo.getSSID());
Log.e("MainActivity", "bssid = " + connectionInfo.getBSSID());
Log.e("MainActivity", "ipaddress = " + WifiUtil.integer2Ip(connectionInfo.getIpAddress()));
Log.e("MainActivity", "wifilist = " + WifiUtil.getWifiList(context));
return " ssid = " + connectionInfo.getSSID() + " \nbssid = " + connectionInfo.getBSSID() + " \nipaddress = " + WifiUtil.integer2Ip(connectionInfo.getIpAddress());
}
}
return null;
}
public static boolean IsNetWorkEnable(Context context) {
NetworkInfo activeNetworkInfo;
try {
ConnectivityManager connectivityManager = (ConnectivityManager) context.getSystemService("connectivity");
if (connectivityManager != null && (activeNetworkInfo = connectivityManager.getActiveNetworkInfo()) != null && activeNetworkInfo.isConnected()) {
if (activeNetworkInfo.getState() == NetworkInfo.State.CONNECTED) {
return true;
}
}
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
public static String getNetIpSecond(Context context) {
HttpsURLConnection httpsURLConnection;
if (!IsNetWorkEnable(context)) {
return "";
}
try {
URL url = new URL("https://pv.sohu.com/cityjson?ie=utf-8");
if (url.getProtocol().toUpperCase().equals("HTTPS")) {
trustAllHosts();
httpsURLConnection = (HttpsURLConnection) url.openConnection();
httpsURLConnection.setHostnameVerifier(DO_NOT_VERIFY);
} else {
httpsURLConnection = (HttpsURLConnection) url.openConnection();
}
if (httpsURLConnection.getResponseCode() != 200) {
return "responseCode!=HTTP_OK";
}
InputStream inputStream = httpsURLConnection.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream, "utf-8"));
StringBuilder sb = new StringBuilder();
while (true) {
String readLine = bufferedReader.readLine();
if (readLine == null) {
break;
}
sb.append(readLine);
}
inputStream.close();
IpAddressBean ipAddressBean = (IpAddressBean) new Gson().fromJson(sb.substring(sb.indexOf("{"), sb.indexOf("}") + 1), new TypeToken<IpAddressBean>() {
}.getType());
return ipAddressBean != null ? ipAddressBean.cip : "";
} catch (IOException e) {
String str = "IOException:" + e.getMessage();
e.printStackTrace();
return str;
}
}
public static void trustAllHosts() {
TrustManager[] trustManagerArr = {new X509TrustManager() {
@Override
public void checkClientTrusted(X509Certificate[] x509CertificateArr, String str) {
}
public void checkClientTrusted(javax.security.cert.X509Certificate[] x509CertificateArr, String str) {
}
@Override
public void checkServerTrusted(X509Certificate[] x509CertificateArr, String str) {
}
public void checkServerTrusted(javax.security.cert.X509Certificate[] x509CertificateArr, String str) {
}
@Override
public X509Certificate[] getAcceptedIssuers() {
return new X509Certificate[0];
}
}};
try {
SSLContext sSLContext = SSLContext.getInstance("TLS");
sSLContext.init(null, trustManagerArr, new SecureRandom());
HttpsURLConnection.setDefaultSSLSocketFactory(sSLContext.getSocketFactory());
} catch (Exception e) {
e.printStackTrace();
}
}
public static boolean isLocServiceEnable(Context context) {
LocationManager locationManager = (LocationManager) context.getSystemService("location");
return locationManager.isProviderEnabled("gps") || locationManager.isProviderEnabled("network");
}
public static String getVersion(Context context) {
try {
return context.getPackageManager().getPackageInfo(context.getPackageName(), 0).versionName;
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
return "1.0.1";
}
}
public static String getChannelName(Application application) {
ApplicationInfo applicationInfo;
String str = null;
if (application == null) {
return null;
}
try {
PackageManager packageManager = application.getPackageManager();
if (packageManager != null && (applicationInfo = packageManager.getApplicationInfo(application.getPackageName(), 128)) != null && applicationInfo.metaData != null) {
str = applicationInfo.metaData.get("UMENG_CHANNEL") + "";
}
} catch (PackageManager.NameNotFoundException e) {
e.printStackTrace();
}
return TextUtils.isEmpty(str) ? AnalyticsEvents.PARAMETER_DIALOG_OUTCOME_VALUE_UNKNOWN : str;
}
public static void setListViewHeightBasedOnChildren(ListView listView) {
ListAdapter adapter;
if (listView == null || (adapter = listView.getAdapter()) == null) {
return;
}
int i = 0;
for (int i2 = 0; i2 < adapter.getCount(); i2++) {
View view = adapter.getView(i2, null, listView);
view.measure(0, 0);
i += view.getMeasuredHeight();
}
int dividerHeight = listView.getDividerHeight();
int i3 = dividerHeight >= 0 ? dividerHeight : 0;
ViewGroup.LayoutParams layoutParams = listView.getLayoutParams();
layoutParams.height = i + (i3 * (adapter.getCount() - 1));
listView.setLayoutParams(layoutParams);
}
public static boolean isPhoneOwn(String str, List<String> list) {
LogMgr.showErrorLog("getSmsInfoList start" + System.currentTimeMillis());
boolean z = false;
try {
} catch (Exception e) {
e.printStackTrace();
}
if (!PermissionUtil.hasPermission(App.getContext(), PermissionActivity.PERMISION_9)) {
return false;
}
Uri parse = Uri.parse("content://sms/");
ContentResolver contentResolver = App.getContext().getContentResolver();
String str2 = (System.currentTimeMillis() - 2592000000L) + "";
Cursor query = contentResolver.query(parse, new String[]{FieldType.FOREIGN_ID_FIELD_SUFFIX, "body"}, "date >? and body like ?", new String[]{str2, "%" + str + "%"}, "date desc");
if (query != null) {
int columnIndex = query.getColumnIndex("body");
}
LogMgr.showErrorLog("getSmsInfoList end" + System.currentTimeMillis());
return z;
}
}