NativeClient.smali

.class public final Lio/rong/imlib/NativeClient;
.super Ljava/lang/Object;
.source "NativeClient.java"


# annotations
.annotation system Ldalvik/annotation/MemberClasses;
    value = {
        Lio/rong/imlib/NativeClient$MessageExpansionHandle;,
        Lio/rong/imlib/NativeClient$PushNotificationListener;,
        Lio/rong/imlib/NativeClient$KVStatusListener;,
        Lio/rong/imlib/NativeClient$OnReceiveMessageListener;,
        Lio/rong/imlib/NativeClient$GetNotificationQuietHoursCallback;,
        Lio/rong/imlib/NativeClient$IDownloadMediaFileCallback;,
        Lio/rong/imlib/NativeClient$IDownloadMediaMessageCallback;,
        Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;,
        Lio/rong/imlib/NativeClient$IResultProgressCallback;,
        Lio/rong/imlib/NativeClient$ISendMessageCallback;,
        Lio/rong/imlib/NativeClient$IResultCallbackEx;,
        Lio/rong/imlib/NativeClient$IConnectResultCallback;,
        Lio/rong/imlib/NativeClient$IResultCallback;,
        Lio/rong/imlib/NativeClient$OperationCallback;,
        Lio/rong/imlib/NativeClient$ICodeListener;,
        Lio/rong/imlib/NativeClient$BlacklistStatus;,
        Lio/rong/imlib/NativeClient$NativeClientHolder;
    }
.end annotation


# static fields
.field private static final EXPANSION_MAX_COUNT:I = 0x12c

.field private static final EXPANSION_SINGLE_MAX_COUNT:I = 0x14

.field private static final TAG:Ljava/lang/String; = "NativeClient"

.field private static mContext:Landroid/content/Context;

.field private static messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;


# instance fields
.field private appKey:Ljava/lang/String;

.field private chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/concurrent/ConcurrentHashMap<",
            "Ljava/lang/String;",
            "Ljava/lang/Boolean;",
            ">;"
        }
    .end annotation
.end field

.field private curUserId:Ljava/lang/String;

.field private dbPath:Ljava/lang/String;

.field private deviceId:Ljava/lang/String;

.field private executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

.field private mCmdObjectNameSet:Ljava/util/Set;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/Set<",
            "Ljava/lang/String;",
            ">;"
        }
    .end annotation
.end field

.field private mFileServer:Ljava/lang/String;

.field private mKVStatusListener:Lio/rong/imlib/NativeClient$KVStatusListener;

.field private mWorkHandler:Landroid/os/Handler;

.field private messageContentConstructorMap:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Ljava/lang/reflect/Constructor<",
            "+",
            "Lio/rong/imlib/model/MessageContent;",
            ">;>;"
        }
    .end annotation
.end field

.field private messageHandlerMap:Ljava/util/HashMap;
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Lio/rong/message/MessageHandler;",
            ">;"
        }
    .end annotation
.end field

.field private nativeObj:Lio/rong/imlib/NativeObject;

.field private naviUpdateListener:Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;

.field private receiveMessageExecutor:Ljava/util/concurrent/Executor;


# direct methods
.method static constructor <clinit>()V
    .registers 0

    return-void
.end method

.method private constructor <init>()V
    .registers 1

    .line 2
    invoke-direct {p0}, Ljava/lang/Object;-><init>()V

    .line 3
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    return-void
.end method

.method synthetic constructor <init>(Lio/rong/imlib/NativeClient$1;)V
    .registers 2

    .line 1
    invoke-direct {p0}, Lio/rong/imlib/NativeClient;-><init>()V

    return-void
.end method

.method static synthetic access$1000(Lio/rong/imlib/NativeClient;)Ljava/util/concurrent/Executor;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->receiveMessageExecutor:Ljava/util/concurrent/Executor;

    return-object p0
.end method

.method static synthetic access$1100(Lio/rong/imlib/NativeClient;)Ljava/util/Set;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->mCmdObjectNameSet:Ljava/util/Set;

    return-object p0
.end method

