Files
Daniel Elliott c080f0d97f Add Discord community version (64-bit only)
- Added realracing3-community.apk (71.57 MB)
- Removed 32-bit support (armeabi-v7a)
- Only includes arm64-v8a libraries
- Decompiled source code included
- Added README-community.md with analysis
2026-02-18 15:48:36 -08:00

373 lines
18 KiB
Java

package com.helpshift;
import android.app.Activity;
import android.app.Application;
import android.content.Context;
import android.content.Intent;
import android.os.Looper;
import com.ea.eadp.pushnotification.forwarding.FCMMessageService;
import com.facebook.share.internal.ShareConstants;
import com.google.android.gms.drive.DriveFile;
import com.helpshift.activities.HSMainActivity;
import com.helpshift.core.HSContext;
import com.helpshift.exception.HSUncaughtExceptionHandler;
import com.helpshift.lifecycle.HSAppLifeCycleController;
import com.helpshift.log.HSLogger;
import com.helpshift.log.InternalHelpshiftLogger;
import com.helpshift.log.LogCollector;
import com.helpshift.user.UserManager;
import com.helpshift.util.ApplicationUtil;
import com.helpshift.util.HSTimer;
import com.helpshift.util.SchemaUtil;
import com.helpshift.util.SdkURLs;
import com.helpshift.util.Utils;
import java.util.HashMap;
import java.util.Map;
/* loaded from: classes3.dex */
public abstract class Helpshift {
public static void setHelpshiftEventsListener(final HelpshiftEventsListener helpshiftEventsListener) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "setHelpshiftEventsListener() is called.");
HSContext.getInstance().getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.1
@Override // java.lang.Runnable
public void run() {
HSContext.getInstance().getHsEventProxy().setHelpshiftEventsListener(HelpshiftEventsListener.this);
}
});
}
}
public static synchronized void install(final Application application, final String str, final String str2, final Map map) {
synchronized (Helpshift.class) {
if (HSContext.installCallSuccessful.get()) {
HSLogger.d("Helpshift", "Helpshift is already initialized !");
return;
}
SchemaUtil.validateInstallCredentials(str2, str);
final Map sanitizeConfig = HSInstallHelper.sanitizeConfig(map);
Object obj = sanitizeConfig.get("isForChina");
if ((obj instanceof Boolean) && ((Boolean) obj).booleanValue()) {
SdkURLs.updateHosts("webchat.hsftcn.cn", "media.hsftcn.cn");
}
HSContext.initInstance(application);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSync(new Runnable() { // from class: com.helpshift.Helpshift.3
@Override // java.lang.Runnable
public void run() {
HSContext.this.getNativeToSdkxMigrator().migrate();
HSContext.this.initialiseComponents(application);
HSInstallHelper.setupLifecycleListeners(application, sanitizeConfig);
}
});
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.4
@Override // java.lang.Runnable
public void run() {
HSContext.this.getConfigManager().saveInstallKeys(str, str2);
boolean isApplicationInDebugMode = ApplicationUtil.isApplicationInDebugMode(application);
Object obj2 = sanitizeConfig.get("enableLogging");
boolean z = (obj2 instanceof Boolean) && ((Boolean) obj2).booleanValue();
HSContext.this.setSDKLoggingEnabled(z);
InternalHelpshiftLogger internalHelpshiftLogger = new InternalHelpshiftLogger(isApplicationInDebugMode, z);
if (isApplicationInDebugMode && z) {
internalHelpshiftLogger.setLogCollector(new LogCollector(application, System.currentTimeMillis() + "", Looper.getMainLooper().getThread().getId()));
HSUncaughtExceptionHandler.init();
HSContext.this.getNotificationManager().showDebugLogNotification();
}
HSLogger.initLogger(internalHelpshiftLogger);
HSLogger.d("Helpshift", "Install called: Domain : " + str2 + ", Config: " + map + " SDK X Version: " + HSContext.this.getDevice().getSDKVersion());
HSInstallHelper.setNotificationConfigValues(application, HSContext.this.getNotificationManager(), sanitizeConfig);
HSContext.this.getWebchatAnalyticsManager().setAnalyticsEventsData(sanitizeConfig);
HSInstallHelper.setEnableInAppNotification(sanitizeConfig, HSContext.this.getPersistentStorage());
HSInstallHelper.setScreenOrientation(sanitizeConfig, HSContext.this.getPersistentStorage());
HSContext.this.getHelpcenterCacheEvictionManager().deleteOlderHelpcenterCachedFiles();
HSContext.this.getUserManager().generateAndSaveAnonymousUserIdIfNeeded();
if (HSPluginEventBridge.shouldCallFirstForegroundEvent()) {
HSAppLifeCycleController.getInstance().onAppForeground();
}
}
});
HSContext.installCallSuccessful.compareAndSet(false, true);
}
}
public static void showConversation(Activity activity, Map map) {
if (HSContext.verifyInstall()) {
HSTimer.setStartTime("api");
showConversationInternal(activity, map, false);
}
}
public static void showConversationInternal(final Context context, final Map map, final boolean z) {
HSLogger.d("Helpshift", "showConversation is called with config: " + map + " \n Is proactive? " + z);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runOnUIThread(new Runnable() { // from class: com.helpshift.Helpshift.6
@Override // java.lang.Runnable
public void run() {
map.put("enableLogging", Boolean.valueOf(hSContext.isSDKLoggingEnabled()));
Helpshift.saveConfig(map);
Intent intent = new Intent(context, (Class<?>) HSMainActivity.class);
intent.putExtra("SERVICE_MODE", "WEBCHAT_SERVICE_FLAG");
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "api");
if (z) {
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "proactive");
intent.setFlags(DriveFile.MODE_READ_ONLY);
}
context.startActivity(intent);
}
});
}
public static void showFAQs(Activity activity, Map map) {
if (HSContext.verifyInstall()) {
showFAQsInternal(activity, map, false);
}
}
public static void showFAQsInternal(final Context context, final Map map, final boolean z) {
HSLogger.d("Helpshift", "showFAQs is called with config: " + map + " \n Is proactive? " + z);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runOnUIThread(new Runnable() { // from class: com.helpshift.Helpshift.7
@Override // java.lang.Runnable
public void run() {
map.put("enableLogging", Boolean.valueOf(hSContext.isSDKLoggingEnabled()));
Helpshift.saveConfig(map);
Intent intent = new Intent(context, (Class<?>) HSMainActivity.class);
intent.putExtra("SERVICE_MODE", "HELP_CENTER_SERVICE_FLAG");
intent.putExtra("HELPCENTER_MODE", "APP_MAIN_PAGE");
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "api");
if (z) {
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "proactive");
intent.setFlags(DriveFile.MODE_READ_ONLY);
}
context.startActivity(intent);
}
});
}
public static void showFAQSection(Activity activity, String str, Map map) {
if (HSContext.verifyInstall()) {
showFAQSectionInternal(activity, str, map, false);
}
}
public static void showFAQSectionInternal(final Context context, final String str, final Map map, final boolean z) {
HSLogger.d("Helpshift", "showFAQSection is called with sectionId" + str + " & config: " + map + " \n Is proactive? : " + z);
if (Utils.isEmpty(str)) {
HSLogger.e("Helpshift", "Invalid FAQ Section ID. Ignoring call to showFAQSection API.");
} else {
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runOnUIThread(new Runnable() { // from class: com.helpshift.Helpshift.8
@Override // java.lang.Runnable
public void run() {
map.put("enableLogging", Boolean.valueOf(hSContext.isSDKLoggingEnabled()));
Helpshift.saveConfig(map);
Intent intent = new Intent(context, (Class<?>) HSMainActivity.class);
intent.putExtra("SERVICE_MODE", "HELP_CENTER_SERVICE_FLAG");
intent.putExtra("HELPCENTER_MODE", "FAQ_SECTION");
intent.putExtra("FAQ_SECTION_ID", str);
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "api");
if (z) {
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "proactive");
intent.setFlags(DriveFile.MODE_READ_ONLY);
}
context.startActivity(intent);
}
});
}
}
public static void showSingleFAQ(Activity activity, String str, Map map) {
if (HSContext.verifyInstall()) {
showSingleFAQInternal(activity, str, map, false);
}
}
public static void showSingleFAQInternal(final Context context, final String str, final Map map, final boolean z) {
HSLogger.d("Helpshift", "showSingleFAQ() is called with publishId" + str + " & config: " + map + " \n Is proactive? : " + z);
if (Utils.isEmpty(str)) {
HSLogger.e("Helpshift", "Invalid FAQ ID. Ignoring call to showSingleFAQ API.");
} else {
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runOnUIThread(new Runnable() { // from class: com.helpshift.Helpshift.9
@Override // java.lang.Runnable
public void run() {
map.put("enableLogging", Boolean.valueOf(hSContext.isSDKLoggingEnabled()));
Helpshift.saveConfig(map);
Intent intent = new Intent(context, (Class<?>) HSMainActivity.class);
intent.putExtra("SERVICE_MODE", "HELP_CENTER_SERVICE_FLAG");
intent.putExtra("HELPCENTER_MODE", "SINGLE_FAQ");
intent.putExtra("SINGLE_FAQ_PUBLISH_ID", str);
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "api");
if (z) {
intent.putExtra(ShareConstants.FEED_SOURCE_PARAM, "proactive");
intent.setFlags(DriveFile.MODE_READ_ONLY);
}
context.startActivity(intent);
}
});
}
}
public static void leaveBreadCrumb(final String str) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "leaveBreadCrumb() is called with action " + str);
if (Utils.isEmpty(str)) {
return;
}
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.10
@Override // java.lang.Runnable
public void run() {
HSContext.this.getConfigManager().pushBreadCrumb(str);
}
});
}
}
public static void clearBreadCrumbs() {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "Clearing Breadcrumbs");
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.11
@Override // java.lang.Runnable
public void run() {
HSContext.this.getConfigManager().clearBreadCrumbs();
}
});
}
}
public static void saveConfig(Map map) {
if (map == null) {
map = new HashMap();
}
setCIFs(map.remove("customIssueFields"));
HSContext.getInstance().getConfigManager().saveConfig(map);
}
public static void setCIFs(Object obj) {
try {
HSLogger.d("Helpshift", "Setting CIFs.");
HSContext.getInstance().getConfigManager().saveCustomIssueFields(obj instanceof Map ? (Map) obj : null);
} catch (Exception e) {
HSLogger.e("Helpshift", "Error setting CIFs", e);
}
}
public static void login(final Map map) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "Logging in the user: " + map);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.12
@Override // java.lang.Runnable
public void run() {
UserManager userManager = HSContext.this.getUserManager();
if (userManager.getClearAnonymousUserOnLoginFlag()) {
userManager.removeAnonymousUser();
userManager.generateAndSaveAnonymousUserIdIfNeeded();
}
userManager.login(map);
}
});
}
}
public static void logout() {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "Logging out the user");
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.13
@Override // java.lang.Runnable
public void run() {
HSContext.this.getUserManager().logout();
}
});
}
}
public static void setLanguage(final String str) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "setLanguage() is called for language - " + str);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.14
@Override // java.lang.Runnable
public void run() {
HSContext.this.getConfigManager().saveLanguage(str);
}
});
}
}
public static void registerPushToken(final String str) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "Registering push token, token is empty?- " + Utils.isEmpty(str));
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.15
@Override // java.lang.Runnable
public void run() {
HSContext.this.getUserManager().registerPushToken(str);
}
});
}
}
public static void handlePush(final Map map) {
if (!HSContext.verifyInstall() || map == null || map.size() == 0) {
return;
}
HSLogger.d("Helpshift", "handlePush() is called.");
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.16
@Override // java.lang.Runnable
public void run() {
if (!HSContext.this.isWebchatUIOpen()) {
HSContext.this.getUserManager().updatePushUnreadCountBy(1);
}
HSContext.this.getNotificationManager().showNotification((String) map.get(FCMMessageService.PushIntentExtraKeys.ALERT), true);
}
});
}
public static void requestUnreadMessageCount(final boolean z) {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "requestUnreadMessageCount is called with shouldFetchFromServer = " + z);
final HSContext hSContext = HSContext.getInstance();
hSContext.getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.18
@Override // java.lang.Runnable
public void run() {
if (z) {
hSContext.getRequestUnreadMessageCountHandler().handleRemoteRequest();
} else {
hSContext.getRequestUnreadMessageCountHandler().handleLocalCacheRequest();
}
}
});
}
}
public static void onAppForeground() {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "onAppForeground() is called for Manual App lifecycle tracking");
HSContext.getInstance().getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.19
@Override // java.lang.Runnable
public void run() {
HSAppLifeCycleController.getInstance().onManualAppForegroundAPI();
}
});
}
}
public static void onAppBackground() {
if (HSContext.verifyInstall()) {
HSLogger.d("Helpshift", "onAppBackground() is called for Manual App lifecycle tracking");
HSContext.getInstance().getHsThreadingService().runSerial(new Runnable() { // from class: com.helpshift.Helpshift.20
@Override // java.lang.Runnable
public void run() {
HSAppLifeCycleController.getInstance().onManualAppBackgroundAPI();
}
});
}
}
}