ReflectionUtil.smali
.class public Lsg/bigo/svcapi/util/ReflectionUtil;
.super Ljava/lang/Object;
.source "SourceFile"
# static fields
.field public static final INVOKE_ERROR:Ljava/lang/Object;
# direct methods
.method static constructor <clinit>()V
.registers 1
.line 16
new-instance v0, Ljava/lang/Object;
invoke-direct {v0}, Ljava/lang/Object;-><init>()V
sput-object v0, Lsg/bigo/svcapi/util/ReflectionUtil;->INVOKE_ERROR:Ljava/lang/Object;
return-void
.end method
.method public constructor <init>()V
.registers 1
.line 14
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
return-void
.end method
.method public static varargs invokeMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
.registers 5
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/String;",
"[",
"Ljava/lang/Class<",
"*>;",
"Ljava/lang/Object;",
"[",
"Ljava/lang/Object;",
")",
"Ljava/lang/Object;"
}
.end annotation
.line 21
:try_start_0
invoke-virtual {p0, p1, p2}, Ljava/lang/Class;->getMethod(Ljava/lang/String;[Ljava/lang/Class;)Ljava/lang/reflect/Method;
move-result-object p0
.line 22
invoke-virtual {p0, p3, p4}, Ljava/lang/reflect/Method;->invoke(Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
:try_end_8
.catchall {:try_start_0 .. :try_end_8} :catchall_9
return-object p0
:catchall_9
move-exception p0
const-string p1, "Reflection"
const-string p2, "invokeMethod error"
.line 24
invoke-static {p1, p2, p0}, Lsg/bigo/log/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
.line 26
sget-object p0, Lsg/bigo/svcapi/util/ReflectionUtil;->INVOKE_ERROR:Ljava/lang/Object;
return-object p0
.end method
.method public static setServiceForeground(Landroid/app/Service;)V
.registers 7
.line 30
sget v0, Landroid/os/Build$VERSION;->SDK_INT:I
const/16 v1, 0x12
if-ge v0, v1, :cond_48
.line 31
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
const/4 v1, 0x2
new-array v2, v1, [Ljava/lang/Class;
sget-object v3, Ljava/lang/Integer;->TYPE:Ljava/lang/Class;
const/4 v4, 0x0
aput-object v3, v2, v4
const-class v3, Landroid/app/Notification;
const/4 v5, 0x1
aput-object v3, v2, v5
new-array v1, v1, [Ljava/lang/Object;
const/16 v3, 0x400
.line 34
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
aput-object v3, v1, v4
new-instance v3, Landroid/app/Notification;
invoke-direct {v3}, Landroid/app/Notification;-><init>()V
aput-object v3, v1, v5
const-string v3, "startForeground"
.line 31
invoke-static {v0, v3, v2, p0, v1}, Lsg/bigo/svcapi/util/ReflectionUtil;->invokeMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v0
.line 35
sget-object v1, Lsg/bigo/svcapi/util/ReflectionUtil;->INVOKE_ERROR:Ljava/lang/Object;
if-eq v0, v1, :cond_33
return-void
.line 39
:cond_33
invoke-virtual {p0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v0
new-array v1, v5, [Ljava/lang/Class;
sget-object v2, Ljava/lang/Boolean;->TYPE:Ljava/lang/Class;
aput-object v2, v1, v4
new-array v2, v5, [Ljava/lang/Object;
sget-object v3, Ljava/lang/Boolean;->TRUE:Ljava/lang/Boolean;
aput-object v3, v2, v4
const-string v3, "setForeground"
invoke-static {v0, v3, v1, p0, v2}, Lsg/bigo/svcapi/util/ReflectionUtil;->invokeMethod(Ljava/lang/Class;Ljava/lang/String;[Ljava/lang/Class;Ljava/lang/Object;[Ljava/lang/Object;)Ljava/lang/Object;
:cond_48
return-void
.end method