NotificationUtils.smali
.class public Lcom/blankj/utilcode/util/NotificationUtils;
.super Ljava/lang/Object;
.source "NotificationUtils.java"
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;,
Lcom/blankj/utilcode/util/NotificationUtils$Importance;
}
.end annotation
# static fields
.field public static final IMPORTANCE_DEFAULT:I
.field public static final IMPORTANCE_HIGH:I
.field public static final IMPORTANCE_LOW:I
.field public static final IMPORTANCE_MIN:I
.field public static final IMPORTANCE_NONE:I
.field public static final IMPORTANCE_UNSPECIFIED:I
# direct methods
.method static constructor <clinit>()V
.registers 1
const v0, 0x156c
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_DEFAULT:I
const v0, 0x156b
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_HIGH:I
const v0, 0x156d
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_LOW:I
const v0, 0x156e
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_MIN:I
const v0, 0x156f
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_NONE:I
const v0, -0x1689
invoke-static {v0}, Lnp/NPFog;->d(I)I
move-result v0
sput v0, Lcom/blankj/utilcode/util/NotificationUtils;->IMPORTANCE_UNSPECIFIED:I
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 30
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static areNotificationsEnabled()Z
.registers 1
.line 50
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
invoke-static {v0}, Landroidx/core/app/NotificationManagerCompat;->from(Landroid/content/Context;)Landroidx/core/app/NotificationManagerCompat;
move-result-object v0
invoke-virtual {v0}, Landroidx/core/app/NotificationManagerCompat;->areNotificationsEnabled()Z
move-result v0
return v0
.end method
.method public static cancel(I)V
.registers 2
.param p0, "id" # I
.line 126
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
invoke-static {v0}, Landroidx/core/app/NotificationManagerCompat;->from(Landroid/content/Context;)Landroidx/core/app/NotificationManagerCompat;
move-result-object v0
invoke-virtual {v0, p0}, Landroidx/core/app/NotificationManagerCompat;->cancel(I)V
.line 127
return-void
.end method
.method public static cancel(Ljava/lang/String;I)V
.registers 3
.param p0, "tag" # Ljava/lang/String;
.param p1, "id" # I
.line 117
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
invoke-static {v0}, Landroidx/core/app/NotificationManagerCompat;->from(Landroid/content/Context;)Landroidx/core/app/NotificationManagerCompat;
move-result-object v0
invoke-virtual {v0, p0, p1}, Landroidx/core/app/NotificationManagerCompat;->cancel(Ljava/lang/String;I)V
.line 118
return-void
.end method
.method public static cancelAll()V
.registers 1
.line 133
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
invoke-static {v0}, Landroidx/core/app/NotificationManagerCompat;->from(Landroid/content/Context;)Landroidx/core/app/NotificationManagerCompat;
move-result-object v0
invoke-virtual {v0}, Landroidx/core/app/NotificationManagerCompat;->cancelAll()V
.line 134
return-void
.end method
.method private static invokePanels(Ljava/lang/String;)V
.registers 5
.param p0, "methodName" # Ljava/lang/String;
.line 156
:try_start_0
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
const-string/jumbo v1, "statusbar"
invoke-virtual {v0, v1}, Landroid/app/Application;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
.line 158
.local v0, "service":Ljava/lang/Object;
const-string v1, "android.app.StatusBarManager"
invoke-static {v1}, Ljava/lang/Class;->forName(Ljava/lang/String;)Ljava/lang/Class;
move-result-object v1
.line 159
.local v1, "statusBarManager":Ljava/lang/Class;, "Ljava/lang/Class<*>;"
const/4 v2, 0x0
new-array v3, v2, [Ljava/lang/Class;
invoke-virtual {v1, p0, v3}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object v3
.line 160
.local v3, "expand":Ljava/lang/reflect/Method;
new-array v2, v2, [Ljava/lang/Object;
invoke-virtual {v3, v0, v2}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:try_end_1d
.catch Ljava/lang/Exception; {:try_start_0 .. :try_end_1d} :catch_1f
.line 163
nop
.end local v0 # "service":Ljava/lang/Object;
.end local v1 # "statusBarManager":Ljava/lang/Class;, "Ljava/lang/Class<*>;"
.end local v3 # "expand":Ljava/lang/reflect/Method;
goto :goto_23
.line 161
:catch_1f
move-exception v0
.line 162
.local v0, "e":Ljava/lang/Exception;
invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
.line 164
.end local v0 # "e":Ljava/lang/Exception;
:goto_23
return-void
.end method
.method public static notify(ILcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;Lcom/blankj/utilcode/util/Utils$Func1;)V
.registers 4
.param p0, "id" # I
.param p1, "channelConfig" # Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;",
"Lcom/blankj/utilcode/util/Utils$Func1<",
"Ljava/lang/Void;",
"Landroidx/core/app/NotificationCompat$Builder;",
">;)V"
}
.end annotation
.line 82
.local p2, "func1":Lcom/blankj/utilcode/util/Utils$Func1;, "Lcom/blankj/utilcode/util/Utils$Func1<Ljava/lang/Void;Landroidx/core/app/NotificationCompat$Builder;>;"
const/4 v0, 0x0
invoke-static {v0, p0, p1, p2}, Lcom/blankj/utilcode/util/NotificationUtils;->notify(Ljava/lang/String;ILcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;Lcom/blankj/utilcode/util/Utils$Func1;)V
.line 83
return-void
.end method
.method public static notify(ILcom/blankj/utilcode/util/Utils$Func1;)V
.registers 4
.param p0, "id" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(I",
"Lcom/blankj/utilcode/util/Utils$Func1<",
"Ljava/lang/Void;",
"Landroidx/core/app/NotificationCompat$Builder;",
">;)V"
}
.end annotation
.line 60
.local p1, "func1":Lcom/blankj/utilcode/util/Utils$Func1;, "Lcom/blankj/utilcode/util/Utils$Func1<Ljava/lang/Void;Landroidx/core/app/NotificationCompat$Builder;>;"
sget-object v0, Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;->DEFAULT_CHANNEL_CONFIG:Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;
const/4 v1, 0x0
invoke-static {v1, p0, v0, p1}, Lcom/blankj/utilcode/util/NotificationUtils;->notify(Ljava/lang/String;ILcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;Lcom/blankj/utilcode/util/Utils$Func1;)V
.line 61
return-void
.end method
.method public static notify(Ljava/lang/String;ILcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;Lcom/blankj/utilcode/util/Utils$Func1;)V
.registers 8
.param p0, "tag" # Ljava/lang/String;
.param p1, "id" # I
.param p2, "channelConfig" # Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"I",
"Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;",
"Lcom/blankj/utilcode/util/Utils$Func1<",
"Ljava/lang/Void;",
"Landroidx/core/app/NotificationCompat$Builder;",
">;)V"
}
.end annotation
.line 94
.local p3, "func1":Lcom/blankj/utilcode/util/Utils$Func1;, "Lcom/blankj/utilcode/util/Utils$Func1<Ljava/lang/Void;Landroidx/core/app/NotificationCompat$Builder;>;"
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x1a
if-lt v0, v1, :cond_19
.line 95
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
const-string v2, "notification"
invoke-virtual {v0, v2}, Landroid/app/Application;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/app/NotificationManager;
.line 96
.local v0, "nm":Landroid/app/NotificationManager;
invoke-virtual {p2}, Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;->getNotificationChannel()Landroid/app/NotificationChannel;
move-result-object v2
invoke-virtual {v0, v2}, Landroid/app/NotificationManager;->createNotificationChannel(Landroid/app/NotificationChannel;)V
.line 99
.end local v0 # "nm":Landroid/app/NotificationManager;
:cond_19
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v0
invoke-static {v0}, Landroidx/core/app/NotificationManagerCompat;->from(Landroid/content/Context;)Landroidx/core/app/NotificationManagerCompat;
move-result-object v0
.line 101
.local v0, "nmc":Landroidx/core/app/NotificationManagerCompat;
new-instance v2, Landroidx/core/app/NotificationCompat$Builder;
invoke-static {}, Lcom/blankj/utilcode/util/Utils;->getApp()Landroid/app/Application;
move-result-object v3
invoke-direct {v2, v3}, Landroidx/core/app/NotificationCompat$Builder;-><init>(Landroid/content/Context;)V
.line 102
.local v2, "builder":Landroidx/core/app/NotificationCompat$Builder;
sget v3, Landroid/os/Build$VERSION;->SDK_INT:I
if-lt v3, v1, :cond_39
.line 103
# getter for: Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;->mNotificationChannel:Landroid/app/NotificationChannel;
invoke-static {p2}, Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;->access$000(Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;)Landroid/app/NotificationChannel;
move-result-object v1
invoke-virtual {v1}, Landroid/app/NotificationChannel;->getId()Ljava/lang/String;
move-result-object v1
invoke-virtual {v2, v1}, Landroidx/core/app/NotificationCompat$Builder;->setChannelId(Ljava/lang/String;)Landroidx/core/app/NotificationCompat$Builder;
.line 105
:cond_39
invoke-interface {p3, v2}, Lcom/blankj/utilcode/util/Utils$Func1;->call(Ljava/lang/Object;)Ljava/lang/Object;
.line 107
invoke-virtual {v2}, Landroidx/core/app/NotificationCompat$Builder;->build()Landroid/app/Notification;
move-result-object v1
invoke-virtual {v0, p0, p1, v1}, Landroidx/core/app/NotificationManagerCompat;->notify(Ljava/lang/String;ILandroid/app/Notification;)V
.line 108
return-void
.end method
.method public static notify(Ljava/lang/String;ILcom/blankj/utilcode/util/Utils$Func1;)V
.registers 4
.param p0, "tag" # Ljava/lang/String;
.param p1, "id" # I
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"I",
"Lcom/blankj/utilcode/util/Utils$Func1<",
"Ljava/lang/Void;",
"Landroidx/core/app/NotificationCompat$Builder;",
">;)V"
}
.end annotation
.line 71
.local p2, "func1":Lcom/blankj/utilcode/util/Utils$Func1;, "Lcom/blankj/utilcode/util/Utils$Func1<Ljava/lang/Void;Landroidx/core/app/NotificationCompat$Builder;>;"
sget-object v0, Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;->DEFAULT_CHANNEL_CONFIG:Lcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;
invoke-static {p0, p1, v0, p2}, Lcom/blankj/utilcode/util/NotificationUtils;->notify(Ljava/lang/String;ILcom/blankj/utilcode/util/NotificationUtils$ChannelConfig;Lcom/blankj/utilcode/util/Utils$Func1;)V
.line 72
return-void
.end method
.method public static setNotificationBarVisibility(Z)V
.registers 3
.param p0, "isVisible" # Z
.line 145
const/16 v0, 0x10
if-eqz p0, :cond_e
.line 146
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-gt v1, v0, :cond_b
const-string v0, "expand"
goto :goto_d
:cond_b
const-string v0, "expandNotificationsPanel"
.local v0, "methodName":Ljava/lang/String;
:goto_d
goto :goto_17
.line 148
.end local v0 # "methodName":Ljava/lang/String;
:cond_e
sget v1, Landroid/os/Build$VERSION;->SDK_INT:I
if-gt v1, v0, :cond_15
const-string v0, "collapse"
goto :goto_17
:cond_15
const-string v0, "collapsePanels"
.line 150
.restart local v0 # "methodName":Ljava/lang/String;
:goto_17
invoke-static {v0}, Lcom/blankj/utilcode/util/NotificationUtils;->invokePanels(Ljava/lang/String;)V
.line 151
return-void
.end method