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;
    }
}