.class public Lcom/firemint/realracing/DelayedNotificationService; .super Landroidx/core/app/JobIntentService; .source "SourceFile" # static fields .field private static final ACTION_NOTIFICATION_DISMISSED:Ljava/lang/String; = "ACTION_NOTIFICATION_DISMISSED" .field private static final JOB_ID:I = 0x270f .field private static final LOG_ERROR_ENABLED:Z = false .field private static final LOG_INFO_ENABLED:Z = false .field private static final LOG_TAG:Ljava/lang/String; = "RR3_DelayedNotifSvc" .field private static final SUMMARY_NOTIFICATION_ID:I = 0x3e7 .field private static m_currentNotificationId:I = -0x2 .field private static m_pendingIntentRequestCode:I # direct methods .method static constructor ()V .locals 0 return-void .end method .method public constructor ()V .locals 0 .line 18 invoke-direct {p0}, Landroidx/core/app/JobIntentService;->()V return-void .end method .method public static GetNotificationSoundUri(Landroid/content/Context;)Landroid/net/Uri; .locals 2 .line 332 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "android.resource://" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p0}, Landroid/content/Context;->getPackageName()Ljava/lang/String; move-result-object p0 invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string p0, "/" invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget p0, Lcom/firemint/realracing/R$raw;->push_notification:I invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p0 invoke-static {p0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri; move-result-object p0 return-object p0 .end method .method private IsConnectedToNetwork()Z .locals 3 const-string v0, "connectivity" .line 337 invoke-virtual {p0, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v0 check-cast v0, Landroid/net/ConnectivityManager; const/4 v1, 0x0 if-nez v0, :cond_0 return v1 .line 340 :cond_0 invoke-virtual {v0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo; move-result-object v0 if-eqz v0, :cond_1 .line 341 invoke-virtual {v0}, Landroid/net/NetworkInfo;->isAvailable()Z move-result v2 if-eqz v2, :cond_1 invoke-virtual {v0}, Landroid/net/NetworkInfo;->isConnected()Z move-result v0 if-eqz v0, :cond_1 const/4 v1, 0x1 :cond_1 return v1 .end method .method private static LogError(Ljava/lang/String;)V .locals 0 return-void .end method .method private static LogInfo(Ljava/lang/String;)V .locals 0 return-void .end method .method public static enqueueWork(Landroid/content/Context;Landroid/content/Intent;)V .locals 2 const-string v0, "DelayedNotificationService - enqueueWork" .line 49 invoke-static {v0}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V :try_start_0 const-class v0, Lcom/firemint/realracing/DelayedNotificationService; const/16 v1, 0x270f .line 53 invoke-static {p0, v0, v1, p1}, Landroidx/core/app/JobIntentService;->enqueueWork(Landroid/content/Context;Ljava/lang/Class;ILandroid/content/Intent;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_0 :catch_0 move-exception p0 .line 57 invoke-virtual {p0}, Ljava/lang/Throwable;->printStackTrace()V :goto_0 return-void .end method # virtual methods .method public CreateBigTextNotification(Landroid/app/Notification$Builder;Ljava/lang/String;)Landroid/app/Notification; .locals 1 .line 325 new-instance v0, Landroid/app/Notification$BigTextStyle; invoke-direct {v0, p1}, Landroid/app/Notification$BigTextStyle;->(Landroid/app/Notification$Builder;)V .line 326 invoke-virtual {v0, p2}, Landroid/app/Notification$BigTextStyle;->bigText(Ljava/lang/CharSequence;)Landroid/app/Notification$BigTextStyle; move-result-object p1 .line 327 invoke-virtual {p1}, Landroid/app/Notification$Style;->build()Landroid/app/Notification; move-result-object p1 return-object p1 .end method .method public CreateStackedNotification(Lcom/firemint/realracing/SerialisedNotificationInfo;Landroid/app/Notification$Builder;Ljava/lang/String;)Landroid/app/Notification; .locals 4 .line 275 new-instance v0, Landroid/app/Notification$InboxStyle; invoke-direct {v0, p2}, Landroid/app/Notification$InboxStyle;->(Landroid/app/Notification$Builder;)V .line 278 invoke-virtual {v0, p3}, Landroid/app/Notification$InboxStyle;->addLine(Ljava/lang/CharSequence;)Landroid/app/Notification$InboxStyle; .line 281 invoke-virtual {p1}, Lcom/firemint/realracing/SerialisedNotificationInfo;->GetNotificationCount()I move-result p2 add-int/lit8 p2, p2, -0x1 const/4 p3, 0x0 :goto_0 if-ltz p2, :cond_1 .line 286 :try_start_0 invoke-virtual {p1, p2}, Lcom/firemint/realracing/SerialisedNotificationInfo;->GetNotificationString(I)Ljava/lang/String; move-result-object v1 :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_1 :catch_0 move-exception v1 .line 290 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V const-string v3, "Error getting notification string: " invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v1 invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v1}, Lcom/firemint/realracing/DelayedNotificationService;->LogError(Ljava/lang/String;)V const-string v1, "" .line 293 :goto_1 invoke-virtual {v0, v1}, Landroid/app/Notification$InboxStyle;->addLine(Ljava/lang/CharSequence;)Landroid/app/Notification$InboxStyle; add-int/lit8 p3, p3, 0x1 const/4 v1, 0x4 if-lt p3, v1, :cond_0 goto :goto_2 :cond_0 add-int/lit8 p2, p2, -0x1 goto :goto_0 .line 302 :cond_1 :goto_2 invoke-virtual {v0}, Landroid/app/Notification$Style;->build()Landroid/app/Notification; move-result-object p1 return-object p1 .end method .method public GetNotificationContentTitle(Landroid/content/Context;I)Ljava/lang/String; .locals 0 .line 258 invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p1 sget p2, Lcom/firemint/realracing/R$string;->app_name:I invoke-virtual {p1, p2}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String; move-result-object p1 return-object p1 .end method .method public GetNotificationGroupKey(Landroid/content/Context;)Ljava/lang/String; .locals 2 .line 69 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "NOTIF_GROUP_" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {p1}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object p1 sget v1, Lcom/firemint/realracing/R$string;->cc_game_id:I invoke-virtual {p1, v1}, Landroid/content/res/Resources;->getString(I)Ljava/lang/String; move-result-object p1 invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object p1 return-object p1 .end method .method public NotificationDismissed()V .locals 1 .line 63 invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v0 invoke-static {v0}, Lcom/firemint/realracing/SerialiseNotificationsHelper;->ClearAll(Landroid/content/Context;)V return-void .end method .method public PostSummaryNotification(Landroid/app/NotificationManager;Landroid/content/Context;Landroid/app/PendingIntent;Ljava/lang/String;Ljava/lang/String;)V .locals 3 .line 307 new-instance v0, Landroid/app/Notification$Builder; invoke-virtual {p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v1 invoke-direct {v0, v1}, Landroid/app/Notification$Builder;->(Landroid/content/Context;)V sget v1, Lcom/firemint/realracing/R$mipmap;->icon_notification:I .line 308 invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;->setSmallIcon(I)Landroid/app/Notification$Builder; move-result-object v0 .line 309 invoke-virtual {p2}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v1 sget v2, Lcom/firemint/realracing/R$color;->NotificationColor:I invoke-virtual {v1, v2}, Landroid/content/res/Resources;->getColor(I)I move-result v1 invoke-virtual {v0, v1}, Landroid/app/Notification$Builder;->setColor(I)Landroid/app/Notification$Builder; move-result-object v0 new-instance v1, Landroid/app/Notification$BigTextStyle; invoke-direct {v1}, Landroid/app/Notification$BigTextStyle;->()V .line 310 invoke-virtual {v1, p4}, Landroid/app/Notification$BigTextStyle;->setSummaryText(Ljava/lang/CharSequence;)Landroid/app/Notification$BigTextStyle; move-result-object p4 invoke-virtual {v0, p4}, Landroid/app/Notification$Builder;->setStyle(Landroid/app/Notification$Style;)Landroid/app/Notification$Builder; move-result-object p4 .line 311 invoke-virtual {p4, p3}, Landroid/app/Notification$Builder;->setContentIntent(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; move-result-object p3 .line 312 invoke-virtual {p0, p2}, Lcom/firemint/realracing/DelayedNotificationService;->GetNotificationGroupKey(Landroid/content/Context;)Ljava/lang/String; move-result-object p2 invoke-virtual {p3, p2}, Landroid/app/Notification$Builder;->setGroup(Ljava/lang/String;)Landroid/app/Notification$Builder; move-result-object p2 const/4 p3, 0x1 .line 313 invoke-virtual {p2, p3}, Landroid/app/Notification$Builder;->setGroupSummary(Z)Landroid/app/Notification$Builder; move-result-object p2 const/16 p3, 0x1a .line 315 invoke-static {p3}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result p3 if-eqz p3, :cond_0 .line 317 invoke-virtual {p2, p5}, Landroid/app/Notification$Builder;->setChannelId(Ljava/lang/String;)Landroid/app/Notification$Builder; :cond_0 const/16 p3, 0x3e7 .line 320 invoke-virtual {p2}, Landroid/app/Notification$Builder;->build()Landroid/app/Notification; move-result-object p2 invoke-virtual {p1, p3, p2}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V return-void .end method .method public ShouldGenerateUniqueNotificationId(I)Z .locals 1 const/16 v0, 0x18 .line 264 invoke-static {v0}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v0 if-eqz v0, :cond_0 const/4 v0, 0x2 if-eq p1, v0, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method public ShouldNotificationPlaySound(I)Z .locals 1 const/4 v0, 0x2 if-eq p1, v0, :cond_0 const/4 p1, 0x1 goto :goto_0 :cond_0 const/4 p1, 0x0 :goto_0 return p1 .end method .method public onHandleWork(Landroid/content/Intent;)V .locals 16 move-object/from16 v7, p0 move-object/from16 v0, p1 const-string v1, "DelayedNotificationService - onHandleWork" .line 75 invoke-static {v1}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V if-nez v0, :cond_0 return-void :cond_0 const-string v1, "DelayedNotificationService: onHandleWork" .line 83 invoke-static {v1}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V .line 85 invoke-virtual/range {p1 .. p1}, Landroid/content/Intent;->getAction()Ljava/lang/String; move-result-object v1 const-string v2, "ACTION_NOTIFICATION_DISMISSED" if-eqz v1, :cond_1 .line 86 invoke-virtual/range {p1 .. p1}, Landroid/content/Intent;->getAction()Ljava/lang/String; move-result-object v1 invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v1 if-eqz v1, :cond_1 .line 88 invoke-virtual/range {p0 .. p0}, Lcom/firemint/realracing/DelayedNotificationService;->NotificationDismissed()V return-void :cond_1 const-string v1, "id" const/4 v8, -0x2 .line 92 invoke-virtual {v0, v1, v8}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I move-result v9 const-string v1, "message" .line 93 invoke-virtual {v0, v1}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String; move-result-object v10 const-string v1, "deepLinkUrl" .line 94 invoke-virtual {v0, v1}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String; move-result-object v3 const/4 v4, 0x0 const/4 v11, 0x1 if-eqz v3, :cond_3 const-string v5, "MultiplayerInvite" .line 96 invoke-virtual {v3, v5}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z move-result v5 if-nez v5, :cond_2 const-string v5, "RaceTeamsAdmin" invoke-virtual {v3, v5}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z move-result v5 if-eqz v5, :cond_3 :cond_2 move v5, v11 goto :goto_0 :cond_3 move v5, v4 .line 98 :goto_0 sget-object v6, Lcom/firemint/realracing/MainActivity;->instance:Lcom/firemint/realracing/MainActivity; if-eqz v6, :cond_4 invoke-virtual {v6}, Landroid/app/Activity;->hasWindowFocus()Z move-result v6 if-eqz v6, :cond_4 if-eqz v10, :cond_4 if-eqz v3, :cond_4 .line 100 sget-object v0, Lcom/firemint/realracing/MainActivity;->instance:Lcom/firemint/realracing/MainActivity; invoke-virtual {v0, v10, v3}, Lcom/firemint/realracing/MainActivity;->HandleDeepLink(Ljava/lang/String;Ljava/lang/String;)V return-void :cond_4 if-ne v9, v11, :cond_6 .line 106 invoke-direct/range {p0 .. p0}, Lcom/firemint/realracing/DelayedNotificationService;->IsConnectedToNetwork()Z move-result v6 if-nez v6, :cond_5 const/16 v1, 0xe10 .line 108 invoke-virtual {v7, v0, v1}, Lcom/firemint/realracing/DelayedNotificationService;->showDelayedNotification(Landroid/content/Intent;I)V return-void :cond_5 const-string v6, "reminder" .line 113 invoke-virtual {v0, v6, v4}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I move-result v4 if-lt v4, v11, :cond_6 const v4, 0x2a300 .line 116 invoke-virtual {v7, v0, v4}, Lcom/firemint/realracing/DelayedNotificationService;->showDelayedNotification(Landroid/content/Intent;I)V .line 121 :cond_6 invoke-virtual/range {p0 .. p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v0 const-string v4, "notification" .line 122 invoke-virtual {v7, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v4 move-object v12, v4 check-cast v12, Landroid/app/NotificationManager; .line 123 invoke-static {v0}, Lcom/firemint/realracing/SerialiseNotificationsHelper;->GetSavedInfo(Landroid/content/Context;)Lcom/firemint/realracing/SerialisedNotificationInfo; move-result-object v4 .line 124 invoke-virtual {v4}, Lcom/firemint/realracing/SerialisedNotificationInfo;->GetNotificationCount()I move-result v6 .line 125 invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v13 sget v15, Lcom/firemint/realracing/DelayedNotificationService;->m_pendingIntentRequestCode:I add-int/2addr v15, v11 sput v15, Lcom/firemint/realracing/DelayedNotificationService;->m_pendingIntentRequestCode:I .line 128 new-instance v8, Landroid/content/Intent; const-class v11, Lcom/firemint/realracing/UnpackAssetsActivity; invoke-direct {v8, v7, v11}, Landroid/content/Intent;->(Landroid/content/Context;Ljava/lang/Class;)V if-eqz v3, :cond_7 .line 133 invoke-virtual {v8, v1, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; :cond_7 const/high16 v1, 0x14000000 .line 136 invoke-static {v7, v15, v8, v1}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; move-result-object v8 .line 138 new-instance v1, Landroid/app/Notification$Builder; invoke-direct {v1, v0}, Landroid/app/Notification$Builder;->(Landroid/content/Context;)V .line 139 invoke-virtual {v7, v0, v9}, Lcom/firemint/realracing/DelayedNotificationService;->GetNotificationContentTitle(Landroid/content/Context;I)Ljava/lang/String; move-result-object v3 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setContentTitle(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; move-result-object v1 .line 140 invoke-virtual {v1, v10}, Landroid/app/Notification$Builder;->setContentText(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; move-result-object v1 sget v3, Lcom/firemint/realracing/R$mipmap;->icon_notification:I .line 141 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setSmallIcon(I)Landroid/app/Notification$Builder; move-result-object v1 .line 142 invoke-virtual {v1, v8}, Landroid/app/Notification$Builder;->setContentIntent(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; move-result-object v1 const/4 v3, 0x1 .line 143 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setAutoCancel(Z)Landroid/app/Notification$Builder; move-result-object v1 const/4 v11, 0x2 if-ne v9, v11, :cond_8 const-wide/16 v13, 0x0 .line 144 :cond_8 invoke-virtual {v1, v13, v14}, Landroid/app/Notification$Builder;->setWhen(J)Landroid/app/Notification$Builder; move-result-object v1 const/16 v3, 0x15 .line 147 invoke-static {v3}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v3 if-eqz v3, :cond_9 .line 149 invoke-virtual {v0}, Landroid/content/Context;->getResources()Landroid/content/res/Resources; move-result-object v3 sget v13, Lcom/firemint/realracing/R$color;->NotificationColor:I invoke-virtual {v3, v13}, Landroid/content/res/Resources;->getColor(I)I move-result v3 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setColor(I)Landroid/app/Notification$Builder; :cond_9 const/16 v3, 0x14 .line 152 invoke-static {v3}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v3 if-eqz v3, :cond_a .line 154 invoke-virtual {v7, v0}, Lcom/firemint/realracing/DelayedNotificationService;->GetNotificationGroupKey(Landroid/content/Context;)Ljava/lang/String; move-result-object v3 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setGroup(Ljava/lang/String;)Landroid/app/Notification$Builder; :cond_a const/16 v3, 0x1a .line 158 invoke-static {v3}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v3 if-eqz v3, :cond_b .line 161 new-instance v3, Lcom/firemint/realracing/NotificationChannelHelper; invoke-direct {v3, v0}, Lcom/firemint/realracing/NotificationChannelHelper;->(Landroid/content/Context;)V .line 162 invoke-virtual {v3, v9}, Lcom/firemint/realracing/NotificationChannelHelper;->NotificationToChannelId(I)Ljava/lang/String; move-result-object v3 .line 163 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setChannelId(Ljava/lang/String;)Landroid/app/Notification$Builder; :goto_1 move-object v13, v3 goto :goto_2 :cond_b const/4 v3, 0x0 goto :goto_1 .line 167 :goto_2 invoke-virtual {v7, v9}, Lcom/firemint/realracing/DelayedNotificationService;->ShouldNotificationPlaySound(I)Z move-result v3 if-eqz v3, :cond_c .line 169 invoke-static {v0}, Lcom/firemint/realracing/DelayedNotificationService;->GetNotificationSoundUri(Landroid/content/Context;)Landroid/net/Uri; move-result-object v3 invoke-virtual {v1, v3}, Landroid/app/Notification$Builder;->setSound(Landroid/net/Uri;)Landroid/app/Notification$Builder; :cond_c if-eqz v5, :cond_d .line 175 invoke-virtual {v1, v10}, Landroid/app/Notification$Builder;->setTicker(Ljava/lang/CharSequence;)Landroid/app/Notification$Builder; .line 179 :cond_d new-instance v3, Landroid/content/Intent; const-class v5, Lcom/firemint/realracing/DelayedNotificationService; invoke-direct {v3, v7, v5}, Landroid/content/Intent;->(Landroid/content/Context;Ljava/lang/Class;)V .line 180 invoke-virtual {v3, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent; const/high16 v2, 0xc000000 .line 181 invoke-static {v7, v15, v3, v2}, Landroid/app/PendingIntent;->getService(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; move-result-object v2 .line 182 invoke-virtual {v1, v2}, Landroid/app/Notification$Builder;->setDeleteIntent(Landroid/app/PendingIntent;)Landroid/app/Notification$Builder; const/16 v2, 0x10 .line 185 invoke-static {v2}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v2 if-eqz v2, :cond_10 const/16 v2, 0x18 .line 189 invoke-static {v2}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v3 if-nez v3, :cond_f if-nez v6, :cond_e goto :goto_4 .line 195 :cond_e invoke-virtual {v7, v4, v1, v10}, Lcom/firemint/realracing/DelayedNotificationService;->CreateStackedNotification(Lcom/firemint/realracing/SerialisedNotificationInfo;Landroid/app/Notification$Builder;Ljava/lang/String;)Landroid/app/Notification; move-result-object v1 :goto_3 move-object v14, v1 goto :goto_5 .line 191 :cond_f :goto_4 invoke-virtual {v7, v1, v10}, Lcom/firemint/realracing/DelayedNotificationService;->CreateBigTextNotification(Landroid/app/Notification$Builder;Ljava/lang/String;)Landroid/app/Notification; move-result-object v1 goto :goto_3 .line 200 :goto_5 invoke-static {v2}, Lcom/firemint/realracing/MainActivity;->IsAtLeastAPI(I)Z move-result v1 if-eqz v1, :cond_11 const/4 v1, 0x1 if-lt v6, v1, :cond_11 const-string v5, "" move-object/from16 v1, p0 move-object v2, v12 move-object v3, v0 move-object v4, v8 move-object v6, v13 .line 202 invoke-virtual/range {v1 .. v6}, Lcom/firemint/realracing/DelayedNotificationService;->PostSummaryNotification(Landroid/app/NotificationManager;Landroid/content/Context;Landroid/app/PendingIntent;Ljava/lang/String;Ljava/lang/String;)V goto :goto_6 .line 211 :cond_10 invoke-virtual {v1}, Landroid/app/Notification$Builder;->getNotification()Landroid/app/Notification; move-result-object v14 :cond_11 :goto_6 if-eq v9, v11, :cond_12 .line 219 invoke-virtual/range {p0 .. p0}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context; move-result-object v0 invoke-static {v0, v10}, Lcom/firemint/realracing/SerialiseNotificationsHelper;->AddNotification(Landroid/content/Context;Ljava/lang/String;)V .line 222 :cond_12 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "DelayedNotificationService: showing notification id: " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v9}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, " msg: " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v0}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V .line 230 :try_start_0 invoke-virtual {v7, v9}, Lcom/firemint/realracing/DelayedNotificationService;->ShouldGenerateUniqueNotificationId(I)Z move-result v0 if-eqz v0, :cond_13 sget v0, Lcom/firemint/realracing/DelayedNotificationService;->m_currentNotificationId:I const/4 v1, 0x1 add-int/lit8 v8, v0, 0x1 sput v8, Lcom/firemint/realracing/DelayedNotificationService;->m_currentNotificationId:I goto :goto_7 :catch_0 move-exception v0 goto :goto_8 :cond_13 const/4 v8, -0x2 .line 240 :goto_7 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V const-string v1, "Posting notification with id: " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v0}, Lcom/firemint/realracing/MainActivity;->logi(Ljava/lang/String;)V .line 241 invoke-virtual {v12, v8, v14}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V :try_end_0 .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_0} :catch_0 goto :goto_9 .line 245 :goto_8 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V const-string v2, "DelayedNotificationService: Notification Exception: " invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v0 invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 invoke-static {v0}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V :goto_9 return-void .end method .method public showDelayedNotification(Landroid/content/Intent;I)V .locals 6 .line 346 invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J move-result-wide v0 mul-int/lit16 v2, p2, 0x3e8 int-to-long v2, v2 add-long/2addr v0, v2 const-string v2, "id" const/4 v3, -0x2 .line 348 invoke-virtual {p1, v2, v3}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I move-result v2 const-string v3, "message" .line 349 invoke-virtual {p1, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String; move-result-object v3 .line 351 new-instance v4, Ljava/lang/StringBuilder; invoke-direct {v4}, Ljava/lang/StringBuilder;->()V const-string v5, "Notifications : showDelayedNotification: " invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v3, " " invoke-virtual {v4, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v3 invoke-static {v3}, Lcom/firemint/realracing/DelayedNotificationService;->LogInfo(Ljava/lang/String;)V const/4 v3, 0x0 const/4 v4, 0x1 if-ne v2, v4, :cond_0 const-string v2, "reminder" .line 355 invoke-virtual {p1, v2, v3}, Landroid/content/Intent;->getIntExtra(Ljava/lang/String;I)I move-result v5 if-lt v5, v4, :cond_0 const v4, 0x2a300 if-ne p2, v4, :cond_0 add-int/lit8 v5, v5, -0x1 .line 359 invoke-virtual {p1, v2, v5}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent; :cond_0 const/high16 p2, 0x14000000 .line 363 invoke-static {p0, v3, p1, p2}, Landroid/app/PendingIntent;->getService(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent; move-result-object p1 const-string p2, "alarm" .line 364 invoke-virtual {p0, p2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object p2 check-cast p2, Landroid/app/AlarmManager; const/4 v2, 0x3 .line 365 invoke-virtual {p2, v2, v0, v1, p1}, Landroid/app/AlarmManager;->set(IJLandroid/app/PendingIntent;)V return-void .end method