.method static synthetic access$1200(Lio/rong/imlib/NativeClient;Ljava/lang/String;[B)Lio/rong/imlib/model/MessageContent;
    .registers 3

    .line 1
    invoke-direct {p0, p1, p2}, Lio/rong/imlib/NativeClient;->newMessageContent(Ljava/lang/String;[B)Lio/rong/imlib/model/MessageContent;

    move-result-object p0

    return-object p0
.end method

.method static synthetic access$1300(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;
    .registers 2

    .line 1
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object p0

    return-object p0
.end method

.method static synthetic access$1400(Lio/rong/imlib/NativeClient;)Ljava/util/concurrent/ConcurrentHashMap;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    return-object p0
.end method

.method static synthetic access$1500(Lio/rong/imlib/NativeClient;)Lio/rong/imlib/NativeClient$KVStatusListener;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->mKVStatusListener:Lio/rong/imlib/NativeClient$KVStatusListener;

    return-object p0
.end method

.method static synthetic access$1600(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
    .registers 4

    .line 1
    invoke-direct {p0, p1, p2, p3}, Lio/rong/imlib/NativeClient;->getMessageExpansion(Lio/rong/imlib/model/Message;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;

    move-result-object p0

    return-object p0
.end method

.method static synthetic access$1700(Lio/rong/imlib/NativeClient;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z
    .registers 5

    .line 1
    invoke-direct {p0, p1, p2, p3, p4}, Lio/rong/imlib/NativeClient;->setMessageExpansion(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z

    move-result p0

    return p0
.end method

.method static synthetic access$1800(Lio/rong/imlib/NativeClient;JZLjava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 7

    .line 1
    invoke-direct/range {p0 .. p6}, Lio/rong/imlib/NativeClient;->removeKeysInExpansionEx(JZLjava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V

    return-void
.end method

.method static synthetic access$200()Landroid/content/Context;
    .registers 1

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    return-object v0
.end method

.method static synthetic access$300(Lio/rong/imlib/NativeClient;)Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->naviUpdateListener:Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;

    return-object p0
.end method

.method static synthetic access$400(Lio/rong/imlib/NativeClient;Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;
    .registers 4

    .line 1
    invoke-direct {p0, p1, p2, p3}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p0

    return-object p0
.end method

.method static synthetic access$500(Lio/rong/imlib/NativeClient;)Lio/rong/imlib/NativeObject;
    .registers 1

    .line 1
    iget-object p0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    return-object p0
.end method

.method static synthetic access$600(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;)Z
    .registers 2

    .line 1
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->isMentionedMessage(Lio/rong/imlib/model/Message;)Z

    move-result p0

    return p0
.end method

.method static synthetic access$700(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZLjava/lang/String;)V
    .registers 12

    .line 1
    invoke-direct/range {p0 .. p11}, Lio/rong/imlib/NativeClient;->internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZLjava/lang/String;)V

    return-void
.end method

.method static synthetic access$800(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;)V
    .registers 2

    .line 1
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->handleExpansionMsg(Lio/rong/imlib/model/Message;)V

    return-void
.end method

.method static synthetic access$900(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeObject$Message;IZZILio/rong/imlib/NativeClient$OnReceiveMessageListener;)V
    .registers 7

    .line 1
    invoke-direct/range {p0 .. p6}, Lio/rong/imlib/NativeClient;->handleReceivedMessage(Lio/rong/imlib/NativeObject$Message;IZZILio/rong/imlib/NativeClient$OnReceiveMessageListener;)V

    return-void
.end method

.method private encryptMessageContentIfNeeded([BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/Message;
    .registers 7
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/lang/RuntimeException;
        }
    .end annotation

    .line 1
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v0

    .line 2
    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_d5

    const-string v1, ";;;"

    .line 3
    invoke-virtual {v0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object v1

    .line 4
    array-length v2, v1

    const/4 v3, 0x2

    if-ne v2, v3, :cond_be

    .line 5
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v2, v0}, Lio/rong/imlib/NativeObject;->GetEncryptedConversationInfo(Ljava/lang/String;)Lio/rong/imlib/model/RCEncryptedSession;

    move-result-object v0

    if-eqz v0, :cond_b6

    .line 6
    invoke-virtual {v0}, Lio/rong/imlib/model/RCEncryptedSession;->getEncKey()Ljava/lang/String;

    move-result-object v2

    .line 7
    invoke-static {v2}, Lio/rong/message/utils/RCDHCodecTool;->fromString2RCSecretKey(Ljava/lang/String;)Lio/rong/message/utils/RCDHCodecTool$RCSecretKey;

    move-result-object v2

    if-eqz v2, :cond_ae

    .line 8
    invoke-static {p1, v2}, Lio/rong/message/utils/RCDHCodecTool;->encrypt([BLio/rong/message/utils/RCDHCodecTool$RCSecretKey;)[B

    move-result-object p1

    .line 9
    invoke-static {p1, v3}, Landroid/util/Base64;->encodeToString([BI)Ljava/lang/String;

    move-result-object p1

    .line 10
    new-instance v2, Lio/rong/message/RCEncryptedMessage;

    invoke-direct {v2}, Lio/rong/message/RCEncryptedMessage;-><init>()V

    .line 11
    invoke-virtual {v2, p1}, Lio/rong/message/RCEncryptedMessage;->setEncryptedContent(Ljava/lang/String;)V

    .line 12
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v2, p1}, Lio/rong/message/RCEncryptedMessage;->setOriginalObjName(Ljava/lang/String;)V

    .line 13
    invoke-virtual {v0}, Lio/rong/imlib/model/RCEncryptedSession;->getRemoteEncId()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v2, p1}, Lio/rong/message/RCEncryptedMessage;->setRemoteEncId(Ljava/lang/String;)V

    const/4 p1, 0x1

    .line 14
    aget-object p1, v1, p1

    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    invoke-static {p1, v0, v2}, Lio/rong/imlib/model/Message;->obtain(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Lio/rong/imlib/model/MessageContent;)Lio/rong/imlib/model/Message;

    move-result-object p1

    .line 15
    const-class v0, Lio/rong/message/RCEncryptedMessage;

    const-class v1, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v1}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v0

    check-cast v0, Lio/rong/imlib/MessageTag;

    invoke-interface {v0}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 16
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getExtra()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setExtra(Ljava/lang/String;)V

    .line 17
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 18
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 19
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setUId(Ljava/lang/String;)V

    .line 20
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getReadReceiptInfo()Lio/rong/imlib/model/ReadReceiptInfo;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setReadReceiptInfo(Lio/rong/imlib/model/ReadReceiptInfo;)V

    .line 21
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getReadTime()J

    move-result-wide v0

    invoke-virtual {p1, v0, v1}, Lio/rong/imlib/model/Message;->setReadTime(J)V

    .line 22
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 23
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getSentStatus()Lio/rong/imlib/model/Message$SentStatus;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 24
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getReceivedStatus()Lio/rong/imlib/model/Message$ReceivedStatus;

    move-result-object v0

    invoke-virtual {p1, v0}, Lio/rong/imlib/model/Message;->setReceivedStatus(Lio/rong/imlib/model/Message$ReceivedStatus;)V

    .line 25
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v0

    invoke-virtual {p1, v0, v1}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 26
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->getReceivedTime()J

    move-result-wide v0

    invoke-virtual {p1, v0, v1}, Lio/rong/imlib/model/Message;->setReceivedTime(J)V

    return-object p1

    .line 27
    :cond_ae
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "error occurs when transfering encKey."

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 28
    :cond_b6
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "error ! getEncryptedConversationInfo is null."

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 29
    :cond_be
    new-instance p1, Ljava/lang/RuntimeException;

    new-instance p2, Ljava/lang/StringBuilder;

    invoke-direct {p2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "error occurs while spliting targetId -> "

    invoke-virtual {p2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 30
    :cond_d5
    new-instance p1, Ljava/lang/RuntimeException;

    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "error! message TargetId is empty. message -> "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 31
    invoke-virtual {p2}, Lio/rong/imlib/model/Message;->toString()Ljava/lang/String;

    move-result-object p2

    invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p2

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public static getApplicationContext()Landroid/content/Context;
    .registers 1

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    return-object v0
.end method

.method public static getInstance()Lio/rong/imlib/NativeClient;
    .registers 1

    .line 1
    # getter for: Lio/rong/imlib/NativeClient$NativeClientHolder;->client:Lio/rong/imlib/NativeClient;
    invoke-static {}, Lio/rong/imlib/NativeClient$NativeClientHolder;->access$100()Lio/rong/imlib/NativeClient;

    move-result-object v0

    return-object v0
.end method

.method private getMessageExpansion(Lio/rong/imlib/model/Message;Ljava/util/Map;Ljava/lang/String;)Ljava/lang/String;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            ")",
            "Ljava/lang/String;"
        }
    .end annotation

    .line 1
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v0

    .line 2
    invoke-static {p2, v0, v1}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object p1

    .line 3
    invoke-static {p1, p3}, Lio/rong/common/JSONUtils;->mergeJson(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;

    move-result-object p1

    if-eqz p1, :cond_1c

    .line 4
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result p2

    if-eqz p2, :cond_1c

    const/4 p2, 0x0

    .line 5
    invoke-interface {p1, p2}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Ljava/lang/String;

    goto :goto_1e

    :cond_1c
    const-string p1, ""

    :goto_1e
    return-object p1
.end method

.method private getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->messageHandlerMap:Ljava/util/HashMap;

    invoke-virtual {v0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Lio/rong/message/MessageHandler;

    return-object p1
.end method

.method private getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;
    .registers 4

    if-eqz p1, :cond_31

    .line 1
    invoke-virtual {p1}, Lio/rong/imlib/model/MessageContent;->getSearchableWord()Ljava/util/List;

    move-result-object p1

    if-eqz p1, :cond_31

    .line 2
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-lez v0, :cond_31

    .line 3
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    .line 4
    invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object p1

    :goto_17
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z

    move-result v1

    if-eqz v1, :cond_2c

    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v1

    check-cast v1, Ljava/lang/String;

    .line 5
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v1, "\n"

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    goto :goto_17

    .line 6
    :cond_2c
    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    goto :goto_33

    :cond_31
    const-string p1, ""

    :goto_33
    return-object p1
.end method

.method private handleEncryptedMessage(Lio/rong/imlib/model/Message;Lio/rong/imlib/model/MessageContent;)V
    .registers 29

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    .line 1
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v2

    const-string v3, "NativeClient"

    if-eqz v2, :cond_20

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v2

    invoke-virtual/range {p0 .. p0}, Lio/rong/imlib/NativeClient;->getCurrentUserId()Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v2, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_20

    const-string v1, "encryptedMsg from the same endpoint , do nothing."

    .line 2
    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    :cond_20
    if-nez p2, :cond_28

    const-string v1, "render EncryptedMsgContent returns null."

    .line 3
    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 4
    :cond_28
    move-object/from16 v2, p2

    check-cast v2, Lio/rong/message/RCEncryptedMessage;

    .line 5
    invoke-virtual {v2}, Lio/rong/message/RCEncryptedMessage;->getRemoteEncId()Ljava/lang/String;

    move-result-object v4

    .line 6
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v5

    .line 7
    iget-object v6, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v7, Ljava/lang/StringBuilder;

    invoke-direct {v7}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {v7, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v8, ";;;"

    invoke-virtual {v7, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v7, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v7}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v7

    .line 8
    invoke-virtual {v6, v7}, Lio/rong/imlib/NativeObject;->GetEncryptedConversationInfo(Ljava/lang/String;)Lio/rong/imlib/model/RCEncryptedSession;

    move-result-object v6

    if-nez v6, :cond_70

    .line 9
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "GetEncryptedConversationInfo of "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v2, " is null "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->w(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 10
    :cond_70
    invoke-virtual {v6}, Lio/rong/imlib/model/RCEncryptedSession;->getEncKey()Ljava/lang/String;

    move-result-object v6

    .line 11
    invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v7

    if-eqz v7, :cond_95

    .line 12
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "result is null when getEncKey from encryptedSesseion of ->"

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->w(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 13
    :cond_95
    invoke-static {v6}, Lio/rong/message/utils/RCDHCodecTool;->fromString2RCSecretKey(Ljava/lang/String;)Lio/rong/message/utils/RCDHCodecTool$RCSecretKey;

    move-result-object v6

    .line 14
    invoke-virtual {v2}, Lio/rong/message/RCEncryptedMessage;->getEncryptedContent()Ljava/lang/String;

    move-result-object v7

    if-nez v7, :cond_a5

    const-string v1, "instance of RCEncryptedMessage getEncryptedContent() returns null."

    .line 15
    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    :cond_a5
    if-nez v6, :cond_ad

    const-string v1, "secretKey is null."

    .line 16
    invoke-static {v3, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 17
    :cond_ad
    invoke-virtual {v2}, Lio/rong/message/RCEncryptedMessage;->getEncryptedContent()Ljava/lang/String;

    move-result-object v3

    const/4 v7, 0x2

    invoke-static {v3, v7}, Landroid/util/Base64;->decode(Ljava/lang/String;I)[B

    move-result-object v3

    .line 18
    invoke-static {v3, v6}, Lio/rong/message/utils/RCDHCodecTool;->decrypt([BLio/rong/message/utils/RCDHCodecTool$RCSecretKey;)[B

    move-result-object v14

    .line 19
    invoke-virtual {v2}, Lio/rong/message/RCEncryptedMessage;->getOriginalObjName()Ljava/lang/String;

    move-result-object v3

    .line 20
    invoke-direct {v0, v3, v14, v1}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    .line 21
    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 22
    invoke-virtual {v2}, Lio/rong/message/RCEncryptedMessage;->getOriginalObjName()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 23
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {v2, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setTargetId(Ljava/lang/String;)V

    .line 24
    sget-object v2, Lio/rong/imlib/model/Conversation$ConversationType;->ENCRYPTED:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setConversationType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    .line 25
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 26
    invoke-virtual {v3}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v2

    const-class v4, Lio/rong/imlib/MessageTag;

    invoke-virtual {v2, v4}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v2

    check-cast v2, Lio/rong/imlib/MessageTag;

    .line 27
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v4

    const/4 v5, 0x1

    and-int/2addr v4, v5

    if-ne v4, v5, :cond_161

    .line 28
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v2

    const/4 v4, 0x3

    and-int/2addr v2, v4

    const/4 v6, 0x0

    if-ne v2, v4, :cond_10c

    const/4 v2, 0x1

    goto :goto_10d

    :cond_10c
    const/4 v2, 0x0

    :goto_10d
    xor-int/lit8 v21, v2, 0x1

    .line 29
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v2

    .line 30
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v24

    .line 31
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v4

    .line 32
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v7

    invoke-static {v7, v4, v5}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v25

    if-eqz v2, :cond_12c

    .line 33
    invoke-virtual {v2}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v2

    move/from16 v23, v2

    goto :goto_12e

    :cond_12c
    const/16 v23, 0x0

    .line 34
    :goto_12e
    iget-object v9, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v10

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v11

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v12

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v13

    const/4 v15, 0x1

    const/16 v16, 0x0

    sget-object v2, Lio/rong/imlib/model/Message$SentStatus;->RECEIVED:Lio/rong/imlib/model/Message$SentStatus;

    .line 35
    invoke-virtual {v2}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v17

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v18

    .line 36
    invoke-direct {v0, v3}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v20

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v22

    .line 37
    invoke-virtual/range {v9 .. v25}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v2

    long-to-int v3, v2

    .line 38
    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    :cond_161
    return-void
.end method

.method private handleExpansionMsg(Lio/rong/imlib/model/Message;)V
    .registers 12

    .line 1
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    check-cast v0, Lio/rong/message/MessageExpansionMessage;

    .line 2
    invoke-virtual {v0}, Lio/rong/message/MessageExpansionMessage;->getOriginalMsgUId()Ljava/lang/String;

    move-result-object v1

    .line 3
    invoke-virtual {p0, v1}, Lio/rong/imlib/NativeClient;->getMessageByUid(Ljava/lang/String;)Lio/rong/imlib/model/Message;

    move-result-object v7

    const-string v2, "NativeClient"

    if-nez v7, :cond_18

    const-string p1, "handleMessageExpansionMsg originMsg is null"

    .line 4
    invoke-static {v2, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 5
    :cond_18
    iget-object v3, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v3, v1}, Lio/rong/imlib/NativeObject;->GetMessageByUId(Ljava/lang/String;)Lio/rong/imlib/NativeObject$Message;

    move-result-object v3

    .line 6
    invoke-virtual {v0}, Lio/rong/message/MessageExpansionMessage;->getUpdateExpansion()Ljava/util/Map;

    move-result-object v4

    .line 7
    invoke-virtual {v0}, Lio/rong/message/MessageExpansionMessage;->getRemoveExpansionKeyList()Ljava/util/List;

    move-result-object v6

    .line 8
    invoke-virtual {v0}, Lio/rong/message/MessageExpansionMessage;->isRemoveAllKeys()Z

    move-result v0

    .line 9
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v8

    if-eqz v0, :cond_3e

    .line 10
    new-instance v6, Ljava/util/ArrayList;

    invoke-direct {v6}, Ljava/util/ArrayList;-><init>()V

    const/4 v5, 0x1

    const/4 p1, 0x0

    move-object v2, p0

    move-wide v3, v8

    move-object v8, p1

    .line 11
    invoke-direct/range {v2 .. v8}, Lio/rong/imlib/NativeClient;->removeKeysInExpansionEx(JZLjava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V

    return-void

    :cond_3e
    if-eqz v4, :cond_94

    .line 12
    new-instance p1, Lio/rong/imlib/NativeClient$MessageExpansionHandle;

    invoke-direct {p1, v3, v4, v8, v9}, Lio/rong/imlib/NativeClient$MessageExpansionHandle;-><init>(Lio/rong/imlib/NativeObject$Message;Ljava/util/Map;J)V

    invoke-virtual {p1}, Lio/rong/imlib/NativeClient$MessageExpansionHandle;->invoke()Lio/rong/imlib/NativeClient$MessageExpansionHandle;

    move-result-object p1

    .line 13
    invoke-virtual {p1}, Lio/rong/imlib/NativeClient$MessageExpansionHandle;->getExtMsgExpansion()Ljava/lang/String;

    move-result-object v0

    .line 14
    invoke-virtual {p1}, Lio/rong/imlib/NativeClient$MessageExpansionHandle;->getUpdateStr()Ljava/lang/String;

    move-result-object p1

    .line 15
    invoke-virtual {v7}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v7}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v4

    invoke-virtual {v4}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    invoke-direct {p0, v3, v4, v1, v0}, Lio/rong/imlib/NativeClient;->setMessageExpansion(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z

    move-result v1

    .line 16
    sget-object v3, Lio/rong/imlib/NativeClient;->messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;

    if-eqz v3, :cond_9c

    .line 17
    :try_start_65
    new-instance v3, Lorg/json/JSONObject;

    invoke-direct {v3, p1}, Lorg/json/JSONObject;-><init>(Ljava/lang/String;)V

    if-eqz v1, :cond_9c

    .line 18
    invoke-static {v0}, Lio/rong/common/JSONUtils;->expansionExJSONToMap(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object v0

    invoke-virtual {v7, v0}, Lio/rong/imlib/model/Message;->setExpansion(Ljava/util/HashMap;)V

    .line 19
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_9c

    invoke-virtual {v3}, Lorg/json/JSONObject;->length()I

    move-result v0

    if-eqz v0, :cond_9c

    .line 20
    invoke-static {p1}, Lio/rong/common/JSONUtils;->expansionExJSONToMap(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object p1

    .line 21
    sget-object v0, Lio/rong/imlib/NativeClient;->messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;

    invoke-interface {v0, p1, v7}, Lio/rong/imlib/IMessageExpansionListener;->onMessageExpansionUpdate(Ljava/util/Map;Lio/rong/imlib/model/Message;)V
    :try_end_88
    .catch Lorg/json/JSONException; {:try_start_65 .. :try_end_88} :catch_8b
    .catch Landroid/os/RemoteException; {:try_start_65 .. :try_end_88} :catch_89

    goto :goto_9c

    :catch_89
    move-exception p1

    goto :goto_8c

    :catch_8b
    move-exception p1

    .line 22
    :goto_8c
    invoke-virtual {p1}, Ljava/lang/Exception;->toString()Ljava/lang/String;

    move-result-object p1

    invoke-static {v2, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_9c

    :cond_94
    const/4 v5, 0x1

    const/4 p1, 0x0

    move-object v2, p0

    move-wide v3, v8

    move-object v8, p1

    .line 23
    invoke-direct/range {v2 .. v8}, Lio/rong/imlib/NativeClient;->removeKeysInExpansionEx(JZLjava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V

    :cond_9c
    :goto_9c
    return-void
.end method

.method private handleReceivedMessage(Lio/rong/imlib/NativeObject$Message;IZZILio/rong/imlib/NativeClient$OnReceiveMessageListener;)V
    .registers 13

    .line 1
    new-instance v1, Lio/rong/imlib/model/Message;

    invoke-direct {v1, p1}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 2
    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p1

    invoke-direct {p0, v2, p1, v1}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    const-string v2, "RC:EncryptedMsg"

    .line 4
    invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-eqz v0, :cond_21

    .line 5
    invoke-direct {p0, v1, p1}, Lio/rong/imlib/NativeClient;->handleEncryptedMessage(Lio/rong/imlib/model/Message;Lio/rong/imlib/model/MessageContent;)V

    goto :goto_24

    .line 6
    :cond_21
    invoke-virtual {v1, p1}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 7
    :goto_24
    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    instance-of p1, p1, Lio/rong/message/DiscussionNotificationMessage;

    if-eqz p1, :cond_75

    .line 8
    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    check-cast p1, Lio/rong/message/DiscussionNotificationMessage;

    .line 9
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {p1}, Lio/rong/message/DiscussionNotificationMessage;->getOperator()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_67

    invoke-virtual {p1}, Lio/rong/message/DiscussionNotificationMessage;->getType()I

    move-result v0

    const/4 v2, 0x4

    if-ne v0, v2, :cond_67

    .line 10
    invoke-virtual {p1}, Lio/rong/message/DiscussionNotificationMessage;->getExtension()Ljava/lang/String;

    move-result-object p1

    .line 11
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_75

    const-string v0, ","

    .line 12
    invoke-virtual {p1, v0}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;

    move-result-object p1

    .line 13
    array-length v0, p1

    const/4 v2, 0x0

    :goto_57
    if-ge v2, v0, :cond_75

    aget-object v3, p1, v2

    .line 14
    iget-object v4, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v4, v5, v3}, Lio/rong/imlib/NativeObject;->RemoveMemberFromDiscussionSync(Ljava/lang/String;Ljava/lang/String;)Z

    add-int/lit8 v2, v2, 0x1

    goto :goto_57

    .line 15
    :cond_67
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v0

    new-instance v2, Lio/rong/imlib/NativeClient$36;

    invoke-direct {v2, p0}, Lio/rong/imlib/NativeClient$36;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-virtual {p1, v0, v2}, Lio/rong/imlib/NativeObject;->GetDiscussionInfo(Ljava/lang/String;Lio/rong/imlib/NativeObject$DiscussionInfoListener;)V

    .line 16
    :cond_75
    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    instance-of p1, p1, Lio/rong/message/LogCmdMessage;

    if-eqz p1, :cond_84

    .line 17
    invoke-static {}, Lio/rong/rtlog/upload/RtLogUploadManager;->getInstance()Lio/rong/rtlog/upload/RtLogUploadManager;

    move-result-object p1

    invoke-virtual {p1, v1}, Lio/rong/rtlog/upload/RtLogUploadManager;->createFullUploadTask(Lio/rong/imlib/model/Message;)V

    .line 18
    :cond_84
    invoke-virtual {v1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    instance-of p1, p1, Lio/rong/message/MessageExpansionMessage;

    if-eqz p1, :cond_99

    .line 19
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->mWorkHandler:Landroid/os/Handler;

    if-eqz p1, :cond_98

    .line 20
    new-instance p2, Lio/rong/imlib/NativeClient$37;

    invoke-direct {p2, p0, v1}, Lio/rong/imlib/NativeClient$37;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;)V

    invoke-virtual {p1, p2}, Landroid/os/Handler;->post(Ljava/lang/Runnable;)Z

    :cond_98
    return-void

    :cond_99
    if-eqz p6, :cond_a3

    move-object v0, p6

    move v2, p2

    move v3, p3

    move v4, p4

    move v5, p5

    .line 21
    invoke-interface/range {v0 .. v5}, Lio/rong/imlib/NativeClient$OnReceiveMessageListener;->onReceived(Lio/rong/imlib/model/Message;IZZI)V

    :cond_a3
    return-void
.end method

.method private initThreadPool()V
    .registers 7

    .line 1
    new-instance v0, Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    const/4 v1, 0x0

    const-string v2, "Get ChatRoomEntry"

    .line 2
    invoke-direct {p0, v2, v1}, Lio/rong/imlib/NativeClient;->threadFactory(Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;

    move-result-object v2

    const/4 v3, 0x1

    invoke-direct {v0, v3, v2}, Ljava/util/concurrent/ScheduledThreadPoolExecutor;-><init>(ILjava/util/concurrent/ThreadFactory;)V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    sget-object v2, Ljava/util/concurrent/TimeUnit;->SECONDS:Ljava/util/concurrent/TimeUnit;

    const-wide/16 v4, 0x3c

    invoke-virtual {v0, v4, v5, v2}, Ljava/util/concurrent/ScheduledThreadPoolExecutor;->setKeepAliveTime(JLjava/util/concurrent/TimeUnit;)V

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    invoke-virtual {v0, v3}, Ljava/util/concurrent/ScheduledThreadPoolExecutor;->allowCoreThreadTimeOut(Z)V

    const-string v0, "IPC_RECEIVEMSG_WORK"

    .line 5
    invoke-direct {p0, v0, v1}, Lio/rong/imlib/NativeClient;->threadFactory(Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;

    move-result-object v0

    invoke-static {v0}, Ljava/util/concurrent/Executors;->newSingleThreadExecutor(Ljava/util/concurrent/ThreadFactory;)Ljava/util/concurrent/ExecutorService;

    move-result-object v0

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->receiveMessageExecutor:Ljava/util/concurrent/Executor;

    return-void
.end method

.method private internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZLjava/lang/String;)V
    .registers 26
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;",
            "Lio/rong/imlib/MessageTag;",
            "[BIZZ",
            "Ljava/lang/String;",
            ")V"
        }
    .end annotation

    const/4 v10, 0x0

    const/4 v11, 0x0

    move-object v0, p0

    move-object v1, p1

    move-object/from16 v2, p2

    move-object/from16 v3, p3

    move-object/from16 v4, p4

    move-object/from16 v5, p5

    move-object/from16 v6, p6

    move-object/from16 v7, p7

    move/from16 v8, p8

    move/from16 v9, p9

    move/from16 v12, p10

    move-object/from16 v13, p11

    .line 1
    invoke-direct/range {v0 .. v13}, Lio/rong/imlib/NativeClient;->internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZZZLjava/lang/String;)V

    return-void
.end method

.method private internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZZZLjava/lang/String;)V
    .registers 39
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;",
            "Lio/rong/imlib/MessageTag;",
            "[BIZZZZ",
            "Ljava/lang/String;",
            ")V"
        }
    .end annotation

    move-object/from16 v1, p0

    move-object/from16 v0, p1

    move-object/from16 v2, p2

    move-object/from16 v3, p3

    .line 2
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v4

    sget-object v5, Lio/rong/imlib/model/Conversation$ConversationType;->ENCRYPTED:Lio/rong/imlib/model/Conversation$ConversationType;

    if-ne v4, v5, :cond_3b

    move-object/from16 v4, p7

    .line 3
    :try_start_12
    invoke-direct {v1, v4, v0}, Lio/rong/imlib/NativeClient;->encryptMessageContentIfNeeded([BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/Message;

    move-result-object v4

    .line 4
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v5

    invoke-virtual {v5}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v5
    :try_end_1e
    .catch Ljava/lang/RuntimeException; {:try_start_12 .. :try_end_1e} :catch_1f

    goto :goto_3f

    :catch_1f
    move-exception v0

    .line 5
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "stop sending message cause exception occurs while calling encrypteMessageContent() -> "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    .line 6
    invoke-virtual {v0}, Ljava/lang/RuntimeException;->getLocalizedMessage()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v2, "NativeClient"

    .line 7
    invoke-static {v2, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    :cond_3b
    move-object/from16 v4, p7

    move-object v5, v4

    move-object v4, v0

    .line 8
    :goto_3f
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v6

    instance-of v6, v6, Lio/rong/message/MediaMessageContent;

    if-eqz v6, :cond_79

    .line 9
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v5

    check-cast v5, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v5}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v5

    .line 10
    invoke-interface/range {p6 .. p6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v6

    invoke-direct {v1, v6}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v6

    .line 11
    invoke-virtual {v6, v0}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 12
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v6

    check-cast v6, Lio/rong/message/MediaMessageContent;

    const/4 v7, 0x0

    invoke-virtual {v6, v7}, Lio/rong/message/MediaMessageContent;->setLocalPath(Landroid/net/Uri;)V

    .line 13
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v6

    invoke-virtual {v6}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v6

    .line 14
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v7

    check-cast v7, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v7, v5}, Lio/rong/message/MediaMessageContent;->setLocalPath(Landroid/net/Uri;)V

    move-object v13, v6

    goto :goto_7a

    :cond_79
    move-object v13, v5

    .line 15
    :goto_7a
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v5

    const/4 v6, 0x0

    if-eqz v5, :cond_88

    .line 16
    invoke-virtual {v5}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v5

    move/from16 v22, v5

    goto :goto_8a

    :cond_88
    const/16 v22, 0x0

    .line 17
    :goto_8a
    new-instance v14, Lio/rong/imlib/NativeObject$PushConfig;

    invoke-direct {v14}, Lio/rong/imlib/NativeObject$PushConfig;-><init>()V

    .line 18
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessagePushConfig()Lio/rong/imlib/model/MessagePushConfig;

    move-result-object v5

    if-eqz v5, :cond_e6

    .line 19
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getPushTitle()Ljava/lang/String;

    move-result-object v6

    invoke-virtual {v14, v6}, Lio/rong/imlib/NativeObject$PushConfig;->setPushTitle(Ljava/lang/String;)V

    .line 20
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getPushContent()Ljava/lang/String;

    move-result-object v6

    invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v6

    if-eqz v6, :cond_aa

    .line 21
    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setPushContent(Ljava/lang/String;)V

    goto :goto_b1

    .line 22
    :cond_aa
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getPushContent()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setPushContent(Ljava/lang/String;)V

    .line 23
    :goto_b1
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getPushData()Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-eqz v2, :cond_bf

    .line 24
    invoke-virtual {v14, v3}, Lio/rong/imlib/NativeObject$PushConfig;->setPushData(Ljava/lang/String;)V

    goto :goto_c6

    .line 25
    :cond_bf
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getPushData()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setPushData(Ljava/lang/String;)V

    .line 26
    :goto_c6
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->isForceShowDetailContent()Z

    move-result v2

    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setForceShowDetailContent(Z)V

    .line 27
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getAndroidConfig()Lio/rong/imlib/model/AndroidConfig;

    move-result-object v2

    if-eqz v2, :cond_de

    .line 28
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->getAndroidConfig()Lio/rong/imlib/model/AndroidConfig;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/AndroidConfig;->getNotificationId()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setNotificationId(Ljava/lang/String;)V

    .line 29
    :cond_de
    invoke-virtual {v5}, Lio/rong/imlib/model/MessagePushConfig;->channelToJson()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setChannelConfig(Ljava/lang/String;)V

    goto :goto_ec

    .line 30
    :cond_e6
    invoke-virtual {v14, v2}, Lio/rong/imlib/NativeObject$PushConfig;->setPushContent(Ljava/lang/String;)V

    .line 31
    invoke-virtual {v14, v3}, Lio/rong/imlib/NativeObject$PushConfig;->setPushData(Ljava/lang/String;)V

    .line 32
    :goto_ec
    iget-object v8, v1, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v9

    .line 33
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v10

    .line 34
    invoke-interface/range {p6 .. p6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v12

    .line 35
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    int-to-long v2, v2

    move-wide v15, v2

    new-instance v2, Lio/rong/imlib/NativeClient$24;

    move-object/from16 v18, v2

    move-object/from16 v3, p5

    move-object/from16 v4, p6

    invoke-direct {v2, v1, v0, v3, v4}, Lio/rong/imlib/NativeClient$24;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;)V

    move/from16 v11, p8

    move-object/from16 v17, p4

    move/from16 v19, p9

    move/from16 v20, p10

    move/from16 v21, p11

    move/from16 v23, p12

    move-object/from16 v24, p13

    .line 36
    invoke-virtual/range {v8 .. v24}, Lio/rong/imlib/NativeObject;->sendMessageWithOption(Ljava/lang/String;IILjava/lang/String;[BLio/rong/imlib/NativeObject$PushConfig;J[Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;ZZZZZLjava/lang/String;)V

    return-void
.end method

.method private isMentionedMessage(Lio/rong/imlib/model/Message;)Z
    .registers 4

    .line 1
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    instance-of v0, v0, Lio/rong/message/TextMessage;

    const/4 v1, 0x0

    if-eqz v0, :cond_16

    .line 2
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    check-cast p1, Lio/rong/message/TextMessage;

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/model/MessageContent;->getMentionedInfo()Lio/rong/imlib/model/MentionedInfo;

    move-result-object p1

    if-eqz p1, :cond_16

    const/4 v1, 0x1

    :cond_16
    return v1
.end method

.method private judgeExpansionExceedLimit(Ljava/util/Map;Lio/rong/imlib/NativeObject$Message;)Z
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Lio/rong/imlib/NativeObject$Message;",
            ")Z"
        }
    .end annotation

    .line 1
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$Message;->getExtMsg()Ljava/lang/String;

    move-result-object p2

    invoke-static {p2}, Lio/rong/common/JSONUtils;->jsonToExpansionEx(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object p2

    .line 2
    invoke-virtual {p2}, Ljava/util/HashMap;->keySet()Ljava/util/Set;

    move-result-object p2

    .line 3
    invoke-interface {p1}, Ljava/util/Map;->size()I

    move-result v0

    const/4 v1, 0x1

    const/16 v2, 0x14

    if-gt v0, v2, :cond_5f

    invoke-interface {p2}, Ljava/util/Set;->size()I

    move-result v0

    const/16 v2, 0x12c

    if-le v0, v2, :cond_1e

    goto :goto_5f

    .line 4
    :cond_1e
    new-instance v0, Ljava/util/HashSet;

    invoke-direct {v0}, Ljava/util/HashSet;-><init>()V

    .line 5
    invoke-interface {p2}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object p2

    :goto_27
    invoke-interface {p2}, Ljava/util/Iterator;->hasNext()Z

    move-result v3

    if-eqz v3, :cond_37

    invoke-interface {p2}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Ljava/lang/String;

    .line 6
    invoke-interface {v0, v3}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    goto :goto_27

    .line 7
    :cond_37
    invoke-interface {p1}, Ljava/util/Map;->entrySet()Ljava/util/Set;

    move-result-object p1

    invoke-interface {p1}, Ljava/util/Set;->iterator()Ljava/util/Iterator;

    move-result-object p1

    :cond_3f
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z

    move-result p2

    if-eqz p2, :cond_5d

    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object p2

    .line 8
    check-cast p2, Ljava/util/Map$Entry;

    .line 9
    invoke-interface {p2}, Ljava/util/Map$Entry;->getKey()Ljava/lang/Object;

    move-result-object p2

    invoke-virtual {p2}, Ljava/lang/Object;->toString()Ljava/lang/String;

    move-result-object p2

    invoke-interface {v0, p2}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    .line 10
    invoke-interface {v0}, Ljava/util/Set;->size()I

    move-result p2

    if-le p2, v2, :cond_3f

    return v1

    :cond_5d
    const/4 p1, 0x0

    return p1

    :cond_5f
    :goto_5f
    return v1
.end method

.method private newMessageContent(Ljava/lang/String;[B)Lio/rong/imlib/model/MessageContent;
    .registers 8

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->messageContentConstructorMap:Ljava/util/HashMap;

    invoke-virtual {v0, p1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/reflect/Constructor;

    const/4 v1, 0x0

    const/4 v2, 0x1

    if-eqz v0, :cond_38

    if-nez p2, :cond_f

    goto :goto_38

    .line 2
    :cond_f
    :try_start_f
    new-array v3, v2, [Ljava/lang/Object;

    aput-object p2, v3, v1

    invoke-virtual {v0, v3}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Lio/rong/imlib/model/MessageContent;
    :try_end_19
    .catch Ljava/lang/Exception; {:try_start_f .. :try_end_19} :catch_1a

    goto :goto_37

    :catch_1a
    move-exception v0

    .line 3
    new-instance v3, Lio/rong/imlib/model/UnknownMessage;

    invoke-direct {v3, p2}, Lio/rong/imlib/model/UnknownMessage;-><init>([B)V

    .line 4
    sget-object p2, Lio/rong/common/fwlog/FwLog$LogTag;->L_DECODE_MSG_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {p2}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object p2

    const/4 v4, 0x2

    new-array v4, v4, [Ljava/lang/Object;

    aput-object p1, v4, v1

    invoke-static {v0}, Lio/rong/common/fwlog/FwLog;->stackToString(Ljava/lang/Throwable;)Ljava/lang/String;

    move-result-object p1

    aput-object p1, v4, v2

    const-string p1, "msg_type|stacks"

    invoke-static {v2, v2, p2, p1, v4}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    move-object v0, v3

    :goto_37
    return-object v0

    .line 5
    :cond_38
    :goto_38
    sget-object v0, Lio/rong/common/fwlog/FwLog$LogTag;->L_DECODE_MSG_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v0}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v0

    new-array v3, v2, [Ljava/lang/Object;

    aput-object p1, v3, v1

    const-string p1, "msg_type"

    invoke-static {v2, v2, v0, p1, v3}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance p1, Lio/rong/imlib/model/UnknownMessage;

    invoke-direct {p1, p2}, Lio/rong/imlib/model/UnknownMessage;-><init>([B)V

    return-object p1
.end method

.method private varargs preCheck([Ljava/lang/Object;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_27

    if-nez p1, :cond_7

    return-void

    .line 2
    :cond_7
    array-length v0, p1

    const/4 v1, 0x0

    :goto_9
    if-ge v1, v0, :cond_26

    aget-object v2, p1, v1

    if-eqz v2, :cond_1e

    .line 3
    instance-of v3, v2, Ljava/lang/String;

    if-eqz v3, :cond_1b

    check-cast v2, Ljava/lang/String;

    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_1e

    :cond_1b
    add-int/lit8 v1, v1, 0x1

    goto :goto_9

    .line 4
    :cond_1e
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "\u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    :cond_26
    return-void

    .line 5
    :cond_27
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_30

    :goto_2f
    throw p1

    :goto_30
    goto :goto_2f
.end method

.method private registerMessageType(Ljava/lang/String;I)V
    .registers 4

    const/16 v0, 0x10

    if-ne p2, v0, :cond_5

    const/4 p2, 0x0

    .line 23
    :cond_5
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->RegisterMessageType(Ljava/lang/String;I)I

    return-void
.end method

.method private removeKeysInExpansionEx(JZLjava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 11
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(JZ",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;",
            "Lio/rong/imlib/model/Message;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p5}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->GetMessageByUId(Ljava/lang/String;)Lio/rong/imlib/NativeObject$Message;

    move-result-object v0

    const-wide/16 v1, -0x1

    cmp-long v3, p1, v1

    if-nez v3, :cond_1d

    .line 2
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject$Message;->getExtMsg()Ljava/lang/String;

    move-result-object p1

    invoke-static {p1}, Lio/rong/common/JSONUtils;->jsonToExpansionEx(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object p1

    invoke-static {p4, p1}, Lio/rong/common/JSONUtils;->removeKeysInExpansionEx(Ljava/util/List;Ljava/util/HashMap;)Ljava/util/List;

    move-result-object p1

    goto :goto_29

    .line 3
    :cond_1d
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject$Message;->getExtMsg()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Lio/rong/common/JSONUtils;->jsonToExpansionEx(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object v0

    invoke-static {p1, p2, p4, v0}, Lio/rong/common/JSONUtils;->removeKeysTSInExpansionEx(JLjava/util/List;Ljava/util/HashMap;)Ljava/util/List;

    move-result-object p1

    :goto_29
    const/4 p2, 0x0

    .line 4
    invoke-interface {p1, p2}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object p2

    check-cast p2, Ljava/util/HashMap;

    const/4 p4, 0x1

    .line 5
    invoke-interface {p1, p4}, Ljava/util/List;->get(I)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Ljava/util/List;

    .line 6
    invoke-static {p2}, Lio/rong/common/JSONUtils;->exMapToJson(Ljava/util/HashMap;)Ljava/lang/String;

    move-result-object p2

    .line 7
    invoke-virtual {p5}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object p4

    invoke-virtual {p5}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v0

    invoke-virtual {p5}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v1

    invoke-direct {p0, p4, v0, v1, p2}, Lio/rong/imlib/NativeClient;->setMessageExpansion(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z

    move-result p4

    if-eqz p6, :cond_60

    if-eqz p4, :cond_57

    .line 8
    invoke-interface {p6}, Lio/rong/imlib/NativeClient$OperationCallback;->onSuccess()V

    goto :goto_60

    .line 9
    :cond_57
    sget-object p4, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MESSAGE_EXPAND_FAIL:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p4}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p4

    invoke-interface {p6, p4}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    .line 10
    :cond_60
    :goto_60
    sget-object p4, Lio/rong/imlib/NativeClient;->messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;

    if-eqz p4, :cond_83

    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result p4

    if-eqz p4, :cond_83

    if-eqz p3, :cond_83

    .line 11
    :try_start_6c
    invoke-static {p2}, Lio/rong/common/JSONUtils;->expansionExJSONToMap(Ljava/lang/String;)Ljava/util/HashMap;

    move-result-object p2

    invoke-virtual {p5, p2}, Lio/rong/imlib/model/Message;->setExpansion(Ljava/util/HashMap;)V

    .line 12
    sget-object p2, Lio/rong/imlib/NativeClient;->messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;

    invoke-interface {p2, p1, p5}, Lio/rong/imlib/IMessageExpansionListener;->onMessageExpansionRemove(Ljava/util/List;Lio/rong/imlib/model/Message;)V
    :try_end_78
    .catch Landroid/os/RemoteException; {:try_start_6c .. :try_end_78} :catch_79

    goto :goto_83

    :catch_79
    move-exception p1

    .line 13
    invoke-virtual {p1}, Landroid/os/RemoteException;->toString()Ljava/lang/String;

    move-result-object p1

    const-string p2, "NativeClient"

    invoke-static {p2, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    :cond_83
    :goto_83
    return-void
.end method

.method private renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;
    .registers 8

    .line 1
    new-instance v0, Lio/rong/imlib/model/Conversation;

    invoke-direct {v0}, Lio/rong/imlib/model/Conversation;-><init>()V

    .line 2
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getTargetId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setTargetId(Ljava/lang/String;)V

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getMessageId()J

    move-result-wide v1

    long-to-int v2, v1

    invoke-virtual {v0, v2}, Lio/rong/imlib/model/Conversation;->setLatestMessageId(I)V

    .line 4
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getConversationTitle()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setConversationTitle(Ljava/lang/String;)V

    .line 5
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getUnreadMessageCount()I

    move-result v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setUnreadMessageCount(I)V

    .line 6
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getConversationType()I

    move-result v1

    invoke-static {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->setValue(I)Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setConversationType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    .line 7
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->isTop()Z

    move-result v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setTop(Z)V

    .line 8
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getObjectName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setObjectName(Ljava/lang/String;)V

    .line 9
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getMessageId()J

    move-result-wide v1

    const-wide/16 v3, 0x0

    cmp-long v5, v1, v3

    if-lez v5, :cond_68

    .line 10
    new-instance v1, Lio/rong/imlib/model/Message;

    invoke-direct {v1}, Lio/rong/imlib/model/Message;-><init>()V

    .line 11
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getMessageId()J

    move-result-wide v2

    long-to-int v3, v2

    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 12
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getSenderUserId()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 13
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getObjectName()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getContent()[B

    move-result-object v3

    invoke-direct {p0, v2, v3, v1}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setLatestMessage(Lio/rong/imlib/model/MessageContent;)V

    .line 14
    :cond_68
    new-instance v1, Lio/rong/imlib/model/Message$ReceivedStatus;

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getReadStatus()I

    move-result v2

    invoke-direct {v1, v2}, Lio/rong/imlib/model/Message$ReceivedStatus;-><init>(I)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setReceivedStatus(Lio/rong/imlib/model/Message$ReceivedStatus;)V

    .line 15
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getReceivedTime()J

    move-result-wide v1

    invoke-virtual {v0, v1, v2}, Lio/rong/imlib/model/Conversation;->setReceivedTime(J)V

    .line 16
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getSentTime()J

    move-result-wide v1

    invoke-virtual {v0, v1, v2}, Lio/rong/imlib/model/Conversation;->setSentTime(J)V

    .line 17
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getSenderUserId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setSenderUserId(Ljava/lang/String;)V

    .line 18
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getSentStatus()I

    move-result v1

    invoke-static {v1}, Lio/rong/imlib/model/Message$SentStatus;->setValue(I)Lio/rong/imlib/model/Message$SentStatus;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 19
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getSenderName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setSenderUserName(Ljava/lang/String;)V

    .line 20
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getDraft()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setDraft(Ljava/lang/String;)V

    .line 21
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getPortraitUrl()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setPortraitUrl(Ljava/lang/String;)V

    .line 22
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->isBlockPush()Z

    move-result v1

    if-eqz v1, :cond_b2

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->DO_NOT_DISTURB:Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;

    goto :goto_b4

    :cond_b2
    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->NOTIFY:Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;

    :goto_b4
    invoke-virtual {v0, v1}, Lio/rong/imlib/model/Conversation;->setNotificationStatus(Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;)V

    .line 23
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Conversation;->getMentionCount()I

    move-result p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/model/Conversation;->setMentionedCount(I)V

    return-object v0
.end method

.method private renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;
    .registers 5

    .line 1
    invoke-direct {p0, p1, p2}, Lio/rong/imlib/NativeClient;->newMessageContent(Ljava/lang/String;[B)Lio/rong/imlib/model/MessageContent;

    move-result-object p2

    .line 2
    instance-of v0, p2, Lio/rong/imlib/model/UnknownMessage;

    if-eqz v0, :cond_9

    return-object p2

    .line 3
    :cond_9
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object p1

    if-eqz p1, :cond_13

    .line 4
    invoke-virtual {p1, p3, p2}, Lio/rong/message/MessageHandler;->decodeMessage(Lio/rong/imlib/model/Message;Lio/rong/imlib/model/MessageContent;)V

    goto :goto_1a

    :cond_13
    const-string p1, "NativeClient"

    const-string p3, "renderMessageContent \u8be5\u6d88\u606f\u672a\u6ce8\u518c\uff0c\u8bf7\u8c03\u7528registerMessageType\u65b9\u6cd5\u6ce8\u518c\u3002"

    .line 5
    invoke-static {p1, p3}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    :goto_1a
    return-object p2
.end method

.method private replaceNullStr(Ljava/lang/String;)Ljava/lang/String;
    .registers 2

    if-nez p1, :cond_4

    const-string p1, ""

    :cond_4
    return-object p1
.end method

.method private setChatRoomStatusNotificationListener()V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_d

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$77;

    invoke-direct {v1, p0}, Lio/rong/imlib/NativeClient$77;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->SetChatRoomStatusNotificationListener(Lio/rong/imlib/NativeObject$StatusNotificationListener;)V

    return-void

    .line 3
    :cond_d
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method private setEnvInfo(Landroid/content/Context;)V
    .registers 12

    const-string v0, "NativeClient"

    const-string v1, ""

    :try_start_4
    const-string v2, "connectivity"

    .line 1
    invoke-virtual {p1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object v2

    check-cast v2, Landroid/net/ConnectivityManager;

    if-nez v2, :cond_14

    const-string v2, "connectivityManager is null"

    .line 2
    invoke-static {v0, v2}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_1f

    .line 3
    :cond_14
    invoke-virtual {v2}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;

    move-result-object v2

    if-eqz v2, :cond_1f

    .line 4
    invoke-virtual {v2}, Landroid/net/NetworkInfo;->getTypeName()Ljava/lang/String;

    move-result-object v2
    :try_end_1e
    .catch Ljava/lang/SecurityException; {:try_start_4 .. :try_end_1e} :catch_34

    goto :goto_20

    :cond_1f
    :goto_1f
    move-object v2, v1

    :goto_20
    :try_start_20
    const-string v3, "phone"

    .line 5
    invoke-virtual {p1, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;

    move-result-object p1

    check-cast p1, Landroid/telephony/TelephonyManager;

    if-eqz p1, :cond_2f

    .line 6
    invoke-virtual {p1}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;

    move-result-object p1
    :try_end_2e
    .catch Ljava/lang/SecurityException; {:try_start_20 .. :try_end_2e} :catch_32

    goto :goto_30

    :cond_2f
    move-object p1, v1

    :goto_30
    move-object v9, p1

    goto :goto_3c

    :catch_32
    move-exception p1

    goto :goto_36

    :catch_34
    move-exception p1

    move-object v2, v1

    :goto_36
    const-string v3, "setEnvInfo SecurityException"

    .line 7
    invoke-static {v0, v3, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

    move-object v9, v1

    :goto_3c
    move-object v8, v2

    .line 8
    sget-object p1, Landroid/os/Build;->MANUFACTURER:Ljava/lang/String;

    .line 9
    sget-object v0, Landroid/os/Build;->MODEL:Ljava/lang/String;

    if-nez p1, :cond_45

    move-object v5, v1

    goto :goto_46

    :cond_45
    move-object v5, p1

    :goto_46
    if-nez v0, :cond_4a

    move-object v6, v1

    goto :goto_4b

    :cond_4a
    move-object v6, v0

    .line 10
    :goto_4b
    iget-object v4, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget p1, Landroid/os/Build$VERSION;->SDK_INT:I

    invoke-static {p1}, Ljava/lang/String;->valueOf(I)Ljava/lang/String;

    move-result-object v7

    invoke-virtual/range {v4 .. v9}, Lio/rong/imlib/NativeObject;->SetDeviceInfo(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

    return-void
.end method

.method private setLogStatus(ILio/rong/imlib/NativeObject$NativeLogInfoListener;)V
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->SetLogStatus(ILio/rong/imlib/NativeObject$NativeLogInfoListener;)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method private setMessageExpansion(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_9

    .line 2
    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->SetExtraMessageAttribute(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z

    move-result p1

    return p1

    .line 3
    :cond_9
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method private threadFactory(Ljava/lang/String;Z)Ljava/util/concurrent/ThreadFactory;
    .registers 4

    .line 1
    new-instance v0, Lio/rong/imlib/NativeClient$4;

    invoke-direct {v0, p0, p1, p2}, Lio/rong/imlib/NativeClient$4;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Z)V

    return-object v0
.end method

.method private timeDisposal(Lio/rong/imlib/model/Message;)J
    .registers 6

    .line 1
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v0

    const-wide v2, 0x173a59a0000L

    sub-long/2addr v0, v2

    return-wide v0
.end method


# virtual methods
.method public AnswerRTCLiveInvitation(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 21

    move-object v0, p0

    .line 1
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v1, :cond_1c

    .line 2
    new-instance v10, Lio/rong/imlib/NativeClient$84;

    move-object v2, p1

    move-object/from16 v3, p9

    invoke-direct {v10, p0, p1, v3}, Lio/rong/imlib/NativeClient$84;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object/from16 v6, p5

    move-object/from16 v7, p6

    move-object/from16 v8, p7

    move-object/from16 v9, p8

    invoke-virtual/range {v1 .. v10}, Lio/rong/imlib/NativeObject;->AnswerRTCLiveInvitation(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_1c
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public CancelRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 14

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_12

    .line 2
    new-instance v6, Lio/rong/imlib/NativeClient$83;

    invoke-direct {v6, p0, p1, p6}, Lio/rong/imlib/NativeClient$83;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v1, p1

    move-object v2, p2

    move-object v3, p3

    move-object v4, p4

    move-object v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->CancelRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_12
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public HangupRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 14

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_12

    .line 2
    new-instance v6, Lio/rong/imlib/NativeClient$85;

    invoke-direct {v6, p0, p1, p6}, Lio/rong/imlib/NativeClient$85;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v1, p1

    move-object v2, p2

    move-object v3, p3

    move-object v4, p4

    move-object v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->HangupRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_12
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public SendRTCHeartbeat([Ljava/lang/String;)V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->SendRTCHeartbeat([Ljava/lang/String;)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public SendRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 16

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_13

    .line 2
    new-instance v7, Lio/rong/imlib/NativeClient$82;

    invoke-direct {v7, p0, p1, p7}, Lio/rong/imlib/NativeClient$82;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v1, p1

    move-object v2, p2

    move-object v3, p3

    move-object v4, p4

    move-object v5, p5

    move v6, p6

    invoke-virtual/range {v0 .. v7}, Lio/rong/imlib/NativeObject;->SendRTCLiveInvitation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;ILio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_13
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public SetPushNotificationListener(Lio/rong/imlib/NativeClient$PushNotificationListener;)V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->SetPushNotificationListener(Lio/rong/imlib/NativeClient$PushNotificationListener;)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public SetRTCHeartbeatListener(Lio/rong/imlib/NativeObject$RTCHeartbeatListener;)V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->SetRTCHeartbeatListener(Lio/rong/imlib/NativeObject$RTCHeartbeatListener;)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public addMemberToDiscussion(Ljava/lang/String;Ljava/util/List;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2e

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_26

    if-eqz p2, :cond_26

    invoke-interface {p2}, Ljava/util/List;->size()I

    move-result v0

    if-eqz v0, :cond_26

    .line 3
    invoke-interface {p2}, Ljava/util/List;->size()I

    move-result v0

    new-array v0, v0, [Ljava/lang/String;

    .line 4
    invoke-interface {p2, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    .line 5
    iget-object p2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$21;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$21;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {p2, p1, v0, v1}, Lio/rong/imlib/NativeObject;->InviteMemberToDiscussion(Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 6
    :cond_26
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "discussionId \u6216 userIdList \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_2e
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public addToBlacklist(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    if-eqz p2, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$45;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$45;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->AddToBlacklist(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "\u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public cleanHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;JLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2b

    if-eqz p1, :cond_23

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_23

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->CleanHistoryMessages(ILjava/lang/String;J)Z

    move-result p1

    if-eqz p5, :cond_22

    if-eqz p1, :cond_1e

    .line 4
    invoke-interface {p5}, Lio/rong/imlib/NativeClient$OperationCallback;->onSuccess()V

    goto :goto_22

    :cond_1e
    const/4 p1, -0x1

    .line 5
    invoke-interface {p5, p1}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_22
    :goto_22
    return-void

    .line 6
    :cond_23
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_2b
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public cleanRemoteHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;JLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 13

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_25

    if-eqz p1, :cond_1d

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1d

    .line 3
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    .line 4
    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v2

    new-instance v6, Lio/rong/imlib/NativeClient$14;

    invoke-direct {v6, p0, p5}, Lio/rong/imlib/NativeClient$14;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p2

    move-wide v4, p3

    .line 5
    invoke-virtual/range {v1 .. v6}, Lio/rong/imlib/NativeObject;->CleanRemoteHistoryMessage(ILjava/lang/String;JLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 6
    :cond_1d
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_25
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public varargs clearConversations([Lio/rong/imlib/model/Conversation$ConversationType;)Z
    .registers 7
    .annotation system Ldalvik/annotation/Throws;
        value = {
            Ljava/lang/IllegalAccessException;
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2d

    if-eqz p1, :cond_25

    .line 2
    array-length v0, p1

    if-eqz v0, :cond_25

    .line 3
    array-length v0, p1

    new-array v0, v0, [I

    .line 4
    array-length v1, p1

    const/4 v2, 0x0

    const/4 v3, 0x0

    :goto_f
    if-ge v2, v1, :cond_1e

    aget-object v4, p1, v2

    .line 5
    invoke-virtual {v4}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    aput v4, v0, v3

    add-int/lit8 v3, v3, 0x1

    add-int/lit8 v2, v2, 0x1

    goto :goto_f

    .line 6
    :cond_1e
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1, v0}, Lio/rong/imlib/NativeObject;->ClearConversations([I)Z

    move-result p1

    return p1

    .line 7
    :cond_25
    new-instance p1, Ljava/lang/IllegalAccessException;

    const-string v0, "ConversationTypes \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalAccessException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 8
    :cond_2d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_36

    :goto_35
    throw p1

    :goto_36
    goto :goto_35
.end method

.method public clearEncryptedConversations()Z
    .registers 2

    const/4 v0, 0x0

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->ClearEncryptedConversations()Z

    move-result v0

    return v0
.end method

.method public clearMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_20

    if-eqz p1, :cond_18

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_18

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    const/4 v1, 0x0

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->ClearMessages(ILjava/lang/String;Z)Z

    move-result p1

    return p1

    .line 4
    :cond_18
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_20
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public clearMessagesUnreadStatus(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    if-eqz p1, :cond_17

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->ClearUnread(ILjava/lang/String;)Z

    move-result p1

    return p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public clearTextMessageDraft(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_27

    if-eqz p1, :cond_1f

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1f

    .line 3
    invoke-virtual {p0, p1, p2}, Lio/rong/imlib/NativeClient;->getTextMessageDraft(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 4
    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1d

    const-string v0, ""

    .line 5
    invoke-virtual {p0, p1, p2, v0}, Lio/rong/imlib/NativeClient;->saveTextMessageDraft(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;)Z

    move-result p1

    return p1

    :cond_1d
    const/4 p1, 0x1

    return p1

    .line 6
    :cond_1f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_27
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public clearUnreadByReceipt(ILjava/lang/String;J)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p2, p1, p3, p4}, Lio/rong/imlib/NativeObject;->ClearUnreadByReceipt(Ljava/lang/String;IJ)Z

    move-result p1

    return p1
.end method

.method connect(Ljava/lang/String;ZZLio/rong/imlib/NativeClient$IConnectResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "ZZ",
            "Lio/rong/imlib/NativeClient$IConnectResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->setEnvInfo(Landroid/content/Context;)V

    .line 2
    invoke-static {}, Lio/rong/rtlog/upload/RtLogUploadManager;->getInstance()Lio/rong/rtlog/upload/RtLogUploadManager;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/rtlog/upload/RtLogUploadManager;->startTimingUploadTask()V

    .line 3
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/ConnectionService;->connect(Ljava/lang/String;ZZLio/rong/imlib/NativeClient$IConnectResultCallback;)V

    return-void
.end method

.method public createDiscussion(Ljava/lang/String;Ljava/util/List;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_d

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-interface {p2, v0}, Ljava/util/List;->remove(Ljava/lang/Object;)Z

    .line 3
    :cond_d
    invoke-interface {p2}, Ljava/util/List;->size()I

    move-result v0

    new-array v0, v0, [Ljava/lang/String;

    .line 4
    invoke-interface {p2, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    .line 5
    iget-object p2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$18;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$18;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {p2, p1, v0, v1}, Lio/rong/imlib/NativeObject;->CreateInviteDiscussion(Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeObject$CreateDiscussionCallback;)V

    return-void
.end method

.method public createEncryptedConversation(Ljava/lang/String;Lio/rong/imlib/model/RCEncryptedSession;)Z
    .registers 12

    const/4 v0, 0x2

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    const/4 v1, 0x0

    aput-object p1, v0, v1

    const/4 v1, 0x1

    aput-object p2, v0, v1

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    .line 3
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    .line 4
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getTargetId()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    .line 5
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getRemoteEncId()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v5

    .line 6
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncKey()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v6

    .line 7
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncXA()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v7

    .line 8
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncStatus()I

    move-result v8

    .line 9
    invoke-virtual/range {v2 .. v8}, Lio/rong/imlib/NativeObject;->CreateEncryptedConversation(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Z

    move-result p1

    return p1
.end method

.method public deleteChatRoomEntry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;ZZLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 11

    .line 1
    invoke-static {p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_71

    .line 2
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->isKvStorageEnabled(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_1a

    if-eqz p8, :cond_1a

    .line 3
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->KV_STORE_NOT_AVAILABLE:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p8, p1}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    return-void

    .line 4
    :cond_1a
    new-instance v0, Lio/rong/imlib/NativeObject$StatusData;

    invoke-direct {v0}, Lio/rong/imlib/NativeObject$StatusData;-><init>()V

    .line 5
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject$StatusData;->setKey(Ljava/lang/String;)V

    .line 6
    invoke-virtual {v0, p2}, Lio/rong/imlib/NativeObject$StatusData;->setValue(Ljava/lang/String;)V

    .line 7
    invoke-virtual {v0, p6}, Lio/rong/imlib/NativeObject$StatusData;->setAutoDelete(Z)V

    .line 8
    invoke-virtual {v0, p7}, Lio/rong/imlib/NativeObject$StatusData;->setOverwrite(Z)V

    .line 9
    new-instance p6, Lio/rong/imlib/NativeObject$StatusNotification;

    invoke-direct {p6}, Lio/rong/imlib/NativeObject$StatusNotification;-><init>()V

    const/4 p7, 0x0

    .line 10
    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setAttributeFlag(I)V

    .line 11
    sget-object p7, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {p7}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p7

    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setConversationType(I)V

    .line 12
    new-instance p7, Ljava/lang/String;

    const/4 v1, 0x2

    invoke-static {p1, p2, v1, p5}, Lio/rong/message/ChatRoomKVNotiMessage;->obtain(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Lio/rong/message/ChatRoomKVNotiMessage;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/message/ChatRoomKVNotiMessage;->encode()[B

    move-result-object p1

    invoke-direct {p7, p1}, Ljava/lang/String;-><init>([B)V

    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setMessageContent(Ljava/lang/String;)V

    .line 13
    invoke-virtual {p4}, Ljava/lang/Boolean;->booleanValue()Z

    move-result p1

    invoke-virtual {p6, p1}, Lio/rong/imlib/NativeObject$StatusNotification;->setNotifyAll(Z)V

    .line 14
    const-class p1, Lio/rong/message/ChatRoomKVNotiMessage;

    const-class p2, Lio/rong/imlib/MessageTag;

    invoke-virtual {p1, p2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object p1

    check-cast p1, Lio/rong/imlib/MessageTag;

    invoke-interface {p1}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {p6, p1}, Lio/rong/imlib/NativeObject$StatusNotification;->setObjectName(Ljava/lang/String;)V

    .line 15
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance p2, Lio/rong/imlib/NativeClient$74;

    invoke-direct {p2, p0, p8}, Lio/rong/imlib/NativeClient$74;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {p1, p3, v0, p6, p2}, Lio/rong/imlib/NativeObject;->DeleteChatRoomStatus(Ljava/lang/String;Lio/rong/imlib/NativeObject$StatusData;Lio/rong/imlib/NativeObject$StatusNotification;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 16
    :cond_71
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public deleteMessage(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    const/4 v1, 0x1

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->ClearMessages(ILjava/lang/String;Z)Z

    move-result p1

    return p1
.end method

.method public deleteMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;[Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 12

    .line 8
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_83

    if-eqz p3, :cond_7b

    .line 9
    array-length v0, p3

    if-eqz v0, :cond_7b

    .line 10
    array-length v0, p3

    new-array v4, v0, [Lio/rong/imlib/NativeObject$Message;

    .line 11
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const/4 v1, 0x0

    const/4 v2, 0x0

    .line 12
    :goto_13
    array-length v3, p3

    if-ge v2, v3, :cond_55

    .line 13
    new-instance v3, Lio/rong/imlib/NativeObject$Message;

    invoke-direct {v3}, Lio/rong/imlib/NativeObject$Message;-><init>()V

    aput-object v3, v4, v2

    .line 14
    aget-object v3, v4, v2

    aget-object v5, p3, v2

    invoke-virtual {v5}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v3, v5}, Lio/rong/imlib/NativeObject$Message;->setUId(Ljava/lang/String;)V

    .line 15
    aget-object v3, v4, v2

    aget-object v5, p3, v2

    invoke-virtual {v5}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v5

    invoke-virtual {v3, v5, v6}, Lio/rong/imlib/NativeObject$Message;->setSentTime(J)V

    .line 16
    aget-object v3, v4, v2

    aget-object v5, p3, v2

    invoke-virtual {v5}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v5

    sget-object v6, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v5, v6}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v5

    invoke-virtual {v3, v5}, Lio/rong/imlib/NativeObject$Message;->setMessageDirection(Z)V

    .line 17
    aget-object v3, p3, v2

    invoke-virtual {v3}, Lio/rong/imlib/model/Message;->getUId()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, "/"

    invoke-virtual {v0, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    add-int/lit8 v2, v2, 0x1

    goto :goto_13

    :cond_55
    const/4 p3, 0x4

    .line 18
    sget-object v2, Lio/rong/common/fwlog/FwLog$LogTag;->L_DELETE_MESSAGES_S:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v2}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v2

    const/4 v3, 0x1

    new-array v5, v3, [Ljava/lang/Object;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    aput-object v0, v5, v1

    const-string v0, "messageUIds:"

    invoke-static {p3, v3, v2, v0, v5}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 19
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v2

    const/4 v5, 0x1

    new-instance v6, Lio/rong/imlib/NativeClient$13;

    invoke-direct {v6, p0, p4}, Lio/rong/imlib/NativeClient$13;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p2

    invoke-virtual/range {v1 .. v6}, Lio/rong/imlib/NativeObject;->DeleteRemoteMessages(ILjava/lang/String;[Lio/rong/imlib/NativeObject$Message;ZLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 20
    :cond_7b
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 21
    :cond_83
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_8c

    :goto_8b
    throw p1

    :goto_8c
    goto :goto_8b
.end method

.method public deleteMessages([I)Z
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_25

    .line 2
    array-length v0, p1

    if-eqz p1, :cond_1d

    if-eqz v0, :cond_1d

    .line 3
    new-array v1, v0, [J

    const/4 v2, 0x0

    :goto_c
    if-ge v2, v0, :cond_16

    .line 4
    aget v3, p1, v2

    int-to-long v3, v3

    aput-wide v3, v1, v2

    add-int/lit8 v2, v2, 0x1

    goto :goto_c

    .line 5
    :cond_16
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1, v1}, Lio/rong/imlib/NativeObject;->DeleteMessages([J)Z

    move-result p1

    return p1

    .line 6
    :cond_1d
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "MessageIds \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_25
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_2e

    :goto_2d
    throw p1

    :goto_2e
    goto :goto_2d
.end method

.method public disconnect()V
    .registers 2

    const/4 v0, 0x1

    .line 1
    invoke-virtual {p0, v0}, Lio/rong/imlib/NativeClient;->disconnect(Z)V

    return-void
.end method

.method public disconnect(Z)V
    .registers 3

    .line 2
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0, p1}, Lio/rong/imlib/ConnectionService;->disconnect(Z)V

    return-void
.end method

.method public downloadMedia(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;ILjava/lang/String;Lio/rong/imlib/NativeClient$IResultProgressCallback;)V
    .registers 20
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "I",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultProgressCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    if-eqz p1, :cond_5e

    .line 1
    invoke-static/range {p2 .. p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_5e

    invoke-static/range {p4 .. p4}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_5e

    .line 2
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    const-string v1, "download"

    invoke-static {v0, v1}, Lio/rong/common/FileUtils;->getCachePath(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    const/4 v1, 0x2

    const/4 v2, 0x1

    .line 3
    new-array v2, v2, [Ljava/lang/String;

    const/4 v3, 0x0

    aput-object p4, v2, v3

    invoke-static {v1, v2}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    invoke-static {v0, v1}, Lio/rong/imlib/filetransfer/FtUtilities;->getFileName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    const-wide/16 v2, 0x0

    .line 4
    invoke-static {v1}, Lio/rong/imlib/filetransfer/FtUtilities;->getMimeType(Ljava/lang/String;)Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-result-object v7

    .line 5
    new-instance v6, Ljava/util/Date;

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v4

    invoke-direct {v6, v4, v5}, Ljava/util/Date;-><init>(J)V

    .line 6
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object v4

    invoke-virtual {v4, v0}, Lio/rong/imlib/filetransfer/upload/AbstractMediaFileService;->setMediaPath(Ljava/lang/String;)V

    .line 7
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object v0

    const/4 v10, -0x1

    new-instance v11, Lio/rong/imlib/filetransfer/RequestOption;

    invoke-static/range {p3 .. p3}, Lio/rong/imlib/filetransfer/FtConst$MimeType;->setValue(I)Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-result-object v12

    new-instance v13, Lio/rong/imlib/NativeClient$28;

    move-object v4, v13

    move-object v5, p0

    move-object/from16 v8, p4

    move-object/from16 v9, p5

    invoke-direct/range {v4 .. v9}, Lio/rong/imlib/NativeClient$28;-><init>(Lio/rong/imlib/NativeClient;Ljava/util/Date;Lio/rong/imlib/filetransfer/FtConst$MimeType;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultProgressCallback;)V

    invoke-direct {v11, v1, v12, v13}, Lio/rong/imlib/filetransfer/RequestOption;-><init>(Ljava/lang/String;Lio/rong/imlib/filetransfer/FtConst$MimeType;Lio/rong/imlib/filetransfer/RequestCallBack;)V

    move-object v4, v0

    move v5, v10

    move-object/from16 v6, p4

    move-wide v7, v2

    move-object v9, v11

    invoke-virtual/range {v4 .. v9}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->download(ILjava/lang/String;JLio/rong/imlib/filetransfer/RequestOption;)V

    return-void

    .line 8
    :cond_5e
    new-instance v0, Ljava/lang/IllegalArgumentException;

    const-string v1, "conversationType\uff0cimageUrl \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public downloadMediaFile(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$IDownloadMediaFileCallback;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IDownloadMediaFileCallback<",
            "Ljava/lang/Boolean;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_60

    .line 2
    invoke-static {p3}, Lio/rong/imlib/filetransfer/FtUtilities;->getMimeType(Ljava/lang/String;)Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-result-object v0

    .line 3
    new-instance v3, Ljava/util/Date;

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v1

    invoke-direct {v3, v1, v2}, Ljava/util/Date;-><init>(J)V

    .line 4
    invoke-static {p4, p3}, Lio/rong/imlib/filetransfer/FtUtilities;->getFileName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v7

    .line 5
    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v1, p1}, Lio/rong/common/FileUtils;->getTempFilePath(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    .line 6
    new-instance v2, Ljava/io/File;

    invoke-direct {v2, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V

    invoke-virtual {v2}, Ljava/io/File;->exists()Z

    move-result v1

    if-nez v1, :cond_42

    .line 7
    :try_start_26
    invoke-virtual {p4}, Ljava/lang/String;->length()I

    move-result p4

    add-int/lit8 p4, p4, 0x1

    invoke-virtual {v7, p4}, Ljava/lang/String;->substring(I)Ljava/lang/String;

    move-result-object p4

    .line 8
    invoke-virtual {p4, p3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result p3

    if-nez p3, :cond_42

    .line 9
    invoke-interface {p5, p4}, Lio/rong/imlib/NativeClient$IDownloadMediaFileCallback;->onFileNameChanged(Ljava/lang/String;)V
    :try_end_39
    .catch Ljava/lang/Exception; {:try_start_26 .. :try_end_39} :catch_3a

    goto :goto_42

    :catch_3a
    move-exception p3

    const-string p4, "NativeClient"

    const-string v1, "downloadMediaFile"

    .line 10
    invoke-static {p4, v1, p3}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

    .line 11
    :cond_42
    :goto_42
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object p3

    invoke-virtual {p3, v7}, Lio/rong/imlib/filetransfer/upload/AbstractMediaFileService;->setMediaPath(Ljava/lang/String;)V

    .line 12
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object p3

    new-instance p4, Lio/rong/imlib/filetransfer/RequestOption;

    new-instance v8, Lio/rong/imlib/NativeClient$30;

    move-object v1, v8

    move-object v2, p0

    move-object v4, v0

    move-object v5, p2

    move-object v6, p5

    invoke-direct/range {v1 .. v6}, Lio/rong/imlib/NativeClient$30;-><init>(Lio/rong/imlib/NativeClient;Ljava/util/Date;Lio/rong/imlib/filetransfer/FtConst$MimeType;Ljava/lang/String;Lio/rong/imlib/NativeClient$IDownloadMediaFileCallback;)V

    invoke-direct {p4, v7, v0, v8}, Lio/rong/imlib/filetransfer/RequestOption;-><init>(Ljava/lang/String;Lio/rong/imlib/filetransfer/FtConst$MimeType;Lio/rong/imlib/filetransfer/RequestCallBack;)V

    invoke-virtual {p3, p1, p2, p4}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->download(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/filetransfer/RequestOption;)V

    return-void

    .line 13
    :cond_60
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public downloadMediaMessage(Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$IDownloadMediaMessageCallback;)V
    .registers 21
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Lio/rong/imlib/NativeClient$IDownloadMediaMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    move-object/from16 v7, p0

    move-object/from16 v5, p2

    .line 1
    iget-object v0, v7, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1e6

    const-wide/16 v0, 0x0

    .line 2
    sget-object v2, Lio/rong/imlib/filetransfer/FtConst$MimeType;->NONE:Lio/rong/imlib/filetransfer/FtConst$MimeType;

    .line 3
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    instance-of v3, v3, Lio/rong/message/ImageMessage;

    const-string v4, "file"

    const-string v6, "image"

    const-string v8, ""

    const/4 v9, 0x0

    const/4 v10, 0x0

    const/4 v11, 0x1

    const/4 v12, 0x2

    if-eqz v3, :cond_48

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/ImageMessage;

    invoke-virtual {v3}, Lio/rong/message/ImageMessage;->getRemoteUri()Landroid/net/Uri;

    move-result-object v3

    if-eqz v3, :cond_48

    .line 4
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    check-cast v2, Lio/rong/message/ImageMessage;

    invoke-virtual {v2}, Lio/rong/message/ImageMessage;->getRemoteUri()Landroid/net/Uri;

    move-result-object v2

    invoke-virtual {v2}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v2

    .line 5
    new-array v3, v11, [Ljava/lang/String;

    aput-object v2, v3, v10

    invoke-static {v12, v3}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v8

    .line 6
    sget-object v3, Lio/rong/imlib/filetransfer/FtConst$MimeType;->FILE_IMAGE:Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-wide v13, v0

    move-object v12, v2

    move-object v9, v3

    :goto_45
    move-object v4, v6

    goto/16 :goto_187

    .line 7
    :cond_48
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    instance-of v3, v3, Lio/rong/message/GIFMessage;

    if-eqz v3, :cond_8d

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/GIFMessage;

    invoke-virtual {v3}, Lio/rong/message/GIFMessage;->getRemoteUri()Landroid/net/Uri;

    move-result-object v3

    if-eqz v3, :cond_8d

    .line 8
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    check-cast v0, Lio/rong/message/GIFMessage;

    .line 9
    invoke-virtual {v0}, Lio/rong/message/GIFMessage;->getRemoteUri()Landroid/net/Uri;

    move-result-object v1

    invoke-virtual {v1}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v1

    .line 10
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    new-array v3, v11, [Ljava/lang/String;

    aput-object v1, v3, v10

    invoke-static {v12, v3}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v3, ".gif"

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v8

    .line 11
    invoke-virtual {v0}, Lio/rong/message/GIFMessage;->getGifDataSize()J

    move-result-wide v2

    .line 12
    sget-object v0, Lio/rong/imlib/filetransfer/FtConst$MimeType;->FILE_IMAGE:Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-object v9, v0

    move-object v12, v1

    move-wide v13, v2

    goto :goto_45

    .line 13
    :cond_8d
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    instance-of v3, v3, Lio/rong/message/FileMessage;

    if-eqz v3, :cond_f0

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/FileMessage;

    invoke-virtual {v3}, Lio/rong/message/FileMessage;->getFileUrl()Landroid/net/Uri;

    move-result-object v3

    if-eqz v3, :cond_f0

    .line 14
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    check-cast v0, Lio/rong/message/FileMessage;

    invoke-virtual {v0}, Lio/rong/message/FileMessage;->getFileUrl()Landroid/net/Uri;

    move-result-object v0

    invoke-virtual {v0}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v0

    .line 15
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/FileMessage;

    .line 16
    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getName()Ljava/lang/String;

    move-result-object v2

    .line 17
    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_c7

    .line 18
    new-array v2, v11, [Ljava/lang/String;

    aput-object v0, v2, v10

    invoke-static {v12, v2}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    .line 19
    :cond_c7
    invoke-virtual {v1}, Lio/rong/message/FileMessage;->getSize()J

    move-result-wide v10

    .line 20
    invoke-virtual {v1}, Lio/rong/message/FileMessage;->getType()Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Lio/rong/imlib/filetransfer/FtUtilities;->getMimeType(Ljava/lang/String;)Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-result-object v1

    .line 21
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/MediaMessageContent;

    .line 22
    invoke-virtual {v3, v9}, Lio/rong/message/MediaMessageContent;->setLocalPath(Landroid/net/Uri;)V

    .line 23
    invoke-virtual {v3}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v3

    .line 24
    iget-object v6, v7, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v9

    int-to-long v12, v9

    invoke-virtual {v6, v12, v13, v3, v8}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    move-object v12, v0

    move-object v9, v1

    move-object v8, v2

    move-wide v13, v10

    goto/16 :goto_187

    .line 25
    :cond_f0
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    instance-of v3, v3, Lio/rong/message/HQVoiceMessage;

    if-eqz v3, :cond_12d

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/HQVoiceMessage;

    invoke-virtual {v3}, Lio/rong/message/HQVoiceMessage;->getFileUrl()Landroid/net/Uri;

    move-result-object v3

    if-eqz v3, :cond_12d

    .line 26
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    check-cast v2, Lio/rong/message/HQVoiceMessage;

    .line 27
    invoke-virtual {v2}, Lio/rong/message/HQVoiceMessage;->getFileUrl()Landroid/net/Uri;

    move-result-object v3

    invoke-virtual {v3}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v3

    .line 28
    invoke-virtual {v2}, Lio/rong/message/MediaMessageContent;->getName()Ljava/lang/String;

    move-result-object v2

    .line 29
    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v4

    if-eqz v4, :cond_124

    .line 30
    new-array v2, v11, [Ljava/lang/String;

    aput-object v3, v2, v10

    invoke-static {v12, v2}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v2

    :cond_124
    move-object v8, v2

    .line 31
    sget-object v2, Lio/rong/imlib/filetransfer/FtConst$MimeType;->FILE_AUDIO:Lio/rong/imlib/filetransfer/FtConst$MimeType;

    const-string v4, "audio"

    move-wide v13, v0

    move-object v9, v2

    move-object v12, v3

    goto :goto_187

    .line 32
    :cond_12d
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    instance-of v3, v3, Lio/rong/message/MediaMessageContent;

    if-eqz v3, :cond_182

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v3}, Lio/rong/message/MediaMessageContent;->getMediaUrl()Landroid/net/Uri;

    move-result-object v3

    if-eqz v3, :cond_182

    .line 33
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    check-cast v2, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v2}, Lio/rong/message/MediaMessageContent;->getMediaUrl()Landroid/net/Uri;

    move-result-object v2

    invoke-virtual {v2}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v2

    .line 34
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    check-cast v3, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v3}, Lio/rong/message/MediaMessageContent;->getName()Ljava/lang/String;

    move-result-object v3

    .line 35
    invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v6

    if-eqz v6, :cond_167

    .line 36
    new-array v3, v11, [Ljava/lang/String;

    aput-object v2, v3, v10

    invoke-static {v12, v3}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    :cond_167
    move-object v8, v3

    .line 37
    sget-object v3, Lio/rong/imlib/filetransfer/FtConst$MimeType;->FILE_TEXT_PLAIN:Lio/rong/imlib/filetransfer/FtConst$MimeType;

    .line 38
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v6

    instance-of v6, v6, Lio/rong/message/SightMessage;

    if-eqz v6, :cond_17e

    .line 39
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    check-cast v0, Lio/rong/message/SightMessage;

    invoke-virtual {v0}, Lio/rong/message/SightMessage;->getSize()J

    move-result-wide v0

    const-string v4, "video"

    :cond_17e
    move-wide v13, v0

    move-object v12, v2

    move-object v9, v3

    goto :goto_187

    :cond_182
    const-string v4, "media"

    move-wide v13, v0

    move-object v12, v9

    move-object v9, v2

    .line 40
    :goto_187
    invoke-static {v12}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_1a0

    const-string v0, "NativeClient"

    const-string v1, "remoteUrl of the media file can\'t be empty!"

    .line 41
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v5, :cond_19f

    .line 42
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v0}, Lio/rong/imlib/NativeClient$IDownloadMediaMessageCallback;->onError(I)V

    :cond_19f
    return-void

    .line 43
    :cond_1a0
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0, v4}, Lio/rong/common/FileUtils;->getMediaDownloadDir(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 44
    invoke-static {v0, v8}, Lio/rong/imlib/filetransfer/FtUtilities;->getFileName(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v8

    .line 45
    invoke-static {v8}, Lio/rong/imlib/filetransfer/FtUtilities;->getMimeType(Ljava/lang/String;)Lio/rong/imlib/filetransfer/FtConst$MimeType;

    move-result-object v3

    .line 46
    new-instance v2, Ljava/util/Date;

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v10

    invoke-direct {v2, v10, v11}, Ljava/util/Date;-><init>(J)V

    .line 47
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object v1

    invoke-virtual {v1, v0}, Lio/rong/imlib/filetransfer/upload/AbstractMediaFileService;->setMediaPath(Ljava/lang/String;)V

    .line 48
    invoke-static {}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->getInstance()Lio/rong/imlib/filetransfer/MediaDownloadEngine;

    move-result-object v10

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v11

    new-instance v15, Lio/rong/imlib/filetransfer/RequestOption;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v6

    new-instance v4, Lio/rong/imlib/NativeClient$29;

    move-object v0, v4

    move-object/from16 v1, p0

    move-object v7, v4

    move-object v4, v12

    move-object/from16 v5, p2

    move-wide/from16 v16, v13

    move v13, v6

    move-object/from16 v6, p1

    invoke-direct/range {v0 .. v6}, Lio/rong/imlib/NativeClient$29;-><init>(Lio/rong/imlib/NativeClient;Ljava/util/Date;Lio/rong/imlib/filetransfer/FtConst$MimeType;Ljava/lang/String;Lio/rong/imlib/NativeClient$IDownloadMediaMessageCallback;Lio/rong/imlib/model/Message;)V

    invoke-direct {v15, v8, v9, v13, v7}, Lio/rong/imlib/filetransfer/RequestOption;-><init>(Ljava/lang/String;Lio/rong/imlib/filetransfer/FtConst$MimeType;ILio/rong/imlib/filetransfer/RequestCallBack;)V

    move-wide/from16 v13, v16

    invoke-virtual/range {v10 .. v15}, Lio/rong/imlib/filetransfer/MediaDownloadEngine;->download(ILjava/lang/String;JLio/rong/imlib/filetransfer/RequestOption;)V

    return-void

    .line 49
    :cond_1e6
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_1ef

    :goto_1ee
    throw v0

    :goto_1ef
    goto :goto_1ee
.end method

.method public exitRTCRoom(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 10

    const/4 v0, 0x1

    .line 1
    new-array v1, v0, [Ljava/lang/Object;

    const/4 v2, 0x0

    aput-object p1, v1, v2

    const/4 v3, 0x3

    const/4 v4, 0x2

    const-string v5, "P-leaveRoom-T"

    const-string v6, "roomId"

    invoke-static {v3, v4, v5, v6, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_20

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$57;

    invoke-direct {v1, p0, p1, p2}, Lio/rong/imlib/NativeClient$57;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->ExitRTCRoom(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_20
    new-array p2, v3, [Ljava/lang/Object;

    aput-object p1, p2, v2

    const/4 p1, -0x1

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object p1

    aput-object p1, p2, v0

    const-string p1, "RoomId is Null"

    aput-object p1, p2, v4

    const-string p1, "P-leaveRoom-E"

    const-string v1, "roomId|code|desc"

    invoke-static {v0, v4, p1, v1, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 5
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method getAllChatRoomStatus(Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/HashMap<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    new-instance v1, Lio/rong/imlib/NativeClient$76;

    invoke-direct {v1, p0, p2, p1}, Lio/rong/imlib/NativeClient$76;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;Ljava/lang/String;)V

    invoke-virtual {v0, v1}, Ljava/util/concurrent/ScheduledThreadPoolExecutor;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;

    return-void
.end method

.method public getAllEncryptedConversations()Ljava/util/List;
    .registers 2
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/RCEncryptedSession;",
            ">;"
        }
    .end annotation

    const/4 v0, 0x0

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->GetEncryptedConversations()Ljava/util/List;

    move-result-object v0

    return-object v0
.end method

.method public getAppKey()Ljava/lang/String;
    .registers 2

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->appKey:Ljava/lang/String;

    return-object v0
.end method

.method public getBlacklist(Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_17

    if-eqz p1, :cond_f

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$49;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$49;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->GetBlacklist(Lio/rong/imlib/NativeObject$SetBlacklistListener;)V

    return-void

    .line 3
    :cond_f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "\u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getBlacklistStatus(Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Lio/rong/imlib/NativeClient$BlacklistStatus;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    if-eqz p2, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$48;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$48;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->GetBlacklistStatus(Ljava/lang/String;Lio/rong/imlib/NativeObject$BizAckListener;)V

    return-void

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "\u7528\u6237 Id \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getBlockedConversationList([I)Ljava/util/List;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([I)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Conversation;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->GetBlockedConversations([I)[Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p1

    if-nez p1, :cond_a

    const/4 p1, 0x0

    return-object p1

    .line 2
    :cond_a
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 3
    array-length v1, p1

    const/4 v2, 0x0

    :goto_11
    if-ge v2, v1, :cond_1f

    aget-object v3, p1, v2

    .line 4
    invoke-direct {p0, v3}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object v3

    invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v2, v2, 0x1

    goto :goto_11

    :cond_1f
    return-object v0
.end method

.method getChatRoomStatusByKey(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_12

    if-nez p3, :cond_7

    return-void

    .line 2
    :cond_7
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->executorService:Ljava/util/concurrent/ScheduledThreadPoolExecutor;

    new-instance v1, Lio/rong/imlib/NativeClient$75;

    invoke-direct {v1, p0, p3, p1, p2}, Lio/rong/imlib/NativeClient$75;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;Ljava/lang/String;Ljava/lang/String;)V

    invoke-virtual {v0, v1}, Ljava/util/concurrent/ScheduledThreadPoolExecutor;->submit(Ljava/lang/Runnable;)Ljava/util/concurrent/Future;

    return-void

    .line 3
    :cond_12
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getChatroomHistoryMessages(Ljava/lang/String;JIILio/rong/imlib/NativeClient$IResultCallbackEx;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "JII",
            "Lio/rong/imlib/NativeClient$IResultCallbackEx<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;",
            "Ljava/lang/Long;",
            ">;)V"
        }
    .end annotation

    const-string v0, "NativeClient"

    const-string v1, "getChatroomHistoryMessages"

    .line 1
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->i(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0, v1}, Lio/rong/imlib/navigation/NavigationClient;->isChatroomHistoryEnabled(Landroid/content/Context;)Z

    move-result v0

    if-eqz v0, :cond_22

    .line 3
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v7, Lio/rong/imlib/NativeClient$7;

    invoke-direct {v7, p0, p6}, Lio/rong/imlib/NativeClient$7;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V

    move-object v2, p1

    move-wide v3, p2

    move v5, p4

    move v6, p5

    invoke-virtual/range {v1 .. v7}, Lio/rong/imlib/NativeObject;->GetChatroomHistoryMessage(Ljava/lang/String;JIILio/rong/imlib/NativeObject$HistoryMessageListener;)V

    goto :goto_27

    :cond_22
    const/16 p1, 0x5b76

    .line 4
    invoke-interface {p6, p1}, Lio/rong/imlib/NativeClient$IResultCallbackEx;->onError(I)V

    :goto_27
    return-void
.end method

.method public getConversation(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Lio/rong/imlib/model/Conversation;
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2a

    if-eqz p1, :cond_22

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_22

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    invoke-virtual {v0, p2, v1}, Lio/rong/imlib/NativeObject;->GetConversationEx(Ljava/lang/String;I)Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p2

    if-nez p2, :cond_1a

    const/4 p1, 0x0

    return-object p1

    .line 4
    :cond_1a
    invoke-direct {p0, p2}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object p2

    .line 5
    invoke-virtual {p2, p1}, Lio/rong/imlib/model/Conversation;->setConversationType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    return-object p2

    .line 6
    :cond_22
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationType \u548c TargetId \u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_2a
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getConversationList()Ljava/util/List;
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "()",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Conversation;",
            ">;"
        }
    .end annotation

    const/4 v0, 0x4

    .line 1
    new-array v0, v0, [I

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationType;->PRIVATE:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    const/4 v2, 0x0

    aput v1, v0, v2

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationType;->DISCUSSION:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    const/4 v2, 0x1

    aput v1, v0, v2

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationType;->GROUP:Lio/rong/imlib/model/Conversation$ConversationType;

    .line 2
    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    const/4 v2, 0x2

    aput v1, v0, v2

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationType;->SYSTEM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    const/4 v2, 0x3

    aput v1, v0, v2

    .line 3
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v1, :cond_30

    .line 4
    invoke-virtual {p0, v0}, Lio/rong/imlib/NativeClient;->getConversationList([I)Ljava/util/List;

    move-result-object v0

    return-object v0

    .line 5
    :cond_30
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public getConversationList([I)Ljava/util/List;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([I)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Conversation;",
            ">;"
        }
    .end annotation

    const/4 v0, 0x0

    .line 6
    :try_start_1
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1, p1}, Lio/rong/imlib/NativeObject;->GetConversationListEx([I)[Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p1
    :try_end_7
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_7} :catch_8

    goto :goto_11

    :catch_8
    move-exception p1

    const-string v1, "NativeClient"

    const-string v2, "getConversationList Exception"

    .line 7
    invoke-static {v1, v2, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

    move-object p1, v0

    :goto_11
    if-nez p1, :cond_14

    return-object v0

    .line 8
    :cond_14
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 9
    array-length v1, p1

    const/4 v2, 0x0

    :goto_1b
    if-ge v2, v1, :cond_29

    aget-object v3, p1, v2

    .line 10
    invoke-direct {p0, v3}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object v3

    invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v2, v2, 0x1

    goto :goto_1b

    :cond_29
    return-object v0
.end method

.method public getConversationListByPage([IJI)Ljava/util/List;
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([IJI)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Conversation;",
            ">;"
        }
    .end annotation

    const/4 v0, 0x0

    .line 1
    :try_start_1
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->GetConversationList([IJI)[Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p1
    :try_end_7
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_7} :catch_8

    goto :goto_11

    :catch_8
    move-exception p1

    const-string p2, "NativeClient"

    const-string p3, "getConversationListByPage Exception"

    .line 2
    invoke-static {p2, p3, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

    move-object p1, v0

    :goto_11
    if-nez p1, :cond_14

    return-object v0

    .line 3
    :cond_14
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    .line 4
    array-length p3, p1

    const/4 p4, 0x0

    :goto_1b
    if-ge p4, p3, :cond_29

    aget-object v0, p1, p4

    .line 5
    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object v0

    invoke-interface {p2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_1b

    :cond_29
    return-object p2
.end method

.method public getConversationNotificationStatus(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/Integer;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_35

    if-eqz p1, :cond_2d

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_2d

    if-eqz p3, :cond_2d

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p2, p1}, Lio/rong/imlib/NativeObject;->GetBlockPush(Ljava/lang/String;I)I

    move-result p1

    const/16 p2, 0x64

    if-ne p1, p2, :cond_1f

    .line 4
    sget-object p1, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->DO_NOT_DISTURB:Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;

    goto :goto_21

    :cond_1f
    sget-object p1, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->NOTIFY:Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;

    :goto_21
    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->getValue()I

    move-result p1

    invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object p1

    invoke-interface {p3, p1}, Lio/rong/imlib/NativeClient$IResultCallback;->onSuccess(Ljava/lang/Object;)V

    return-void

    .line 5
    :cond_2d
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 6
    :cond_35
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getCurrentUserId()Ljava/lang/String;
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_15

    .line 2
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0, v1}, Lio/rong/imlib/navigation/NavigationClient;->getUserId(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v0

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    return-object v0

    .line 3
    :cond_15
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    return-object v0
.end method

.method public getDeltaTime()J
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->GetDeltaTime()J

    move-result-wide v0

    return-wide v0
.end method

.method public getDeviceId()Ljava/lang/String;
    .registers 2

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->deviceId:Ljava/lang/String;

    return-object v0
.end method

.method public getDiscussion(Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Lio/rong/imlib/model/Discussion;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_4c

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_44

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->GetDiscussionInfoSync(Ljava/lang/String;)Lio/rong/imlib/NativeObject$DiscussionInfo;

    move-result-object v0

    if-eqz v0, :cond_39

    .line 4
    new-instance v1, Lio/rong/imlib/model/Discussion;

    invoke-direct {v1, v0}, Lio/rong/imlib/model/Discussion;-><init>(Lio/rong/imlib/NativeObject$DiscussionInfo;)V

    .line 5
    invoke-virtual {v1}, Lio/rong/imlib/model/Discussion;->getMemberIdList()Ljava/util/List;

    move-result-object v0

    if-eqz v0, :cond_2e

    invoke-virtual {v1}, Lio/rong/imlib/model/Discussion;->getMemberIdList()Ljava/util/List;

    move-result-object v0

    invoke-interface {v0}, Ljava/util/List;->size()I

    move-result v0

    if-nez v0, :cond_28

    goto :goto_2e

    :cond_28
    if-eqz p2, :cond_43

    .line 6
    invoke-interface {p2, v1}, Lio/rong/imlib/NativeClient$IResultCallback;->onSuccess(Ljava/lang/Object;)V

    goto :goto_43

    .line 7
    :cond_2e
    :goto_2e
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$15;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$15;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->GetDiscussionInfo(Ljava/lang/String;Lio/rong/imlib/NativeObject$DiscussionInfoListener;)V

    goto :goto_43

    .line 8
    :cond_39
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$16;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$16;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->GetDiscussionInfo(Ljava/lang/String;Lio/rong/imlib/NativeObject$DiscussionInfoListener;)V

    :cond_43
    :goto_43
    return-void

    .line 9
    :cond_44
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, " discussionId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 10
    :cond_4c
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getEncryptedConversation(Ljava/lang/String;)Lio/rong/imlib/model/RCEncryptedSession;
    .registers 4

    const/4 v0, 0x1

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    const/4 v1, 0x0

    aput-object p1, v0, v1

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->GetEncryptedConversationInfo(Ljava/lang/String;)Lio/rong/imlib/model/RCEncryptedSession;

    move-result-object p1

    .line 3
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "getEncryptedConversation --> "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    if-nez p1, :cond_1e

    const-string v1, "null"

    goto :goto_22

    :cond_1e
    invoke-virtual {p1}, Lio/rong/imlib/model/RCEncryptedSession;->toString()Ljava/lang/String;

    move-result-object v1

    :goto_22
    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    return-object p1
.end method

.method public getGIFLimitSize()I
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->getGifSizeLimit(Landroid/content/Context;)I

    move-result v0

    return v0
.end method

.method public getHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;JI)Ljava/util/List;
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "JI)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_50

    if-eqz p1, :cond_48

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_48

    .line 3
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v2

    .line 4
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v3

    const/4 v8, 0x1

    const-string v4, ""

    move-wide v5, p3

    move v7, p5

    invoke-virtual/range {v1 .. v8}, Lio/rong/imlib/NativeObject;->GetHistoryMessagesEx(Ljava/lang/String;ILjava/lang/String;JIZ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 5
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-nez p1, :cond_27

    return-object p2

    .line 6
    :cond_27
    array-length p3, p1

    const/4 p4, 0x0

    :goto_29
    if-ge p4, p3, :cond_47

    aget-object p5, p1, p4

    .line 7
    new-instance v0, Lio/rong/imlib/model/Message;

    invoke-direct {v0, p5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 8
    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p5

    invoke-direct {p0, v1, p5, v0}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p5

    invoke-virtual {v0, p5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 9
    invoke-interface {p2, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_29

    :cond_47
    return-object p2

    .line 10
    :cond_48
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 11
    :cond_50
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_59

    :goto_58
    throw p1

    :goto_59
    goto :goto_58
.end method

.method public getHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;JI)Ljava/util/List;
    .registers 16
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "JI)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 12
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_56

    if-eqz p1, :cond_4e

    .line 13
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_4e

    invoke-static {p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_4e

    .line 14
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v2

    .line 15
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v3

    const/4 v8, 0x1

    move-object v4, p3

    move-wide v5, p4

    move v7, p6

    invoke-virtual/range {v1 .. v8}, Lio/rong/imlib/NativeObject;->GetHistoryMessagesEx(Ljava/lang/String;ILjava/lang/String;JIZ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 16
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-nez p1, :cond_2d

    const/4 p1, 0x0

    return-object p1

    .line 17
    :cond_2d
    array-length p3, p1

    const/4 p4, 0x0

    :goto_2f
    if-ge p4, p3, :cond_4d

    aget-object p5, p1, p4

    .line 18
    new-instance p6, Lio/rong/imlib/model/Message;

    invoke-direct {p6, p5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 19
    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p5

    invoke-direct {p0, v0, p5, p6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p5

    invoke-virtual {p6, p5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 20
    invoke-interface {p2, p6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_2f

    :cond_4d
    return-object p2

    .line 21
    :cond_4e
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes, objectName \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 22
    :cond_56
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_5f

    :goto_5e
    throw p1

    :goto_5f
    goto :goto_5e
.end method

.method public getHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;JIZ)Ljava/util/List;
    .registers 18
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "JIZ)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    move-object v0, p0

    .line 23
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v1, :cond_59

    if-eqz p1, :cond_51

    .line 24
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_51

    invoke-static {p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_51

    .line 25
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v3

    .line 26
    iget-object v2, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    move-object v5, p3

    move-wide v6, p4

    move/from16 v8, p6

    move/from16 v9, p7

    invoke-virtual/range {v2 .. v9}, Lio/rong/imlib/NativeObject;->GetHistoryMessagesEx(Ljava/lang/String;ILjava/lang/String;JIZ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object v1

    .line 27
    new-instance v2, Ljava/util/ArrayList;

    invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V

    if-nez v1, :cond_30

    const/4 v1, 0x0

    return-object v1

    .line 28
    :cond_30
    array-length v3, v1

    const/4 v4, 0x0

    :goto_32
    if-ge v4, v3, :cond_50

    aget-object v5, v1, v4

    .line 29
    new-instance v6, Lio/rong/imlib/model/Message;

    invoke-direct {v6, v5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 30
    invoke-virtual {v5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object v5

    invoke-direct {p0, v7, v5, v6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object v5

    invoke-virtual {v6, v5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 31
    invoke-interface {v2, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v4, v4, 0x1

    goto :goto_32

    :cond_50
    return-object v2

    .line 32
    :cond_51
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "ConversationTypes, objectName \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 33
    :cond_59
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_62

    :goto_61
    throw v1

    :goto_62
    goto :goto_61
.end method

.method public getHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/util/List;JIZ)Ljava/util/List;
    .registers 19
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;JIZ)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    move-object v0, p0

    move-object v1, p3

    .line 34
    iget-object v2, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v2, :cond_68

    if-eqz p1, :cond_60

    .line 35
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_60

    if-eqz v1, :cond_60

    invoke-interface {p3}, Ljava/util/List;->size()I

    move-result v2

    if-eqz v2, :cond_60

    .line 36
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v4

    .line 37
    invoke-interface {p3}, Ljava/util/List;->size()I

    move-result v2

    .line 38
    iget-object v3, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v5

    new-array v2, v2, [Ljava/lang/String;

    invoke-interface {p3, v2}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    move-result-object v1

    move-object v6, v1

    check-cast v6, [Ljava/lang/String;

    move-wide v7, p4

    move/from16 v9, p6

    move/from16 v10, p7

    invoke-virtual/range {v3 .. v10}, Lio/rong/imlib/NativeObject;->GetHistoryMessagesByObjectNames(Ljava/lang/String;I[Ljava/lang/String;JIZ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object v1

    .line 39
    new-instance v2, Ljava/util/ArrayList;

    invoke-direct {v2}, Ljava/util/ArrayList;-><init>()V

    if-nez v1, :cond_3f

    const/4 v1, 0x0

    return-object v1

    .line 40
    :cond_3f
    array-length v3, v1

    const/4 v4, 0x0

    :goto_41
    if-ge v4, v3, :cond_5f

    aget-object v5, v1, v4

    .line 41
    new-instance v6, Lio/rong/imlib/model/Message;

    invoke-direct {v6, v5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 42
    invoke-virtual {v5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v7

    invoke-virtual {v5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object v5

    invoke-direct {p0, v7, v5, v6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object v5

    invoke-virtual {v6, v5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 43
    invoke-interface {v2, v6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v4, v4, 0x1

    goto :goto_41

    :cond_5f
    return-object v2

    .line 44
    :cond_60
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "ConversationTypes, objectName \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 45
    :cond_68
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_71

    :goto_70
    throw v1

    :goto_71
    goto :goto_70
.end method

.method public getLatestMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;I)Ljava/util/List;
    .registers 11
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "I)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_22

    if-eqz p1, :cond_1a

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1a

    .line 3
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v3

    const-wide/16 v4, -0x1

    move-object v1, p0

    move-object v2, p1

    move v6, p3

    .line 4
    invoke-virtual/range {v1 .. v6}, Lio/rong/imlib/NativeClient;->getHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;JI)Ljava/util/List;

    move-result-object p1

    return-object p1

    .line 5
    :cond_1a
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 6
    :cond_22
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method getMatchedMessages(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;JII)Ljava/util/List;
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "JII)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p2}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v2

    move-object v1, p1

    move-wide v3, p3

    move v5, p5

    move v6, p6

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->GetMatchedMessages(Ljava/lang/String;IJII)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 2
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-eqz p1, :cond_35

    .line 3
    array-length p3, p1

    const/4 p4, 0x0

    :goto_17
    if-ge p4, p3, :cond_35

    aget-object p5, p1, p4

    .line 4
    new-instance p6, Lio/rong/imlib/model/Message;

    invoke-direct {p6, p5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 5
    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p5

    invoke-direct {p0, v0, p5, p6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p5

    invoke-virtual {p6, p5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 6
    invoke-interface {p2, p6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_17

    :cond_35
    return-object p2
.end method

.method public getMessage(I)Lio/rong/imlib/model/Message;
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    int-to-long v1, p1

    invoke-virtual {v0, v1, v2}, Lio/rong/imlib/NativeObject;->GetMessageById(J)Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    if-nez p1, :cond_b

    const/4 p1, 0x0

    return-object p1

    .line 2
    :cond_b
    new-instance v0, Lio/rong/imlib/model/Message;

    invoke-direct {v0, p1}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p1

    invoke-direct {p0, v1, p1, v0}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    .line 4
    invoke-virtual {v0, p1}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    return-object v0
.end method

.method public getMessageByUid(Ljava/lang/String;)Lio/rong/imlib/model/Message;
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->GetMessageByUId(Ljava/lang/String;)Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    if-nez p1, :cond_a

    const/4 p1, 0x0

    return-object p1

    .line 2
    :cond_a
    new-instance v0, Lio/rong/imlib/model/Message;

    invoke-direct {v0, p1}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p1

    invoke-direct {p0, v1, p1, v0}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    .line 4
    invoke-virtual {v0, p1}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    return-object v0
.end method

.method public getMessageCount(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)I
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    if-eqz p1, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p2, p1}, Lio/rong/imlib/NativeObject;->GetMessageCount(Ljava/lang/String;I)I

    move-result p1

    return p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationType \u6216 TargetId \u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getNotificationQuietHours(Lio/rong/imlib/NativeClient$GetNotificationQuietHoursCallback;)V
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_17

    if-eqz p1, :cond_f

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$52;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$52;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$GetNotificationQuietHoursCallback;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->QueryPushSetting(Lio/rong/imlib/NativeObject$PushSettingListener;)V

    return-void

    .line 3
    :cond_f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "\u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method getOffLineLogServer()Ljava/lang/String;
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->getOfflineLogServer(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getOfflineMessageDuration()Ljava/lang/String;
    .registers 2

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->GetOfflineMessageDuration()Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getPublicServiceList(Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 10
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Lio/rong/imlib/model/PublicServiceProfileList;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_82

    if-eqz p1, :cond_81

    .line 2
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->LoadAccountInfo()[Lio/rong/imlib/NativeObject$AccountInfo;

    move-result-object v0

    if-eqz v0, :cond_6d

    .line 3
    array-length v1, v0

    if-lez v1, :cond_6d

    .line 4
    new-instance v1, Ljava/util/ArrayList;

    invoke-direct {v1}, Ljava/util/ArrayList;-><init>()V

    .line 5
    array-length v2, v0

    const/4 v3, 0x0

    :goto_16
    if-ge v3, v2, :cond_64

    aget-object v4, v0, v3

    .line 6
    new-instance v5, Lio/rong/imlib/model/PublicServiceProfile;

    invoke-direct {v5}, Lio/rong/imlib/model/PublicServiceProfile;-><init>()V

    .line 7
    new-instance v6, Ljava/lang/String;

    invoke-virtual {v4}, Lio/rong/imlib/NativeObject$AccountInfo;->getAccountId()[B

    move-result-object v7

    invoke-direct {v6, v7}, Ljava/lang/String;-><init>([B)V

    invoke-virtual {v5, v6}, Lio/rong/imlib/model/PublicServiceProfile;->setTargetId(Ljava/lang/String;)V

    .line 8
    new-instance v6, Ljava/lang/String;

    invoke-virtual {v4}, Lio/rong/imlib/NativeObject$AccountInfo;->getAccountName()[B

    move-result-object v7

    invoke-direct {v6, v7}, Ljava/lang/String;-><init>([B)V

    invoke-virtual {v5, v6}, Lio/rong/imlib/model/PublicServiceProfile;->setName(Ljava/lang/String;)V

    .line 9
    invoke-virtual {v4}, Lio/rong/imlib/NativeObject$AccountInfo;->getAccountType()I

    move-result v6

    invoke-static {v6}, Lio/rong/imlib/model/Conversation$ConversationType;->setValue(I)Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v6

    invoke-virtual {v5, v6}, Lio/rong/imlib/model/PublicServiceProfile;->setPublicServiceType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    .line 10
    new-instance v6, Ljava/lang/String;

    invoke-virtual {v4}, Lio/rong/imlib/NativeObject$AccountInfo;->getAccountUri()[B

    move-result-object v7

    invoke-direct {v6, v7}, Ljava/lang/String;-><init>([B)V

    invoke-static {v6}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v6

    invoke-virtual {v5, v6}, Lio/rong/imlib/model/PublicServiceProfile;->setPortraitUri(Landroid/net/Uri;)V

    .line 11
    new-instance v6, Ljava/lang/String;

    invoke-virtual {v4}, Lio/rong/imlib/NativeObject$AccountInfo;->getExtra()[B

    move-result-object v4

    invoke-direct {v6, v4}, Ljava/lang/String;-><init>([B)V

    .line 12
    invoke-virtual {v5, v6}, Lio/rong/imlib/model/PublicServiceProfile;->setExtra(Ljava/lang/String;)V

    .line 13
    invoke-virtual {v1, v5}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z

    add-int/lit8 v3, v3, 0x1

    goto :goto_16

    .line 14
    :cond_64
    new-instance v0, Lio/rong/imlib/model/PublicServiceProfileList;

    invoke-direct {v0, v1}, Lio/rong/imlib/model/PublicServiceProfileList;-><init>(Ljava/util/ArrayList;)V

    .line 15
    invoke-interface {p1, v0}, Lio/rong/imlib/NativeClient$IResultCallback;->onSuccess(Ljava/lang/Object;)V

    goto :goto_81

    :cond_6d
    const-string v0, "NativeClient"

    const-string v1, "Public service list is empty"

    .line 16
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 17
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 18
    new-instance v1, Lio/rong/imlib/model/PublicServiceProfileList;

    invoke-direct {v1, v0}, Lio/rong/imlib/model/PublicServiceProfileList;-><init>(Ljava/util/ArrayList;)V

    .line 19
    invoke-interface {p1, v1}, Lio/rong/imlib/NativeClient$IResultCallback;->onSuccess(Ljava/lang/Object;)V

    :cond_81
    :goto_81
    return-void

    .line 20
    :cond_82
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "RongIMClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_8b

    :goto_8a
    throw p1

    :goto_8b
    goto :goto_8a
.end method

.method public getPublicServiceProfile(Ljava/lang/String;ILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Lio/rong/imlib/model/PublicServiceProfile;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_5f

    if-eqz p1, :cond_57

    if-eqz p3, :cond_56

    .line 2
    new-instance v0, Lio/rong/imlib/model/PublicServiceProfile;

    invoke-direct {v0}, Lio/rong/imlib/model/PublicServiceProfile;-><init>()V

    .line 3
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1, p1, p2}, Lio/rong/imlib/NativeObject;->GetUserInfoExSync(Ljava/lang/String;I)Lio/rong/imlib/NativeObject$UserInfo;

    move-result-object p2

    if-eqz p2, :cond_46

    .line 4
    invoke-virtual {v0, p1}, Lio/rong/imlib/model/PublicServiceProfile;->setTargetId(Ljava/lang/String;)V

    .line 5
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$UserInfo;->getUserName()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/model/PublicServiceProfile;->setName(Ljava/lang/String;)V

    .line 6
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$UserInfo;->getUrl()Ljava/lang/String;

    move-result-object p1

    if-eqz p1, :cond_30

    .line 7
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$UserInfo;->getUrl()Ljava/lang/String;

    move-result-object p1

    invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/model/PublicServiceProfile;->setPortraitUri(Landroid/net/Uri;)V

    .line 8
    :cond_30
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$UserInfo;->getCategoryId()I

    move-result p1

    invoke-static {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->setValue(I)Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/model/PublicServiceProfile;->setPublicServiceType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    .line 9
    invoke-virtual {p2}, Lio/rong/imlib/NativeObject$UserInfo;->getAccountExtra()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/model/PublicServiceProfile;->setExtra(Ljava/lang/String;)V

    .line 10
    invoke-interface {p3, v0}, Lio/rong/imlib/NativeClient$IResultCallback;->onSuccess(Ljava/lang/Object;)V

    goto :goto_56

    :cond_46
    const-string p1, "NativeClient"

    const-string p2, "Public service info is null"

    .line 11
    invoke-static {p1, p2}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 12
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_PUBLIC_SERVICE_PROFILE_NOT_EXIST:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p3, p1}, Lio/rong/imlib/NativeClient$IResultCallback;->onError(I)V

    :cond_56
    :goto_56
    return-void

    .line 13
    :cond_57
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 14
    :cond_5f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "RongIMClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getPushSetting(I)Ljava/lang/String;
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->GetPushSetting(I)Ljava/lang/String;

    move-result-object p1

    return-object p1
.end method

.method public getRTCConfig(Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Lio/rong/imlib/NativeObject$RTCConfigListener;)V
    .registers 14

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_11

    .line 2
    new-instance v6, Lio/rong/imlib/NativeClient$68;

    invoke-direct {v6, p0, p6}, Lio/rong/imlib/NativeClient$68;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeObject$RTCConfigListener;)V

    move-object v1, p1

    move-object v2, p2

    move-wide v3, p3

    move-object v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->GetRTCConfig(Ljava/lang/String;Ljava/lang/String;JLjava/lang/String;Lio/rong/imlib/NativeObject$RTCConfigListener;)V

    return-void

    .line 3
    :cond_11
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getRTCProfile()Ljava/lang/String;
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_9

    .line 2
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->GetRTCProfile()Ljava/lang/String;

    move-result-object v0

    return-object v0

    .line 3
    :cond_9
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method getRTCToken(Ljava/lang/String;IILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 10
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "II",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    const/4 v0, 0x3

    .line 1
    new-array v1, v0, [Ljava/lang/Object;

    const/4 v2, 0x0

    aput-object p1, v1, v2

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    const/4 v3, 0x1

    aput-object v2, v1, v3

    invoke-static {p3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v2

    const/4 v3, 0x2

    aput-object v2, v1, v3

    const-string v2, "P-getRTCToken-T"

    const-string v4, "roomId|roomType|mediaType"

    invoke-static {v0, v3, v2, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$69;

    invoke-direct {v1, p0, p4}, Lio/rong/imlib/NativeClient$69;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->RTCGetToken(Ljava/lang/String;IILio/rong/imlib/NativeObject$TokenListener;)V

    return-void
.end method

.method public getRTCUserData(Ljava/lang/String;ILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/RTCUser;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$59;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$59;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->GetRTCUserData(Ljava/lang/String;ILio/rong/imlib/NativeObject$RTCUserInfoListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getRTCUserDatas(Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/RTCUser;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$72;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$72;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->RTCGetUserData(Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeObject$RTCUserInfoListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getRTCUsers(Ljava/lang/String;ILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/RTCUser;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$58;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$58;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->GetRTCUsers(Ljava/lang/String;ILio/rong/imlib/NativeObject$RTCUserInfoListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getRemoteHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;JILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "JI",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;>;)V"
        }
    .end annotation

    const-string v0, "NativeClient"

    const-string v1, "getRemoteHistoryMessages call"

    .line 1
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->i(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_45

    if-eqz p1, :cond_3d

    .line 3
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_3d

    if-eqz p6, :cond_3d

    .line 4
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v2

    .line 5
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object p2

    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {p2, v0}, Lio/rong/imlib/navigation/NavigationClient;->isGetRemoteHistoryEnabled(Landroid/content/Context;)Z

    move-result p2

    if-eqz p2, :cond_36

    .line 6
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v3

    new-instance v7, Lio/rong/imlib/NativeClient$5;

    invoke-direct {v7, p0, p6}, Lio/rong/imlib/NativeClient$5;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    move-wide v4, p3

    move v6, p5

    invoke-virtual/range {v1 .. v7}, Lio/rong/imlib/NativeObject;->LoadHistoryMessage(Ljava/lang/String;IJILio/rong/imlib/NativeObject$HistoryMessageListener;)V

    goto :goto_3c

    :cond_36
    const p1, 0x80ef

    .line 7
    invoke-interface {p6, p1}, Lio/rong/imlib/NativeClient$IResultCallback;->onError(I)V

    :goto_3c
    return-void

    .line 8
    :cond_3d
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes\uff0ccallback \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 9
    :cond_45
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getRemoteHistoryMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Lio/rong/imlib/model/RemoteHistoryMsgOption;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/RemoteHistoryMsgOption;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;>;)V"
        }
    .end annotation

    const-string v0, "NativeClient"

    const-string v1, "getRemoteHistoryMessages call"

    .line 10
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->i(Ljava/lang/String;Ljava/lang/String;)I

    .line 11
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_53

    if-eqz p1, :cond_4b

    .line 12
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_4b

    if-eqz p4, :cond_4b

    .line 13
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v2

    .line 14
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object p2

    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {p2, v0}, Lio/rong/imlib/navigation/NavigationClient;->isGetRemoteHistoryEnabled(Landroid/content/Context;)Z

    move-result p2

    if-eqz p2, :cond_44

    .line 15
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v3

    invoke-virtual {p3}, Lio/rong/imlib/model/RemoteHistoryMsgOption;->getDataTime()J

    move-result-wide v4

    .line 16
    invoke-virtual {p3}, Lio/rong/imlib/model/RemoteHistoryMsgOption;->getCount()I

    move-result v6

    invoke-virtual {p3}, Lio/rong/imlib/model/RemoteHistoryMsgOption;->getOrder()I

    move-result v7

    invoke-virtual {p3}, Lio/rong/imlib/model/RemoteHistoryMsgOption;->isIncludeLocalExistMessage()Z

    move-result v8

    new-instance v9, Lio/rong/imlib/NativeClient$6;

    invoke-direct {v9, p0, p4}, Lio/rong/imlib/NativeClient$6;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    .line 17
    invoke-virtual/range {v1 .. v9}, Lio/rong/imlib/NativeObject;->LoadHistoryMessageOption(Ljava/lang/String;IJIIZLio/rong/imlib/NativeObject$HistoryMessageListener;)V

    goto :goto_4a

    :cond_44
    const p1, 0x80ef

    .line 18
    invoke-interface {p4, p1}, Lio/rong/imlib/NativeClient$IResultCallback;->onError(I)V

    :goto_4a
    return-void

    .line 19
    :cond_4b
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes\uff0ccallback \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 20
    :cond_53
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getSendTimeByMessageId(I)J
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    int-to-long v1, p1

    invoke-virtual {v0, v1, v2}, Lio/rong/imlib/NativeObject;->GetSendTimeByMessageId(J)J

    move-result-wide v0

    return-wide v0
.end method

.method public getTextMessageDraft(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Ljava/lang/String;
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    if-eqz p1, :cond_17

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->GetTextMessageDraft(ILjava/lang/String;)Ljava/lang/String;

    move-result-object p1

    return-object p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public getTheFirstUnreadMessage(ILjava/lang/String;)Lio/rong/imlib/model/Message;
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->GetTheFirstUnreadMessage(ILjava/lang/String;)Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    if-nez p1, :cond_a

    const/4 p1, 0x0

    return-object p1

    .line 2
    :cond_a
    new-instance p2, Lio/rong/imlib/model/Message;

    invoke-direct {p2, p1}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p1}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p1

    invoke-direct {p0, v0, p1, p2}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p1

    .line 4
    invoke-virtual {p2, p1}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    return-object p2
.end method

.method public getToken()Ljava/lang/String;
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->getToken(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getTopConversationList([I)Ljava/util/List;
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "([I)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Conversation;",
            ">;"
        }
    .end annotation

    const/4 v0, 0x0

    .line 1
    :try_start_1
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v1, p1}, Lio/rong/imlib/NativeObject;->GetTopConversations([I)[Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p1
    :try_end_7
    .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_7} :catch_8

    goto :goto_11

    :catch_8
    move-exception p1

    const-string v1, "NativeClient"

    const-string v2, "getTopConversationList Exception"

    .line 2
    invoke-static {v1, v2, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I

    move-object p1, v0

    :goto_11
    if-nez p1, :cond_14

    return-object v0

    .line 3
    :cond_14
    new-instance v0, Ljava/util/ArrayList;

    invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V

    .line 4
    array-length v1, p1

    const/4 v2, 0x0

    :goto_1b
    if-ge v2, v1, :cond_29

    aget-object v3, p1, v2

    .line 5
    invoke-direct {p0, v3}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object v3

    invoke-interface {v0, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v2, v2, 0x1

    goto :goto_1b

    :cond_29
    return-object v0
.end method

.method public getTotalUnreadCount()I
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_9

    .line 2
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->GetTotalUnreadCount()I

    move-result v0

    return v0

    .line 3
    :cond_9
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public varargs getTotalUnreadCount([Lio/rong/imlib/model/Conversation;)I
    .registers 6

    .line 4
    array-length v0, p1

    new-array v0, v0, [Lio/rong/imlib/NativeObject$Conversation;

    const/4 v1, 0x0

    .line 5
    :goto_4
    array-length v2, p1

    if-ge v1, v2, :cond_27

    .line 6
    new-instance v2, Lio/rong/imlib/NativeObject$Conversation;

    invoke-direct {v2}, Lio/rong/imlib/NativeObject$Conversation;-><init>()V

    .line 7
    aget-object v3, p1, v1

    invoke-virtual {v3}, Lio/rong/imlib/model/Conversation;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v3

    invoke-virtual {v2, v3}, Lio/rong/imlib/NativeObject$Conversation;->setConversationType(I)V

    .line 8
    aget-object v3, p1, v1

    invoke-virtual {v3}, Lio/rong/imlib/model/Conversation;->getTargetId()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v2, v3}, Lio/rong/imlib/NativeObject$Conversation;->setTargetId(Ljava/lang/String;)V

    .line 9
    aput-object v2, v0, v1

    add-int/lit8 v1, v1, 0x1

    goto :goto_4

    .line 10
    :cond_27
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1, v0}, Lio/rong/imlib/NativeObject;->GetDNDUnreadCount([Lio/rong/imlib/NativeObject$Conversation;)I

    move-result p1

    return p1
.end method

.method public getUnreadCount(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)I
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    if-eqz p1, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p2, p1}, Lio/rong/imlib/NativeObject;->GetUnreadCount(Ljava/lang/String;I)I

    move-result p1

    return p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationType \u6216 TargetId \u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public varargs getUnreadCount(Z[Lio/rong/imlib/model/Conversation$ConversationType;)I
    .registers 8

    .line 14
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2d

    if-eqz p2, :cond_25

    .line 15
    array-length v0, p2

    if-eqz v0, :cond_25

    .line 16
    array-length v0, p2

    new-array v0, v0, [I

    .line 17
    array-length v1, p2

    const/4 v2, 0x0

    const/4 v3, 0x0

    :goto_f
    if-ge v2, v1, :cond_1e

    aget-object v4, p2, v2

    .line 18
    invoke-virtual {v4}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    aput v4, v0, v3

    add-int/lit8 v3, v3, 0x1

    add-int/lit8 v2, v2, 0x1

    goto :goto_f

    .line 19
    :cond_1e
    iget-object p2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p2, v0, p1}, Lio/rong/imlib/NativeObject;->GetCateUnreadCount([IZ)I

    move-result p1

    return p1

    .line 20
    :cond_25
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 21
    :cond_2d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_36

    :goto_35
    throw p1

    :goto_36
    goto :goto_35
.end method

.method public varargs getUnreadCount([Lio/rong/imlib/model/Conversation$ConversationType;)I
    .registers 8

    .line 6
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2d

    if-eqz p1, :cond_25

    .line 7
    array-length v0, p1

    if-eqz v0, :cond_25

    .line 8
    array-length v0, p1

    new-array v0, v0, [I

    .line 9
    array-length v1, p1

    const/4 v2, 0x0

    const/4 v3, 0x0

    :goto_f
    const/4 v4, 0x1

    if-ge v2, v1, :cond_1e

    aget-object v5, p1, v2

    .line 10
    invoke-virtual {v5}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v5

    aput v5, v0, v3

    add-int/2addr v3, v4

    add-int/lit8 v2, v2, 0x1

    goto :goto_f

    .line 11
    :cond_1e
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1, v0, v4}, Lio/rong/imlib/NativeObject;->GetCateUnreadCount([IZ)I

    move-result p1

    return p1

    .line 12
    :cond_25
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "ConversationTypes \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 13
    :cond_2d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_36

    :goto_35
    throw p1

    :goto_36
    goto :goto_35
.end method

.method public getUnreadMentionedMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Ljava/util/List;
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_4b

    if-eqz p1, :cond_43

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_43

    .line 3
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object p2

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p2, p1}, Lio/rong/imlib/NativeObject;->GetMentionMessages(Ljava/lang/String;I)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 5
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-nez p1, :cond_22

    return-object p2

    .line 6
    :cond_22
    array-length v0, p1

    const/4 v1, 0x0

    :goto_24
    if-ge v1, v0, :cond_42

    aget-object v2, p1, v1

    .line 7
    new-instance v3, Lio/rong/imlib/model/Message;

    invoke-direct {v3, v2}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 8
    invoke-virtual {v2}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v2}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object v2

    invoke-direct {p0, v4, v2, v3}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v3, v2}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 9
    invoke-interface {p2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v1, v1, 0x1

    goto :goto_24

    :cond_42
    return-object p2

    .line 10
    :cond_43
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationTypes \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 11
    :cond_4b
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_54

    :goto_53
    throw p1

    :goto_54
    goto :goto_53
.end method

.method getUploadConfigInfo()Ljava/lang/String;
    .registers 3

    .line 1
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0, v1}, Lio/rong/imlib/navigation/NavigationClient;->getUploadLogConfigInfo(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getUserStatus(Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallbackEx<",
            "Ljava/lang/String;",
            "Ljava/lang/Integer;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$8;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$8;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->GetUserStatus(Ljava/lang/String;Lio/rong/imlib/NativeObject$CreateDiscussionCallback;)V

    return-void
.end method

.method getVendorToken(Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$55;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$55;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    const-string p1, ""

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->GetVendorToken(Ljava/lang/String;Lio/rong/imlib/NativeObject$TokenListener;)V

    return-void
.end method

.method public getVideoLimitTime()I
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->getVideoLimitTime(Landroid/content/Context;)I

    move-result v0

    return v0
.end method

.method public getVoIPCallInfo()Ljava/lang/String;
    .registers 3

    .line 1
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0, v1}, Lio/rong/imlib/navigation/NavigationClient;->getVoIPCallInfo(Landroid/content/Context;)Ljava/lang/String;

    move-result-object v0

    return-object v0
.end method

.method public getVoIPKey(ILjava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(I",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$54;

    invoke-direct {v1, p0, p4}, Lio/rong/imlib/NativeClient$54;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->GetVoIPKey(ILjava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$TokenListener;)V

    return-void
.end method

.method public init(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;)V
    .registers 12

    .line 1
    invoke-virtual {p1}, Landroid/content/Context;->getApplicationContext()Landroid/content/Context;

    move-result-object v0

    sput-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    .line 2
    iput-object p2, p0, Lio/rong/imlib/NativeClient;->appKey:Ljava/lang/String;

    .line 3
    iput-object p3, p0, Lio/rong/imlib/NativeClient;->deviceId:Ljava/lang/String;

    .line 4
    new-instance v0, Lio/rong/imlib/NativeObject;

    invoke-direct {v0, p1}, Lio/rong/imlib/NativeObject;-><init>(Landroid/content/Context;)V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    .line 5
    new-instance v0, Ljava/util/HashMap;

    invoke-direct {v0}, Ljava/util/HashMap;-><init>()V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->messageHandlerMap:Ljava/util/HashMap;

    .line 6
    new-instance v0, Ljava/util/HashMap;

    invoke-direct {v0}, Ljava/util/HashMap;-><init>()V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->messageContentConstructorMap:Ljava/util/HashMap;

    .line 7
    new-instance v0, Ljava/util/TreeSet;

    invoke-direct {v0}, Ljava/util/TreeSet;-><init>()V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->mCmdObjectNameSet:Ljava/util/Set;

    .line 8
    new-instance v0, Ljava/util/concurrent/ConcurrentHashMap;

    invoke-direct {v0}, Ljava/util/concurrent/ConcurrentHashMap;-><init>()V

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    .line 9
    new-instance v0, Landroid/os/HandlerThread;

    const-string v1, "IPC_WORK"

    invoke-direct {v0, v1}, Landroid/os/HandlerThread;-><init>(Ljava/lang/String;)V

    .line 10
    invoke-virtual {v0}, Landroid/os/HandlerThread;->start()V

    .line 11
    new-instance v1, Landroid/os/Handler;

    invoke-virtual {v0}, Landroid/os/HandlerThread;->getLooper()Landroid/os/Looper;

    move-result-object v0

    invoke-direct {v1, v0}, Landroid/os/Handler;-><init>(Landroid/os/Looper;)V

    iput-object v1, p0, Lio/rong/imlib/NativeClient;->mWorkHandler:Landroid/os/Handler;

    .line 12
    invoke-direct {p0}, Lio/rong/imlib/NativeClient;->initThreadPool()V

    .line 13
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0}, Landroid/content/Context;->getFilesDir()Ljava/io/File;

    move-result-object v0

    const/4 v1, 0x0

    if-eqz v0, :cond_5c

    .line 14
    invoke-virtual {v0}, Ljava/io/File;->exists()Z

    move-result v2

    if-nez v2, :cond_55

    goto :goto_5c

    .line 15
    :cond_55
    invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;

    move-result-object v0

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->dbPath:Ljava/lang/String;

    goto :goto_7a

    :cond_5c
    :goto_5c
    if-nez v0, :cond_67

    .line 16
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    const-string v2, "rcdb"

    invoke-virtual {v0, v2, v1}, Landroid/content/Context;->getDir(Ljava/lang/String;I)Ljava/io/File;

    move-result-object v0

    goto :goto_74

    .line 17
    :cond_67
    invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z

    move-result v2

    if-nez v2, :cond_74

    const-string v2, "NativeClient"

    const-string v3, "Created folders UnSuccessfully"

    .line 18
    invoke-static {v2, v3}, Lio/rong/common/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 19
    :cond_74
    :goto_74
    invoke-virtual {v0}, Ljava/io/File;->getPath()Ljava/lang/String;

    move-result-object v0

    iput-object v0, p0, Lio/rong/imlib/NativeClient;->dbPath:Ljava/lang/String;

    .line 20
    :goto_7a
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object v4

    iget-object v6, p0, Lio/rong/imlib/NativeClient;->dbPath:Ljava/lang/String;

    const-string v7, "4.1.0"

    move-object v3, p2

    move-object v5, p3

    invoke-virtual/range {v2 .. v7}, Lio/rong/imlib/NativeObject;->InitClient(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

    move-result v0

    .line 21
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v2

    sget-object v3, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    iget-object v4, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v2, v3, v4, p2}, Lio/rong/imlib/ConnectionService;->initService(Landroid/content/Context;Lio/rong/imlib/NativeObject;Ljava/lang/String;)V

    .line 22
    invoke-static {}, Lio/rong/imlib/HeartBeatManager;->getInstance()Lio/rong/imlib/HeartBeatManager;

    move-result-object v2

    iget-object v3, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v2, p1, v3}, Lio/rong/imlib/HeartBeatManager;->init(Landroid/content/Context;Lio/rong/imlib/NativeObject;)V

    .line 23
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v3, Lio/rong/imlib/NativeClient$1;

    invoke-direct {v3, p0}, Lio/rong/imlib/NativeClient$1;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-virtual {v2, v3}, Lio/rong/imlib/NativeObject;->SetRealTimeLogListener(Lio/rong/common/rlog/IRealTimeLogListener;)V

    .line 24
    invoke-virtual {p1}, Landroid/content/Context;->getApplicationInfo()Landroid/content/pm/ApplicationInfo;

    move-result-object p1

    const/4 v2, 0x1

    const/4 v3, 0x2

    if-eqz p1, :cond_b7

    .line 25
    iget p1, p1, Landroid/content/pm/ApplicationInfo;->flags:I

    and-int/2addr p1, v3

    if-eqz p1, :cond_b7

    const/4 p1, 0x1

    goto :goto_b8

    :cond_b7
    const/4 p1, 0x0

    :goto_b8
    const/4 v4, 0x3

    if-eqz p1, :cond_bd

    const/4 p1, 0x2

    goto :goto_be

    :cond_bd
    const/4 p1, 0x3

    .line 26
    :goto_be
    new-instance v5, Lio/rong/imlib/NativeClient$2;

    invoke-direct {v5, p0}, Lio/rong/imlib/NativeClient$2;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-direct {p0, p1, v5}, Lio/rong/imlib/NativeClient;->setLogStatus(ILio/rong/imlib/NativeObject$NativeLogInfoListener;)V

    .line 27
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object p1

    new-instance v5, Lio/rong/imlib/NativeClient$3;

    invoke-direct {v5, p0}, Lio/rong/imlib/NativeClient$3;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-virtual {p1, v5}, Lio/rong/imlib/navigation/NavigationClient;->setNaviUpdateListener(Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;)V

    .line 28
    sget-object p1, Lio/rong/common/fwlog/FwLog$LogTag;->L_INIT_O:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {p1}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object p1

    const/4 v5, 0x4

    new-array v5, v5, [Ljava/lang/Object;

    aput-object p2, v5, v1

    aput-object p3, v5, v2

    iget-object p2, p0, Lio/rong/imlib/NativeClient;->dbPath:Ljava/lang/String;

    aput-object p2, v5, v3

    invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object p2

    aput-object p2, v5, v4

    const-string p2, "appkey|deviceId|dbPath|initResult"

    invoke-static {v4, v2, p1, p2, v5}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    return-void
.end method

.method public initAppendixModule()V
    .registers 6

    .line 1
    invoke-static {}, Lio/rong/rtlog/upload/RtLogUploadManager;->getInstance()Lio/rong/rtlog/upload/RtLogUploadManager;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->deviceId:Ljava/lang/String;

    iget-object v3, p0, Lio/rong/imlib/NativeClient;->appKey:Ljava/lang/String;

    const-string v4, "4.1.0"

    invoke-virtual {v0, v1, v4, v2, v3}, Lio/rong/rtlog/upload/RtLogUploadManager;->init(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

    .line 2
    invoke-direct {p0}, Lio/rong/imlib/NativeClient;->setChatRoomStatusNotificationListener()V

    return-void
.end method

.method public initHttpDns()V
    .registers 4

    .line 1
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/navigation/NavigationClient;->getNaviString()Ljava/lang/String;

    .line 2
    invoke-static {}, Lio/rong/imlib/HttpDnsManager;->getInstance()Lio/rong/imlib/HttpDnsManager;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, v1, v2}, Lio/rong/imlib/HttpDnsManager;->initHttpDns(Landroid/content/Context;Lio/rong/imlib/NativeObject;)V

    return-void
.end method

.method initIPCEnviroment(Ljava/lang/String;I)V
    .registers 4

    .line 1
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/ConnectionService;->initIPCEnviroment(Ljava/lang/String;I)V

    return-void
.end method

.method public insertMessage(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/MessageContent;J)Lio/rong/imlib/model/Message;
    .registers 33

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move-object/from16 v2, p4

    move-wide/from16 v3, p5

    .line 1
    iget-object v5, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v5, :cond_164

    if-eqz v1, :cond_15c

    .line 2
    invoke-static/range {p2 .. p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v5

    if-nez v5, :cond_15c

    if-eqz v2, :cond_15c

    .line 3
    invoke-virtual/range {p4 .. p4}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v5

    const-class v6, Lio/rong/imlib/MessageTag;

    invoke-virtual {v5, v6}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v5

    check-cast v5, Lio/rong/imlib/MessageTag;

    if-eqz v5, :cond_154

    .line 4
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v6

    const/16 v7, 0x10

    const-string v8, "NativeClient"

    if-ne v6, v7, :cond_35

    const-string v1, "insertMessage MessageTag can not be STATUS."

    .line 5
    invoke-static {v8, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    const/4 v1, 0x0

    return-object v1

    .line 6
    :cond_35
    new-instance v6, Lio/rong/imlib/model/Message;

    invoke-direct {v6}, Lio/rong/imlib/model/Message;-><init>()V

    .line 7
    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setConversationType(Lio/rong/imlib/model/Conversation$ConversationType;)V

    move-object/from16 v1, p2

    .line 8
    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setTargetId(Ljava/lang/String;)V

    .line 9
    invoke-static/range {p3 .. p3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_4c

    .line 10
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    move-object v13, v1

    goto :goto_4e

    :cond_4c
    move-object/from16 v13, p3

    .line 11
    :goto_4e
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-eqz v1, :cond_61

    .line 12
    sget-object v1, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 13
    sget-object v1, Lio/rong/imlib/model/Message$SentStatus;->SENT:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    goto :goto_81

    .line 14
    :cond_61
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v1, v13}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    if-eqz v1, :cond_6c

    sget-object v1, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    goto :goto_6e

    :cond_6c
    sget-object v1, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    :goto_6e
    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 15
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v1, v13}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v1

    if-eqz v1, :cond_7c

    sget-object v1, Lio/rong/imlib/model/Message$SentStatus;->SENT:Lio/rong/imlib/model/Message$SentStatus;

    goto :goto_7e

    :cond_7c
    sget-object v1, Lio/rong/imlib/model/Message$SentStatus;->RECEIVED:Lio/rong/imlib/model/Message$SentStatus;

    :goto_7e
    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 16
    :goto_81
    invoke-virtual {v6, v13}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 17
    invoke-virtual {v6, v3, v4}, Lio/rong/imlib/model/Message;->setReceivedTime(J)V

    .line 18
    invoke-virtual {v6, v3, v4}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 19
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v6, v1}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 20
    invoke-virtual {v6, v2}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    const/4 v1, 0x1

    .line 21
    new-array v14, v1, [B

    .line 22
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    if-gtz v2, :cond_104

    .line 23
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v2

    const/4 v3, 0x0

    if-eqz v2, :cond_b2

    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v2

    sget-object v4, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v2, v4}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_b2

    const/4 v15, 0x1

    goto :goto_b3

    :cond_b2
    const/4 v15, 0x0

    .line 24
    :goto_b3
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v1

    .line 25
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v24

    .line 26
    invoke-direct {v0, v6}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v9

    .line 27
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v2

    invoke-static {v2, v9, v10}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v25

    if-eqz v1, :cond_d0

    .line 28
    invoke-virtual {v1}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v1

    move/from16 v23, v1

    goto :goto_d2

    :cond_d0
    const/16 v23, 0x0

    .line 29
    :goto_d2
    iget-object v9, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v10

    .line 30
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v1

    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v11

    .line 31
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v12

    const/16 v16, 0x0

    sget-object v1, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    .line 32
    invoke-virtual {v1}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v17

    .line 33
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v18

    .line 34
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    invoke-direct {v0, v1}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v20

    const/16 v21, 0x1

    const-string v22, ""

    .line 35
    invoke-virtual/range {v9 .. v25}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v1

    long-to-int v2, v1

    .line 36
    invoke-virtual {v6, v2}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 37
    :cond_104
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v1

    invoke-direct {v0, v1}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v1

    if-eqz v1, :cond_14e

    .line 38
    invoke-virtual {v1, v6}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 39
    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    invoke-virtual {v1}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v1

    .line 40
    iget-object v2, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v3

    int-to-long v3, v3

    const-string v5, ""

    invoke-virtual {v2, v3, v4, v1, v5}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    .line 41
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    int-to-long v2, v2

    sget-object v4, Lio/rong/imlib/model/Message$SentStatus;->SENT:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v4}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v4

    invoke-virtual {v1, v2, v3, v4}, Lio/rong/imlib/NativeObject;->SetSendStatus(JI)Z

    .line 42
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "insertMessage Inserted, id = "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v6}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v8, v1}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_153

    :cond_14e
    const-string v1, "insertMessage \u8be5\u6d88\u606f\u672a\u6ce8\u518c\uff0c\u8bf7\u8c03\u7528registerMessageType\u65b9\u6cd5\u6ce8\u518c\u3002"

    .line 43
    invoke-static {v8, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    :goto_153
    return-object v6

    .line 44
    :cond_154
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "\u81ea\u5b9a\u4e49\u6d88\u606f\u6ca1\u6709\u52a0\u6ce8\u89e3\u4fe1\u606f\u3002"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 45
    :cond_15c
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 46
    :cond_164
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public insertSettingMessage(Lio/rong/imlib/model/Message;)Lio/rong/imlib/model/Message;
    .registers 25

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    .line 1
    iget-object v2, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v2, :cond_176

    .line 2
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v2

    if-eqz v2, :cond_16e

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-nez v2, :cond_16e

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    if-eqz v2, :cond_16e

    .line 3
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v2}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v2

    const-class v3, Lio/rong/imlib/MessageTag;

    invoke-virtual {v2, v3}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v2

    check-cast v2, Lio/rong/imlib/MessageTag;

    if-eqz v2, :cond_166

    .line 4
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v3

    const/16 v4, 0x10

    const-string v5, "NativeClient"

    if-ne v3, v4, :cond_41

    const-string v1, "insertMessage MessageTag can not be STATUS."

    .line 5
    invoke-static {v5, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    const/4 v1, 0x0

    return-object v1

    .line 6
    :cond_41
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v3

    .line 7
    invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v4

    if-eqz v4, :cond_4d

    .line 8
    iget-object v3, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    :cond_4d
    move-object v10, v3

    .line 9
    iget-object v3, v0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v3

    if-eqz v3, :cond_61

    .line 10
    sget-object v3, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 11
    sget-object v3, Lio/rong/imlib/model/Message$SentStatus;->SENT:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    goto :goto_72

    .line 12
    :cond_61
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v3

    sget-object v4, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v3, v4}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v3

    if-eqz v3, :cond_72

    .line 13
    sget-object v3, Lio/rong/imlib/model/Message$SentStatus;->RECEIVED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 14
    :cond_72
    :goto_72
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v3

    invoke-virtual {v1, v3, v4}, Lio/rong/imlib/model/Message;->setReceivedTime(J)V

    .line 15
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    const/4 v3, 0x1

    .line 16
    new-array v11, v3, [B

    .line 17
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v4

    if-gtz v4, :cond_114

    .line 18
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v4

    const/4 v6, 0x0

    if-eqz v4, :cond_9e

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v4

    sget-object v7, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v4, v7}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v4

    if-eqz v4, :cond_9e

    const/4 v12, 0x1

    goto :goto_9f

    :cond_9e
    const/4 v12, 0x0

    .line 19
    :goto_9f
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageDirection()Lio/rong/imlib/model/Message$MessageDirection;

    move-result-object v4

    sget-object v7, Lio/rong/imlib/model/Message$MessageDirection;->RECEIVE:Lio/rong/imlib/model/Message$MessageDirection;

    if-ne v4, v7, :cond_bb

    .line 20
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getReceivedStatus()Lio/rong/imlib/model/Message$ReceivedStatus;

    move-result-object v4

    invoke-virtual {v4}, Lio/rong/imlib/model/Message$ReceivedStatus;->getFlag()I

    move-result v4

    if-nez v4, :cond_bb

    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v4

    const/4 v7, 0x3

    if-ne v4, v7, :cond_bb

    const/16 v18, 0x0

    goto :goto_bd

    :cond_bb
    const/16 v18, 0x1

    .line 21
    :goto_bd
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v3

    .line 22
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v21

    .line 23
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v7

    .line 24
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v4

    invoke-static {v4, v7, v8}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v22

    if-eqz v3, :cond_da

    .line 25
    invoke-virtual {v3}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v3

    move/from16 v20, v3

    goto :goto_dc

    :cond_da
    const/16 v20, 0x0

    .line 26
    :goto_dc
    iget-object v6, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v7

    .line 27
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v8

    .line 28
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v9

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getReceivedStatus()Lio/rong/imlib/model/Message$ReceivedStatus;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/Message$ReceivedStatus;->getFlag()I

    move-result v13

    .line 29
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSentStatus()Lio/rong/imlib/model/Message$SentStatus;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v14

    .line 30
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSentTime()J

    move-result-wide v15

    .line 31
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    invoke-direct {v0, v3}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v17

    const-string v19, ""

    .line 32
    invoke-virtual/range {v6 .. v22}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v3

    long-to-int v4, v3

    .line 33
    invoke-virtual {v1, v4}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 34
    :cond_114
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v0, v2}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v2

    if-eqz v2, :cond_160

    .line 35
    invoke-virtual {v2, v1}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 36
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v2

    .line 37
    iget-object v3, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v4

    int-to-long v6, v4

    const-string v4, ""

    invoke-virtual {v3, v6, v7, v2, v4}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    .line 38
    iget-object v2, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v3

    int-to-long v3, v3

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSentStatus()Lio/rong/imlib/model/Message$SentStatus;

    move-result-object v6

    invoke-virtual {v6}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v6

    invoke-virtual {v2, v3, v4, v6}, Lio/rong/imlib/NativeObject;->SetSendStatus(JI)Z

    .line 39
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    const-string v3, "insertMessage Inserted, id = "

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v3

    invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v2

    invoke-static {v5, v2}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    goto :goto_165

    :cond_160
    const-string v2, "insertMessage \u8be5\u6d88\u606f\u672a\u6ce8\u518c\uff0c\u8bf7\u8c03\u7528registerMessageType\u65b9\u6cd5\u6ce8\u518c\u3002"

    .line 40
    invoke-static {v5, v2}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    :goto_165
    return-object v1

    .line 41
    :cond_166
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "\u81ea\u5b9a\u4e49\u6d88\u606f\u6ca1\u6709\u52a0\u6ce8\u89e3\u4fe1\u606f\u3002"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 42
    :cond_16e
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 43
    :cond_176
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public isDnsEnabled()Z
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->isDnsEnabled(Landroid/content/Context;)Z

    move-result v0

    return v0
.end method

.method public isKvStorageEnabled()Z
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->isKvStorageEnabled(Landroid/content/Context;)Z

    move-result v0

    return v0
.end method

.method public isPhrasesEnabled()Z
    .registers 2

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->isPhraseEnabled(Landroid/content/Context;)Z

    move-result v0

    return v0
.end method

.method public joinChatRoom(Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 12

    .line 1
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "joinChatRoom id: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v1, ", msgCount : "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    if-nez v0, :cond_30

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    const/4 v1, 0x0

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    invoke-virtual {v0, p1, v1}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 4
    :cond_30
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget-object v0, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    const/4 v6, 0x0

    new-instance v7, Lio/rong/imlib/NativeClient$41;

    invoke-direct {v7, p0, p3}, Lio/rong/imlib/NativeClient$41;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p1

    move v5, p2

    invoke-virtual/range {v2 .. v7}, Lio/rong/imlib/NativeObject;->JoinChatRoom(Ljava/lang/String;IIZLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public joinExistChatRoom(Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;Z)V
    .registers 13

    .line 1
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "joinExistChatRoom id: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v1, ", msgCount : "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    if-nez v0, :cond_30

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    const/4 v1, 0x0

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    invoke-virtual {v0, p1, v1}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 4
    :cond_30
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget-object v0, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    new-instance v6, Lio/rong/imlib/NativeClient$43;

    invoke-direct {v6, p0, p3}, Lio/rong/imlib/NativeClient$43;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p1

    move v5, p2

    move v7, p4

    invoke-virtual/range {v2 .. v7}, Lio/rong/imlib/NativeObject;->JoinExistingChatroom(Ljava/lang/String;IILio/rong/imlib/NativeObject$PublishAckListener;Z)V

    return-void
.end method

.method public joinGroup(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_23

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1b

    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1b

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$34;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$34;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->JoinGroup(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_1b
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "groupId \u6216 groupName\u4e0d\u80fd\u4e3a\u7a7a\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_23
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public joinRTCRoomAndGetData(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V
    .registers 17
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "II",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallbackEx<",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/RTCUser;",
            ">;[",
            "Ljava/lang/Object;",
            ">;)V"
        }
    .end annotation

    move-object v0, p0

    move-object v2, p1

    const/4 v1, 0x4

    .line 1
    new-array v1, v1, [Ljava/lang/Object;

    const/4 v3, 0x0

    aput-object v2, v1, v3

    invoke-virtual {p0}, Lio/rong/imlib/NativeClient;->getCurrentUserId()Ljava/lang/String;

    move-result-object v4

    const/4 v5, 0x1

    aput-object v4, v1, v5

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const/4 v6, 0x2

    aput-object v4, v1, v6

    invoke-static {p3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const/4 v7, 0x3

    aput-object v4, v1, v7

    const-string v4, "P-joinRoom-T"

    const-string v8, "roomId|uid|roomType|liveType"

    invoke-static {v7, v6, v4, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 2
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v4, -0x1

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const-string v8, "roomId|code|desc"

    const-string v9, "P-joinRoom-E"

    if-eqz v1, :cond_5e

    .line 3
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_49

    .line 4
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v7, Lio/rong/imlib/NativeClient$67;

    move-object/from16 v3, p6

    invoke-direct {v7, p0, p1, v3}, Lio/rong/imlib/NativeClient$67;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V

    move-object v2, p1

    move v3, p2

    move v4, p3

    move-object v5, p4

    move-object v6, p5

    invoke-virtual/range {v1 .. v7}, Lio/rong/imlib/NativeObject;->JoinRTCRoomAndGetData(Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$RTCUserInfoListener;)V

    return-void

    .line 5
    :cond_49
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v4, v1, v5

    const-string v2, "RoomId is Null"

    aput-object v2, v1, v6

    invoke-static {v5, v6, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 7
    :cond_5e
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v4, v1, v5

    const-string v2, "NativeClient is Null"

    aput-object v2, v1, v6

    invoke-static {v5, v6, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public obtainMediaFileSavedUri()Landroid/net/Uri;
    .registers 5

    const/4 v0, 0x2

    .line 1
    new-array v1, v0, [Ljava/lang/String;

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->appKey:Ljava/lang/String;

    const/4 v3, 0x0

    aput-object v2, v1, v3

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    const/4 v3, 0x1

    aput-object v2, v1, v3

    invoke-static {v0, v1}, Lio/rong/imlib/common/DeviceUtils;->ShortMD5(I[Ljava/lang/String;)Ljava/lang/String;

    move-result-object v0

    .line 2
    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v1}, Landroid/content/Context;->getFilesDir()Ljava/io/File;

    move-result-object v1

    invoke-virtual {v1}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Lio/rong/imlib/common/SavePathUtils;->getSavePath(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v1

    .line 3
    new-instance v2, Ljava/lang/StringBuilder;

    invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V

    invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    sget-object v1, Ljava/io/File;->separator:Ljava/lang/String;

    invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;

    move-result-object v0

    return-object v0
.end method

.method queryChatRoomInfo(Ljava/lang/String;IILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 7
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "II",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Lio/rong/imlib/model/ChatRoomInfo;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$40;

    invoke-direct {v1, p0, p1, p4}, Lio/rong/imlib/NativeClient$40;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->QueryChatroomInfo(Ljava/lang/String;IILio/rong/imlib/NativeObject$ChatroomInfoListener;)Z

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "\u804a\u5929\u5ba4 Id \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public quitChatRoom(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "quitChatRoom id: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    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 v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentHashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v1

    new-instance v2, Lio/rong/imlib/NativeClient$44;

    invoke-direct {v2, p0, p2}, Lio/rong/imlib/NativeClient$44;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1, v2}, Lio/rong/imlib/NativeObject;->QuitChatRoom(Ljava/lang/String;ILio/rong/imlib/NativeObject$PublishAckListener;)V

    .line 4
    sget-object p2, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {p0, p2, p1}, Lio/rong/imlib/NativeClient;->clearMessages(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z

    return-void
.end method

.method public quitDiscussion(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$23;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$23;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->QuitDiscussion(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "discussionId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public quitGroup(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$35;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$35;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->QuitGroup(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public reJoinChatRoom(Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 12

    .line 1
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "reJoinChatRoom id: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    const-string v1, ", msgCount : "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    invoke-virtual {v0, p1}, Ljava/util/concurrent/ConcurrentHashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v0

    if-nez v0, :cond_30

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->chatRoomStatusMap:Ljava/util/concurrent/ConcurrentHashMap;

    const/4 v1, 0x0

    invoke-static {v1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;

    move-result-object v1

    invoke-virtual {v0, p1, v1}, Ljava/util/concurrent/ConcurrentHashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 4
    :cond_30
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget-object v0, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v4

    const/4 v6, 0x1

    new-instance v7, Lio/rong/imlib/NativeClient$42;

    invoke-direct {v7, p0, p3}, Lio/rong/imlib/NativeClient$42;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p1

    move v5, p2

    invoke-virtual/range {v2 .. v7}, Lio/rong/imlib/NativeObject;->JoinChatRoom(Ljava/lang/String;IIZLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public recallMessage(Ljava/lang/String;[BLjava/lang/String;ILjava/lang/String;IZLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 20

    move-object v0, p0

    .line 1
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v1, :cond_1b

    move v2, p4

    int-to-long v5, v2

    .line 2
    new-instance v9, Lio/rong/imlib/NativeClient$46;

    move-object/from16 v2, p8

    invoke-direct {v9, p0, v2}, Lio/rong/imlib/NativeClient$46;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v2, p1

    move-object v3, p2

    move-object v4, p3

    move-object/from16 v7, p5

    move/from16 v8, p6

    move/from16 v10, p7

    invoke-virtual/range {v1 .. v10}, Lio/rong/imlib/NativeObject;->RecallMessage(Ljava/lang/String;[BLjava/lang/String;JLjava/lang/String;ILio/rong/imlib/NativeObject$PublishAckListener;Z)V

    return-void

    .line 3
    :cond_1b
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method registerCmdMsgType(Ljava/lang/String;)V
    .registers 5

    .line 1
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_e

    const-string p1, "NativeClient"

    const-string v0, "registerCmdMsgType parameter error"

    .line 2
    invoke-static {p1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 3
    :cond_e
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->mCmdObjectNameSet:Ljava/util/Set;

    invoke-interface {v0, p1}, Ljava/util/Set;->add(Ljava/lang/Object;)Z

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v1, 0x1

    new-array v1, v1, [Ljava/lang/String;

    const/4 v2, 0x0

    aput-object p1, v1, v2

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->RegisterCmdMsgType([Ljava/lang/String;)I

    return-void
.end method

.method registerCmdMsgType(Ljava/util/List;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    if-eqz p1, :cond_1d

    .line 5
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-nez v0, :cond_9

    goto :goto_1d

    .line 6
    :cond_9
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->mCmdObjectNameSet:Ljava/util/Set;

    invoke-interface {v0, p1}, Ljava/util/Set;->addAll(Ljava/util/Collection;)Z

    .line 7
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v1, 0x0

    new-array v1, v1, [Ljava/lang/String;

    invoke-interface {p1, v1}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [Ljava/lang/String;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->RegisterCmdMsgType([Ljava/lang/String;)I

    return-void

    :cond_1d
    :goto_1d
    const-string p1, "NativeClient"

    const-string v0, "registerCmdMsgType list is empty"

    .line 8
    invoke-static {p1, v0}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    return-void
.end method

.method registerDeleteMessageType(Ljava/util/List;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    if-eqz p1, :cond_30

    .line 1
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-lez v0, :cond_30

    .line 2
    new-instance v0, Ljava/lang/StringBuilder;

    invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V

    const-string v1, "registerDeleteMessageType size: "

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v1

    invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    const-string v1, "NativeClient"

    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v1, 0x0

    new-array v1, v1, [Ljava/lang/String;

    invoke-interface {p1, v1}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [Ljava/lang/String;

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->RegisterDeleteMessageType([Ljava/lang/String;)I

    :cond_30
    return-void
.end method

.method public registerMessageType(Ljava/lang/Class;)V
    .registers 10
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/Class<",
            "+",
            "Lio/rong/imlib/model/MessageContent;",
            ">;)V"
        }
    .end annotation

    const/4 v0, 0x0

    const/4 v1, 0x1

    .line 1
    :try_start_2
    const-class v2, Lio/rong/imlib/MessageTag;

    invoke-virtual {p1, v2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v2

    check-cast v2, Lio/rong/imlib/MessageTag;

    if-eqz v2, :cond_46

    .line 2
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v3

    .line 3
    new-array v4, v1, [Ljava/lang/Class;

    const-class v5, [B

    aput-object v5, v4, v0

    invoke-virtual {p1, v4}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;

    move-result-object v4

    .line 4
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->messageHandler()Ljava/lang/Class;

    move-result-object v5

    new-array v6, v1, [Ljava/lang/Class;

    const-class v7, Landroid/content/Context;

    aput-object v7, v6, v0

    invoke-virtual {v5, v6}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;

    move-result-object v5

    .line 5
    new-array v6, v1, [Ljava/lang/Object;

    sget-object v7, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    aput-object v7, v6, v0

    invoke-virtual {v5, v6}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v5

    check-cast v5, Lio/rong/message/MessageHandler;

    .line 6
    iget-object v6, p0, Lio/rong/imlib/NativeClient;->messageHandlerMap:Ljava/util/HashMap;

    invoke-virtual {v6, v3, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 7
    iget-object v5, p0, Lio/rong/imlib/NativeClient;->messageContentConstructorMap:Ljava/util/HashMap;

    invoke-virtual {v5, v3, v4}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 8
    invoke-interface {v2}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v2

    invoke-direct {p0, v3, v2}, Lio/rong/imlib/NativeClient;->registerMessageType(Ljava/lang/String;I)V

    goto :goto_92

    .line 9
    :cond_46
    sget-object v2, Lio/rong/common/fwlog/FwLog$LogTag;->L_REGTYPE_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v2}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v2

    new-instance v3, Ljava/lang/StringBuilder;

    invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V

    const-string v4, "msg_type"

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object v4

    invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v3

    new-array v4, v0, [Ljava/lang/Object;

    invoke-static {v1, v1, v2, v3, v4}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    :try_end_66
    .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_66} :catch_67

    goto :goto_92

    :catch_67
    move-exception v2

    .line 10
    sget-object v3, Lio/rong/common/fwlog/FwLog$LogTag;->L_REGTYPE_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v3}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v3

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "msg_type|stacks"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {p1}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object p1

    new-array v4, v1, [Ljava/lang/Object;

    invoke-virtual {v2}, Ljava/lang/Exception;->getStackTrace()[Ljava/lang/StackTraceElement;

    move-result-object v2

    invoke-static {v2}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v2

    aput-object v2, v4, v0

    invoke-static {v1, v1, v3, p1, v4}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    :goto_92
    return-void
.end method

.method public registerMessageType(Ljava/util/List;)V
    .registers 11
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Ljava/lang/Class<",
            "+",
            "Lio/rong/imlib/model/MessageContent;",
            ">;>;)V"
        }
    .end annotation

    if-eqz p1, :cond_ae

    .line 11
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-nez v0, :cond_a

    goto/16 :goto_ae

    .line 12
    :cond_a
    invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object p1

    :goto_e
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z

    move-result v0

    if-eqz v0, :cond_ae

    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v0

    check-cast v0, Ljava/lang/Class;

    const/4 v1, 0x0

    const/4 v2, 0x1

    .line 13
    :try_start_1c
    const-class v3, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v3}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v3

    check-cast v3, Lio/rong/imlib/MessageTag;

    if-eqz v3, :cond_60

    .line 14
    invoke-interface {v3}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v4

    .line 15
    new-array v5, v2, [Ljava/lang/Class;

    const-class v6, [B

    aput-object v6, v5, v1

    invoke-virtual {v0, v5}, Ljava/lang/Class;->getDeclaredConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;

    move-result-object v5

    .line 16
    invoke-interface {v3}, Lio/rong/imlib/MessageTag;->messageHandler()Ljava/lang/Class;

    move-result-object v6

    new-array v7, v2, [Ljava/lang/Class;

    const-class v8, Landroid/content/Context;

    aput-object v8, v7, v1

    invoke-virtual {v6, v7}, Ljava/lang/Class;->getConstructor([Ljava/lang/Class;)Ljava/lang/reflect/Constructor;

    move-result-object v6

    .line 17
    new-array v7, v2, [Ljava/lang/Object;

    sget-object v8, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    aput-object v8, v7, v1

    invoke-virtual {v6, v7}, Ljava/lang/reflect/Constructor;->newInstance([Ljava/lang/Object;)Ljava/lang/Object;

    move-result-object v6

    check-cast v6, Lio/rong/message/MessageHandler;

    .line 18
    iget-object v7, p0, Lio/rong/imlib/NativeClient;->messageHandlerMap:Ljava/util/HashMap;

    invoke-virtual {v7, v4, v6}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 19
    iget-object v6, p0, Lio/rong/imlib/NativeClient;->messageContentConstructorMap:Ljava/util/HashMap;

    invoke-virtual {v6, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;

    .line 20
    invoke-interface {v3}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v3

    invoke-direct {p0, v4, v3}, Lio/rong/imlib/NativeClient;->registerMessageType(Ljava/lang/String;I)V

    goto :goto_e

    .line 21
    :cond_60
    sget-object v3, Lio/rong/common/fwlog/FwLog$LogTag;->L_REGTYPE_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v3}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v3

    new-instance v4, Ljava/lang/StringBuilder;

    invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V

    const-string v5, "msg_type"

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object v5

    invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v4

    new-array v5, v1, [Ljava/lang/Object;

    invoke-static {v2, v2, v3, v4, v5}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V
    :try_end_80
    .catch Ljava/lang/Exception; {:try_start_1c .. :try_end_80} :catch_81

    goto :goto_e

    :catch_81
    move-exception v3

    .line 22
    sget-object v4, Lio/rong/common/fwlog/FwLog$LogTag;->L_REGTYPE_E:Lio/rong/common/fwlog/FwLog$LogTag;

    invoke-virtual {v4}, Lio/rong/common/fwlog/FwLog$LogTag;->getTag()Ljava/lang/String;

    move-result-object v4

    new-instance v5, Ljava/lang/StringBuilder;

    invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V

    const-string v6, "msg_type|stacks"

    invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v0}, Ljava/lang/Class;->getName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v5, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v0

    new-array v5, v2, [Ljava/lang/Object;

    invoke-virtual {v3}, Ljava/lang/Exception;->getStackTrace()[Ljava/lang/StackTraceElement;

    move-result-object v3

    invoke-static {v3}, Ljava/util/Arrays;->toString([Ljava/lang/Object;)Ljava/lang/String;

    move-result-object v3

    aput-object v3, v5, v1

    invoke-static {v2, v2, v4, v0, v5}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    goto/16 :goto_e

    :cond_ae
    :goto_ae
    return-void
.end method

.method public removeConversation(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;)Z
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2d

    if-eqz p1, :cond_25

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_25

    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_25

    .line 3
    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object p2

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->RemoveConversation(ILjava/lang/String;)Z

    move-result p1

    return p1

    .line 5
    :cond_25
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationType \u548c TargetId \u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 6
    :cond_2d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public removeEncryptedConversation(Ljava/lang/String;)Z
    .registers 4

    const/4 v0, 0x1

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    const/4 v1, 0x0

    aput-object p1, v0, v1

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->RemoveEncryptedConversation(Ljava/lang/String;)Z

    move-result p1

    return p1
.end method

.method public removeFromBlacklist(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    if-eqz p2, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$47;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$47;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->RemoveFromBlacklist(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "\u7528\u6237 Id \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public removeMemberFromDiscussion(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_23

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1b

    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_1b

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$22;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$22;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->RemoveMemberFromDiscussion(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_1b
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "discussionId \u6216 userId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_23
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public removeMessageAllExpansion(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 13

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_3c

    .line 2
    invoke-virtual {p0, p1}, Lio/rong/imlib/NativeClient;->getMessageByUid(Ljava/lang/String;)Lio/rong/imlib/model/Message;

    move-result-object v0

    if-eqz v0, :cond_30

    .line 3
    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v1

    if-nez v1, :cond_11

    goto :goto_30

    :cond_11
    const/4 v1, 0x1

    .line 4
    invoke-static {p1, v1}, Lio/rong/message/MessageExpansionMessage;->obtain(Ljava/lang/String;Z)Lio/rong/message/MessageExpansionMessage;

    move-result-object p1

    .line 5
    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v2

    invoke-static {v1, v2, p1}, Lio/rong/imlib/model/Message;->obtain(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Lio/rong/imlib/model/MessageContent;)Lio/rong/imlib/model/Message;

    move-result-object v4

    const/4 v5, 0x0

    const/4 v6, 0x0

    const/4 v7, 0x0

    const/4 v8, 0x0

    .line 6
    new-instance v9, Lio/rong/imlib/NativeClient$80;

    invoke-direct {v9, p0, v0, p2}, Lio/rong/imlib/NativeClient$80;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p0

    invoke-virtual/range {v3 .. v9}, Lio/rong/imlib/NativeClient;->sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V

    return-void

    :cond_30
    :goto_30
    if-eqz p2, :cond_3b

    .line 7
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MESSAGE_CANT_EXPAND:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p2, p1}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_3b
    return-void

    .line 8
    :cond_3c
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public removeMessageExpansion(Ljava/util/List;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_3b

    .line 2
    invoke-virtual {p0, p2}, Lio/rong/imlib/NativeClient;->getMessageByUid(Ljava/lang/String;)Lio/rong/imlib/model/Message;

    move-result-object v0

    if-eqz v0, :cond_2f

    .line 3
    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v1

    if-nez v1, :cond_11

    goto :goto_2f

    .line 4
    :cond_11
    invoke-static {p2, p1}, Lio/rong/message/MessageExpansionMessage;->obtain(Ljava/lang/String;Ljava/util/List;)Lio/rong/message/MessageExpansionMessage;

    move-result-object p2

    .line 5
    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v0}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v2

    invoke-static {v1, v2, p2}, Lio/rong/imlib/model/Message;->obtain(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Lio/rong/imlib/model/MessageContent;)Lio/rong/imlib/model/Message;

    move-result-object v4

    const/4 v5, 0x0

    const/4 v6, 0x0

    const/4 v7, 0x0

    const/4 v8, 0x0

    .line 6
    new-instance v9, Lio/rong/imlib/NativeClient$81;

    invoke-direct {v9, p0, p1, v0, p3}, Lio/rong/imlib/NativeClient$81;-><init>(Lio/rong/imlib/NativeClient;Ljava/util/List;Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v3, p0

    invoke-virtual/range {v3 .. v9}, Lio/rong/imlib/NativeClient;->sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V

    return-void

    :cond_2f
    :goto_2f
    if-eqz p3, :cond_3a

    .line 7
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MESSAGE_CANT_EXPAND:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p3, p1}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_3a
    return-void

    .line 8
    :cond_3b
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public removeNotificationQuietHours(Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_17

    if-eqz p1, :cond_f

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$51;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$51;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->RemovePushSetting(Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string v0, "\u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, v0}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public rtcDeleteInnerData(Ljava/lang/String;I[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 17

    move-object v0, p0

    move-object v2, p1

    .line 1
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v3, -0x1

    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v3

    const-string v4, "roomId|code|desc"

    const-string v5, "P-RTCDeleteInnerData-E"

    const/4 v6, 0x0

    const/4 v7, 0x3

    const/4 v8, 0x1

    const/4 v9, 0x2

    if-eqz v1, :cond_51

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_3c

    .line 3
    new-array v1, v9, [Ljava/lang/Object;

    aput-object v2, v1, v6

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v3

    aput-object v3, v1, v8

    const-string v3, "P-RTCDeleteInnerData-T"

    const-string v4, "roomId|type"

    invoke-static {v7, v9, v3, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 4
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v7, Lio/rong/imlib/NativeClient$63;

    move-object/from16 v3, p6

    invoke-direct {v7, p0, p1, v3}, Lio/rong/imlib/NativeClient$63;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v2, p1

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object v6, p5

    invoke-virtual/range {v1 .. v7}, Lio/rong/imlib/NativeObject;->RTCDeleteInnerData(Ljava/lang/String;I[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 5
    :cond_3c
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v6

    aput-object v3, v1, v8

    const-string v2, "RoomId is Null"

    aput-object v2, v1, v9

    invoke-static {v8, v9, v5, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 7
    :cond_51
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v6

    aput-object v3, v1, v8

    const-string v2, "NativeClient is Null"

    aput-object v2, v1, v9

    invoke-static {v8, v9, v5, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public rtcDeleteOuterData(Ljava/lang/String;I[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 17

    move-object v0, p0

    move-object v2, p1

    .line 1
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v3, -0x1

    invoke-static {v3}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v3

    const-string v4, "roomId|code|desc"

    const-string v5, "P-RTCDeleteOuterData-E"

    const/4 v6, 0x0

    const/4 v7, 0x3

    const/4 v8, 0x1

    const/4 v9, 0x2

    if-eqz v1, :cond_51

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_3c

    .line 3
    new-array v1, v9, [Ljava/lang/Object;

    aput-object v2, v1, v6

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v3

    aput-object v3, v1, v8

    const-string v3, "P-RTCDeleteOuterData-T"

    const-string v4, "roomId|type"

    invoke-static {v7, v9, v3, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 4
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v7, Lio/rong/imlib/NativeClient$64;

    move-object/from16 v3, p6

    invoke-direct {v7, p0, p1, v3}, Lio/rong/imlib/NativeClient$64;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v2, p1

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object v6, p5

    invoke-virtual/range {v1 .. v7}, Lio/rong/imlib/NativeObject;->RTCDeleteOuterData(Ljava/lang/String;I[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 5
    :cond_3c
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v6

    aput-object v3, v1, v8

    const-string v2, "RoomId is Null"

    aput-object v2, v1, v9

    invoke-static {v8, v9, v5, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 7
    :cond_51
    new-array v1, v7, [Ljava/lang/Object;

    aput-object v2, v1, v6

    aput-object v3, v1, v8

    const-string v2, "NativeClient is Null"

    aput-object v2, v1, v9

    invoke-static {v8, v9, v5, v4, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public rtcGetInnerData(Ljava/lang/String;I[Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 13
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v1, -0x1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    const-string v2, "roomId|code|desc"

    const-string v3, "P-RTCGetInnerData-E"

    const/4 v4, 0x0

    const/4 v5, 0x3

    const/4 v6, 0x1

    const/4 v7, 0x2

    if-eqz v0, :cond_48

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_33

    .line 3
    new-array v0, v7, [Ljava/lang/Object;

    aput-object p1, v0, v4

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    aput-object v1, v0, v6

    const-string v1, "P-RTCGetInnerData-T"

    const-string v2, "roomId|type"

    invoke-static {v5, v7, v1, v2, v0}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$65;

    invoke-direct {v1, p0, p1, p4}, Lio/rong/imlib/NativeClient$65;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->RTCGetInnerData(Ljava/lang/String;I[Ljava/lang/String;Lio/rong/imlib/NativeObject$RTCDataListener;)V

    return-void

    .line 5
    :cond_33
    new-array p2, v5, [Ljava/lang/Object;

    aput-object p1, p2, v4

    aput-object v1, p2, v6

    const-string p1, "RoomId is Null"

    aput-object p1, p2, v7

    invoke-static {v6, v7, v3, v2, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_48
    new-array p2, v5, [Ljava/lang/Object;

    aput-object p1, p2, v4

    aput-object v1, p2, v6

    const-string p1, "NativeClient is Null"

    aput-object p1, p2, v7

    invoke-static {v6, v7, v3, v2, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public rtcGetOuterData(Ljava/lang/String;I[Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 13
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;>;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v1, -0x1

    invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    const-string v2, "roomId|code|desc"

    const-string v3, "P-RTCGetOuterData-E"

    const/4 v4, 0x0

    const/4 v5, 0x3

    const/4 v6, 0x1

    const/4 v7, 0x2

    if-eqz v0, :cond_48

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_33

    .line 3
    new-array v0, v7, [Ljava/lang/Object;

    aput-object p1, v0, v4

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v1

    aput-object v1, v0, v6

    const-string v1, "P-RTCGetOuterData-T"

    const-string v2, "roomId|type"

    invoke-static {v5, v7, v1, v2, v0}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 4
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$66;

    invoke-direct {v1, p0, p1, p4}, Lio/rong/imlib/NativeClient$66;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->RTCGetOuterData(Ljava/lang/String;I[Ljava/lang/String;Lio/rong/imlib/NativeObject$RTCDataListener;)V

    return-void

    .line 5
    :cond_33
    new-array p2, v5, [Ljava/lang/Object;

    aput-object p1, p2, v4

    aput-object v1, p2, v6

    const-string p1, "RoomId is Null"

    aput-object p1, p2, v7

    invoke-static {v6, v7, v3, v2, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 7
    :cond_48
    new-array p2, v5, [Ljava/lang/Object;

    aput-object p1, p2, v4

    aput-object v1, p2, v6

    const-string p1, "NativeClient is Null"

    aput-object p1, p2, v7

    invoke-static {v6, v7, v3, v2, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public rtcPutInnerData(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 18

    move-object v0, p0

    move-object v2, p1

    const/4 v1, 0x4

    .line 1
    new-array v1, v1, [Ljava/lang/Object;

    const/4 v3, 0x0

    aput-object v2, v1, v3

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const/4 v5, 0x1

    aput-object v4, v1, v5

    const/4 v4, 0x2

    aput-object p4, v1, v4

    const/4 v6, 0x3

    aput-object p6, v1, v6

    const-string v7, "P-RTCPutInnerData-T"

    const-string v8, "roomId|type|fullValues|increValues"

    invoke-static {v6, v7, v8, v1}, Lio/rong/common/fwlog/LogSplitUtil;->write(ILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 2
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v7, -0x1

    invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v7

    const-string v8, "roomId|code|desc"

    const-string v9, "P-RTCPutInnerData-E"

    if-eqz v1, :cond_58

    .line 3
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_43

    .line 4
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v8, Lio/rong/imlib/NativeClient$61;

    move-object/from16 v3, p7

    invoke-direct {v8, p0, p1, v3}, Lio/rong/imlib/NativeClient$61;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v2, p1

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object v6, p5

    move-object/from16 v7, p6

    invoke-virtual/range {v1 .. v8}, Lio/rong/imlib/NativeObject;->RTCPutInnerDatum(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 5
    :cond_43
    new-array v1, v6, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v7, v1, v5

    const-string v2, "RoomId is Null"

    aput-object v2, v1, v4

    invoke-static {v5, v4, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 7
    :cond_58
    new-array v1, v6, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v7, v1, v5

    const-string v2, "NativeClient is Null"

    aput-object v2, v1, v4

    invoke-static {v5, v4, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method public rtcPutOuterData(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 18

    move-object v0, p0

    move-object v2, p1

    const/4 v1, 0x4

    .line 1
    new-array v1, v1, [Ljava/lang/Object;

    const/4 v3, 0x0

    aput-object v2, v1, v3

    invoke-static {p2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const/4 v5, 0x1

    aput-object v4, v1, v5

    const/4 v4, 0x2

    aput-object p4, v1, v4

    const/4 v6, 0x3

    aput-object p6, v1, v6

    const-string v7, "P-RTCPutOuterData-T"

    const-string v8, "roomId|type|fullValues|increValues"

    invoke-static {v6, v7, v8, v1}, Lio/rong/common/fwlog/LogSplitUtil;->write(ILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 2
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v7, -0x1

    invoke-static {v7}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v7

    const-string v8, "roomId|code|desc"

    const-string v9, "P-RTCPutOuterData-E"

    if-eqz v1, :cond_58

    .line 3
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_43

    .line 4
    iget-object v1, v0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v8, Lio/rong/imlib/NativeClient$62;

    move-object/from16 v3, p7

    invoke-direct {v8, p0, p1, v3}, Lio/rong/imlib/NativeClient$62;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v2, p1

    move v3, p2

    move-object v4, p3

    move-object v5, p4

    move-object v6, p5

    move-object/from16 v7, p6

    invoke-virtual/range {v1 .. v8}, Lio/rong/imlib/NativeObject;->RTCPutOuterDatum(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 5
    :cond_43
    new-array v1, v6, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v7, v1, v5

    const-string v2, "RoomId is Null"

    aput-object v2, v1, v4

    invoke-static {v5, v4, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 6
    new-instance v1, Ljava/lang/IllegalArgumentException;

    const-string v2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v1, v2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v1

    .line 7
    :cond_58
    new-array v1, v6, [Ljava/lang/Object;

    aput-object v2, v1, v3

    aput-object v7, v1, v5

    const-string v2, "NativeClient is Null"

    aput-object v2, v1, v4

    invoke-static {v5, v4, v9, v8, v1}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 8
    new-instance v1, Ljava/lang/RuntimeException;

    const-string v2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v1, v2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v1
.end method

.method rtcSetUserResource(Ljava/lang/String;[Lio/rong/imlib/model/RTCStatusDate;Ljava/lang/String;[Lio/rong/imlib/model/RTCStatusDate;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 15

    const/4 v0, 0x1

    .line 1
    new-array v1, v0, [Ljava/lang/Object;

    const/4 v2, 0x0

    aput-object p1, v1, v2

    const/4 v3, 0x3

    const-string v4, "P-RTCSetUserResource-T"

    const-string v5, "roomId"

    .line 2
    invoke-static {v3, v4, v5, v1}, Lio/rong/common/fwlog/LogSplitUtil;->write(ILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 3
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    const/4 v4, -0x1

    invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;

    move-result-object v4

    const-string v5, "roomId|code|desc"

    const-string v6, "P-RTCSetUserResource-E"

    const/4 v7, 0x2

    if-eqz v1, :cond_ab

    .line 4
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_96

    .line 5
    array-length v0, p2

    .line 6
    array-length v1, p4

    .line 7
    new-array v5, v0, [Lio/rong/imlib/NativeObject$StatusData;

    const/4 v3, 0x0

    :goto_27
    if-ge v3, v0, :cond_57

    .line 8
    new-instance v4, Lio/rong/imlib/NativeObject$StatusData;

    invoke-direct {v4}, Lio/rong/imlib/NativeObject$StatusData;-><init>()V

    .line 9
    aget-object v6, p2, v3

    invoke-virtual {v6}, Lio/rong/imlib/model/RTCStatusDate;->getKey()Ljava/lang/String;

    move-result-object v6

    invoke-virtual {v4, v6}, Lio/rong/imlib/NativeObject$StatusData;->setKey(Ljava/lang/String;)V

    .line 10
    aget-object v6, p2, v3

    invoke-virtual {v6}, Lio/rong/imlib/model/RTCStatusDate;->getValue()Ljava/lang/String;

    move-result-object v6

    invoke-virtual {v4, v6}, Lio/rong/imlib/NativeObject$StatusData;->setValue(Ljava/lang/String;)V

    .line 11
    aget-object v6, p2, v3

    invoke-virtual {v6}, Lio/rong/imlib/model/RTCStatusDate;->isAutoDelete()Z

    move-result v6

    invoke-virtual {v4, v6}, Lio/rong/imlib/NativeObject$StatusData;->setAutoDelete(Z)V

    .line 12
    aget-object v6, p2, v3

    invoke-virtual {v6}, Lio/rong/imlib/model/RTCStatusDate;->isOverwrite()Z

    move-result v6

    invoke-virtual {v4, v6}, Lio/rong/imlib/NativeObject$StatusData;->setOverwrite(Z)V

    .line 13
    aput-object v4, v5, v3

    add-int/lit8 v3, v3, 0x1

    goto :goto_27

    .line 14
    :cond_57
    new-array v7, v1, [Lio/rong/imlib/NativeObject$StatusData;

    :goto_59
    if-ge v2, v1, :cond_89

    .line 15
    new-instance p2, Lio/rong/imlib/NativeObject$StatusData;

    invoke-direct {p2}, Lio/rong/imlib/NativeObject$StatusData;-><init>()V

    .line 16
    aget-object v0, p4, v2

    invoke-virtual {v0}, Lio/rong/imlib/model/RTCStatusDate;->getKey()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p2, v0}, Lio/rong/imlib/NativeObject$StatusData;->setKey(Ljava/lang/String;)V

    .line 17
    aget-object v0, p4, v2

    invoke-virtual {v0}, Lio/rong/imlib/model/RTCStatusDate;->getValue()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p2, v0}, Lio/rong/imlib/NativeObject$StatusData;->setValue(Ljava/lang/String;)V

    .line 18
    aget-object v0, p4, v2

    invoke-virtual {v0}, Lio/rong/imlib/model/RTCStatusDate;->isAutoDelete()Z

    move-result v0

    invoke-virtual {p2, v0}, Lio/rong/imlib/NativeObject$StatusData;->setAutoDelete(Z)V

    .line 19
    aget-object v0, p4, v2

    invoke-virtual {v0}, Lio/rong/imlib/model/RTCStatusDate;->isOverwrite()Z

    move-result v0

    invoke-virtual {p2, v0}, Lio/rong/imlib/NativeObject$StatusData;->setOverwrite(Z)V

    .line 20
    aput-object p2, v7, v2

    add-int/lit8 v2, v2, 0x1

    goto :goto_59

    .line 21
    :cond_89
    iget-object v3, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v8, Lio/rong/imlib/NativeClient$78;

    invoke-direct {v8, p0, p1, p5}, Lio/rong/imlib/NativeClient$78;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v4, p1

    move-object v6, p3

    invoke-virtual/range {v3 .. v8}, Lio/rong/imlib/NativeObject;->RTCSetUserResource(Ljava/lang/String;[Lio/rong/imlib/NativeObject$StatusData;Ljava/lang/String;[Lio/rong/imlib/NativeObject$StatusData;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 22
    :cond_96
    new-array p2, v3, [Ljava/lang/Object;

    aput-object p1, p2, v2

    aput-object v4, p2, v0

    const-string p1, "RoomId is Null"

    aput-object p1, p2, v7

    .line 23
    invoke-static {v0, v7, v6, v5, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 24
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "roomId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 25
    :cond_ab
    new-array p2, v3, [Ljava/lang/Object;

    aput-object p1, p2, v2

    aput-object v4, p2, v0

    const-string p1, "NativeClient is Null"

    aput-object p1, p2, v7

    .line 26
    invoke-static {v0, v7, v6, v5, p2}, Lio/rong/common/fwlog/FwLog;->write(IILjava/lang/String;Ljava/lang/String;[Ljava/lang/Object;)V

    .line 27
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_c1

    :goto_c0
    throw p1

    :goto_c1
    goto :goto_c0
.end method

.method public saveTextMessageDraft(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;)Z
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    if-eqz p1, :cond_17

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2, p3}, Lio/rong/imlib/NativeObject;->SetTextMessageDraft(ILjava/lang/String;Ljava/lang/String;)Z

    move-result p1

    return p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public sdkBackgroundChanged(Z)V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->sdkBackgroundChanged(Z)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method searchConversations(Ljava/lang/String;[I[Ljava/lang/String;)Ljava/util/List;
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "[I[",
            "Ljava/lang/String;",
            ")",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/SearchConversationResult;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1, p2, p3}, Lio/rong/imlib/NativeObject;->SearchConversations(Ljava/lang/String;[I[Ljava/lang/String;)[Lio/rong/imlib/NativeObject$Conversation;

    move-result-object p1

    .line 2
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-eqz p1, :cond_2c

    .line 3
    array-length p3, p1

    const/4 v0, 0x0

    :goto_f
    if-ge v0, p3, :cond_2c

    aget-object v1, p1, v0

    .line 4
    invoke-direct {p0, v1}, Lio/rong/imlib/NativeClient;->renderConversationFromNative(Lio/rong/imlib/NativeObject$Conversation;)Lio/rong/imlib/model/Conversation;

    move-result-object v2

    .line 5
    new-instance v3, Lio/rong/imlib/model/SearchConversationResult;

    invoke-direct {v3}, Lio/rong/imlib/model/SearchConversationResult;-><init>()V

    .line 6
    invoke-virtual {v3, v2}, Lio/rong/imlib/model/SearchConversationResult;->setConversation(Lio/rong/imlib/model/Conversation;)V

    .line 7
    invoke-virtual {v1}, Lio/rong/imlib/NativeObject$Conversation;->getMatchCount()I

    move-result v1

    invoke-virtual {v3, v1}, Lio/rong/imlib/model/SearchConversationResult;->setMatchCount(I)V

    .line 8
    invoke-interface {p2, v3}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 v0, v0, 0x1

    goto :goto_f

    :cond_2c
    return-object p2
.end method

.method searchMessages(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;IJ)Ljava/util/List;
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "IJ)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p2}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v2

    move-object v1, p1

    move-object v3, p3

    move v4, p4

    move-wide v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->SearchMessages(Ljava/lang/String;ILjava/lang/String;IJ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 2
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-eqz p1, :cond_35

    .line 3
    array-length p3, p1

    const/4 p4, 0x0

    :goto_17
    if-ge p4, p3, :cond_35

    aget-object p5, p1, p4

    .line 4
    new-instance p6, Lio/rong/imlib/model/Message;

    invoke-direct {p6, p5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 5
    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p5

    invoke-direct {p0, v0, p5, p6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p5

    invoke-virtual {p6, p5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 6
    invoke-interface {p2, p6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_17

    :cond_35
    return-object p2
.end method

.method searchMessagesByUser(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;IJ)Ljava/util/List;
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "IJ)",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Message;",
            ">;"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p2}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v2

    move-object v1, p1

    move-object v3, p3

    move v4, p4

    move-wide v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->SearchMessagesByUser(Ljava/lang/String;ILjava/lang/String;IJ)[Lio/rong/imlib/NativeObject$Message;

    move-result-object p1

    .line 2
    new-instance p2, Ljava/util/ArrayList;

    invoke-direct {p2}, Ljava/util/ArrayList;-><init>()V

    if-eqz p1, :cond_35

    .line 3
    array-length p3, p1

    const/4 p4, 0x0

    :goto_17
    if-ge p4, p3, :cond_35

    aget-object p5, p1, p4

    .line 4
    new-instance p6, Lio/rong/imlib/model/Message;

    invoke-direct {p6, p5}, Lio/rong/imlib/model/Message;-><init>(Lio/rong/imlib/NativeObject$Message;)V

    .line 5
    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getObjectName()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {p5}, Lio/rong/imlib/NativeObject$Message;->getContent()[B

    move-result-object p5

    invoke-direct {p0, v0, p5, p6}, Lio/rong/imlib/NativeClient;->renderMessageContent(Ljava/lang/String;[BLio/rong/imlib/model/Message;)Lio/rong/imlib/model/MessageContent;

    move-result-object p5

    invoke-virtual {p6, p5}, Lio/rong/imlib/model/Message;->setContent(Lio/rong/imlib/model/MessageContent;)V

    .line 6
    invoke-interface {p2, p6}, Ljava/util/List;->add(Ljava/lang/Object;)Z

    add-int/lit8 p4, p4, 0x1

    goto :goto_17

    :cond_35
    return-object p2
.end method

.method public searchPublicService(Ljava/lang/String;IILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_17

    if-eqz p1, :cond_f

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$19;

    invoke-direct {v1, p0, p4}, Lio/rong/imlib/NativeClient$19;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->SearchAccount(Ljava/lang/String;IILio/rong/imlib/NativeObject$AccountInfoListener;)V

    return-void

    .line 3
    :cond_f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "keyWords \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public sendLocationMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V
    .registers 32
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    move-object/from16 v8, p0

    move-object/from16 v9, p1

    move-object/from16 v4, p4

    .line 1
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v0

    const-class v1, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v1}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v0

    move-object v5, v0

    check-cast v5, Lio/rong/imlib/MessageTag;

    .line 2
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_26

    .line 3
    iget-object v0, v8, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 4
    :cond_26
    sget-object v0, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 5
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v0

    invoke-virtual {v9, v0, v1}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 6
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 7
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v15

    .line 8
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v0

    const/4 v1, 0x0

    .line 9
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v6

    .line 10
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v2

    .line 11
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v7

    invoke-static {v7, v2, v3}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v26

    .line 12
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v2

    invoke-static {v2}, Lio/rong/common/JSONUtils;->hashMapToJson(Ljava/util/Map;)Ljava/lang/String;

    move-result-object v7

    if-eqz v0, :cond_67

    .line 13
    invoke-virtual {v0}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v0

    move/from16 v24, v0

    goto :goto_69

    :cond_67
    const/16 v24, 0x0

    .line 14
    :goto_69
    iget-object v10, v8, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v11

    .line 15
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v12

    .line 16
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v13

    .line 17
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v14

    const/16 v16, 0x0

    const/16 v17, 0x0

    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    .line 18
    invoke-virtual {v0}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v18

    .line 19
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v19

    .line 20
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-direct {v8, v0}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v21

    const/16 v22, 0x1

    const-string v23, ""

    move/from16 v25, v6

    .line 21
    invoke-virtual/range {v10 .. v26}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v0

    long-to-int v1, v0

    if-gez v1, :cond_c5

    if-eqz v4, :cond_c5

    .line 22
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 23
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    if-ne v1, v0, :cond_bb

    .line 24
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v4, v9, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    goto :goto_c4

    .line 25
    :cond_bb
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->BIZ_ERROR_DATABASE_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v4, v9, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :goto_c4
    return-void

    .line 26
    :cond_c5
    invoke-virtual {v9, v1}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    if-eqz v4, :cond_d2

    .line 27
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 28
    invoke-interface {v4, v9}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onAttached(Ljava/lang/Object;)V

    .line 29
    :cond_d2
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v0

    const-string v1, "NativeClient"

    if-nez v0, :cond_100

    const-string v0, "Location Message saved error"

    .line 30
    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v4, :cond_ff

    .line 31
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 32
    iget-object v0, v8, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v1

    int-to-long v1, v1

    sget-object v3, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v3}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v3

    invoke-virtual {v0, v1, v2, v3}, Lio/rong/imlib/NativeObject;->SetSendStatus(JI)Z

    .line 33
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v4, v9, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :cond_ff
    return-void

    .line 34
    :cond_100
    invoke-interface {v5}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-direct {v8, v0}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v10

    if-nez v10, :cond_130

    const-string v0, "MessageHandler is null"

    .line 35
    invoke-static {v1, v0}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v4, :cond_12f

    .line 36
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v9, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 37
    iget-object v0, v8, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v1

    int-to-long v1, v1

    sget-object v3, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v3}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v3

    invoke-virtual {v0, v1, v2, v3}, Lio/rong/imlib/NativeObject;->SetSendStatus(JI)Z

    .line 38
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v4, v9, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :cond_12f
    return-void

    .line 39
    :cond_130
    new-instance v11, Lio/rong/imlib/NativeClient$25;

    move-object v0, v11

    move-object/from16 v1, p0

    move-object/from16 v2, p2

    move-object/from16 v3, p3

    move-object/from16 v4, p4

    invoke-direct/range {v0 .. v7}, Lio/rong/imlib/NativeClient$25;-><init>(Lio/rong/imlib/NativeClient;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;ZLjava/lang/String;)V

    invoke-virtual {v10, v11}, Lio/rong/message/MessageHandler;->setHandleMessageListener(Lio/rong/message/IHandleMessageListener;)V

    .line 40
    invoke-virtual {v10, v9}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    return-void
.end method

.method public sendMediaMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;)V
    .registers 11
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMediaMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    const/4 v2, 0x0

    move-object v0, p0

    move-object v1, p1

    move-object v3, p2

    move-object v4, p3

    move-object v5, p4

    .line 44
    invoke-virtual/range {v0 .. v5}, Lio/rong/imlib/NativeClient;->sendMediaMessage(Lio/rong/imlib/model/Message;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;)V

    return-void
.end method

.method public sendMediaMessage(Lio/rong/imlib/model/Message;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;)V
    .registers 38
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "[",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMediaMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    move-object/from16 v13, p0

    move-object/from16 v14, p1

    move-object/from16 v8, p5

    .line 1
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v0

    const-class v1, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v1}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v0

    move-object v9, v0

    check-cast v9, Lio/rong/imlib/MessageTag;

    .line 2
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_26

    .line 3
    iget-object v0, v13, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v14, v0}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 4
    :cond_26
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v0

    invoke-virtual {v14, v0, v1}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 5
    invoke-interface {v9}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v14, v0}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 6
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v11

    .line 7
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v0

    .line 8
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v2

    invoke-static {v2, v0, v1}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v31

    .line 9
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v0

    invoke-static {v0}, Lio/rong/common/JSONUtils;->hashMapToJson(Ljava/util/Map;)Ljava/lang/String;

    move-result-object v12

    const/4 v0, 0x1

    .line 10
    new-array v1, v0, [B

    .line 11
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/MessageContent;->getMentionedInfo()Lio/rong/imlib/model/MentionedInfo;

    move-result-object v2

    const/4 v3, 0x0

    if-eqz v2, :cond_5c

    const/4 v10, 0x1

    goto :goto_5d

    :cond_5c
    const/4 v10, 0x0

    .line 12
    :goto_5d
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    move-object v2, v0

    check-cast v2, Lio/rong/message/MediaMessageContent;

    .line 13
    invoke-interface {v9}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-direct {v13, v0}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v4

    if-nez v4, :cond_81

    const-string v0, "NativeClient"

    const-string v1, "sendMediaMessage MessageHandler is null"

    .line 14
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v8, :cond_80

    .line 15
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v8, v14, v0}, Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;->onError(Ljava/lang/Object;I)V

    :cond_80
    return-void

    .line 16
    :cond_81
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v0

    if-gtz v0, :cond_f7

    .line 17
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v0

    if-eqz v0, :cond_94

    .line 18
    invoke-virtual {v0}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v0

    move/from16 v29, v0

    goto :goto_96

    :cond_94
    const/16 v29, 0x0

    .line 19
    :goto_96
    iget-object v15, v13, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v16

    .line 20
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v17

    .line 21
    invoke-interface {v9}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v18

    .line 22
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v19

    const/16 v21, 0x0

    const/16 v22, 0x0

    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    .line 23
    invoke-virtual {v0}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v23

    .line 24
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v24

    .line 25
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-direct {v13, v0}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v26

    const/16 v27, 0x1

    const-string v28, ""

    move-object/from16 v20, v1

    move/from16 v30, v11

    .line 26
    invoke-virtual/range {v15 .. v31}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v0

    long-to-int v1, v0

    if-gez v1, :cond_f4

    if-eqz v8, :cond_f4

    .line 27
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v14, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 28
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    if-ne v1, v0, :cond_ea

    .line 29
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v8, v14, v0}, Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;->onError(Ljava/lang/Object;I)V

    goto :goto_f3

    .line 30
    :cond_ea
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->BIZ_ERROR_DATABASE_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v8, v14, v0}, Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;->onError(Ljava/lang/Object;I)V

    :goto_f3
    return-void

    .line 31
    :cond_f4
    invoke-virtual {v14, v1}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 32
    :cond_f7
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v14, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 33
    sget-object v0, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v14, v0}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 34
    invoke-virtual {v4, v14}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 35
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v7

    .line 36
    iget-object v0, v13, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v1

    int-to-long v5, v1

    const-string v1, ""

    invoke-virtual {v0, v5, v6, v7, v1}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    if-eqz v8, :cond_11d

    .line 37
    invoke-interface {v8, v14}, Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;->onAttached(Ljava/lang/Object;)V

    .line 38
    :cond_11d
    invoke-virtual {v2}, Lio/rong/message/MediaMessageContent;->getMediaUrl()Landroid/net/Uri;

    move-result-object v0

    if-eqz v0, :cond_15a

    .line 39
    invoke-virtual {v2}, Lio/rong/message/MediaMessageContent;->getMediaUrl()Landroid/net/Uri;

    move-result-object v0

    if-eqz v0, :cond_138

    invoke-virtual {v2}, Lio/rong/message/MediaMessageContent;->getMediaUrl()Landroid/net/Uri;

    move-result-object v0

    invoke-virtual {v0}, Landroid/net/Uri;->toString()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_138

    goto :goto_15a

    .line 40
    :cond_138
    iget-object v0, v13, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    int-to-long v2, v2

    invoke-virtual {v0, v2, v3, v7, v1}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    .line 41
    new-instance v5, Lio/rong/imlib/NativeClient$27;

    invoke-direct {v5, v13, v8}, Lio/rong/imlib/NativeClient$27;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;)V

    const/4 v8, 0x3

    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move-object/from16 v2, p3

    move-object/from16 v3, p4

    move-object/from16 v4, p2

    move-object v6, v9

    move v9, v10

    move v10, v11

    move-object v11, v12

    invoke-direct/range {v0 .. v11}, Lio/rong/imlib/NativeClient;->internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZLjava/lang/String;)V

    goto :goto_170

    .line 42
    :cond_15a
    :goto_15a
    new-instance v15, Lio/rong/imlib/NativeClient$26;

    move-object v0, v15

    move-object/from16 v1, p0

    move-object v3, v4

    move-object/from16 v4, p1

    move-object/from16 v5, p3

    move-object/from16 v6, p4

    move-object/from16 v7, p2

    move-object/from16 v8, p5

    invoke-direct/range {v0 .. v12}, Lio/rong/imlib/NativeClient$26;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/message/MediaMessageContent;Lio/rong/message/MessageHandler;Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMediaMessageCallback;Lio/rong/imlib/MessageTag;ZZLjava/lang/String;)V

    .line 43
    invoke-virtual {v13, v14, v15}, Lio/rong/imlib/NativeClient;->uploadMedia(Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$IResultProgressCallback;)V

    :goto_170
    return-void
.end method

.method public sendMessage(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Lio/rong/imlib/model/MessageContent;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V
    .registers 13
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/MessageContent;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    .line 1
    invoke-static {p2, p1, p3}, Lio/rong/imlib/model/Message;->obtain(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Lio/rong/imlib/model/MessageContent;)Lio/rong/imlib/model/Message;

    move-result-object v1

    const/4 v4, 0x0

    move-object v0, p0

    move-object v2, p4

    move-object v3, p5

    move-object v5, p6

    .line 2
    invoke-virtual/range {v0 .. v5}, Lio/rong/imlib/NativeClient;->sendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V

    return-void
.end method

.method public sendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V
    .registers 36
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    move-object/from16 v12, p0

    move-object/from16 v1, p1

    move-object/from16 v5, p5

    .line 3
    iget-object v0, v12, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_169

    .line 4
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    if-eqz v0, :cond_161

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_161

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    if-eqz v0, :cond_161

    .line 5
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v0

    const-class v2, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v0

    move-object v6, v0

    check-cast v6, Lio/rong/imlib/MessageTag;

    const-string v0, "NativeClient"

    if-nez v6, :cond_3b

    const-string v1, "sendMessage MessageTag is null"

    .line 6
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    return-void

    .line 7
    :cond_3b
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v2

    invoke-static {v2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v2

    if-eqz v2, :cond_4a

    .line 8
    iget-object v2, v12, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 9
    :cond_4a
    sget-object v2, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 10
    sget-object v2, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 11
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v2

    invoke-virtual {v1, v2, v3}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 12
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v1, v2}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 13
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v10

    .line 14
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v2

    .line 15
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v4

    invoke-static {v4, v2, v3}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v29

    .line 16
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v2

    invoke-static {v2}, Lio/rong/common/JSONUtils;->hashMapToJson(Ljava/util/Map;)Ljava/lang/String;

    move-result-object v11

    const/4 v2, 0x1

    .line 17
    new-array v3, v2, [B

    .line 18
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v4

    and-int/2addr v4, v2

    const/4 v7, 0x0

    if-ne v4, v2, :cond_f9

    .line 19
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v4

    if-gtz v4, :cond_f9

    .line 20
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v4

    if-eqz v4, :cond_98

    .line 21
    invoke-virtual {v4}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v4

    move/from16 v27, v4

    goto :goto_9a

    :cond_98
    const/16 v27, 0x0

    .line 22
    :goto_9a
    iget-object v13, v12, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v14

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v4

    invoke-virtual {v4}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v15

    .line 23
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v16

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v17

    const/16 v19, 0x0

    const/16 v20, 0x0

    sget-object v4, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    .line 24
    invoke-virtual {v4}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v21

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v22

    .line 25
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v4

    invoke-direct {v12, v4}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v24

    const/16 v25, 0x1

    const-string v26, ""

    move-object/from16 v18, v3

    move/from16 v28, v10

    .line 26
    invoke-virtual/range {v13 .. v29}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v3

    long-to-int v4, v3

    if-gez v4, :cond_f6

    .line 27
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 28
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    if-ne v4, v0, :cond_ec

    .line 29
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    goto :goto_f5

    .line 30
    :cond_ec
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->BIZ_ERROR_DATABASE_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :goto_f5
    return-void

    .line 31
    :cond_f6
    invoke-virtual {v1, v4}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 32
    :cond_f9
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v3

    const/16 v4, 0x10

    if-ne v3, v4, :cond_103

    const/4 v8, 0x1

    goto :goto_105

    :cond_103
    const/4 v3, 0x3

    const/4 v8, 0x3

    .line 33
    :goto_105
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v3

    invoke-direct {v12, v3}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v3

    if-nez v3, :cond_120

    const-string v2, "sendMessage MessageHandler is null"

    .line 34
    invoke-static {v0, v2}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v5, :cond_11f

    .line 35
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :cond_11f
    return-void

    .line 36
    :cond_120
    invoke-virtual {v3, v1}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 37
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v9

    if-eqz v5, :cond_130

    .line 38
    invoke-interface {v5, v1}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onAttached(Ljava/lang/Object;)V

    .line 39
    :cond_130
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/model/MessageContent;->getMentionedInfo()Lio/rong/imlib/model/MentionedInfo;

    move-result-object v0

    if-eqz v0, :cond_13c

    const/4 v13, 0x1

    goto :goto_13d

    :cond_13c
    const/4 v13, 0x0

    .line 40
    :goto_13d
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v0

    if-lez v0, :cond_14f

    .line 41
    iget-object v0, v12, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    int-to-long v2, v2

    const-string v4, ""

    invoke-virtual {v0, v2, v3, v9, v4}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    :cond_14f
    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move-object/from16 v2, p2

    move-object/from16 v3, p3

    move-object/from16 v4, p4

    move-object/from16 v5, p5

    move-object v7, v9

    move v9, v13

    .line 42
    invoke-direct/range {v0 .. v11}, Lio/rong/imlib/NativeClient;->internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZLjava/lang/String;)V

    return-void

    .line 43
    :cond_161
    new-instance v0, Ljava/lang/IllegalArgumentException;

    const-string v1, "message, ConversationType \u6216 TargetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v0

    .line 44
    :cond_169
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V
    .registers 15
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/SendMessageOption;",
            "[",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    const/4 v6, 0x0

    move-object v0, p0

    move-object v1, p1

    move-object v2, p2

    move-object v3, p3

    move-object v4, p4

    move-object v5, p5

    move-object v7, p6

    .line 1
    invoke-virtual/range {v0 .. v7}, Lio/rong/imlib/NativeClient;->sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;ZLio/rong/imlib/NativeClient$ISendMessageCallback;)V

    return-void
.end method

.method public sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;ZLio/rong/imlib/NativeClient$ISendMessageCallback;)V
    .registers 40
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/SendMessageOption;",
            "[",
            "Ljava/lang/String;",
            "Z",
            "Lio/rong/imlib/NativeClient$ISendMessageCallback<",
            "Lio/rong/imlib/model/Message;",
            ">;)V"
        }
    .end annotation

    move-object/from16 v14, p0

    move-object/from16 v1, p1

    move-object/from16 v5, p7

    .line 2
    iget-object v0, v14, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_16a

    .line 3
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v0

    if-eqz v0, :cond_162

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_162

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    if-eqz v0, :cond_162

    .line 4
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v0

    invoke-virtual {v0}, Ljava/lang/Object;->getClass()Ljava/lang/Class;

    move-result-object v0

    const-class v2, Lio/rong/imlib/MessageTag;

    invoke-virtual {v0, v2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object v0

    move-object v6, v0

    check-cast v6, Lio/rong/imlib/MessageTag;

    .line 5
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-eqz v0, :cond_40

    .line 6
    iget-object v0, v14, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setSenderUserId(Ljava/lang/String;)V

    .line 7
    :cond_40
    sget-object v0, Lio/rong/imlib/model/Message$MessageDirection;->SEND:Lio/rong/imlib/model/Message$MessageDirection;

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setMessageDirection(Lio/rong/imlib/model/Message$MessageDirection;)V

    .line 8
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 9
    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v2

    invoke-virtual {v1, v2, v3}, Lio/rong/imlib/model/Message;->setSentTime(J)V

    .line 10
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v0

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setObjectName(Ljava/lang/String;)V

    .line 11
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v12

    .line 12
    invoke-direct/range {p0 .. p1}, Lio/rong/imlib/NativeClient;->timeDisposal(Lio/rong/imlib/model/Message;)J

    move-result-wide v2

    .line 13
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v0

    invoke-static {v0, v2, v3}, Lio/rong/common/JSONUtils;->mapTsCombineJson(Ljava/util/Map;J)Ljava/lang/String;

    move-result-object v31

    .line 14
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getExpansion()Ljava/util/Map;

    move-result-object v0

    invoke-static {v0}, Lio/rong/common/JSONUtils;->hashMapToJson(Ljava/util/Map;)Ljava/lang/String;

    move-result-object v13

    const/4 v0, 0x1

    .line 15
    new-array v2, v0, [B

    .line 16
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v3

    and-int/2addr v3, v0

    const/4 v4, 0x0

    if-ne v3, v0, :cond_ef

    .line 17
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v3

    if-gtz v3, :cond_ef

    .line 18
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageConfig()Lio/rong/imlib/model/MessageConfig;

    move-result-object v3

    if-eqz v3, :cond_8e

    .line 19
    invoke-virtual {v3}, Lio/rong/imlib/model/MessageConfig;->isDisableNotification()Z

    move-result v3

    move/from16 v29, v3

    goto :goto_90

    :cond_8e
    const/16 v29, 0x0

    .line 20
    :goto_90
    iget-object v15, v14, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v16

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result v17

    .line 21
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v18

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getSenderUserId()Ljava/lang/String;

    move-result-object v19

    const/16 v21, 0x0

    const/16 v22, 0x0

    sget-object v3, Lio/rong/imlib/model/Message$SentStatus;->SENDING:Lio/rong/imlib/model/Message$SentStatus;

    .line 22
    invoke-virtual {v3}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result v23

    invoke-static {}, Ljava/lang/System;->currentTimeMillis()J

    move-result-wide v24

    .line 23
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v3

    invoke-direct {v14, v3}, Lio/rong/imlib/NativeClient;->getSearchableWord(Lio/rong/imlib/model/MessageContent;)Ljava/lang/String;

    move-result-object v26

    const/16 v27, 0x1

    const-string v28, ""

    move-object/from16 v20, v2

    move/from16 v30, v12

    .line 24
    invoke-virtual/range {v15 .. v31}, Lio/rong/imlib/NativeObject;->SaveMessage(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;[BZIIJLjava/lang/String;ILjava/lang/String;ZZLjava/lang/String;)J

    move-result-wide v2

    long-to-int v3, v2

    if-gez v3, :cond_ec

    .line 25
    sget-object v0, Lio/rong/imlib/model/Message$SentStatus;->FAILED:Lio/rong/imlib/model/Message$SentStatus;

    invoke-virtual {v1, v0}, Lio/rong/imlib/model/Message;->setSentStatus(Lio/rong/imlib/model/Message$SentStatus;)V

    .line 26
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    if-ne v3, v0, :cond_e2

    .line 27
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    goto :goto_eb

    .line 28
    :cond_e2
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->BIZ_ERROR_DATABASE_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :goto_eb
    return-void

    .line 29
    :cond_ec
    invoke-virtual {v1, v3}, Lio/rong/imlib/model/Message;->setMessageId(I)V

    .line 30
    :cond_ef
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->flag()I

    move-result v2

    const/16 v3, 0x10

    if-ne v2, v3, :cond_f9

    const/4 v8, 0x1

    goto :goto_fb

    :cond_f9
    const/4 v2, 0x3

    const/4 v8, 0x3

    .line 31
    :goto_fb
    invoke-interface {v6}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object v2

    invoke-direct {v14, v2}, Lio/rong/imlib/NativeClient;->getMessageHandler(Ljava/lang/String;)Lio/rong/message/MessageHandler;

    move-result-object v2

    if-nez v2, :cond_118

    const-string v0, "NativeClient"

    const-string v2, "sendMessage MessageHandler is null"

    .line 32
    invoke-static {v0, v2}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    if-eqz v5, :cond_117

    .line 33
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v5, v1, v0}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onError(Ljava/lang/Object;I)V

    :cond_117
    return-void

    .line 34
    :cond_118
    invoke-virtual {v2, v1}, Lio/rong/message/MessageHandler;->encodeMessage(Lio/rong/imlib/model/Message;)V

    .line 35
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/MessageContent;->encode()[B

    move-result-object v7

    if-eqz v5, :cond_128

    .line 36
    invoke-interface {v5, v1}, Lio/rong/imlib/NativeClient$ISendMessageCallback;->onAttached(Ljava/lang/Object;)V

    .line 37
    :cond_128
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    invoke-virtual {v2}, Lio/rong/imlib/model/MessageContent;->getMentionedInfo()Lio/rong/imlib/model/MentionedInfo;

    move-result-object v2

    if-eqz v2, :cond_134

    const/4 v9, 0x1

    goto :goto_135

    :cond_134
    const/4 v9, 0x0

    :goto_135
    if-eqz p4, :cond_13d

    .line 38
    invoke-virtual/range {p4 .. p4}, Lio/rong/imlib/model/SendMessageOption;->isVoIPPush()Z

    move-result v0

    move v10, v0

    goto :goto_13e

    :cond_13d
    const/4 v10, 0x0

    .line 39
    :goto_13e
    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v0

    if-lez v0, :cond_150

    .line 40
    iget-object v0, v14, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual/range {p1 .. p1}, Lio/rong/imlib/model/Message;->getMessageId()I

    move-result v2

    int-to-long v2, v2

    const-string v4, ""

    invoke-virtual {v0, v2, v3, v7, v4}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    :cond_150
    move-object/from16 v0, p0

    move-object/from16 v1, p1

    move-object/from16 v2, p2

    move-object/from16 v3, p3

    move-object/from16 v4, p5

    move-object/from16 v5, p7

    move/from16 v11, p6

    .line 41
    invoke-direct/range {v0 .. v13}, Lio/rong/imlib/NativeClient;->internalSendMessage(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;Lio/rong/imlib/MessageTag;[BIZZZZLjava/lang/String;)V

    return-void

    .line 42
    :cond_162
    new-instance v0, Ljava/lang/IllegalArgumentException;

    const-string v1, "message, ConversationType \u6216 TargetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {v0, v1}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw v0

    .line 43
    :cond_16a
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public sendRTCPing(Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 5

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$60;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$60;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->SendRTCPing(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messages \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setChatRoomEntry(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;ZZLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 11

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->isKvStorageEnabled(Landroid/content/Context;)Z

    move-result v0

    if-nez v0, :cond_14

    if-eqz p8, :cond_14

    .line 2
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->KV_STORE_NOT_AVAILABLE:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p8, p1}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    return-void

    .line 3
    :cond_14
    new-instance v0, Lio/rong/imlib/NativeObject$StatusData;

    invoke-direct {v0}, Lio/rong/imlib/NativeObject$StatusData;-><init>()V

    .line 4
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject$StatusData;->setKey(Ljava/lang/String;)V

    .line 5
    invoke-virtual {v0, p2}, Lio/rong/imlib/NativeObject$StatusData;->setValue(Ljava/lang/String;)V

    .line 6
    invoke-virtual {v0, p6}, Lio/rong/imlib/NativeObject$StatusData;->setAutoDelete(Z)V

    .line 7
    invoke-virtual {v0, p7}, Lio/rong/imlib/NativeObject$StatusData;->setOverwrite(Z)V

    .line 8
    new-instance p6, Lio/rong/imlib/NativeObject$StatusNotification;

    invoke-direct {p6}, Lio/rong/imlib/NativeObject$StatusNotification;-><init>()V

    const/4 p7, 0x0

    .line 9
    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setAttributeFlag(I)V

    .line 10
    sget-object p7, Lio/rong/imlib/model/Conversation$ConversationType;->CHATROOM:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {p7}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p7

    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setConversationType(I)V

    .line 11
    new-instance p7, Ljava/lang/String;

    const/4 v1, 0x1

    invoke-static {p1, p2, v1, p5}, Lio/rong/message/ChatRoomKVNotiMessage;->obtain(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;)Lio/rong/message/ChatRoomKVNotiMessage;

    move-result-object p1

    invoke-virtual {p1}, Lio/rong/message/ChatRoomKVNotiMessage;->encode()[B

    move-result-object p1

    invoke-direct {p7, p1}, Ljava/lang/String;-><init>([B)V

    invoke-virtual {p6, p7}, Lio/rong/imlib/NativeObject$StatusNotification;->setMessageContent(Ljava/lang/String;)V

    .line 12
    invoke-virtual {p4}, Ljava/lang/Boolean;->booleanValue()Z

    move-result p1

    invoke-virtual {p6, p1}, Lio/rong/imlib/NativeObject$StatusNotification;->setNotifyAll(Z)V

    .line 13
    const-class p1, Lio/rong/message/ChatRoomKVNotiMessage;

    const-class p2, Lio/rong/imlib/MessageTag;

    invoke-virtual {p1, p2}, Ljava/lang/Class;->getAnnotation(Ljava/lang/Class;)Ljava/lang/annotation/Annotation;

    move-result-object p1

    check-cast p1, Lio/rong/imlib/MessageTag;

    invoke-interface {p1}, Lio/rong/imlib/MessageTag;->value()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {p6, p1}, Lio/rong/imlib/NativeObject$StatusNotification;->setObjectName(Ljava/lang/String;)V

    .line 14
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance p2, Lio/rong/imlib/NativeClient$73;

    invoke-direct {p2, p0, p8}, Lio/rong/imlib/NativeClient$73;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {p1, p3, v0, p6, p2}, Lio/rong/imlib/NativeObject;->SetChatRoomStatus(Ljava/lang/String;Lio/rong/imlib/NativeObject$StatusData;Lio/rong/imlib/NativeObject$StatusNotification;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public setConnectionStatusListener(Lio/rong/imlib/NativeClient$ICodeListener;)V
    .registers 3

    .line 1
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0, p1}, Lio/rong/imlib/ConnectionService;->setMainProgressConnectionStatusListener(Lio/rong/imlib/NativeClient$ICodeListener;)V

    return-void
.end method

.method public setConversationNotificationStatus(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Conversation$ConversationType;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/Integer;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_2e

    if-eqz p1, :cond_26

    if-eqz p3, :cond_26

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_26

    if-eqz p4, :cond_26

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    sget-object v1, Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;->DO_NOT_DISTURB:Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;

    if-ne p3, v1, :cond_1c

    const/4 v1, 0x1

    goto :goto_1d

    :cond_1c
    const/4 v1, 0x0

    :goto_1d
    new-instance v2, Lio/rong/imlib/NativeClient$31;

    invoke-direct {v2, p0, p4, p3}, Lio/rong/imlib/NativeClient$31;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;Lio/rong/imlib/model/Conversation$ConversationNotificationStatus;)V

    invoke-virtual {v0, p2, p1, v1, v2}, Lio/rong/imlib/NativeObject;->SetBlockPush(Ljava/lang/String;IZLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_26
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "conversationType, notificationStatus \u6216 targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_2e
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setConversationStatusListener(Lio/rong/imlib/NativeObject$ConversationStatusListener;)V
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_8

    .line 2
    invoke-virtual {v0, p1}, Lio/rong/imlib/NativeObject;->SetConversationStatusListener(Lio/rong/imlib/NativeObject$ConversationStatusListener;)V

    return-void

    .line 3
    :cond_8
    new-instance p1, Ljava/lang/RuntimeException;

    const-string v0, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setConversationToTop(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;ZZ)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1f

    if-eqz p1, :cond_17

    .line 2
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_17

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->SetIsTop(ILjava/lang/String;ZZ)Z

    move-result p1

    return p1

    .line 4
    :cond_17
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "ConversationType \u6216 TargetId \u53c2\u6570\u5f02\u5e38"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1f
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method setCurrentUserId(Ljava/lang/String;)V
    .registers 2

    .line 1
    iput-object p1, p0, Lio/rong/imlib/NativeClient;->curUserId:Ljava/lang/String;

    return-void
.end method

.method public setDiscussionInviteStatus(Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_15

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$32;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$32;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->SetInviteStatus(Ljava/lang/String;ILio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_15
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "targetId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setDiscussionName(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_37

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_2f

    invoke-virtual {p1}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_2f

    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_2f

    invoke-virtual {p2}, Ljava/lang/String;->trim()Ljava/lang/String;

    move-result-object v0

    invoke-static {v0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_2f

    .line 3
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$17;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$17;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->RenameDiscussion(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_2f
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, " discussionId \u6216 name \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_37
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setEncryptedConversation(Ljava/lang/String;Lio/rong/imlib/model/RCEncryptedSession;)Z
    .registers 12

    const/4 v0, 0x2

    .line 1
    new-array v0, v0, [Ljava/lang/Object;

    const/4 v1, 0x0

    aput-object p1, v0, v1

    const/4 v1, 0x1

    aput-object p2, v0, v1

    invoke-direct {p0, v0}, Lio/rong/imlib/NativeClient;->preCheck([Ljava/lang/Object;)V

    .line 2
    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    .line 3
    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v3

    .line 4
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getTargetId()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v4

    .line 5
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getRemoteEncId()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v5

    .line 6
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncKey()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v6

    .line 7
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncXA()Ljava/lang/String;

    move-result-object p1

    invoke-direct {p0, p1}, Lio/rong/imlib/NativeClient;->replaceNullStr(Ljava/lang/String;)Ljava/lang/String;

    move-result-object v7

    .line 8
    invoke-virtual {p2}, Lio/rong/imlib/model/RCEncryptedSession;->getEncStatus()I

    move-result v8

    .line 9
    invoke-virtual/range {v2 .. v8}, Lio/rong/imlib/NativeObject;->SetEncryptedConversationInfo(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;I)Z

    move-result p1

    return p1
.end method

.method setIpcConnectTimeOut()V
    .registers 2

    .line 1
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0}, Lio/rong/imlib/ConnectionService;->setIpcConnectTimeOut()V

    return-void
.end method

.method public setKVStatusListener(Lio/rong/imlib/NativeClient$KVStatusListener;)V
    .registers 2

    .line 1
    iput-object p1, p0, Lio/rong/imlib/NativeClient;->mKVStatusListener:Lio/rong/imlib/NativeClient$KVStatusListener;

    return-void
.end method

.method public setMessageContent(I[BLjava/lang/String;)Z
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    int-to-long v1, p1

    invoke-virtual {v0, v1, v2, p2, p3}, Lio/rong/imlib/NativeObject;->SetMessageContent(J[BLjava/lang/String;)Z

    move-result p1

    return p1
.end method

.method public setMessageExpansionListener(Lio/rong/imlib/IMessageExpansionListener;)V
    .registers 2

    .line 1
    sput-object p1, Lio/rong/imlib/NativeClient;->messageExpansionListener:Lio/rong/imlib/IMessageExpansionListener;

    return-void
.end method

.method public setMessageExtra(ILjava/lang/String;)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_14

    if-eqz p1, :cond_c

    int-to-long v1, p1

    .line 2
    invoke-virtual {v0, v1, v2, p2}, Lio/rong/imlib/NativeObject;->SetMessageExtra(JLjava/lang/String;)Z

    move-result p1

    return p1

    .line 3
    :cond_c
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "messageId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_14
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method setMessageReadTime(JJ)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->SetReadTime(JJ)Z

    move-result p1

    return p1
.end method

.method public setMessageReceivedStatus(ILio/rong/imlib/model/Message$ReceivedStatus;)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1a

    if-eqz p2, :cond_12

    if-eqz p1, :cond_12

    int-to-long v1, p1

    .line 2
    invoke-virtual {p2}, Lio/rong/imlib/model/Message$ReceivedStatus;->getFlag()I

    move-result p1

    invoke-virtual {v0, v1, v2, p1}, Lio/rong/imlib/NativeObject;->SetReadStatus(JI)Z

    move-result p1

    return p1

    .line 3
    :cond_12
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "receivedStatus \u6216 messageId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_1a
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setMessageSentStatus(ILio/rong/imlib/model/Message$SentStatus;)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1a

    if-eqz p2, :cond_12

    if-eqz p1, :cond_12

    int-to-long v1, p1

    .line 2
    invoke-virtual {p2}, Lio/rong/imlib/model/Message$SentStatus;->getValue()I

    move-result p1

    invoke-virtual {v0, v1, v2, p1}, Lio/rong/imlib/NativeObject;->SetSendStatus(JI)Z

    move-result p1

    return p1

    .line 3
    :cond_12
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "sentStatus \u6216 messageId \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 4
    :cond_1a
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method setNaviContentUpdateListener(Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;)V
    .registers 2

    .line 1
    iput-object p1, p0, Lio/rong/imlib/NativeClient;->naviUpdateListener:Lio/rong/imlib/navigation/NavigationClient$NaviUpdateListener;

    return-void
.end method

.method public setNotificationQuietHours(Ljava/lang/String;ILio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_3d

    .line 2
    invoke-static {p1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v0

    if-nez v0, :cond_35

    if-lez p2, :cond_35

    const/16 v0, 0x5a0

    if-ge p2, v0, :cond_35

    if-eqz p3, :cond_35

    const-string v0, "^(([0-1][0-9])|2[0-3]):[0-5][0-9]:([0-5][0-9])$"

    .line 3
    invoke-static {v0}, Ljava/util/regex/Pattern;->compile(Ljava/lang/String;)Ljava/util/regex/Pattern;

    move-result-object v0

    .line 4
    invoke-virtual {v0, p1}, Ljava/util/regex/Pattern;->matcher(Ljava/lang/CharSequence;)Ljava/util/regex/Matcher;

    move-result-object v0

    .line 5
    invoke-virtual {v0}, Ljava/util/regex/Matcher;->find()Z

    move-result v0

    if-eqz v0, :cond_2d

    .line 6
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$50;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$50;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->AddPushSetting(Ljava/lang/String;ILio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 7
    :cond_2d
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "startTime \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 8
    :cond_35
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "startTime, spanMinutes \u6216 spanMinutes \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 9
    :cond_3d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setOfflineMessageDuration(Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/Long;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$56;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$56;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->SetOfflineMessageDuration(Ljava/lang/String;Lio/rong/imlib/NativeObject$SetOfflineMessageDurationListener;)V

    return-void
.end method

.method public setOnReceiveMessageListener(Lio/rong/imlib/NativeClient$OnReceiveMessageListener;)V
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$38;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$38;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OnReceiveMessageListener;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->SetMessageListener(Lio/rong/imlib/NativeObject$ReceiveMessageListener;)V

    .line 2
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v0, Lio/rong/imlib/NativeClient$39;

    invoke-direct {v0, p0}, Lio/rong/imlib/NativeClient$39;-><init>(Lio/rong/imlib/NativeClient;)V

    invoke-virtual {p1, v0}, Lio/rong/imlib/NativeObject;->SetGetSearchableWordListener(Lio/rong/imlib/NativeObject$GetSearchableWordListener;)V

    return-void
.end method

.method public setPushSetting(ILjava/lang/String;Lio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 6
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(I",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/Long;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$11;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$11;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->SetPushSetting(ILjava/lang/String;Lio/rong/imlib/NativeObject$SetPushSettingListener;)V

    return-void
.end method

.method public setRTCUserData(Ljava/lang/String;ILjava/util/Map;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 14
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/lang/String;",
            "I",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1e

    .line 2
    instance-of v1, p3, Ljava/util/HashMap;

    if-eqz v1, :cond_16

    .line 3
    new-instance v6, Lio/rong/imlib/NativeClient$71;

    invoke-direct {v6, p0, p6}, Lio/rong/imlib/NativeClient$71;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v1, p1

    move v2, p2

    move-object v3, p3

    move-object v4, p4

    move-object v5, p5

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeObject;->RTCSetUserData(Ljava/lang/String;ILjava/util/Map;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 4
    :cond_16
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "setRTCUserData data must be HashMap!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 5
    :cond_1e
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method setRTCUserState(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_d

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$70;

    invoke-direct {v1, p0, p3}, Lio/rong/imlib/NativeClient$70;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, v1}, Lio/rong/imlib/NativeObject;->RTCSetUserState(Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setReconnectKickEnable(Z)V
    .registers 3

    .line 1
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    invoke-virtual {v0, p1}, Lio/rong/imlib/ConnectionService;->setReconnectKickEnable(Z)V

    return-void
.end method

.method public setServerInfo(Ljava/lang/String;Ljava/lang/String;)V
    .registers 4

    if-eqz p1, :cond_9

    .line 1
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object v0

    invoke-virtual {v0, p1}, Lio/rong/imlib/navigation/NavigationClient;->setNaviDomainList(Ljava/lang/String;)V

    .line 2
    :cond_9
    invoke-static {p2}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result p1

    if-nez p1, :cond_1b

    .line 3
    invoke-static {}, Lio/rong/imlib/navigation/NavigationClient;->getInstance()Lio/rong/imlib/navigation/NavigationClient;

    move-result-object p1

    const-string v0, ""

    invoke-virtual {p1, p2, v0}, Lio/rong/imlib/navigation/NavigationClient;->formatServerAddress(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;

    move-result-object p1

    iput-object p1, p0, Lio/rong/imlib/NativeClient;->mFileServer:Ljava/lang/String;

    :cond_1b
    return-void
.end method

.method public setSubscribeStatusListener(Lio/rong/imlib/NativeClient$IResultCallbackEx;)V
    .registers 4
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/NativeClient$IResultCallbackEx<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$10;

    invoke-direct {v1, p0, p1}, Lio/rong/imlib/NativeClient$10;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V

    invoke-virtual {v0, v1}, Lio/rong/imlib/NativeObject;->SetSubscribeStatusListener(Lio/rong/imlib/NativeObject$UserStatusListener;)V

    return-void
.end method

.method public setUserData(Lio/rong/imlib/model/UserData;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_1ad

    if-eqz p1, :cond_1a5

    .line 2
    new-instance v0, Lorg/json/JSONObject;

    invoke-direct {v0}, Lorg/json/JSONObject;-><init>()V

    .line 3
    :try_start_b
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v1

    if-eqz v1, :cond_76

    .line 4
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    const-string v2, "realName"

    .line 5
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getRealName()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "sex"

    .line 6
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getSex()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "age"

    .line 7
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getAge()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "birthday"

    .line 8
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getBirthday()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "job"

    .line 9
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getJob()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "portraitUri"

    .line 10
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getPortraitUri()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "comment"

    .line 11
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getPersonalInfo()Lio/rong/imlib/model/UserData$PersonalInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$PersonalInfo;->getComment()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "personalInfo"

    .line 12
    invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 13
    :cond_76
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getAccountInfo()Lio/rong/imlib/model/UserData$AccountInfo;

    move-result-object v1

    if-eqz v1, :cond_ad

    .line 14
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    const-string v2, "appUserId"

    .line 15
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getAccountInfo()Lio/rong/imlib/model/UserData$AccountInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$AccountInfo;->getAppUserId()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "userName"

    .line 16
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getAccountInfo()Lio/rong/imlib/model/UserData$AccountInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$AccountInfo;->getUserName()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "nickName"

    .line 17
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getAccountInfo()Lio/rong/imlib/model/UserData$AccountInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$AccountInfo;->getNickName()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "accountInfo"

    .line 18
    invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 19
    :cond_ad
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v1

    if-eqz v1, :cond_10b

    .line 20
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    const-string v2, "tel"

    .line 21
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getTel()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "email"

    .line 22
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getEmail()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "address"

    .line 23
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getAddress()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "qq"

    .line 24
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getQQ()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "weibo"

    .line 25
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getWeibo()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "weixin"

    .line 26
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getContactInfo()Lio/rong/imlib/model/UserData$ContactInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ContactInfo;->getWeixin()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "contactInfo"

    .line 27
    invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 28
    :cond_10b
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v1

    if-eqz v1, :cond_169

    .line 29
    new-instance v1, Lorg/json/JSONObject;

    invoke-direct {v1}, Lorg/json/JSONObject;-><init>()V

    const-string v2, "network"

    .line 30
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getNetwork()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "carrier"

    .line 31
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getCarrier()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "systemVersion"

    .line 32
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getSystemVersion()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "os"

    .line 33
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getOs()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "device"

    .line 34
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getDevice()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "mobilePhoneManufacturers"

    .line 35
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getClientInfo()Lio/rong/imlib/model/UserData$ClientInfo;

    move-result-object v3

    invoke-virtual {v3}, Lio/rong/imlib/model/UserData$ClientInfo;->getMobilePhoneManufacturers()Ljava/lang/String;

    move-result-object v3

    invoke-virtual {v1, v2, v3}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v2, "clientInfo"

    .line 36
    invoke-virtual {v0, v2, v1}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    :cond_169
    const-string v1, "appVersion"

    .line 37
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getAppVersion()Ljava/lang/String;

    move-result-object v2

    invoke-virtual {v0, v1, v2}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    const-string v1, "extra"

    .line 38
    invoke-virtual {p1}, Lio/rong/imlib/model/UserData;->getExtra()Ljava/lang/String;

    move-result-object p1

    invoke-virtual {v0, v1, p1}, Lorg/json/JSONObject;->putOpt(Ljava/lang/String;Ljava/lang/Object;)Lorg/json/JSONObject;

    .line 39
    invoke-virtual {v0}, Lorg/json/JSONObject;->toString()Ljava/lang/String;

    move-result-object p1

    const-string v0, "NativeClient"

    .line 40
    new-instance v1, Ljava/lang/StringBuilder;

    invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V

    const-string v2, "UserData "

    invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;

    invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;

    move-result-object v1

    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->d(Ljava/lang/String;Ljava/lang/String;)I

    .line 41
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$53;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$53;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->SetUserData(Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V
    :try_end_19f
    .catch Lorg/json/JSONException; {:try_start_b .. :try_end_19f} :catch_1a0

    goto :goto_1a4

    :catch_1a0
    move-exception p1

    .line 42
    invoke-virtual {p1}, Lorg/json/JSONException;->printStackTrace()V

    :goto_1a4
    return-void

    .line 43
    :cond_1a5
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, "userData \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 44
    :cond_1ad
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public setUserStatus(ILio/rong/imlib/NativeClient$IResultCallback;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(I",
            "Lio/rong/imlib/NativeClient$IResultCallback<",
            "Ljava/lang/Integer;",
            ">;)V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v1, Lio/rong/imlib/NativeClient$12;

    invoke-direct {v1, p0, p2}, Lio/rong/imlib/NativeClient$12;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallback;)V

    invoke-virtual {v0, p1, v1}, Lio/rong/imlib/NativeObject;->SetUserStatus(ILio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public subscribePublicService(Ljava/lang/String;IZLio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 7

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_d

    .line 2
    new-instance v1, Lio/rong/imlib/NativeClient$20;

    invoke-direct {v1, p0, p4}, Lio/rong/imlib/NativeClient$20;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {v0, p1, p2, p3, v1}, Lio/rong/imlib/NativeObject;->SubscribeAccount(Ljava/lang/String;IZLio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 3
    :cond_d
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public subscribeStatus(Ljava/util/List;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V
    .registers 5
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Ljava/lang/String;",
            ">;",
            "Lio/rong/imlib/NativeClient$IResultCallbackEx<",
            "Ljava/lang/Integer;",
            "Ljava/lang/Integer;",
            ">;)V"
        }
    .end annotation

    .line 1
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    .line 2
    iget-object v1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-array v0, v0, [Ljava/lang/String;

    invoke-interface {p1, v0}, Ljava/util/List;->toArray([Ljava/lang/Object;)[Ljava/lang/Object;

    move-result-object p1

    check-cast p1, [Ljava/lang/String;

    new-instance v0, Lio/rong/imlib/NativeClient$9;

    invoke-direct {v0, p0, p2}, Lio/rong/imlib/NativeClient$9;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$IResultCallbackEx;)V

    invoke-virtual {v1, p1, v0}, Lio/rong/imlib/NativeObject;->SubscribeStatus([Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void
.end method

.method public switchAppKey(Ljava/lang/String;Ljava/lang/String;)V
    .registers 12

    const/4 v0, 0x0

    .line 1
    invoke-virtual {p0, v0}, Lio/rong/imlib/NativeClient;->disconnect(Z)V

    .line 2
    iput-object p1, p0, Lio/rong/imlib/NativeClient;->appKey:Ljava/lang/String;

    .line 3
    iput-object p2, p0, Lio/rong/imlib/NativeClient;->deviceId:Ljava/lang/String;

    .line 4
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->clearCache(Landroid/content/Context;)V

    .line 5
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0}, Lio/rong/imlib/navigation/NavigationCacheHelper;->clearNaviCache(Landroid/content/Context;)V

    .line 6
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, v1, v2, p1}, Lio/rong/imlib/ConnectionService;->initService(Landroid/content/Context;Lio/rong/imlib/NativeObject;Ljava/lang/String;)V

    .line 7
    iget-object v3, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;

    move-result-object v5

    iget-object v7, p0, Lio/rong/imlib/NativeClient;->dbPath:Ljava/lang/String;

    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    const-string v1, "ronglog"

    invoke-static {v0, v1}, Lio/rong/common/FileUtils;->getCachePath(Landroid/content/Context;Ljava/lang/String;)Ljava/lang/String;

    move-result-object v8

    move-object v4, p1

    move-object v6, p2

    invoke-virtual/range {v3 .. v8}, Lio/rong/imlib/NativeObject;->InitClient(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)I

    .line 8
    invoke-static {}, Lio/rong/imlib/ConnectionService;->getInstance()Lio/rong/imlib/ConnectionService;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    iget-object v2, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, v1, v2, p1}, Lio/rong/imlib/ConnectionService;->initService(Landroid/content/Context;Lio/rong/imlib/NativeObject;Ljava/lang/String;)V

    .line 9
    invoke-static {}, Lio/rong/rtlog/upload/RtLogUploadManager;->getInstance()Lio/rong/rtlog/upload/RtLogUploadManager;

    move-result-object v0

    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    const-string v2, "4.1.0"

    invoke-virtual {v0, v1, v2, p2, p1}, Lio/rong/rtlog/upload/RtLogUploadManager;->init(Landroid/content/Context;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V

    const/4 p1, 0x0

    .line 10
    iput-object p1, p0, Lio/rong/imlib/NativeClient;->mFileServer:Ljava/lang/String;

    return-void
.end method

.method public syncGroup(Ljava/util/List;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 8
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/List<",
            "Lio/rong/imlib/model/Group;",
            ">;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_4c

    if-eqz p1, :cond_44

    .line 2
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    if-eqz v0, :cond_44

    .line 3
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v0

    new-array v0, v0, [Ljava/lang/String;

    .line 4
    invoke-interface {p1}, Ljava/util/List;->size()I

    move-result v1

    new-array v1, v1, [Ljava/lang/String;

    const/4 v2, 0x0

    .line 5
    invoke-interface {p1}, Ljava/util/List;->iterator()Ljava/util/Iterator;

    move-result-object p1

    :goto_1d
    invoke-interface {p1}, Ljava/util/Iterator;->hasNext()Z

    move-result v3

    if-eqz v3, :cond_39

    invoke-interface {p1}, Ljava/util/Iterator;->next()Ljava/lang/Object;

    move-result-object v3

    check-cast v3, Lio/rong/imlib/model/Group;

    .line 6
    invoke-virtual {v3}, Lio/rong/imlib/model/Group;->getId()Ljava/lang/String;

    move-result-object v4

    aput-object v4, v0, v2

    add-int/lit8 v4, v2, 0x1

    .line 7
    invoke-virtual {v3}, Lio/rong/imlib/model/Group;->getName()Ljava/lang/String;

    move-result-object v3

    aput-object v3, v1, v2

    move v2, v4

    goto :goto_1d

    .line 8
    :cond_39
    iget-object p1, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    new-instance v2, Lio/rong/imlib/NativeClient$33;

    invoke-direct {v2, p0, p2}, Lio/rong/imlib/NativeClient$33;-><init>(Lio/rong/imlib/NativeClient;Lio/rong/imlib/NativeClient$OperationCallback;)V

    invoke-virtual {p1, v0, v1, v2}, Lio/rong/imlib/NativeObject;->SyncGroups([Ljava/lang/String;[Ljava/lang/String;Lio/rong/imlib/NativeObject$PublishAckListener;)V

    return-void

    .line 9
    :cond_44
    new-instance p1, Ljava/lang/IllegalArgumentException;

    const-string p2, " groups \u53c2\u6570\u5f02\u5e38\u3002"

    invoke-direct {p1, p2}, Ljava/lang/IllegalArgumentException;-><init>(Ljava/lang/String;)V

    throw p1

    .line 10
    :cond_4c
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    goto :goto_55

    :goto_54
    throw p1

    :goto_55
    goto :goto_54
.end method

.method public updateConversationInfo(Lio/rong/imlib/model/Conversation$ConversationType;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {p1}, Lio/rong/imlib/model/Conversation$ConversationType;->getValue()I

    move-result p1

    invoke-virtual {v0, p2, p1, p3, p4}, Lio/rong/imlib/NativeObject;->UpdateConversationInfo(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;)Z

    move-result p1

    return p1
.end method

.method public updateMessageExpansion(Ljava/util/Map;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V
    .registers 18
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Ljava/util/Map<",
            "Ljava/lang/String;",
            "Ljava/lang/String;",
            ">;",
            "Ljava/lang/String;",
            "Lio/rong/imlib/NativeClient$OperationCallback;",
            ")V"
        }
    .end annotation

    move-object v7, p0

    move-object v2, p1

    move-object/from16 v5, p2

    move-object/from16 v6, p3

    .line 1
    iget-object v0, v7, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_90

    .line 2
    invoke-virtual {v0, v5}, Lio/rong/imlib/NativeObject;->GetMessageByUId(Ljava/lang/String;)Lio/rong/imlib/NativeObject$Message;

    move-result-object v3

    .line 3
    invoke-virtual {p0, v5}, Lio/rong/imlib/NativeClient;->getMessageByUid(Ljava/lang/String;)Lio/rong/imlib/model/Message;

    move-result-object v4

    if-eqz v4, :cond_84

    .line 4
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->isCanIncludeExpansion()Z

    move-result v0

    if-nez v0, :cond_1c

    goto/16 :goto_84

    .line 5
    :cond_1c
    sget-object v0, Lio/rong/imlib/model/Conversation$ConversationType;->PRIVATE:Lio/rong/imlib/model/Conversation$ConversationType;

    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_47

    sget-object v0, Lio/rong/imlib/model/Conversation$ConversationType;->GROUP:Lio/rong/imlib/model/Conversation$ConversationType;

    .line 6
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v1

    invoke-virtual {v0, v1}, Ljava/lang/Enum;->equals(Ljava/lang/Object;)Z

    move-result v0

    if-nez v0, :cond_47

    if-eqz v6, :cond_46

    const-string v0, "NativeClient"

    const-string v1, "only private or group support expansion"

    .line 7
    invoke-static {v0, v1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 8
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MESSAGE_CANT_EXPAND:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v6, v0}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_46
    return-void

    .line 9
    :cond_47
    invoke-direct {p0, p1, v3}, Lio/rong/imlib/NativeClient;->judgeExpansionExceedLimit(Ljava/util/Map;Lio/rong/imlib/NativeObject$Message;)Z

    move-result v0

    if-eqz v0, :cond_59

    if-eqz v6, :cond_58

    .line 10
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MSG_EXPANSION_SIZE_LIMIT_EXCEED:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v6, v0}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_58
    return-void

    .line 11
    :cond_59
    invoke-static {v5, p1}, Lio/rong/message/MessageExpansionMessage;->obtain(Ljava/lang/String;Ljava/util/Map;)Lio/rong/message/MessageExpansionMessage;

    move-result-object v0

    .line 12
    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v1

    invoke-virtual {v4}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v8

    invoke-static {v1, v8, v0}, Lio/rong/imlib/model/Message;->obtain(Ljava/lang/String;Lio/rong/imlib/model/Conversation$ConversationType;Lio/rong/imlib/model/MessageContent;)Lio/rong/imlib/model/Message;

    move-result-object v8

    const/4 v9, 0x0

    const/4 v10, 0x0

    const/4 v11, 0x0

    const/4 v12, 0x0

    .line 13
    new-instance v13, Lio/rong/imlib/NativeClient$79;

    move-object v0, v13

    move-object v1, p0

    move-object v2, p1

    move-object/from16 v5, p2

    move-object/from16 v6, p3

    invoke-direct/range {v0 .. v6}, Lio/rong/imlib/NativeClient$79;-><init>(Lio/rong/imlib/NativeClient;Ljava/util/Map;Lio/rong/imlib/NativeObject$Message;Lio/rong/imlib/model/Message;Ljava/lang/String;Lio/rong/imlib/NativeClient$OperationCallback;)V

    move-object v0, p0

    move-object v1, v8

    move-object v2, v9

    move-object v3, v10

    move-object v4, v11

    move-object v5, v12

    move-object v6, v13

    invoke-virtual/range {v0 .. v6}, Lio/rong/imlib/NativeClient;->sendMessageOption(Lio/rong/imlib/model/Message;Ljava/lang/String;Ljava/lang/String;Lio/rong/imlib/model/SendMessageOption;[Ljava/lang/String;Lio/rong/imlib/NativeClient$ISendMessageCallback;)V

    return-void

    :cond_84
    :goto_84
    if-eqz v6, :cond_8f

    .line 14
    sget-object v0, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_MESSAGE_CANT_EXPAND:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {v0}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result v0

    invoke-interface {v6, v0}, Lio/rong/imlib/NativeClient$OperationCallback;->onError(I)V

    :cond_8f
    return-void

    .line 15
    :cond_90
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method

.method public updateMessageReceiptStatus(Ljava/lang/String;IJ)Z
    .registers 6

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    invoke-virtual {v0, p1, p2, p3, p4}, Lio/rong/imlib/NativeObject;->UpdateMessageReceiptStatus(Ljava/lang/String;IJ)Z

    move-result p1

    return p1
.end method

.method updateReadReceiptRequestInfo(Ljava/lang/String;Ljava/lang/String;)Z
    .registers 4

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_9

    .line 2
    invoke-virtual {v0, p1, p2}, Lio/rong/imlib/NativeObject;->UpdateReadReceiptRequestInfo(Ljava/lang/String;Ljava/lang/String;)Z

    move-result p1

    return p1

    .line 3
    :cond_9
    new-instance p1, Ljava/lang/RuntimeException;

    const-string p2, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {p1, p2}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw p1
.end method

.method public updateVoIPCallInfo(Ljava/lang/String;)V
    .registers 3

    .line 1
    sget-object v0, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v0, p1}, Lio/rong/imlib/navigation/NavigationCacheHelper;->updateVoIPCallInfo(Landroid/content/Context;Ljava/lang/String;)V

    return-void
.end method

.method public uploadMedia(Lio/rong/imlib/model/Message;Lio/rong/imlib/NativeClient$IResultProgressCallback;)V
    .registers 12
    .annotation system Ldalvik/annotation/Signature;
        value = {
            "(",
            "Lio/rong/imlib/model/Message;",
            "Lio/rong/imlib/NativeClient$IResultProgressCallback<",
            "Ljava/lang/String;",
            ">;)V"
        }
    .end annotation

    const-string v0, "NativeClient"

    if-eqz p1, :cond_112

    .line 1
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getConversationType()Lio/rong/imlib/model/Conversation$ConversationType;

    move-result-object v1

    if-eqz v1, :cond_112

    .line 2
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getTargetId()Ljava/lang/String;

    move-result-object v1

    invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z

    move-result v1

    if-nez v1, :cond_112

    .line 3
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    if-nez v1, :cond_1c

    goto/16 :goto_112

    :cond_1c
    const/4 v1, 0x0

    .line 4
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    instance-of v2, v2, Lio/rong/message/ImageMessage;

    if-eqz v2, :cond_32

    .line 5
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/ImageMessage;

    invoke-virtual {v1}, Lio/rong/message/ImageMessage;->getLocalUri()Landroid/net/Uri;

    move-result-object v1

    :cond_2f
    :goto_2f
    move-object v6, v1

    goto/16 :goto_eb

    .line 6
    :cond_32
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    instance-of v2, v2, Lio/rong/message/GIFMessage;

    if-eqz v2, :cond_69

    .line 7
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/GIFMessage;

    invoke-virtual {v1}, Lio/rong/message/GIFMessage;->getGifDataSize()J

    move-result-wide v1

    .line 8
    invoke-virtual {p0}, Lio/rong/imlib/NativeClient;->getGIFLimitSize()I

    move-result v3

    mul-int/lit16 v3, v3, 0x400

    int-to-long v3, v3

    cmp-long v5, v1, v3

    if-lez v5, :cond_5e

    const-string p1, "Gif size is too long! "

    .line 9
    invoke-static {v0, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 10
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_GIF_MSG_SIZE_LIMIT_EXCEED:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p2, p1}, Lio/rong/imlib/NativeClient$IResultProgressCallback;->onError(I)V

    return-void

    .line 11
    :cond_5e
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/GIFMessage;

    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v1

    goto :goto_2f

    .line 12
    :cond_69
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v2

    if-eqz v2, :cond_a5

    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v2

    const-string v3, "RC:SightMsg"

    invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_a5

    .line 13
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/SightMessage;

    invoke-virtual {v1}, Lio/rong/message/SightMessage;->getDuration()I

    move-result v1

    .line 14
    invoke-virtual {p0}, Lio/rong/imlib/NativeClient;->getVideoLimitTime()I

    move-result v2

    if-le v1, v2, :cond_9a

    const-string p1, "sight duration is too long! "

    .line 15
    invoke-static {v0, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 16
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->RC_SIGHT_MSG_DURATION_LIMIT_EXCEED:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p2, p1}, Lio/rong/imlib/NativeClient$IResultProgressCallback;->onError(I)V

    return-void

    .line 17
    :cond_9a
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v1

    goto :goto_2f

    .line 18
    :cond_a5
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    instance-of v2, v2, Lio/rong/message/HQVoiceMessage;

    if-eqz v2, :cond_b9

    .line 19
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v1

    goto/16 :goto_2f

    .line 20
    :cond_b9
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v2

    if-eqz v2, :cond_d7

    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getObjectName()Ljava/lang/String;

    move-result-object v2

    const-string v3, "RC:CombineMsg"

    invoke-virtual {v2, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z

    move-result v2

    if-eqz v2, :cond_d7

    .line 21
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v1

    goto/16 :goto_2f

    .line 22
    :cond_d7
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v2

    instance-of v2, v2, Lio/rong/message/MediaMessageContent;

    if-eqz v2, :cond_2f

    .line 23
    invoke-virtual {p1}, Lio/rong/imlib/model/Message;->getContent()Lio/rong/imlib/model/MessageContent;

    move-result-object v1

    check-cast v1, Lio/rong/message/MediaMessageContent;

    invoke-virtual {v1}, Lio/rong/message/MediaMessageContent;->getLocalPath()Landroid/net/Uri;

    move-result-object v1

    goto/16 :goto_2f

    .line 24
    :goto_eb
    sget-object v1, Lio/rong/imlib/NativeClient;->mContext:Landroid/content/Context;

    invoke-static {v1, v6}, Lio/rong/common/FileUtils;->isFileExistsWithUri(Landroid/content/Context;Landroid/net/Uri;)Z

    move-result v1

    if-nez v1, :cond_102

    const-string p1, "local path of the media file can\'t be empty!"

    .line 25
    invoke-static {v0, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 26
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p2, p1}, Lio/rong/imlib/NativeClient$IResultProgressCallback;->onError(I)V

    return-void

    .line 27
    :cond_102
    invoke-static {}, Lio/rong/imlib/filetransfer/upload/MediaUploadEngine;->getInstance()Lio/rong/imlib/filetransfer/upload/MediaUploadEngine;

    move-result-object v2

    iget-object v3, p0, Lio/rong/imlib/NativeClient;->mWorkHandler:Landroid/os/Handler;

    iget-object v4, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    iget-object v7, p0, Lio/rong/imlib/NativeClient;->mFileServer:Ljava/lang/String;

    move-object v5, p1

    move-object v8, p2

    invoke-virtual/range {v2 .. v8}, Lio/rong/imlib/filetransfer/upload/MediaUploadEngine;->uploadMedia(Landroid/os/Handler;Lio/rong/imlib/NativeObject;Lio/rong/imlib/model/Message;Landroid/net/Uri;Ljava/lang/String;Lio/rong/imlib/NativeClient$IResultProgressCallback;)V

    return-void

    :cond_112
    :goto_112
    const-string p1, "conversation type or targetId or message content can\'t be null!"

    .line 28
    invoke-static {v0, p1}, Lio/rong/common/rlog/RLog;->e(Ljava/lang/String;Ljava/lang/String;)I

    .line 29
    sget-object p1, Lio/rong/imlib/RongIMClient$ErrorCode;->PARAMETER_ERROR:Lio/rong/imlib/RongIMClient$ErrorCode;

    invoke-virtual {p1}, Lio/rong/imlib/RongIMClient$ErrorCode;->getValue()I

    move-result p1

    invoke-interface {p2, p1}, Lio/rong/imlib/NativeClient$IResultProgressCallback;->onError(I)V

    return-void
.end method

.method public useRTCOnly()Z
    .registers 3

    .line 1
    iget-object v0, p0, Lio/rong/imlib/NativeClient;->nativeObj:Lio/rong/imlib/NativeObject;

    if-eqz v0, :cond_9

    .line 2
    invoke-virtual {v0}, Lio/rong/imlib/NativeObject;->UseRTCOnly()Z

    move-result v0

    return v0

    .line 3
    :cond_9
    new-instance v0, Ljava/lang/RuntimeException;

    const-string v1, "NativeClient \u5c1a\u672a\u521d\u59cb\u5316!"

    invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V

    throw v0
.end method