iKredit v1.2.0.3版本的 MD5 值为:2c00c5c79eecbd6be4c3c546c28d778d
以下内容为反编译后的 BqsDF.java 源代码,内容仅作参考
package com.bqs.risk.df.android;
import android.bluetooth.BluetoothAdapter;
import android.bluetooth.BluetoothManager;
import android.content.Context;
import android.content.IntentFilter;
import android.os.AsyncTask;
import android.os.Build;
import android.text.TextUtils;
import android.webkit.WebSettings;
import com.android.sdklibrary.model.GpsInfo;
import com.bqs.risk.df.android.i.f;
import com.bqs.risk.df.android.i.g;
import com.bqs.risk.df.android.i.i;
import com.bqs.risk.df.android.i.k;
import com.bqs.risk.df.android.i.l;
import com.bqs.risk.df.android.i.m;
import com.ikreditgp.activity.PermissionActivity;
import java.util.ArrayList;
import java.util.List;
import org.json.JSONObject;
public class BqsDF {
private static volatile BqsDF a;
private static List<OnBqsDFListener> b;
private static List<OnGatherResultListener> c;
private static List<OnGatherResultListener> d;
private static com.bqs.risk.df.android.f.a f;
private static com.bqs.risk.df.android.f.b g;
private static BqsParams h;
private static String i;
private Context e;
private static class a extends AsyncTask<Void, Void, String> {
Context a;
private a(Context context) {
this.a = context;
}
@Override
public String doInBackground(Void... voidArr) {
try {
return BqsDF.b(this.a);
} catch (Exception e) {
g.a(e);
return "";
}
}
@Override
public void onPostExecute(String str) {
super.onPostExecute(str);
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("userAgent", str);
new com.bqs.risk.df.android.h.d(this.a, jSONObject).start();
} catch (Exception e) {
g.a(e);
}
}
}
private BqsDF() {
f = new com.bqs.risk.df.android.f.a();
g = new com.bqs.risk.df.android.f.b();
if (k.b(i)) {
i = l.a();
}
}
private static String a() {
return System.getProperty("http.agent");
}
private void a(OnBqsDFCallRecordListener onBqsDFCallRecordListener) {
if (d == null) {
d = new ArrayList();
}
if (d.contains(onBqsDFCallRecordListener)) {
return;
}
d.add(onBqsDFCallRecordListener);
}
private void a(OnBqsDFContactsListener onBqsDFContactsListener) {
if (c == null) {
c = new ArrayList();
}
if (c.contains(onBqsDFContactsListener)) {
return;
}
c.add(onBqsDFContactsListener);
}
private void a(OnBqsDFListener onBqsDFListener) {
if (b == null) {
b = new ArrayList();
}
if (b.contains(onBqsDFListener)) {
return;
}
b.add(onBqsDFListener);
}
public static String b(Context context) {
String c2 = c(context);
return TextUtils.isEmpty(c2) ? a() : c2;
}
private static String c(Context context) {
if (Build.VERSION.SDK_INT < 17) {
return null;
}
try {
return WebSettings.getDefaultUserAgent(context);
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
public static BqsDF getInstance() {
if (a == null) {
synchronized (BqsDF.class) {
if (a == null) {
a = new BqsDF();
}
}
}
return a;
}
public synchronized boolean canInitBqsSDK() {
boolean z;
long currentTimeMillis = System.currentTimeMillis();
if (com.bqs.risk.df.android.b.a.d != 0 && com.bqs.risk.df.android.b.a.e != 0) {
z = currentTimeMillis - com.bqs.risk.df.android.b.a.e >= ((long) com.bqs.risk.df.android.b.a.d);
}
return z;
}
public void commitContacts(List<ContactsBean> list) {
if (a == null || a.e == null || h == null) {
return;
}
boolean z = false;
com.bqs.risk.df.android.b.a.k = false;
String c2 = h.c();
if (k.a(c2)) {
c2 = h.isTestingEnv() ? "https://dfst.baiqishi.com/webdf/device/contacts" : "https://df.baiqishi.com/webdf/device/contacts";
} else {
z = true;
}
com.bqs.risk.df.android.b.a.j = list;
new com.bqs.risk.df.android.h.c(a.e, c2, z, h.getPartnerId()).start();
}
public void commitContactsAndCallRecords(boolean z, boolean z2) {
boolean z3;
if (a == null || a.e == null || h == null) {
return;
}
com.bqs.risk.df.android.b.a.k = true;
boolean z4 = false;
if (z && !com.bqs.risk.df.android.b.a.g) {
String c2 = h.c();
if (k.a(c2)) {
c2 = h.isTestingEnv() ? "https://dfst.baiqishi.com/webdf/device/contacts" : "https://df.baiqishi.com/webdf/device/contacts";
z3 = false;
} else {
z3 = true;
}
new com.bqs.risk.df.android.h.c(a.e, c2, z3, h.getPartnerId()).start();
com.bqs.risk.df.android.b.a.g = true;
}
if (!z2 || com.bqs.risk.df.android.b.a.h) {
return;
}
String e = h.e();
if (k.a(e)) {
e = h.isTestingEnv() ? "https://dfst.baiqishi.com/webdf/device/callRecords" : "https://df.baiqishi.com/webdf/device/callRecords";
} else {
z4 = true;
}
new com.bqs.risk.df.android.h.b(a.e, e, z4, h.getPartnerId()).start();
com.bqs.risk.df.android.b.a.h = true;
}
public void commitLocation() {
if (a == null || a.e == null) {
return;
}
new f(a.e).b();
}
public void commitLocation(double d2, double d3) {
if (a == null || a.e == null) {
return;
}
JSONObject jSONObject = new JSONObject();
try {
jSONObject.put("latitude", d3);
jSONObject.put(GpsInfo.COLUMNNAME_LONGITUDE, d2);
} catch (Exception e) {
g.a(e);
}
new com.bqs.risk.df.android.h.d(a.e, jSONObject).start();
}
public void destroy() {
if (a != null) {
i = null;
com.bqs.risk.df.android.b.a.d = 0;
com.bqs.risk.df.android.b.a.e = 0L;
com.bqs.risk.df.android.b.a.f = false;
com.bqs.risk.df.android.b.a.g = false;
com.bqs.risk.df.android.b.a.h = false;
}
}
public synchronized String getClientKey() {
if (a == null) {
return b.a((Context) null);
}
return b.a(a.e);
}
public List<OnGatherResultListener> getOnBqsDFCallRecordListener() {
return d;
}
public List<OnGatherResultListener> getOnBqsDFContactsListener() {
return c;
}
public List<OnBqsDFListener> getOnBqsDFListener() {
return b;
}
public BqsParams getParams() {
if (a == null) {
return null;
}
return h;
}
public String[] getRuntimePermissions() {
return getRuntimePermissions(true, false, false, true);
}
public String[] getRuntimePermissions(boolean z, boolean z2, boolean z3, boolean z4) {
ArrayList arrayList = new ArrayList();
arrayList.add(PermissionActivity.PERMISION_4);
arrayList.add(PermissionActivity.PERMISION_2);
if (z) {
arrayList.add(PermissionActivity.PERMISION_0);
arrayList.add(PermissionActivity.PERMISION_1);
}
if (z2) {
arrayList.add(PermissionActivity.PERMISION_6);
}
if (z3) {
arrayList.add("android.permission.READ_CALL_LOG");
}
if (z4) {
arrayList.add(PermissionActivity.PERMISION_9);
}
return (String[]) arrayList.toArray(new String[0]);
}
public String getTokenKey() {
if (k.b(i)) {
i = l.a();
}
return i;
}
public void initialize(Context context, BqsParams bqsParams) {
BluetoothManager bluetoothManager;
BluetoothAdapter adapter;
if (context == null) {
g.a("Context不能为空");
return;
}
if (bqsParams == null) {
g.a("BqsParams不能为空");
return;
}
if (com.bqs.risk.df.android.b.a.f) {
return;
}
if (k.b(bqsParams.getPartnerId())) {
g.a("partnerId参数错误");
return;
}
if (!k.b(bqsParams.a())) {
i = bqsParams.a();
}
this.e = context.getApplicationContext();
h = bqsParams;
if (bqsParams.b()) {
new f(context.getApplicationContext()).b();
}
if (!canInitBqsSDK()) {
List<OnBqsDFListener> onBqsDFListener = getInstance().getOnBqsDFListener();
if (onBqsDFListener == null || onBqsDFListener.size() <= 0) {
return;
}
for (OnBqsDFListener onBqsDFListener2 : onBqsDFListener) {
if (onBqsDFListener2 != null) {
onBqsDFListener2.onSuccess(getInstance().getTokenKey());
}
}
return;
}
com.bqs.risk.df.android.b.a.f = true;
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("android.intent.action.BATTERY_CHANGED");
intentFilter.setPriority(1000);
IntentFilter intentFilter2 = new IntentFilter();
intentFilter2.addAction("android.bluetooth.device.action.FOUND");
intentFilter2.addAction("android.bluetooth.device.action.BOND_STATE_CHANGED");
intentFilter2.addAction("android.bluetooth.adapter.action.DISCOVERY_FINISHED");
intentFilter2.addAction("android.bluetooth.adapter.action.SCAN_MODE_CHANGED");
intentFilter2.addAction("android.bluetooth.adapter.action.STATE_CHANGED");
intentFilter2.setPriority(1000);
try {
a.e.registerReceiver(f, intentFilter);
if (Build.VERSION.SDK_INT >= 18 && (bluetoothManager = (BluetoothManager) context.getSystemService("bluetooth")) != null && (adapter = bluetoothManager.getAdapter()) != null) {
adapter.startDiscovery();
}
a.e.registerReceiver(g, intentFilter2);
} catch (Exception e) {
g.a(e);
}
new com.bqs.risk.df.android.e.d(a.e).d();
new com.bqs.risk.df.android.h.d(a.e, null).start();
commitContactsAndCallRecords(bqsParams.isGatherContact(), bqsParams.isGatherCallRecord());
if (bqsParams.d()) {
new i(context.getApplicationContext()).a();
}
new a(a.e).execute(new Void[0]);
new m.a(a.e).execute(new Void[0]);
}
public void release() {
if (d != null) {
d = null;
}
if (b != null) {
b = null;
}
if (c != null) {
c = null;
}
}
public void setOnBqsDFCallRecordListener(OnBqsDFCallRecordListener onBqsDFCallRecordListener) {
List<OnGatherResultListener> list = d;
if (list != null) {
list.clear();
}
a(onBqsDFCallRecordListener);
}
public void setOnBqsDFContactsListener(OnBqsDFContactsListener onBqsDFContactsListener) {
List<OnGatherResultListener> list = c;
if (list != null) {
list.clear();
}
a(onBqsDFContactsListener);
}
public void setOnBqsDFListener(OnBqsDFListener onBqsDFListener) {
List<OnBqsDFListener> list = b;
if (list != null) {
list.clear();
}
a(onBqsDFListener);
}
}