.class public final Lcom/discord/utilities/analytics/MemoryInfo; .super Ljava/lang/Object; .source "MemoryInfo.kt" # annotations .annotation system Ldalvik/annotation/MemberClasses; value = { Lcom/discord/utilities/analytics/MemoryInfo$Companion; } .end annotation # static fields .field public static final Companion:Lcom/discord/utilities/analytics/MemoryInfo$Companion; # instance fields .field public final info:Landroid/app/ActivityManager$MemoryInfo; .field public final isLowRamDevice:Z .field public final largeMemoryClass:I .field public final memoryClass:I # direct methods .method public static constructor ()V .locals 2 new-instance v0, Lcom/discord/utilities/analytics/MemoryInfo$Companion; const/4 v1, 0x0 invoke-direct {v0, v1}, Lcom/discord/utilities/analytics/MemoryInfo$Companion;->(Lkotlin/jvm/internal/DefaultConstructorMarker;)V sput-object v0, Lcom/discord/utilities/analytics/MemoryInfo;->Companion:Lcom/discord/utilities/analytics/MemoryInfo$Companion; return-void .end method .method public constructor (Landroid/content/Context;)V .locals 2 const-string v0, "context" invoke-static {p1, v0}, Lz/n/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V invoke-direct {p0}, Ljava/lang/Object;->()V new-instance v0, Landroid/app/ActivityManager$MemoryInfo; invoke-direct {v0}, Landroid/app/ActivityManager$MemoryInfo;->()V iput-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; const-string v0, "activity" invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object v0 if-eqz v0, :cond_0 check-cast v0, Landroid/app/ActivityManager; invoke-virtual {v0}, Landroid/app/ActivityManager;->isLowRamDevice()Z move-result v1 iput-boolean v1, p0, Lcom/discord/utilities/analytics/MemoryInfo;->isLowRamDevice:Z invoke-virtual {v0}, Landroid/app/ActivityManager;->getMemoryClass()I move-result v1 iput v1, p0, Lcom/discord/utilities/analytics/MemoryInfo;->memoryClass:I invoke-virtual {v0}, Landroid/app/ActivityManager;->getLargeMemoryClass()I move-result v0 iput v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->largeMemoryClass:I invoke-virtual {p0, p1}, Lcom/discord/utilities/analytics/MemoryInfo;->update(Landroid/content/Context;)Lcom/discord/utilities/analytics/MemoryInfo; return-void :cond_0 new-instance p1, Ljava/lang/NullPointerException; const-string v0, "null cannot be cast to non-null type android.app.ActivityManager" invoke-direct {p1, v0}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw p1 .end method # virtual methods .method public final getAvailMem()J .locals 2 iget-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; iget-wide v0, v0, Landroid/app/ActivityManager$MemoryInfo;->availMem:J return-wide v0 .end method .method public final getLargeMemoryClass()I .locals 1 iget v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->largeMemoryClass:I return v0 .end method .method public final getLowMemory()Z .locals 1 iget-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; iget-boolean v0, v0, Landroid/app/ActivityManager$MemoryInfo;->lowMemory:Z return v0 .end method .method public final getMemoryClass()I .locals 1 iget v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->memoryClass:I return v0 .end method .method public final getThreshold()J .locals 2 iget-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; iget-wide v0, v0, Landroid/app/ActivityManager$MemoryInfo;->threshold:J return-wide v0 .end method .method public final getTotalMem()J .locals 2 iget-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; iget-wide v0, v0, Landroid/app/ActivityManager$MemoryInfo;->totalMem:J return-wide v0 .end method .method public final isLowRamDevice()Z .locals 1 iget-boolean v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->isLowRamDevice:Z return v0 .end method .method public toString()Ljava/lang/String; .locals 3 const-string v0, "MemoryObserver(isLowRamDevice=" invoke-static {v0}, Lf/e/c/a/a;->E(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 iget-boolean v1, p0, Lcom/discord/utilities/analytics/MemoryInfo;->isLowRamDevice:Z invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder; const-string v1, ", memoryClass=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget v1, p0, Lcom/discord/utilities/analytics/MemoryInfo;->memoryClass:I invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, ", " invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const-string v1, "largeMemoryClass=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; iget v1, p0, Lcom/discord/utilities/analytics/MemoryInfo;->largeMemoryClass:I invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; const-string v1, ", info=" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; sget-object v1, Lcom/discord/utilities/analytics/MemoryInfo;->Companion:Lcom/discord/utilities/analytics/MemoryInfo$Companion; iget-object v2, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; invoke-static {v1, v2}, Lcom/discord/utilities/analytics/MemoryInfo$Companion;->access$memoryInfoToString(Lcom/discord/utilities/analytics/MemoryInfo$Companion;Landroid/app/ActivityManager$MemoryInfo;)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; const/16 v1, 0x29 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(C)Ljava/lang/StringBuilder; invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method public final update(Landroid/content/Context;)Lcom/discord/utilities/analytics/MemoryInfo; .locals 1 const-string v0, "context" invoke-static {p1, v0}, Lz/n/c/j;->checkNotNullParameter(Ljava/lang/Object;Ljava/lang/String;)V const-string v0, "activity" invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object; move-result-object p1 if-eqz p1, :cond_0 check-cast p1, Landroid/app/ActivityManager; iget-object v0, p0, Lcom/discord/utilities/analytics/MemoryInfo;->info:Landroid/app/ActivityManager$MemoryInfo; invoke-virtual {p1, v0}, Landroid/app/ActivityManager;->getMemoryInfo(Landroid/app/ActivityManager$MemoryInfo;)V return-object p0 :cond_0 new-instance p1, Ljava/lang/NullPointerException; const-string v0, "null cannot be cast to non-null type android.app.ActivityManager" invoke-direct {p1, v0}, Ljava/lang/NullPointerException;->(Ljava/lang/String;)V throw p1 .end method