正在查看: CallApp v2.226 应用的 PhoneStateReceiver.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CallApp v2.226 应用的 PhoneStateReceiver.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.callapp.contacts.receiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.TelephonyManager;
import com.callapp.contacts.CallAppApplication;
import com.callapp.contacts.activity.setup.navigation.OnBoardingNavigationActivity;
import com.callapp.contacts.manager.analytics.AnalyticsManager;
import com.callapp.contacts.manager.phone.PhoneManager;
import com.callapp.contacts.manager.phone.PhoneStateManager;
import com.callapp.contacts.manager.preferences.Prefs;
import com.callapp.contacts.manager.preferences.prefs.IntegerPref;
import com.callapp.contacts.model.Constants;
import com.callapp.contacts.util.CLog;
import com.callapp.framework.util.StringUtils;
import java.util.Objects;
public class PhoneStateReceiver extends BaseReceiver {
public static String b;
@Override
public final void a(Context context, Intent intent) {
String str;
String str2;
boolean z;
if (PhoneManager.get().isDefaultPhoneApp() && Prefs.f1.get().booleanValue()) {
StringUtils.I(PhoneStateReceiver.class);
CLog.a();
return;
}
if (intent == null) {
StringUtils.I(PhoneStateReceiver.class);
CLog.a();
return;
}
Bundle extras = intent.getExtras();
if (extras == null) {
Object[] objArr = {intent.getAction()};
StringUtils.I(PhoneStateReceiver.class);
CLog.c("PhoneStateReceiver.onReceive called with ACTION=[%s]", objArr);
return;
}
String action = intent.getAction();
int i = 0;
if ("android.intent.action.PHONE_STATE".equals(action)) {
str = intent.getStringExtra("state");
str2 = extras.getString("incoming_number");
if (str != null) {
if (str.equals(TelephonyManager.EXTRA_STATE_IDLE)) {
z = false;
} else if (str.equals(TelephonyManager.EXTRA_STATE_OFFHOOK)) {
i = 2;
z = false;
} else if (str.equals(TelephonyManager.EXTRA_STATE_RINGING)) {
z = false;
i = 1;
}
}
z = false;
i = -1;
} else if ("android.intent.action.NEW_OUTGOING_CALL".equals(action)) {
str2 = intent.getStringExtra("android.intent.extra.PHONE_NUMBER");
str = PhoneStateManager.CALL_STATE_OUTGOING_RINGING_STRING;
i = -2;
z = true;
} else {
str = "";
str2 = "";
z = false;
i = -1;
}
Object[] objArr2 = {action, str2, Integer.valueOf(i)};
StringUtils.I(PhoneStateReceiver.class);
CLog.c("PhoneStateReceiver.onReceive called with ACTION = [%s], PHONE_NUMBER = [%s], EXTRA_STATE = [%d]", objArr2);
if (StringUtils.t(str2)) {
return;
}
if (!z && StringUtils.k(b, str)) {
StringUtils.I(PhoneStateReceiver.class);
CLog.a();
return;
}
if (!z) {
b = str;
}
if (!PhoneManager.get().isDefaultPhoneApp() || Prefs.f1.get().booleanValue()) {
PhoneStateManager.get().onCallStateChanged(PhoneStateManager.EVENT_SOURCE.RECEIVER, i, str2);
return;
}
if (i == 0) {
IntegerPref integerPref = Prefs.U7;
if (integerPref.isNull()) {
integerPref.set(-1);
}
integerPref.a(1);
if (integerPref.get().intValue() % 3 != 0) {
Objects.toString(integerPref.get());
StringUtils.I(PhoneStateReceiver.class);
CLog.a();
} else {
Objects.toString(integerPref.get());
StringUtils.I(PhoneStateReceiver.class);
CLog.a();
OnBoardingNavigationActivity.startActivity(CallAppApplication.get(), true, null, null, null);
AnalyticsManager.get().o(Constants.REGISTRATION, "StartOnboardingWithDefaultDialer");
}
}
}
}