MMKV.smali
.class public Lcom/tencent/mmkv/MMKV;
.super Ljava/lang/Object;
.source "MMKV.java"
# interfaces
.implements Landroid/content/SharedPreferences;
.implements Landroid/content/SharedPreferences$Editor;
# annotations
.annotation system Ldalvik/annotation/MemberClasses;
value = {
Lcom/tencent/mmkv/MMKV$b;
}
.end annotation
# static fields
.field public static final a:Ljava/util/EnumMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/EnumMap<",
"Lcom/tencent/mmkv/MMKVRecoverStrategic;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field public static final b:Ljava/util/EnumMap;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/EnumMap<",
"Lcom/tencent/mmkv/MMKVLogLevel;",
"Ljava/lang/Integer;",
">;"
}
.end annotation
.end field
.field public static final c:[Lcom/tencent/mmkv/MMKVLogLevel;
.field public static final d:Ljava/util/Set;
.annotation system Ldalvik/annotation/Signature;
value = {
"Ljava/util/Set<",
"Ljava/lang/Long;",
">;"
}
.end annotation
.end field
.field public static e:Ljava/lang/String;
.field public static f:Lfp/b;
.field public static g:Z
.field public static h:Lfp/a;
# instance fields
.field public final nativeHandle:J
# direct methods
.method public static constructor <clinit>()V
.registers 8
new-instance v0, Ljava/util/EnumMap;
const-class v1, Lcom/tencent/mmkv/MMKVRecoverStrategic;
invoke-direct {v0, v1}, Ljava/util/EnumMap;-><init>(Ljava/lang/Class;)V
sput-object v0, Lcom/tencent/mmkv/MMKV;->a:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVRecoverStrategic;->OnErrorDiscard:Lcom/tencent/mmkv/MMKVRecoverStrategic;
const/4 v2, 0x0
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v3
invoke-virtual {v0, v1, v3}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/tencent/mmkv/MMKV;->a:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVRecoverStrategic;->OnErrorRecover:Lcom/tencent/mmkv/MMKVRecoverStrategic;
const/4 v4, 0x1
invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
invoke-virtual {v0, v1, v5}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
new-instance v0, Ljava/util/EnumMap;
const-class v1, Lcom/tencent/mmkv/MMKVLogLevel;
invoke-direct {v0, v1}, Ljava/util/EnumMap;-><init>(Ljava/lang/Class;)V
sput-object v0, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelDebug:Lcom/tencent/mmkv/MMKVLogLevel;
invoke-virtual {v0, v1, v3}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelInfo:Lcom/tencent/mmkv/MMKVLogLevel;
invoke-virtual {v0, v1, v5}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelWarning:Lcom/tencent/mmkv/MMKVLogLevel;
const/4 v3, 0x2
invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v5
invoke-virtual {v0, v1, v5}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelError:Lcom/tencent/mmkv/MMKVLogLevel;
const/4 v5, 0x3
invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v6
invoke-virtual {v0, v1, v6}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
sget-object v0, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelNone:Lcom/tencent/mmkv/MMKVLogLevel;
const/4 v6, 0x4
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v7
invoke-virtual {v0, v1, v7}, Ljava/util/EnumMap;->put(Ljava/lang/Enum;Ljava/lang/Object;)Ljava/lang/Object;
const/4 v0, 0x5
new-array v0, v0, [Lcom/tencent/mmkv/MMKVLogLevel;
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelDebug:Lcom/tencent/mmkv/MMKVLogLevel;
aput-object v1, v0, v2
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelInfo:Lcom/tencent/mmkv/MMKVLogLevel;
aput-object v1, v0, v4
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelWarning:Lcom/tencent/mmkv/MMKVLogLevel;
aput-object v1, v0, v3
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelError:Lcom/tencent/mmkv/MMKVLogLevel;
aput-object v1, v0, v5
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelNone:Lcom/tencent/mmkv/MMKVLogLevel;
aput-object v1, v0, v6
sput-object v0, Lcom/tencent/mmkv/MMKV;->c:[Lcom/tencent/mmkv/MMKVLogLevel;
new-instance v0, Ljava/util/HashSet;
invoke-direct {v0}, Ljava/util/HashSet;-><init>()V
invoke-static {v0}, Ljava/util/Collections;->synchronizedSet(Ljava/util/Set;)Ljava/util/Set;
move-result-object v0
sput-object v0, Lcom/tencent/mmkv/MMKV;->d:Ljava/util/Set;
const/4 v0, 0x0
sput-object v0, Lcom/tencent/mmkv/MMKV;->e:Ljava/lang/String;
new-instance v0, Ljava/util/HashMap;
invoke-direct {v0}, Ljava/util/HashMap;-><init>()V
sput-boolean v2, Lcom/tencent/mmkv/MMKV;->g:Z
return-void
.end method
.method public constructor <init>(J)V
.registers 3
invoke-direct {p0}, Ljava/lang/Object;-><init>()V
iput-wide p1, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
return-void
.end method
.method public static a(Lcom/tencent/mmkv/MMKVLogLevel;)I
.registers 5
sget-object v0, Lcom/tencent/mmkv/MMKV$a;->a:[I
invoke-virtual {p0}, Ljava/lang/Enum;->ordinal()I
move-result p0
aget p0, v0, p0
const/4 v0, 0x4
const/4 v1, 0x3
const/4 v2, 0x2
const/4 v3, 0x1
if-eq p0, v3, :cond_1a
if-eq p0, v2, :cond_18
if-eq p0, v1, :cond_16
if-eq p0, v0, :cond_1b
const/4 v0, 0x1
goto :goto_1b
:cond_16
const/4 v0, 0x3
goto :goto_1b
:cond_18
const/4 v0, 0x2
goto :goto_1b
:cond_1a
const/4 v0, 0x0
:cond_1b
:goto_1b
return v0
.end method
.method public static a(JLjava/lang/String;I)Lcom/tencent/mmkv/MMKV;
.registers 7
const-wide/16 v0, 0x0
cmp-long v2, p0, v0
if-nez v2, :cond_8
const/4 p0, 0x0
return-object p0
:cond_8
sget-object v0, Lcom/tencent/mmkv/MMKV;->d:Ljava/util/Set;
invoke-static {p0, p1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object v1
invoke-interface {v0, v1}, Ljava/util/Set;->contains(Ljava/lang/Object;)Z
move-result v0
if-nez v0, :cond_6b
invoke-static {p0, p1}, Lcom/tencent/mmkv/MMKV;->checkProcessMode(J)Z
move-result v0
if-nez v0, :cond_62
const/4 p0, 0x1
if-ne p3, p0, :cond_34
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
const-string p1, "Opening a multi-process MMKV instance ["
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "] with SINGLE_PROCESS_MODE!"
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
goto :goto_5c
:cond_34
new-instance p0, Ljava/lang/StringBuilder;
invoke-direct {p0}, Ljava/lang/StringBuilder;-><init>()V
const-string p1, "Opening a MMKV instance ["
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p1, "] with MULTI_PROCESS_MODE, "
invoke-virtual {p0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string/jumbo p0, "while it\'s already been opened with SINGLE_PROCESS_MODE by someone somewhere else!"
invoke-virtual {p1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
:goto_5c
new-instance p1, Ljava/lang/IllegalArgumentException;
invoke-direct {p1, p0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V
throw p1
:cond_62
sget-object p2, Lcom/tencent/mmkv/MMKV;->d:Ljava/util/Set;
invoke-static {p0, p1}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
move-result-object p3
invoke-interface {p2, p3}, Ljava/util/Set;->add(Ljava/lang/Object;)Z
:cond_6b
new-instance p2, Lcom/tencent/mmkv/MMKV;
invoke-direct {p2, p0, p1}, Lcom/tencent/mmkv/MMKV;-><init>(J)V
return-object p2
.end method
.method public static a(Ljava/lang/String;I)Lcom/tencent/mmkv/MMKV;
.registers 4
sget-object v0, Lcom/tencent/mmkv/MMKV;->e:Ljava/lang/String;
if-eqz v0, :cond_e
const/4 v0, 0x0
invoke-static {p0, p1, v0, v0}, Lcom/tencent/mmkv/MMKV;->getMMKVWithID(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)J
move-result-wide v0
invoke-static {v0, v1, p0, p1}, Lcom/tencent/mmkv/MMKV;->a(JLjava/lang/String;I)Lcom/tencent/mmkv/MMKV;
move-result-object p0
return-object p0
:cond_e
new-instance p0, Ljava/lang/IllegalStateException;
const-string p1, "You should Call MMKV.initialize() first."
invoke-direct {p0, p1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw p0
.end method
.method public static a(Landroid/content/Context;)Ljava/lang/String;
.registers 3
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
invoke-virtual {p0}, Landroid/content/Context;->getFilesDir()Ljava/io/File;
move-result-object p0
invoke-virtual {p0}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
move-result-object p0
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, "/mmkv"
invoke-virtual {v0, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
sget-object v0, Lcom/tencent/mmkv/MMKVLogLevel;->LevelInfo:Lcom/tencent/mmkv/MMKVLogLevel;
const/4 v1, 0x0
invoke-static {p0, v1, v0}, Lcom/tencent/mmkv/MMKV;->a(Ljava/lang/String;Lcom/tencent/mmkv/MMKV$b;Lcom/tencent/mmkv/MMKVLogLevel;)Ljava/lang/String;
return-object p0
.end method
.method public static a(Ljava/lang/String;Lcom/tencent/mmkv/MMKV$b;Lcom/tencent/mmkv/MMKVLogLevel;)Ljava/lang/String;
.registers 4
const-string v0, "mmkv"
if-eqz p1, :cond_8
invoke-interface {p1, v0}, Lcom/tencent/mmkv/MMKV$b;->loadLibrary(Ljava/lang/String;)V
goto :goto_b
:cond_8
invoke-static {v0}, Ljava/lang/System;->loadLibrary(Ljava/lang/String;)V
:goto_b
invoke-static {p2}, Lcom/tencent/mmkv/MMKV;->a(Lcom/tencent/mmkv/MMKVLogLevel;)I
move-result p1
invoke-static {p0, p1}, Lcom/tencent/mmkv/MMKV;->jniInitialize(Ljava/lang/String;I)V
sput-object p0, Lcom/tencent/mmkv/MMKV;->e:Ljava/lang/String;
return-object p0
.end method
.method public static a(Lcom/tencent/mmkv/MMKVLogLevel;Ljava/lang/String;)V
.registers 5
invoke-static {}, Ljava/lang/Thread;->currentThread()Ljava/lang/Thread;
move-result-object v0
invoke-virtual {v0}, Ljava/lang/Thread;->getStackTrace()[Ljava/lang/StackTraceElement;
move-result-object v0
array-length v1, v0
add-int/lit8 v1, v1, -0x1
aget-object v0, v0, v1
sget-object v1, Lcom/tencent/mmkv/MMKV;->b:Ljava/util/EnumMap;
invoke-virtual {v1, p0}, Ljava/util/EnumMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Integer;
if-nez p0, :cond_19
const/4 p0, 0x0
goto :goto_1d
:cond_19
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_1d
invoke-virtual {v0}, Ljava/lang/StackTraceElement;->getFileName()Ljava/lang/String;
move-result-object v1
invoke-virtual {v0}, Ljava/lang/StackTraceElement;->getLineNumber()I
move-result v2
invoke-virtual {v0}, Ljava/lang/StackTraceElement;->getMethodName()Ljava/lang/String;
move-result-object v0
invoke-static {p0, v1, v2, v0, p1}, Lcom/tencent/mmkv/MMKV;->mmkvLogImp(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
return-void
.end method
.method public static a(Lfp/b;)V
.registers 2
sput-object p0, Lcom/tencent/mmkv/MMKV;->f:Lfp/b;
invoke-interface {p0}, Lfp/b;->a()Z
move-result p0
const/4 v0, 0x1
if-eqz p0, :cond_f
invoke-static {v0, v0}, Lcom/tencent/mmkv/MMKV;->setCallbackHandler(ZZ)V
sput-boolean v0, Lcom/tencent/mmkv/MMKV;->g:Z
goto :goto_15
:cond_f
const/4 p0, 0x0
invoke-static {p0, v0}, Lcom/tencent/mmkv/MMKV;->setCallbackHandler(ZZ)V
sput-boolean p0, Lcom/tencent/mmkv/MMKV;->g:Z
:goto_15
return-void
.end method
.method public static b()Lcom/tencent/mmkv/MMKV;
.registers 4
sget-object v0, Lcom/tencent/mmkv/MMKV;->e:Ljava/lang/String;
if-eqz v0, :cond_11
const/4 v0, 0x0
const/4 v1, 0x1
invoke-static {v1, v0}, Lcom/tencent/mmkv/MMKV;->getDefaultMMKV(ILjava/lang/String;)J
move-result-wide v2
const-string v0, "DefaultMMKV"
invoke-static {v2, v3, v0, v1}, Lcom/tencent/mmkv/MMKV;->a(JLjava/lang/String;I)Lcom/tencent/mmkv/MMKV;
move-result-object v0
return-object v0
:cond_11
new-instance v0, Ljava/lang/IllegalStateException;
const-string v1, "You should Call MMKV.initialize() first."
invoke-direct {v0, v1}, Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public static c()Ljava/lang/String;
.registers 1
sget-object v0, Lcom/tencent/mmkv/MMKV;->e:Ljava/lang/String;
return-object v0
.end method
.method public static native checkProcessMode(J)Z
.end method
.method private native containsKey(JLjava/lang/String;)Z
.end method
.method private native count(J)J
.end method
.method public static native createNB(I)J
.end method
.method private native decodeBool(JLjava/lang/String;Z)Z
.end method
.method private native decodeBytes(JLjava/lang/String;)[B
.end method
.method private native decodeDouble(JLjava/lang/String;D)D
.end method
.method private native decodeFloat(JLjava/lang/String;F)F
.end method
.method private native decodeInt(JLjava/lang/String;I)I
.end method
.method private native decodeLong(JLjava/lang/String;J)J
.end method
.method private native decodeString(JLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.end method
.method private native decodeStringSet(JLjava/lang/String;)[Ljava/lang/String;
.end method
.method public static native destroyNB(JI)V
.end method
.method private native encodeBool(JLjava/lang/String;Z)Z
.end method
.method private native encodeBytes(JLjava/lang/String;[B)Z
.end method
.method private native encodeDouble(JLjava/lang/String;D)Z
.end method
.method private native encodeFloat(JLjava/lang/String;F)Z
.end method
.method private native encodeInt(JLjava/lang/String;I)Z
.end method
.method private native encodeLong(JLjava/lang/String;J)Z
.end method
.method private native encodeSet(JLjava/lang/String;[Ljava/lang/String;)Z
.end method
.method private native encodeString(JLjava/lang/String;Ljava/lang/String;)Z
.end method
.method public static native getDefaultMMKV(ILjava/lang/String;)J
.end method
.method public static native getMMKVWithAshmemFD(Ljava/lang/String;IILjava/lang/String;)J
.end method
.method public static native getMMKVWithID(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)J
.end method
.method public static native getMMKVWithIDAndSize(Ljava/lang/String;IILjava/lang/String;)J
.end method
.method public static native isFileValid(Ljava/lang/String;)Z
.end method
.method public static native jniInitialize(Ljava/lang/String;I)V
.end method
.method public static mmkvLogImp(ILjava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
.registers 11
sget-object v0, Lcom/tencent/mmkv/MMKV;->f:Lfp/b;
if-eqz v0, :cond_14
sget-boolean v1, Lcom/tencent/mmkv/MMKV;->g:Z
if-eqz v1, :cond_14
sget-object v1, Lcom/tencent/mmkv/MMKV;->c:[Lcom/tencent/mmkv/MMKVLogLevel;
aget-object v1, v1, p0
move-object v2, p1
move v3, p2
move-object v4, p3
move-object v5, p4
invoke-interface/range {v0 .. v5}, Lfp/b;->a(Lcom/tencent/mmkv/MMKVLogLevel;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)V
goto :goto_3e
:cond_14
sget-object p1, Lcom/tencent/mmkv/MMKV$a;->a:[I
sget-object p2, Lcom/tencent/mmkv/MMKV;->c:[Lcom/tencent/mmkv/MMKVLogLevel;
aget-object p0, p2, p0
invoke-virtual {p0}, Ljava/lang/Enum;->ordinal()I
move-result p0
aget p0, p1, p0
const/4 p1, 0x1
const-string p2, "MMKV"
if-eq p0, p1, :cond_3b
const/4 p1, 0x2
if-eq p0, p1, :cond_37
const/4 p1, 0x3
if-eq p0, p1, :cond_33
const/4 p1, 0x5
if-eq p0, p1, :cond_2f
goto :goto_3e
:cond_2f
invoke-static {p2, p4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_3e
:cond_33
invoke-static {p2, p4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_3e
:cond_37
invoke-static {p2, p4}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_3e
:cond_3b
invoke-static {p2, p4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
:goto_3e
return-void
.end method
.method public static onContentChangedByOuterProcess(Ljava/lang/String;)V
.registers 2
sget-object v0, Lcom/tencent/mmkv/MMKV;->h:Lfp/a;
if-eqz v0, :cond_7
invoke-interface {v0, p0}, Lfp/a;->a(Ljava/lang/String;)V
:cond_7
return-void
.end method
.method public static native onExit()V
.end method
.method public static onMMKVCRCCheckFail(Ljava/lang/String;)I
.registers 5
sget-object v0, Lcom/tencent/mmkv/MMKVRecoverStrategic;->OnErrorDiscard:Lcom/tencent/mmkv/MMKVRecoverStrategic;
sget-object v1, Lcom/tencent/mmkv/MMKV;->f:Lfp/b;
if-eqz v1, :cond_a
invoke-interface {v1, p0}, Lfp/b;->b(Ljava/lang/String;)Lcom/tencent/mmkv/MMKVRecoverStrategic;
move-result-object v0
:cond_a
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelInfo:Lcom/tencent/mmkv/MMKVLogLevel;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Recover strategic for "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, " is "
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {v1, p0}, Lcom/tencent/mmkv/MMKV;->a(Lcom/tencent/mmkv/MMKVLogLevel;Ljava/lang/String;)V
sget-object p0, Lcom/tencent/mmkv/MMKV;->a:Ljava/util/EnumMap;
invoke-virtual {p0, v0}, Ljava/util/EnumMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Integer;
if-nez p0, :cond_34
const/4 p0, 0x0
goto :goto_38
:cond_34
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_38
return p0
.end method
.method public static onMMKVFileLengthError(Ljava/lang/String;)I
.registers 5
sget-object v0, Lcom/tencent/mmkv/MMKVRecoverStrategic;->OnErrorDiscard:Lcom/tencent/mmkv/MMKVRecoverStrategic;
sget-object v1, Lcom/tencent/mmkv/MMKV;->f:Lfp/b;
if-eqz v1, :cond_a
invoke-interface {v1, p0}, Lfp/b;->a(Ljava/lang/String;)Lcom/tencent/mmkv/MMKVRecoverStrategic;
move-result-object v0
:cond_a
sget-object v1, Lcom/tencent/mmkv/MMKVLogLevel;->LevelInfo:Lcom/tencent/mmkv/MMKVLogLevel;
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "Recover strategic for "
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
const-string p0, " is "
invoke-virtual {v2, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p0
invoke-static {v1, p0}, Lcom/tencent/mmkv/MMKV;->a(Lcom/tencent/mmkv/MMKVLogLevel;Ljava/lang/String;)V
sget-object p0, Lcom/tencent/mmkv/MMKV;->a:Ljava/util/EnumMap;
invoke-virtual {p0, v0}, Ljava/util/EnumMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object p0
check-cast p0, Ljava/lang/Integer;
if-nez p0, :cond_34
const/4 p0, 0x0
goto :goto_38
:cond_34
invoke-virtual {p0}, Ljava/lang/Integer;->intValue()I
move-result p0
:goto_38
return p0
.end method
.method public static native pageSize()I
.end method
.method private native removeValueForKey(JLjava/lang/String;)V
.end method
.method public static native setCallbackHandler(ZZ)V
.end method
.method public static native setLogLevel(I)V
.end method
.method public static native setWantsContentChangeNotify(Z)V
.end method
.method private native sync(Z)V
.end method
.method private native totalSize(J)J
.end method
.method private native valueSize(JLjava/lang/String;Z)I
.end method
.method public static native version()Ljava/lang/String;
.end method
.method private native writeValueToNB(JLjava/lang/String;JI)I
.end method
# virtual methods
.method public a(Landroid/content/SharedPreferences;)I
.registers 11
invoke-interface {p1}, Landroid/content/SharedPreferences;->getAll()Ljava/util/Map;
move-result-object p1
if-eqz p1, :cond_bd
invoke-interface {p1}, Ljava/util/Map;->size()I
move-result v0
if-gtz v0, :cond_e
goto/16 :goto_bd
:cond_e
invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;
move-result-object v0
invoke-interface {v0}, Ljava/util/Set;->iterator()Ljava/util/Iterator;
move-result-object v0
:cond_16
:goto_16
invoke-interface {v0}, Ljava/util/Iterator;->hasNext()Z
move-result v1
if-eqz v1, :cond_b8
invoke-interface {v0}, Ljava/util/Iterator;->next()Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/util/Map$Entry;
invoke-interface {v1}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;
move-result-object v2
move-object v6, v2
check-cast v6, Ljava/lang/String;
invoke-interface {v1}, Ljava/util/Map$Entry;->getValue()Ljava/lang/Object;
move-result-object v1
if-eqz v6, :cond_16
if-nez v1, :cond_32
goto :goto_16
:cond_32
instance-of v2, v1, Ljava/lang/Boolean;
if-eqz v2, :cond_42
iget-wide v2, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/Boolean;
invoke-virtual {v1}, Ljava/lang/Boolean;->booleanValue()Z
move-result v1
invoke-direct {p0, v2, v3, v6, v1}, Lcom/tencent/mmkv/MMKV;->encodeBool(JLjava/lang/String;Z)Z
goto :goto_16
:cond_42
instance-of v2, v1, Ljava/lang/Integer;
if-eqz v2, :cond_52
iget-wide v2, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/Integer;
invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
move-result v1
invoke-direct {p0, v2, v3, v6, v1}, Lcom/tencent/mmkv/MMKV;->encodeInt(JLjava/lang/String;I)Z
goto :goto_16
:cond_52
instance-of v2, v1, Ljava/lang/Long;
if-eqz v2, :cond_63
iget-wide v4, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/Long;
invoke-virtual {v1}, Ljava/lang/Long;->longValue()J
move-result-wide v7
move-object v3, p0
invoke-direct/range {v3 .. v8}, Lcom/tencent/mmkv/MMKV;->encodeLong(JLjava/lang/String;J)Z
goto :goto_16
:cond_63
instance-of v2, v1, Ljava/lang/Float;
if-eqz v2, :cond_73
iget-wide v2, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/Float;
invoke-virtual {v1}, Ljava/lang/Float;->floatValue()F
move-result v1
invoke-direct {p0, v2, v3, v6, v1}, Lcom/tencent/mmkv/MMKV;->encodeFloat(JLjava/lang/String;F)Z
goto :goto_16
:cond_73
instance-of v2, v1, Ljava/lang/Double;
if-eqz v2, :cond_84
iget-wide v4, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/Double;
invoke-virtual {v1}, Ljava/lang/Double;->doubleValue()D
move-result-wide v7
move-object v3, p0
invoke-direct/range {v3 .. v8}, Lcom/tencent/mmkv/MMKV;->encodeDouble(JLjava/lang/String;D)Z
goto :goto_16
:cond_84
instance-of v2, v1, Ljava/lang/String;
if-eqz v2, :cond_90
iget-wide v2, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
check-cast v1, Ljava/lang/String;
invoke-direct {p0, v2, v3, v6, v1}, Lcom/tencent/mmkv/MMKV;->encodeString(JLjava/lang/String;Ljava/lang/String;)Z
goto :goto_16
:cond_90
instance-of v2, v1, Ljava/util/Set;
if-eqz v2, :cond_9b
check-cast v1, Ljava/util/Set;
invoke-virtual {p0, v6, v1}, Lcom/tencent/mmkv/MMKV;->b(Ljava/lang/String;Ljava/util/Set;)Z
goto/16 :goto_16
:cond_9b
sget-object v2, Lcom/tencent/mmkv/MMKVLogLevel;->LevelError:Lcom/tencent/mmkv/MMKVLogLevel;
new-instance v3, Ljava/lang/StringBuilder;
invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v4, "unknown type: "
invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/Object;->getClass()Ljava/lang/Class;
move-result-object v1
invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v1
invoke-static {v2, v1}, Lcom/tencent/mmkv/MMKV;->a(Lcom/tencent/mmkv/MMKVLogLevel;Ljava/lang/String;)V
goto/16 :goto_16
:cond_b8
invoke-interface {p1}, Ljava/util/Map;->size()I
move-result p1
return p1
:cond_bd
:goto_bd
const/4 p1, 0x0
return p1
.end method
.method public a()J
.registers 3
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1}, Lcom/tencent/mmkv/MMKV;->totalSize(J)J
move-result-wide v0
return-wide v0
.end method
.method public a(Ljava/lang/String;Ljava/util/Set;)Ljava/util/Set;
.registers 4
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;)",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
const-class v0, Ljava/util/HashSet;
invoke-virtual {p0, p1, p2, v0}, Lcom/tencent/mmkv/MMKV;->a(Ljava/lang/String;Ljava/util/Set;Ljava/lang/Class;)Ljava/util/Set;
move-result-object p1
return-object p1
.end method
.method public a(Ljava/lang/String;Ljava/util/Set;Ljava/lang/Class;)Ljava/util/Set;
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;",
"Ljava/lang/Class<",
"+",
"Ljava/util/Set;",
">;)",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1}, Lcom/tencent/mmkv/MMKV;->decodeStringSet(JLjava/lang/String;)[Ljava/lang/String;
move-result-object p1
if-nez p1, :cond_9
return-object p2
:cond_9
:try_start_9
invoke-virtual {p3}, Ljava/lang/Class;->newInstance()Ljava/lang/Object;
move-result-object p3
check-cast p3, Ljava/util/Set;
:try_end_f
.catch Ljava/lang/IllegalAccessException; {:try_start_9 .. :try_end_f} :catch_17
.catch Ljava/lang/InstantiationException; {:try_start_9 .. :try_end_f} :catch_17
invoke-static {p1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
move-result-object p1
invoke-interface {p3, p1}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z
return-object p3
:catch_17
return-object p2
.end method
.method public a(Ljava/lang/String;)Z
.registers 4
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1}, Lcom/tencent/mmkv/MMKV;->containsKey(JLjava/lang/String;)Z
move-result p1
return p1
.end method
.method public a(Ljava/lang/String;Ljava/lang/String;)Z
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeString(JLjava/lang/String;Ljava/lang/String;)Z
move-result p1
return p1
.end method
.method public a(Ljava/lang/String;Z)Z
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->decodeBool(JLjava/lang/String;Z)Z
move-result p1
return p1
.end method
.method public native allKeys()[Ljava/lang/String;
.end method
.method public apply()V
.registers 2
const/4 v0, 0x0
invoke-direct {p0, v0}, Lcom/tencent/mmkv/MMKV;->sync(Z)V
return-void
.end method
.method public native ashmemFD()I
.end method
.method public native ashmemMetaFD()I
.end method
.method public b(Ljava/lang/String;)Ljava/lang/String;
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
const/4 v2, 0x0
invoke-direct {p0, v0, v1, p1, v2}, Lcom/tencent/mmkv/MMKV;->decodeString(JLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public b(Ljava/lang/String;Ljava/util/Set;)Z
.registers 6
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;)Z"
}
.end annotation
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
const/4 v2, 0x0
new-array v2, v2, [Ljava/lang/String;
invoke-interface {p2, v2}, Ljava/util/Set;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;
move-result-object p2
check-cast p2, [Ljava/lang/String;
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeSet(JLjava/lang/String;[Ljava/lang/String;)Z
move-result p1
return p1
.end method
.method public b(Ljava/lang/String;Z)Z
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeBool(JLjava/lang/String;Z)Z
move-result p1
return p1
.end method
.method public c(Ljava/lang/String;)V
.registers 4
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1}, Lcom/tencent/mmkv/MMKV;->removeValueForKey(JLjava/lang/String;)V
return-void
.end method
.method public native checkContentChangedByOuterProcess()V
.end method
.method public native checkReSetCryptKey(Ljava/lang/String;)V
.end method
.method public clear()Landroid/content/SharedPreferences$Editor;
.registers 1
invoke-virtual {p0}, Lcom/tencent/mmkv/MMKV;->clearAll()V
return-object p0
.end method
.method public native clearAll()V
.end method
.method public native clearMemoryCache()V
.end method
.method public native close()V
.end method
.method public commit()Z
.registers 2
const/4 v0, 0x1
invoke-direct {p0, v0}, Lcom/tencent/mmkv/MMKV;->sync(Z)V
return v0
.end method
.method public contains(Ljava/lang/String;)Z
.registers 2
invoke-virtual {p0, p1}, Lcom/tencent/mmkv/MMKV;->a(Ljava/lang/String;)Z
move-result p1
return p1
.end method
.method public native cryptKey()Ljava/lang/String;
.end method
.method public edit()Landroid/content/SharedPreferences$Editor;
.registers 1
return-object p0
.end method
.method public getAll()Ljava/util/Map;
.registers 3
.annotation system Ldalvik/annotation/Signature;
value = {
"()",
"Ljava/util/Map<",
"Ljava/lang/String;",
"*>;"
}
.end annotation
new-instance v0, Ljava/lang/UnsupportedOperationException;
const-string/jumbo v1, "use allKeys() instead, getAll() not implement because type-erasure inside mmkv"
invoke-direct {v0, v1}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw v0
.end method
.method public getBoolean(Ljava/lang/String;Z)Z
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->decodeBool(JLjava/lang/String;Z)Z
move-result p1
return p1
.end method
.method public getFloat(Ljava/lang/String;F)F
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->decodeFloat(JLjava/lang/String;F)F
move-result p1
return p1
.end method
.method public getInt(Ljava/lang/String;I)I
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->decodeInt(JLjava/lang/String;I)I
move-result p1
return p1
.end method
.method public getLong(Ljava/lang/String;J)J
.registers 10
iget-wide v1, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
move-object v0, p0
move-object v3, p1
move-wide v4, p2
invoke-direct/range {v0 .. v5}, Lcom/tencent/mmkv/MMKV;->decodeLong(JLjava/lang/String;J)J
move-result-wide p1
return-wide p1
.end method
.method public getString(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
.registers 5
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->decodeString(JLjava/lang/String;Ljava/lang/String;)Ljava/lang/String;
move-result-object p1
return-object p1
.end method
.method public getStringSet(Ljava/lang/String;Ljava/util/Set;)Ljava/util/Set;
.registers 3
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation build Landroidx/annotation/Nullable;
.end annotation
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;)",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;"
}
.end annotation
invoke-virtual {p0, p1, p2}, Lcom/tencent/mmkv/MMKV;->a(Ljava/lang/String;Ljava/util/Set;)Ljava/util/Set;
move-result-object p1
return-object p1
.end method
.method public native lock()V
.end method
.method public native mmapID()Ljava/lang/String;
.end method
.method public putBoolean(Ljava/lang/String;Z)Landroid/content/SharedPreferences$Editor;
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeBool(JLjava/lang/String;Z)Z
return-object p0
.end method
.method public putFloat(Ljava/lang/String;F)Landroid/content/SharedPreferences$Editor;
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeFloat(JLjava/lang/String;F)Z
return-object p0
.end method
.method public putInt(Ljava/lang/String;I)Landroid/content/SharedPreferences$Editor;
.registers 5
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeInt(JLjava/lang/String;I)Z
return-object p0
.end method
.method public putLong(Ljava/lang/String;J)Landroid/content/SharedPreferences$Editor;
.registers 10
iget-wide v1, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
move-object v0, p0
move-object v3, p1
move-wide v4, p2
invoke-direct/range {v0 .. v5}, Lcom/tencent/mmkv/MMKV;->encodeLong(JLjava/lang/String;J)Z
return-object p0
.end method
.method public putString(Ljava/lang/String;Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
.registers 5
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
iget-wide v0, p0, Lcom/tencent/mmkv/MMKV;->nativeHandle:J
invoke-direct {p0, v0, v1, p1, p2}, Lcom/tencent/mmkv/MMKV;->encodeString(JLjava/lang/String;Ljava/lang/String;)Z
return-object p0
.end method
.method public putStringSet(Ljava/lang/String;Ljava/util/Set;)Landroid/content/SharedPreferences$Editor;
.registers 3
.param p1 # Ljava/lang/String;
.annotation build Landroidx/annotation/Nullable;
.end annotation
.end param
.annotation system Ldalvik/annotation/Signature;
value = {
"(",
"Ljava/lang/String;",
"Ljava/util/Set<",
"Ljava/lang/String;",
">;)",
"Landroid/content/SharedPreferences$Editor;"
}
.end annotation
invoke-virtual {p0, p1, p2}, Lcom/tencent/mmkv/MMKV;->b(Ljava/lang/String;Ljava/util/Set;)Z
return-object p0
.end method
.method public native reKey(Ljava/lang/String;)Z
.end method
.method public registerOnSharedPreferenceChangeListener(Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener;)V
.registers 3
new-instance p1, Ljava/lang/UnsupportedOperationException;
const-string v0, "Not implement in MMKV"
invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw p1
.end method
.method public remove(Ljava/lang/String;)Landroid/content/SharedPreferences$Editor;
.registers 2
invoke-virtual {p0, p1}, Lcom/tencent/mmkv/MMKV;->c(Ljava/lang/String;)V
return-object p0
.end method
.method public native removeValuesForKeys([Ljava/lang/String;)V
.end method
.method public native trim()V
.end method
.method public native tryLock()Z
.end method
.method public native unlock()V
.end method
.method public unregisterOnSharedPreferenceChangeListener(Landroid/content/SharedPreferences$OnSharedPreferenceChangeListener;)V
.registers 3
new-instance p1, Ljava/lang/UnsupportedOperationException;
const-string v0, "Not implement in MMKV"
invoke-direct {p1, v0}, Ljava/lang/UnsupportedOperationException;-><init>(Ljava/lang/String;)V
throw p1
.end method