正在查看: Rilo v2.0.21 应用的 HeadsUpNotificationService.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
正在查看: Rilo v2.0.21 应用的 HeadsUpNotificationService.java JAVA 源代码文件
本页面展示 JAVA 反编译生成的源代码文件,支持语法高亮显示。 仅供安全研究与技术分析使用,严禁用于任何非法用途。请遵守相关法律法规。
package app.callpe.service;
import android.app.Notification;
import android.app.NotificationChannel;
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.app.TaskStackBuilder;
import android.content.Context;
import android.content.Intent;
import android.media.AudioAttributes;
import android.net.Uri;
import android.os.Build;
import android.os.Handler;
import android.os.IBinder;
import android.os.Looper;
import android.os.PowerManager;
import android.text.Spannable;
import android.text.SpannableString;
import android.text.style.ForegroundColorSpan;
import androidx.core.app.NotificationCompat;
import app.callpe.common.utils.Constants;
import app.callpe.common.utils.MediaPlayerSingleton;
import app.callpe.common.utils.receivers.HeadsUpNotificationActionReceiver;
import app.callpe.data.model.StreamerModel;
import app.callpe.data.model.VideoDetailModel;
import app.callpe.ui.call.BotCallActivity;
import app.callpe.ui.call.CallActivity;
import app.callpe.ui.call.ZegoVideoCallActivity;
import com.google.gson.Gson;
import java.util.Arrays;
import java.util.Timer;
import java.util.TimerTask;
import java.util.concurrent.CancellationException;
import kotlin.Metadata;
import kotlin.coroutines.CoroutineContext;
import kotlin.jvm.internal.DefaultConstructorMarker;
import kotlin.jvm.internal.Intrinsics;
import kotlin.jvm.internal.Ref;
import kotlin.jvm.internal.StringCompanionObject;
import kotlinx.coroutines.BuildersKt;
import kotlinx.coroutines.CoroutineScope;
import kotlinx.coroutines.CoroutineScopeKt;
import kotlinx.coroutines.CoroutineStart;
import kotlinx.coroutines.Dispatchers;
import kotlinx.coroutines.Job;
import kotlinx.coroutines.SupervisorKt;
import timber.log.Timber;
@Metadata(d1 = {"\u0000n\n\u0002\u0018\u0002\n\u0002\u0018\u0002\n\u0002\b\u0002\n\u0002\u0010\u000e\n\u0002\b\u0002\n\u0002\u0010\b\n\u0002\b\u0002\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0010\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0004\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0003\n\u0002\u0018\u0002\n\u0000\n\u0002\u0018\u0002\n\u0002\b\f\u0018\u0000 42\u00020\u0001:\u00014B\u0005¢\u0006\u0002\u0010\u0002J\u001d\u0010\u000f\u001a\u0004\u0018\u00010\u00102\b\u0010\u0011\u001a\u0004\u0018\u00010\u0004H\u0082@ø\u0001\u0000¢\u0006\u0002\u0010\u0012J%\u0010\u0013\u001a\u00020\u00142\b\u0010\u0015\u001a\u0004\u0018\u00010\u00162\b\u0010\u0011\u001a\u0004\u0018\u00010\u0004H\u0082@ø\u0001\u0000¢\u0006\u0002\u0010\u0017J\u0006\u0010\u0018\u001a\u00020\u0014J\b\u0010\u0019\u001a\u00020\u0014H\u0002J$\u0010\u001a\u001a\u00020\u001b2\u0006\u0010\u001c\u001a\u00020\u001d2\b\b\u0001\u0010\u001e\u001a\u00020\u00072\b\b\u0001\u0010\u001f\u001a\u00020\u0007H\u0002J \u0010 \u001a\u00020!2\u0006\u0010\"\u001a\u00020#2\u0006\u0010$\u001a\u00020!2\u0006\u0010%\u001a\u00020!H\u0002J\u0012\u0010&\u001a\u0004\u0018\u00010'2\u0006\u0010(\u001a\u00020)H\u0016J\b\u0010*\u001a\u00020\u0014H\u0016J\b\u0010+\u001a\u00020\u0014H\u0016J\"\u0010,\u001a\u00020\u00072\b\u0010(\u001a\u0004\u0018\u00010)2\u0006\u0010-\u001a\u00020\u00072\u0006\u0010.\u001a\u00020\u0007H\u0016J\u0010\u0010/\u001a\u00020\u00142\u0006\u00100\u001a\u00020)H\u0016J\b\u00101\u001a\u00020\u0014H\u0002J\b\u00102\u001a\u00020\u0014H\u0002J\b\u00103\u001a\u00020\u0014H\u0002R\u000e\u0010\u0003\u001a\u00020\u0004X\u0082D¢\u0006\u0002\n\u0000R\u000e\u0010\u0005\u001a\u00020\u0004X\u0082D¢\u0006\u0002\n\u0000R\u000e\u0010\u0006\u001a\u00020\u0007X\u0082D¢\u0006\u0002\n\u0000R\u000e\u0010\b\u001a\u00020\u0004X\u0082D¢\u0006\u0002\n\u0000R\u0010\u0010\t\u001a\u0004\u0018\u00010\nX\u0082\u000e¢\u0006\u0002\n\u0000R\u000e\u0010\u000b\u001a\u00020\fX\u0082\u0004¢\u0006\u0002\n\u0000R\u000e\u0010\r\u001a\u00020\u000eX\u0082\u0004¢\u0006\u0002\n\u0000\u0082\u0002\u0004\n\u0002\b\u0019¨\u00065"}, d2 = {"Lapp/callpe/service/HeadsUpNotificationService;", "Landroid/app/Service;", "()V", "CHANNEL_ID", "", "CHANNEL_NAME", "NOTIFICATION_ID", "", "WAIT_CHANNEL_ID", "handler", "Landroid/os/Handler;", "serviceScope", "Lkotlinx/coroutines/CoroutineScope;", "timer", "Ljava/util/Timer;", "addProfileIcon", "Landroid/graphics/drawable/Icon;", "pic", "(Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", "addProfilePic", "", "notificationConpactBuilder", "Landroidx/core/app/NotificationCompat$Builder;", "(Landroidx/core/app/NotificationCompat$Builder;Ljava/lang/String;Lkotlin/coroutines/Continuation;)Ljava/lang/Object;", "createChannel", "createNotification", "getActionText", "Landroid/text/Spannable;", "context", "Landroid/content/Context;", "stringRes", "colorRes", "getDeclineAction", "Landroid/app/PendingIntent;", "isBot", "", "cancelCallPendingIntent", "fullScreenPendingIntent", "onBind", "Landroid/os/IBinder;", "intent", "Landroid/content/Intent;", "onCreate", "onDestroy", "onStartCommand", "flags", "startId", "onTaskRemoved", "rootIntent", "scheduleStopTask", "screenOn", "stopHeadsUpService", "Companion", "app_riloRelease"}, k = 1, mv = {1, 8, 0}, xi = 48)
public final class HeadsUpNotificationService extends Service {
public static final Companion INSTANCE = new Companion(null);
private static final long STOP_SERVICE_DELAY = 30000;
private static boolean isServiceRunning;
private Handler handler;
private final Timer timer = new Timer();
private final String CHANNEL_ID = "15005";
private final String WAIT_CHANNEL_ID = "15006";
private final String CHANNEL_NAME = "Call Ring Notification";
private final int NOTIFICATION_ID = 9999;
private final CoroutineScope serviceScope = CoroutineScopeKt.CoroutineScope(Dispatchers.getDefault().plus(SupervisorKt.SupervisorJob$default((Job) null, 1, (Object) null)));
public final PendingIntent getDeclineAction(boolean isBot, PendingIntent cancelCallPendingIntent, PendingIntent fullScreenPendingIntent) {
return isBot ? fullScreenPendingIntent : cancelCallPendingIntent;
}
@Override
public IBinder onBind(Intent intent) {
Intrinsics.checkNotNullParameter(intent, "intent");
return null;
}
@Override
public void onCreate() {
super.onCreate();
Timber.e("HeadsUpNotificationService Created", new Object[0]);
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
String str;
Ref.ObjectRef objectRef;
String str2;
boolean z;
PendingIntent broadcast;
final HeadsUpNotificationService headsUpNotificationService;
Intent intent2;
MediaPlayerSingleton companion;
String str3;
boolean z2;
boolean z3;
Object obj;
String str4;
String string;
Timber.e("HeadsUpNotificationService Started", new Object[0]);
isServiceRunning = true;
Ref.ObjectRef objectRef2 = new Ref.ObjectRef();
objectRef2.element = "";
Intent intent3 = new Intent(getApplicationContext(), (Class<?>) ZegoVideoCallActivity.class);
Ref.ObjectRef objectRef3 = new Ref.ObjectRef();
String string2 = getString(2131952151);
Intrinsics.checkNotNullExpressionValue(string2, "getString(R.string.incoming_video_call)");
objectRef3.element = string2;
Ref.BooleanRef booleanRef = new Ref.BooleanRef();
screenOn();
createChannel();
createNotification();
scheduleStopTask();
if (intent == null) {
stopSelf();
return 2;
}
if (intent.getExtras() != null) {
String stringExtra = intent.getStringExtra(Constants.FCM_DATA);
Object obj2 = null;
String str5 = null;
if (stringExtra != null) {
Object fromJson = new Gson().fromJson(stringExtra, VideoDetailModel.class);
VideoDetailModel videoDetailModel = (VideoDetailModel) fromJson;
if (videoDetailModel != null) {
str2 = "STREAMER";
String callType = videoDetailModel.getCallType();
str = Constants.CALL_CANCEL_ACTION;
if (Intrinsics.areEqual(callType, "AUDIO")) {
string = getString(2131952147);
} else if (videoDetailModel.isPriorityCall()) {
string = getString(2131952149);
} else {
str5 = getString(2131952151);
}
str5 = string;
} else {
str = Constants.CALL_CANCEL_ACTION;
str2 = "STREAMER";
}
if (str5 == null) {
str3 = getString(2131952148);
Intrinsics.checkNotNullExpressionValue(str3, "getString(R.string.incoming_call)");
} else {
str3 = str5;
}
objectRef3.element = str3;
if (fromJson == null) {
stopSelf();
return 2;
}
if (videoDetailModel.getCallType() != null) {
booleanRef.element = Intrinsics.areEqual(videoDetailModel.getCallType(), "BOT");
Intrinsics.areEqual(videoDetailModel.getCallType(), "RANDOM");
z2 = Intrinsics.areEqual(videoDetailModel.getCallType(), "BOT_VIDEO");
} else {
z2 = false;
}
if (videoDetailModel.getUserInitiated()) {
if (videoDetailModel.getUserDetails() != null) {
StreamerModel userDetails = videoDetailModel.getUserDetails();
Intrinsics.checkNotNull(userDetails);
objectRef2.element = userDetails.getName();
}
z3 = z2;
obj = fromJson;
str4 = "USER";
} else {
if (booleanRef.element) {
z3 = z2;
obj = fromJson;
} else {
StringBuilder sb = new StringBuilder();
z3 = z2;
sb.append(getString(2131952151));
sb.append(" \n");
StringCompanionObject stringCompanionObject = StringCompanionObject.INSTANCE;
String string3 = getString(2131953047);
obj = fromJson;
Intrinsics.checkNotNullExpressionValue(string3, "getString(\n … )");
String format = String.format(string3, Arrays.copyOf(new Object[]{String.valueOf(videoDetailModel.getRate())}, 1));
Intrinsics.checkNotNullExpressionValue(format, "format(format, *args)");
sb.append(format);
objectRef3.element = sb.toString();
}
if (videoDetailModel.getStreamerDetails() != null) {
StreamerModel streamerDetails = videoDetailModel.getStreamerDetails();
Intrinsics.checkNotNull(streamerDetails);
objectRef2.element = streamerDetails.getName();
}
str4 = str2;
}
intent3.putExtra(Constants.KEY_CALLING_CHANNEL, videoDetailModel.getAgoraChannelName());
intent3.setFlags(335544320);
objectRef = objectRef3;
intent3.putExtra(Constants.KEY_CALLING_VIDEO_ID, videoDetailModel.getId());
intent3.putExtra(Constants.KEY_CALLER, str4);
intent3.putExtra(Constants.KEY_AGORA_ACCESS_TOKEN, videoDetailModel.getUserInitiated() ? videoDetailModel.getAgoraStreamerToken() : videoDetailModel.getAgoraUserToken());
intent3.putExtra(Constants.FCM_DATA, stringExtra);
z = z3;
obj2 = obj;
} else {
str = Constants.CALL_CANCEL_ACTION;
objectRef = objectRef3;
str2 = "STREAMER";
z = false;
}
try {
Intent intent4 = new Intent(getApplication(), (Class<?>) HeadsUpNotificationActionReceiver.class);
intent4.putExtra(Constants.CALL_RESPONSE_ACTION_KEY, Constants.CALL_RECEIVE_ACTION);
intent4.putExtra(Constants.FCM_DATA, stringExtra);
intent4.setAction(Constants.CALL_RECEIVE_ACTION);
Intent intent5 = new Intent(getApplication(), (Class<?>) HeadsUpNotificationActionReceiver.class);
String str6 = str;
intent5.putExtra(Constants.CALL_RESPONSE_ACTION_KEY, str6);
intent5.putExtra(Constants.FCM_DATA, stringExtra);
intent5.setAction(str6);
TaskStackBuilder.create(getApplicationContext()).addNextIntentWithParentStack(intent3).getPendingIntent(1200, 201326592);
broadcast = PendingIntent.getBroadcast(getApplicationContext(), 1201, intent5, 201326592);
} catch (Exception e) {
e = e;
}
try {
if (booleanRef.element) {
headsUpNotificationService = this;
intent2 = new Intent(headsUpNotificationService, (Class<?>) BotCallActivity.class);
} else {
headsUpNotificationService = this;
intent2 = new Intent(headsUpNotificationService, (Class<?>) CallActivity.class);
}
Ref.ObjectRef objectRef4 = new Ref.ObjectRef();
if (obj2 != null) {
String str7 = ((VideoDetailModel) obj2).getUserInitiated() ? "USER" : str2;
intent2.putExtra(Constants.KEY_CALLING_CHANNEL, ((VideoDetailModel) obj2).getAgoraChannelName());
intent2.putExtra(Constants.KEY_CALLING_VIDEO_ID, ((VideoDetailModel) obj2).getId());
intent2.putExtra(Constants.KEY_CALLER, str7);
intent2.putExtra(Constants.FCM_DATA, stringExtra);
intent2.putExtra(CallActivity.IS_BOT, booleanRef.element);
intent2.putExtra(CallActivity.IS_BOT_VIDEO, z);
if (((VideoDetailModel) obj2).getStreamerDetails() != null) {
StreamerModel streamerDetails2 = ((VideoDetailModel) obj2).getStreamerDetails();
Intrinsics.checkNotNull(streamerDetails2);
if (streamerDetails2.getProfilePic() != null) {
StreamerModel streamerDetails3 = ((VideoDetailModel) obj2).getStreamerDetails();
Intrinsics.checkNotNull(streamerDetails3);
String profilePic = streamerDetails3.getProfilePic();
Intrinsics.checkNotNull(profilePic);
if (!(profilePic.length() == 0)) {
StreamerModel streamerDetails4 = ((VideoDetailModel) obj2).getStreamerDetails();
Intrinsics.checkNotNull(streamerDetails4);
intent2.putExtra(CallActivity.PROFILE_PIC, streamerDetails4.getProfilePic());
}
}
}
intent2.putExtra(Constants.KEY_CALLING_ROLE, str2);
objectRef4.element = ((VideoDetailModel) obj2).getPic();
}
intent2.setFlags(603979776);
PendingIntent activity = PendingIntent.getActivity(headsUpNotificationService, 0, intent2, 201326592);
Uri parse = Uri.parse("android.resource://" + getApplication().getPackageName() + "/2131886126");
BuildersKt.launch$default(headsUpNotificationService.serviceScope, (CoroutineContext) null, (CoroutineStart) null, new HeadsUpNotificationService$onStartCommand$2(objectRef2, this, objectRef4, objectRef, activity, booleanRef, broadcast, null), 3, (Object) null);
if (MediaPlayerSingleton.INSTANCE.getInstance() != null && !LiveStreamingService.INSTANCE.isLiveStreamingRunning()) {
VideoDetailModel videoDetailModel2 = (VideoDetailModel) obj2;
if (((videoDetailModel2 == null || videoDetailModel2.isPriorityCall()) ? false : true) && (companion = MediaPlayerSingleton.INSTANCE.getInstance()) != null) {
Context applicationContext = getApplicationContext();
Intrinsics.checkNotNullExpressionValue(applicationContext, "applicationContext");
Intrinsics.checkNotNullExpressionValue(parse, "defaultRingToneUri");
companion.setDataSource(applicationContext, parse);
}
}
headsUpNotificationService.timer.schedule(new TimerTask() {
@Override
public void run() {
int i;
MediaPlayerSingleton companion2;
Object systemService = HeadsUpNotificationService.this.getApplicationContext().getSystemService("notification");
Intrinsics.checkNotNull(systemService, "null cannot be cast to non-null type android.app.NotificationManager");
i = HeadsUpNotificationService.this.NOTIFICATION_ID;
((NotificationManager) systemService).cancel(i);
if (MediaPlayerSingleton.INSTANCE.getInstance() != null && (companion2 = MediaPlayerSingleton.INSTANCE.getInstance()) != null) {
companion2.stop();
}
HeadsUpNotificationService.this.stopSelf();
Timber.tag("TimerTask").d("Cancel Notification", new Object[0]);
}
}, 30000L);
return 1;
} catch (Exception e2) {
e = e2;
Timber.e(e, "Notification Error ", new Object[0]);
e.printStackTrace();
return 1;
}
}
Timber.e("Intent is null", new Object[0]);
return 1;
}
public final java.lang.Object addProfilePic(androidx.core.app.NotificationCompat.Builder r6, java.lang.String r7, kotlin.coroutines.Continuation<? super kotlin.Unit> r8) {
throw new UnsupportedOperationException("Method not decompiled: app.callpe.service.HeadsUpNotificationService.addProfilePic(androidx.core.app.NotificationCompat$Builder, java.lang.String, kotlin.coroutines.Continuation):java.lang.Object");
}
public final java.lang.Object addProfileIcon(java.lang.String r6, kotlin.coroutines.Continuation<? super android.graphics.drawable.Icon> r7) {
throw new UnsupportedOperationException("Method not decompiled: app.callpe.service.HeadsUpNotificationService.addProfileIcon(java.lang.String, kotlin.coroutines.Continuation):java.lang.Object");
}
private final void screenOn() {
try {
Object systemService = getApplicationContext().getSystemService("power");
Intrinsics.checkNotNull(systemService, "null cannot be cast to non-null type android.os.PowerManager");
PowerManager powerManager = (PowerManager) systemService;
boolean isInteractive = powerManager.isInteractive();
Timber.tag("screen on.......").e("%s", new Object[]{Boolean.valueOf(isInteractive)});
if (isInteractive) {
return;
}
powerManager.newWakeLock(805306394, "MyLock").acquire(10000L);
powerManager.newWakeLock(1, "MyCpuLock").acquire(10000L);
} catch (Exception e) {
Timber.e(e);
}
}
private final void createNotification() {
try {
NotificationCompat.Builder autoCancel = new NotificationCompat.Builder(this, this.WAIT_CHANNEL_ID).setSmallIcon(2131231663).setContentTitle("Incoming call").setContentText("Please wait while fetching details.").setPriority(-1).setAutoCancel(true);
Intrinsics.checkNotNullExpressionValue(autoCancel, "Builder(this, WAIT_CHANN…_LOW).setAutoCancel(true)");
Notification build = autoCancel.build();
Intrinsics.checkNotNullExpressionValue(build, "builder.build()");
startForeground(1000, build);
} catch (Exception e) {
Timber.e(e);
}
}
private final void scheduleStopTask() {
Handler handler = new Handler(Looper.getMainLooper());
this.handler = handler;
Intrinsics.checkNotNull(handler);
handler.postDelayed(new Runnable() {
@Override
public final void run() {
HeadsUpNotificationService.scheduleStopTask$lambda$2(HeadsUpNotificationService.this);
}
}, 30000L);
}
public static final void scheduleStopTask$lambda$2(HeadsUpNotificationService headsUpNotificationService) {
Intrinsics.checkNotNullParameter(headsUpNotificationService, "this$0");
headsUpNotificationService.stopHeadsUpService();
}
private final void stopHeadsUpService() {
try {
stopForeground(true);
stopSelf();
} catch (Exception e) {
Timber.e(e);
}
}
@Override
public void onTaskRemoved(Intent rootIntent) {
Intrinsics.checkNotNullParameter(rootIntent, "rootIntent");
super.onTaskRemoved(rootIntent);
this.timer.cancel();
Timber.e("HeadsUpNotificationService Removed", new Object[0]);
}
public final void createChannel() {
if (Build.VERSION.SDK_INT >= 26) {
NotificationManager notificationManager = (NotificationManager) getSystemService(NotificationManager.class);
NotificationChannel notificationChannel = new NotificationChannel(this.CHANNEL_ID, this.CHANNEL_NAME, 4);
notificationChannel.setDescription(this.CHANNEL_NAME);
notificationChannel.setLockscreenVisibility(1);
notificationChannel.setSound(Uri.parse("android.resource://" + getApplication().getPackageName() + "/2131886131"), new AudioAttributes.Builder().setContentType(4).setLegacyStreamType(0).setUsage(4).build());
notificationManager.createNotificationChannel(notificationChannel);
NotificationChannel notificationChannel2 = new NotificationChannel(this.WAIT_CHANNEL_ID, this.CHANNEL_NAME, 2);
notificationChannel2.setDescription(this.CHANNEL_NAME);
notificationChannel2.setLockscreenVisibility(1);
notificationChannel2.setSound(Uri.parse("android.resource://" + getApplication().getPackageName() + "/2131886131"), new AudioAttributes.Builder().setContentType(4).setLegacyStreamType(0).setUsage(4).build());
notificationManager.createNotificationChannel(notificationChannel2);
}
}
public final Spannable getActionText(Context context, int stringRes, int colorRes) {
SpannableString spannableString = new SpannableString(context.getText(stringRes));
if (Build.VERSION.SDK_INT >= 25) {
spannableString.setSpan(new ForegroundColorSpan(context.getColor(colorRes)), 0, spannableString.length(), 0);
}
return spannableString;
}
@Override
public void onDestroy() {
isServiceRunning = false;
this.timer.cancel();
CoroutineScopeKt.cancel$default(this.serviceScope, (CancellationException) null, 1, (Object) null);
super.onDestroy();
Handler handler = this.handler;
if (handler != null) {
Intrinsics.checkNotNull(handler);
handler.removeCallbacksAndMessages(null);
}
Timber.e("HeadsUpNotificationService Destroyed", new Object[0]);
}
@Metadata(d1 = {"\u0000\u001a\n\u0002\u0018\u0002\n\u0002\u0010\u0000\n\u0002\b\u0002\n\u0002\u0010\t\n\u0000\n\u0002\u0010\u000b\n\u0002\b\u0004\b\u0086\u0003\u0018\u00002\u00020\u0001B\u0007\b\u0002¢\u0006\u0002\u0010\u0002R\u000e\u0010\u0003\u001a\u00020\u0004X\u0082T¢\u0006\u0002\n\u0000R\u001a\u0010\u0005\u001a\u00020\u0006X\u0086\u000e¢\u0006\u000e\n\u0000\u001a\u0004\b\u0005\u0010\u0007\"\u0004\b\b\u0010\t¨\u0006\n"}, d2 = {"Lapp/callpe/service/HeadsUpNotificationService$Companion;", "", "()V", "STOP_SERVICE_DELAY", "", "isServiceRunning", "", "()Z", "setServiceRunning", "(Z)V", "app_riloRelease"}, k = 1, mv = {1, 8, 0}, xi = 48)
public static final class Companion {
public Companion(DefaultConstructorMarker defaultConstructorMarker) {
this();
}
private Companion() {
}
public final boolean isServiceRunning() {
return HeadsUpNotificationService.isServiceRunning;
}
public final void setServiceRunning(boolean z) {
HeadsUpNotificationService.isServiceRunning = z;
}
}
}