正在查看: CallApp v2.226 应用的 CallAppShortcutManager.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: CallApp v2.226 应用的 CallAppShortcutManager.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package com.callapp.contacts.manager;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.content.IntentSender;
import android.content.pm.ShortcutInfo;
import android.content.pm.ShortcutManager;
import android.graphics.Bitmap;
import android.graphics.drawable.Icon;
import android.os.Build;
import com.callapp.contacts.CallAppApplication;
import com.callapp.contacts.R;
import com.callapp.contacts.activity.contact.details.ContactDetailsActivity;
import com.callapp.contacts.activity.marketplace.planPage.CallAppPlanPageActivity;
import com.callapp.contacts.manager.inAppBilling.CallAppBillingManager;
import com.callapp.contacts.manager.popup.ActivityResult;
import com.callapp.contacts.manager.preferences.Prefs;
import com.callapp.contacts.manager.task.Task;
import com.callapp.contacts.model.contact.ContactData;
import com.callapp.contacts.util.Activities;
import com.callapp.contacts.util.CLog;
import com.callapp.contacts.util.callappRomHelper.romHelper.base.detector.RomDetector;
import com.callapp.contacts.util.callappRomHelper.romHelper.miui.MIUIHelper;
import com.callapp.contacts.util.glide.GlideUtils;
import com.callapp.framework.util.StringUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.Iterator;
import java.util.Random;
import k0.d;
public class CallAppShortcutManager {
class AnonymousClass4 implements Runnable {
public final ShortcutManager a;
public final int b;
public final Context c;
public final ShortcutInfo d;
public final PendingIntent e;
public AnonymousClass4(ShortcutManager shortcutManager, int i, Context context, ShortcutInfo shortcutInfo, PendingIntent pendingIntent) {
this.a = shortcutManager;
this.b = i;
this.c = context;
this.d = shortcutInfo;
this.e = pendingIntent;
}
@Override
public final void run() {
if (CallAppShortcutManager.e(this.a) == this.b) {
FeedbackManager.get().d(null, Activities.getString(R.string.miui_shortcut_permission_request));
Context context = this.c;
Activities.H(context, MIUIHelper.c(context), new ActivityResult() {
@Override
public final void h(Activity activity, int i, int i2, Intent intent) {
AnonymousClass4 anonymousClass4 = AnonymousClass4.this;
anonymousClass4.a.requestPinShortcut(anonymousClass4.d, anonymousClass4.e.getIntentSender());
CallAppApplication.get().postRunnableDelayed(new Runnable() {
@Override
public final void run() {
AnonymousClass4 anonymousClass42 = AnonymousClass4.this;
if (anonymousClass42.b != CallAppShortcutManager.e(anonymousClass42.a)) {
Prefs.g0.set(Boolean.TRUE);
} else {
FeedbackManager.get().d(null, Activities.getString(R.string.permission_is_needed_shortcuts));
}
}
}, 1000L);
}
}, null);
}
}
}
public static void a(Context context, Intent intent, String str, String str2, String str3, int i, String str4) {
try {
ShortcutManager shortcutManager = (ShortcutManager) context.getSystemService(ShortcutManager.class);
if (shortcutManager != null && shortcutManager.isRequestPinShortcutSupported()) {
b(shortcutManager, str, context, intent, str2, str3, i, str4);
return;
}
FeedbackManager.get().d(null, "Could not create ShotCut");
CLog.l("CallAppShortcutManager", "Could not get ShortcutManager Service. service = " + shortcutManager, new Object[0]);
Prefs.g0.set(Boolean.FALSE);
} catch (Throwable th) {
CLog.m("CallAppShortcutManager", th);
Prefs.g0.set(Boolean.FALSE);
}
}
public static void b(final ShortcutManager shortcutManager, String str, final Context context, Intent intent, final String str2, String str3, final int i, final String str4) {
if (str == null) {
str = new Random().nextInt(1000) + "";
}
final ShortcutInfo.Builder builder = new ShortcutInfo.Builder(context, str);
builder.setShortLabel(str2).setLongLabel(str3).setIntent(intent).build();
new Task() {
@Override
public final void doTask() {
int i2 = i;
String str5 = str4;
Context context2 = context;
ShortcutInfo.Builder builder2 = builder;
try {
if (StringUtils.t(str5)) {
builder2.setIcon(Icon.createWithResource(context2, i2));
} else {
Object obj = GlideUtils.a;
GlideUtils.GlideRequestBuilder glideRequestBuilder = new GlideUtils.GlideRequestBuilder(str5);
glideRequestBuilder.f = CallAppApplication.get();
builder2.setIcon(Icon.createWithBitmap((Bitmap) glideRequestBuilder.getTargetBitmap().get()));
}
} catch (Throwable th) {
CLog.m("Task", th);
builder2.setIcon(Icon.createWithResource(context2, i2));
}
ShortcutInfo build = builder2.build();
Intent intent2 = new Intent("general.intent.action.SHORTCUT_ADDED");
intent2.putExtra("shortcut_name", str2);
intent2.setPackage(context2.getPackageName());
PendingIntent broadcast = PendingIntent.getBroadcast(context2, 100, intent2, 67108864);
IntentSender intentSender = broadcast.getIntentSender();
ShortcutManager shortcutManager2 = shortcutManager;
boolean requestPinShortcut = shortcutManager2.requestPinShortcut(build, intentSender);
BroadcastReceiver broadcastReceiver = new BroadcastReceiver() {
@Override
public final void onReceive(Context context3, Intent intent3) {
if (StringUtils.m(intent3.getAction(), "general.intent.action.SHORTCUT_ADDED")) {
Prefs.g0.set(Boolean.TRUE);
}
CallAppApplication.get().unregisterReceiver(this);
}
};
IntentFilter intentFilter = new IntentFilter("general.intent.action.SHORTCUT_ADDED");
if (Build.VERSION.SDK_INT >= 33) {
CallAppApplication.get().registerReceiver(broadcastReceiver, intentFilter, 2);
} else {
CallAppApplication.get().registerReceiver(broadcastReceiver, intentFilter);
}
if (!requestPinShortcut) {
Prefs.g0.set(Boolean.FALSE);
}
if (RomDetector.isMIUI()) {
CallAppApplication.get().postRunnableDelayed(new AnonymousClass4(shortcutManager2, CallAppShortcutManager.e(shortcutManager2), context2, build, broadcast), 1000L);
}
}
}.execute();
}
public static boolean c() {
ArrayList a;
try {
?? r1 = CallAppApplication.get();
if (!((ShortcutManager) r1.getSystemService(ShortcutManager.class)).isRequestPinShortcutSupported()) {
return false;
}
if (Build.VERSION.SDK_INT >= 30) {
a = d.a(io.bidmachine.media3.exoplayer.source.chunk.a.k((ShortcutManager) r1.getSystemService(ShortcutManager.class)), (CallAppApplication) r1);
} else {
ShortcutManager shortcutManager = (ShortcutManager) r1.getSystemService(ShortcutManager.class);
ArrayList arrayList = new ArrayList();
arrayList.addAll(shortcutManager.getPinnedShortcuts());
a = d.a(arrayList, (CallAppApplication) r1);
}
Iterator it = a.iterator();
while (it.hasNext()) {
if (((d) it.next()).b.equals(r1.getPackageName())) {
Prefs.g0.set(Boolean.TRUE);
return true;
}
}
return false;
} catch (Exception unused) {
Prefs.g0.set(Boolean.FALSE);
return false;
}
}
public static Intent d(Context context, ContactData contactData) {
Intent createIntent = ContactDetailsActivity.createIntent(context, contactData.getDeviceId(), contactData.getPhone().getRawNumber());
createIntent.putExtra(ContactDetailsActivity.EXTRA_FORCE_SHOW_CORRECTED_INFO_PRESENTER, contactData.getDeviceId() == 0);
createIntent.putExtra(ContactDetailsActivity.EXTRA_FORCE_SHOW_IS_SPAM_PRESENTER, contactData.getDeviceId() == 0);
createIntent.setAction("android.intent.action.MAIN");
return createIntent;
}
public static int e(ShortcutManager shortcutManager) {
return Build.VERSION.SDK_INT >= 30 ? io.bidmachine.media3.exoplayer.source.chunk.a.k(shortcutManager).size() : shortcutManager.getPinnedShortcuts().size();
}
public static void f() {
if (Prefs.f1.get().booleanValue()) {
CallAppApplication.get().runOnBackgroundThread(new Task() {
@Override
public final void doTask() {
ShortcutManager shortcutManager = (ShortcutManager) CallAppApplication.get().getSystemService(ShortcutManager.class);
if (shortcutManager == null || !CallAppBillingManager.isBillingAvailable()) {
return;
}
ShortcutInfo build = new ShortcutInfo.Builder(CallAppApplication.get(), "premium").setShortLabel(Activities.getString(R.string.premium)).setLongLabel(Activities.getString(R.string.premium)).setIcon(Icon.createWithResource((Context) CallAppApplication.get(), R.mipmap.ic_premium_launcher)).setIntent(CallAppPlanPageActivity.getIntent(CallAppApplication.get(), "dynamicShortcut").setAction("android.intent.action.VIEW")).build();
ArrayList arrayList = new ArrayList();
if (!Prefs.S2.get().booleanValue()) {
arrayList.add(build);
}
try {
if (shortcutManager.getMaxShortcutCountPerActivity() >= shortcutManager.getManifestShortcuts().size() + arrayList.size()) {
shortcutManager.setDynamicShortcuts(arrayList);
}
} catch (Exception e) {
CLog.c("Failed to create dynamic shortcut", e);
}
}
});
}
}
public static boolean g(Context context, String str) {
boolean z = false;
if (str == null) {
return false;
}
Iterator<ShortcutInfo> it = ((ShortcutManager) context.getSystemService(ShortcutManager.class)).getPinnedShortcuts().iterator();
while (it.hasNext()) {
if (it.next().getId().equals(str)) {
z = true;
}
}
return z;
}
public static void h(String str, Context context, String str2, String str3, Intent intent, final String str4) {
final ShortcutManager shortcutManager = (ShortcutManager) context.getSystemService(ShortcutManager.class);
final ShortcutInfo.Builder builder = new ShortcutInfo.Builder(context, str);
builder.setShortLabel(str2).setLongLabel(str3).setIntent(intent).build();
if (str4 != null) {
new Task() {
@Override
public final void doTask() {
ShortcutInfo.Builder builder2 = builder;
try {
String str5 = str4;
Object obj = GlideUtils.a;
GlideUtils.GlideRequestBuilder glideRequestBuilder = new GlideUtils.GlideRequestBuilder(str5);
glideRequestBuilder.f = CallAppApplication.get();
builder2.setIcon(Icon.createWithBitmap((Bitmap) glideRequestBuilder.getTargetBitmap().get()));
} catch (Throwable th) {
CLog.m("Task", th);
}
try {
shortcutManager.updateShortcuts(Collections.singletonList(builder2.build()));
} catch (Exception e) {
CLog.m("Task", e);
}
}
}.execute();
} else {
builder.setIcon(Icon.createWithResource(context, R.drawable.profile_pic_default));
shortcutManager.updateShortcuts(Collections.singletonList(builder.build()));
}
}
}