.class public abstract Lcom/forum/im/ui/base/IMBaseActivity; .super Landroid/app/Activity; .source "IMBaseActivity.java" # interfaces .implements Landroid/view/View$OnClickListener; # static fields .field private static final CAMERA_REQUEST_CODE:I = 0x10 .field private static final IMAGE_SIZE:I = 0x19000 .field private static final PERMISSION_CAMERA_REQUEST_CODE:I = 0x12 .field public static final PULL_TO_REFRESH_DOWN:I = 0x111 .field public static final RECERIVE_OK:I = 0x1111 .field public static final REFRESH:I = 0x11 .field private static final SDK_PERMISSION_REQUEST:I = 0x7f .field public static final SEND_OK:I = 0x1110 # instance fields .field private CAN_RECORD_AUDIO:Z .field private CAN_WRITE_EXTERNAL_STORAGE:Z .field public activityRootView:Landroid/view/View; .field private adapter:Lcom/forum/im/adapter/DataAdapter; .field public bottomStatusHeight:I .field public btnSend:Landroid/widget/Button; .field private camPicPath:Ljava/lang/String; .field public emoji:Landroid/widget/ImageView; .field public emoji_group:Landroid/widget/LinearLayout; .field public expressionViewpager:Landroidx/viewpager/widget/ViewPager; .field public imageList:Ljava/util/ArrayList; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/ArrayList<", "Ljava/lang/String;", ">;" } .end annotation .end field .field public imagePosition:Ljava/util/HashMap; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/HashMap<", "Ljava/lang/Integer;", "Ljava/lang/Integer;", ">;" } .end annotation .end field .field private imageViewAdd:Landroid/widget/ImageView; .field private isAndroidQ:Z .field public isDown:Z .field public item:[Ljava/lang/String; .field public ivBack:Landroid/widget/ImageView; .field public listSlideHeight:I .field private mCameraUri:Landroid/net/Uri; .field public mChatDbManager:Lcom/forum/im/db/ChatDbManager; .field public mCurrentPhotoFile:Ljava/io/File; .field public mEditTextContent:Landroid/widget/EditText; .field private mToast:Landroid/widget/Toast; .field public mess_iv:Landroid/widget/ImageView; .field public mess_lv:Landroid/widget/ListView; .field public number:I .field private onKeyListener:Landroid/view/View$OnKeyListener; .field public page:I .field public pagelist:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Lcom/forum/im/db/ChatMessageBean;", ">;" } .end annotation .end field .field private permissionInfo:Ljava/lang/String; .field public position:I .field public pullList:Lcom/forum/im/widget/pulltorefresh/PullToRefreshLayout; .field private reslist:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Ljava/lang/String;", ">;" } .end annotation .end field .field public send_emoji_icon:Landroid/widget/TextView; .field public tbbv:Lcom/forum/im/widget/ChatBottomView; .field public tblist:Ljava/util/List; .annotation system Ldalvik/annotation/Signature; value = { "Ljava/util/List<", "Lcom/forum/im/db/ChatMessageBean;", ">;" } .end annotation .end field .field public tvTitle:Landroid/widget/TextView; .field public userName:Ljava/lang/String; .field public voiceBtn:Lcom/forum/im/widget/AudioRecordButton; .field public voiceIv:Landroid/widget/ImageView; # direct methods .method static bridge synthetic -$$Nest$fgetCAN_WRITE_EXTERNAL_STORAGE(Lcom/forum/im/ui/base/IMBaseActivity;)Z .registers 1 iget-boolean p0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->CAN_WRITE_EXTERNAL_STORAGE:Z return p0 .end method .method static bridge synthetic -$$Nest$mcheckPermissionAndCamera(Lcom/forum/im/ui/base/IMBaseActivity;)V .registers 1 invoke-direct {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->checkPermissionAndCamera()V return-void .end method .method static bridge synthetic -$$Nest$mgetSavePicPath(Lcom/forum/im/ui/base/IMBaseActivity;)Ljava/lang/String; .registers 1 invoke-direct {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getSavePicPath()Ljava/lang/String; move-result-object p0 return-object p0 .end method .method public constructor ()V .registers 6 .line 75 invoke-direct {p0}, Landroid/app/Activity;->()V const/4 v0, 0x0 .line 83 iput-boolean v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->isDown:Z const/4 v1, 0x1 .line 84 iput-boolean v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->CAN_WRITE_EXTERNAL_STORAGE:Z .line 85 iput-boolean v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->CAN_RECORD_AUDIO:Z .line 87 iput v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->bottomStatusHeight:I .line 88 iput v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->listSlideHeight:I .line 102 const-string v2, "test" iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->userName:Ljava/lang/String; const/4 v2, 0x5 .line 105 new-array v2, v2, [Ljava/lang/String; const-string v3, "\u4f60\u597d!" aput-object v3, v2, v0 const-string v3, "\u6211\u6b63\u5fd9\u7740\u5462,\u7b49\u7b49" aput-object v3, v2, v1 const/4 v3, 0x2 const-string v4, "\u6709\u5565\u4e8b\u5417\uff1f" aput-object v4, v2, v3 const/4 v3, 0x3 const-string v4, "\u6709\u65f6\u95f4\u804a\u804a\u5417" aput-object v4, v2, v3 const/4 v3, 0x4 const-string v4, "\u518d\u89c1\uff01" aput-object v4, v2, v3 iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->item:[Ljava/lang/String; .line 109 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tblist:Ljava/util/List; .line 112 iput v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->page:I const/16 v2, 0xa .line 113 iput v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->number:I .line 114 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->pagelist:Ljava/util/List; .line 115 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->imageList:Ljava/util/ArrayList; .line 116 new-instance v2, Ljava/util/HashMap; invoke-direct {v2}, Ljava/util/HashMap;->()V iput-object v2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->imagePosition:Ljava/util/HashMap; .line 141 sget v2, Landroid/os/Build$VERSION;->SDK_INT:I const/16 v3, 0x1d if-lt v2, v3, :cond_58 move v0, v1 :cond_58 iput-boolean v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->isAndroidQ:Z .line 934 new-instance v0, Lcom/forum/im/ui/base/IMBaseActivity$13; invoke-direct {v0, p0}, Lcom/forum/im/ui/base/IMBaseActivity$13;->(Lcom/forum/im/ui/base/IMBaseActivity;)V iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->onKeyListener:Landroid/view/View$OnKeyListener; return-void .end method .method private addPermission(Ljava/util/ArrayList;Ljava/lang/String;)Z .registers 5 .annotation system Ldalvik/annotation/Signature; value = { "(", "Ljava/util/ArrayList<", "Ljava/lang/String;", ">;", "Ljava/lang/String;", ")Z" } .end annotation .line 599 invoke-virtual {p0, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->checkSelfPermission(Ljava/lang/String;)I move-result v0 const/4 v1, 0x1 if-eqz v0, :cond_13 .line 600 invoke-virtual {p0, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->shouldShowRequestPermissionRationale(Ljava/lang/String;)Z move-result v0 if-eqz v0, :cond_e return v1 .line 603 :cond_e invoke-virtual {p1, p2}, Ljava/util/ArrayList;->add(Ljava/lang/Object;)Z const/4 p1, 0x0 return p1 :cond_13 return v1 .end method .method private checkPermissionAndCamera()V .registers 4 .line 433 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getApplication()Landroid/app/Application; move-result-object v0 const-string v1, "android.permission.CAMERA" invoke-static {v0, v1}, Landroidx/core/content/ContextCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I move-result v0 if-nez v0, :cond_10 .line 437 invoke-direct {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->openCamera()V goto :goto_1b :cond_10 const/4 v0, 0x1 .line 440 new-array v0, v0, [Ljava/lang/String; const/4 v2, 0x0 aput-object v1, v0, v2 const/16 v1, 0x12 invoke-static {p0, v0, v1}, Landroidx/core/app/ActivityCompat;->requestPermissions(Landroid/app/Activity;[Ljava/lang/String;I)V :goto_1b return-void .end method .method private createImageFile()Ljava/io/File; .registers 4 .annotation system Ldalvik/annotation/Throws; value = { Ljava/io/IOException; } .end annotation .line 524 new-instance v0, Ljava/text/SimpleDateFormat; const-string v1, "yyyyMMdd_HHmmss" invoke-static {}, Ljava/util/Locale;->getDefault()Ljava/util/Locale; move-result-object v2 invoke-direct {v0, v1, v2}, Ljava/text/SimpleDateFormat;->(Ljava/lang/String;Ljava/util/Locale;)V new-instance v1, Ljava/util/Date; invoke-direct {v1}, Ljava/util/Date;->()V invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String; move-result-object v0 .line 525 sget-object v1, Landroid/os/Environment;->DIRECTORY_PICTURES:Ljava/lang/String; invoke-virtual {p0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->getExternalFilesDir(Ljava/lang/String;)Ljava/io/File; move-result-object v1 .line 526 invoke-virtual {v1}, Ljava/io/File;->exists()Z move-result v2 if-nez v2, :cond_23 .line 527 invoke-virtual {v1}, Ljava/io/File;->mkdir()Z .line 529 :cond_23 new-instance v2, Ljava/io/File; invoke-direct {v2, v1, v0}, Ljava/io/File;->(Ljava/io/File;Ljava/lang/String;)V .line 530 const-string v0, "mounted" invoke-static {v2}, Landroidx/core/os/EnvironmentCompat;->getStorageState(Ljava/io/File;)Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-nez v0, :cond_36 const/4 v0, 0x0 return-object v0 :cond_36 return-object v2 .end method .method private createImageUri()Landroid/net/Uri; .registers 4 .line 509 invoke-static {}, Landroid/os/Environment;->getExternalStorageState()Ljava/lang/String; move-result-object v0 .line 511 const-string v1, "mounted" invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z move-result v0 if-eqz v0, :cond_1c .line 512 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getContentResolver()Landroid/content/ContentResolver; move-result-object v0 sget-object v1, Landroid/provider/MediaStore$Images$Media;->EXTERNAL_CONTENT_URI:Landroid/net/Uri; new-instance v2, Landroid/content/ContentValues; invoke-direct {v2}, Landroid/content/ContentValues;->()V invoke-virtual {v0, v1, v2}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri; move-result-object v0 return-object v0 .line 514 :cond_1c invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getContentResolver()Landroid/content/ContentResolver; move-result-object v0 sget-object v1, Landroid/provider/MediaStore$Images$Media;->INTERNAL_CONTENT_URI:Landroid/net/Uri; new-instance v2, Landroid/content/ContentValues; invoke-direct {v2}, Landroid/content/ContentValues;->()V invoke-virtual {v0, v1, v2}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri; move-result-object v0 return-object v0 .end method .method private downLoad()V .registers 3 .line 663 iget-boolean v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->isDown:Z if-nez v0, :cond_11 .line 664 new-instance v0, Ljava/lang/Thread; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$10; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$10;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-direct {v0, v1}, Ljava/lang/Thread;->(Ljava/lang/Runnable;)V .line 671 invoke-virtual {v0}, Ljava/lang/Thread;->start()V :cond_11 return-void .end method .method private getGridChildView(I)Landroid/view/View; .registers 8 const v0, 0x7f0c00c1 const/4 v1, 0x0 .line 788 invoke-static {p0, v0, v1}, Landroid/view/View;->inflate(Landroid/content/Context;ILandroid/view/ViewGroup;)Landroid/view/View; move-result-object v0 const v1, 0x7f09014c .line 789 invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v1 check-cast v1, Lcom/forum/im/widget/ExpandGridView; .line 790 new-instance v2, Ljava/util/ArrayList; invoke-direct {v2}, Ljava/util/ArrayList;->()V const/16 v3, 0x14 const/4 v4, 0x1 if-ne p1, v4, :cond_26 .line 792 iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->reslist:Ljava/util/List; const/4 v5, 0x0 invoke-interface {p1, v5, v3}, Ljava/util/List;->subList(II)Ljava/util/List; move-result-object p1 .line 793 invoke-interface {v2, p1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z goto :goto_36 :cond_26 const/4 v5, 0x2 if-ne p1, v5, :cond_36 .line 795 iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->reslist:Ljava/util/List; invoke-interface {p1}, Ljava/util/List;->size()I move-result v5 invoke-interface {p1, v3, v5}, Ljava/util/List;->subList(II)Ljava/util/List; move-result-object p1 invoke-interface {v2, p1}, Ljava/util/List;->addAll(Ljava/util/Collection;)Z .line 797 :cond_36 :goto_36 const-string p1, "delete_expression" invoke-interface {v2, p1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 798 new-instance p1, Lcom/forum/im/adapter/ExpressionAdapter; invoke-direct {p1, p0, v4, v2}, Lcom/forum/im/adapter/ExpressionAdapter;->(Landroid/content/Context;ILjava/util/List;)V .line 800 invoke-virtual {v1, p1}, Lcom/forum/im/widget/ExpandGridView;->setAdapter(Landroid/widget/ListAdapter;)V .line 801 new-instance v2, Lcom/forum/im/ui/base/IMBaseActivity$11; invoke-direct {v2, p0, p1}, Lcom/forum/im/ui/base/IMBaseActivity$11;->(Lcom/forum/im/ui/base/IMBaseActivity;Lcom/forum/im/adapter/ExpressionAdapter;)V invoke-virtual {v1, v2}, Lcom/forum/im/widget/ExpandGridView;->setOnItemClickListener(Landroid/widget/AdapterView$OnItemClickListener;)V return-object v0 .end method .method private getSavePicPath()Ljava/lang/String; .registers 5 .line 900 new-instance v0, Ljava/lang/StringBuilder; invoke-direct {v0}, Ljava/lang/StringBuilder;->()V sget-object v1, Lcom/forum/im/utils/FileSaveUtil;->SD_CARD_PATH:Ljava/lang/String; invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 const-string v1, "image_data/" invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 .line 902 :try_start_15 invoke-static {v0}, Lcom/forum/im/utils/FileSaveUtil;->createSDDirectory(Ljava/lang/String;)Ljava/io/File; :try_end_18 .catch Ljava/io/IOException; {:try_start_15 .. :try_end_18} :catch_19 goto :goto_1d :catch_19 move-exception v1 .line 905 invoke-virtual {v1}, Ljava/io/IOException;->printStackTrace()V .line 907 :goto_1d new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V invoke-static {}, Ljava/lang/System;->currentTimeMillis()J move-result-wide v2 invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder; move-result-object v1 const-string v2, ".png" invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 invoke-static {v1}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String; move-result-object v1 .line 908 new-instance v2, Ljava/lang/StringBuilder; invoke-direct {v2}, Ljava/lang/StringBuilder;->()V invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v0 invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v0 return-object v0 .end method .method private initActionBar()V .registers 4 .line 537 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v0 if-nez v0, :cond_7 return-void .line 541 :cond_7 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v0 const v1, 0x7f0c00be invoke-virtual {v0, v1}, Landroid/app/ActionBar;->setCustomView(I)V .line 542 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v0 const/16 v1, 0x10 invoke-virtual {v0, v1}, Landroid/app/ActionBar;->setDisplayOptions(I)V .line 543 new-instance v0, Lcom/forum/im/ui/base/IMBaseActivity$9; invoke-direct {v0, p0}, Lcom/forum/im/ui/base/IMBaseActivity$9;->(Lcom/forum/im/ui/base/IMBaseActivity;)V .line 559 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v1 invoke-virtual {v1}, Landroid/app/ActionBar;->getCustomView()Landroid/view/View; move-result-object v1 const v2, 0x7f0901c2 invoke-virtual {v1, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v1 invoke-virtual {v1, v0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 560 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v1 invoke-virtual {v1}, Landroid/app/ActionBar;->getCustomView()Landroid/view/View; move-result-object v1 const v2, 0x7f0901c9 invoke-virtual {v1, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v1 invoke-virtual {v1, v0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 561 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v1 invoke-virtual {v1}, Landroid/app/ActionBar;->getCustomView()Landroid/view/View; move-result-object v1 const v2, 0x7f090276 invoke-virtual {v1, v2}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v1 invoke-virtual {v1, v0}, Landroid/view/View;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 562 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getActionBar()Landroid/app/ActionBar; move-result-object v0 invoke-virtual {v0}, Landroid/app/ActionBar;->getCustomView()Landroid/view/View; move-result-object v0 const v1, 0x7f0905da invoke-virtual {v0, v1}, Landroid/view/View;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/TextView; invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getTitle()Ljava/lang/CharSequence; move-result-object v1 invoke-virtual {v1}, Ljava/lang/Object;->toString()Ljava/lang/String; move-result-object v1 invoke-virtual {v0, v1}, Landroid/widget/TextView;->setText(Ljava/lang/CharSequence;)V return-void .end method .method private initpop()V .registers 3 const v0, 0x7f0902d3 .line 657 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ListView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_lv:Landroid/widget/ListView; .line 658 new-instance v0, Lcom/forum/im/adapter/DataAdapter; iget-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->item:[Ljava/lang/String; invoke-direct {v0, p0, v1}, Lcom/forum/im/adapter/DataAdapter;->(Landroid/content/Context;[Ljava/lang/String;)V iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->adapter:Lcom/forum/im/adapter/DataAdapter; .line 659 iget-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_lv:Landroid/widget/ListView; invoke-virtual {v1, v0}, Landroid/widget/ListView;->setAdapter(Landroid/widget/ListAdapter;)V return-void .end method .method private openCamera()V .registers 5 .line 487 new-instance v0, Landroid/content/Intent; const-string v1, "android.media.action.IMAGE_CAPTURE" invoke-direct {v0, v1}, Landroid/content/Intent;->(Ljava/lang/String;)V .line 488 const-string v1, "mime_type" const-string v2, "image/jpeg" .line 489 invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent; .line 491 new-instance v1, Ljava/text/SimpleDateFormat; const-string v2, "yyyy_MM_dd_HH_mm_ss" invoke-direct {v1, v2}, Ljava/text/SimpleDateFormat;->(Ljava/lang/String;)V .line 493 new-instance v2, Ljava/util/Date; invoke-direct {v2}, Ljava/util/Date;->()V invoke-virtual {v1, v2}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String; move-result-object v1 .line 494 new-instance v2, Landroid/content/ContentValues; invoke-direct {v2}, Landroid/content/ContentValues;->()V .line 495 const-string v3, "title" invoke-virtual {v2, v3, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V .line 496 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getContentResolver()Landroid/content/ContentResolver; move-result-object v1 sget-object v3, Landroid/provider/MediaStore$Images$Media;->EXTERNAL_CONTENT_URI:Landroid/net/Uri; invoke-virtual {v1, v3, v2}, Landroid/content/ContentResolver;->insert(Landroid/net/Uri;Landroid/content/ContentValues;)Landroid/net/Uri; move-result-object v1 iput-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mCameraUri:Landroid/net/Uri; .line 498 const-string v2, "output" invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent; const/16 v1, 0x10 .line 500 invoke-virtual {p0, v0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->startActivityForResult(Landroid/content/Intent;I)V return-void .end method .method public static returnTime()Ljava/lang/String; .registers 2 .line 949 new-instance v0, Ljava/text/SimpleDateFormat; const-string v1, "yyyy-MM-dd HH:mm:ss" invoke-direct {v0, v1}, Ljava/text/SimpleDateFormat;->(Ljava/lang/String;)V .line 951 new-instance v1, Ljava/util/Date; invoke-direct {v1}, Ljava/util/Date;->()V invoke-virtual {v0, v1}, Ljava/text/SimpleDateFormat;->format(Ljava/util/Date;)Ljava/lang/String; move-result-object v0 return-object v0 .end method .method private showDialog(Ljava/lang/String;)V .registers 4 .line 876 new-instance v0, Ljava/lang/Thread; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$12; invoke-direct {v1, p0, p1}, Lcom/forum/im/ui/base/IMBaseActivity$12;->(Lcom/forum/im/ui/base/IMBaseActivity;Ljava/lang/String;)V invoke-direct {v0, v1}, Ljava/lang/Thread;->(Ljava/lang/Runnable;)V .line 895 invoke-virtual {v0}, Ljava/lang/Thread;->start()V return-void .end method # virtual methods .method public cancelToast()V .registers 2 .line 775 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mToast:Landroid/widget/Toast; if-eqz v0, :cond_7 .line 776 invoke-virtual {v0}, Landroid/widget/Toast;->cancel()V :cond_7 return-void .end method .method protected doLeft()V .registers 1 .line 645 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->finish()V return-void .end method .method protected doRight()V .registers 1 return-void .end method .method protected findView()V .registers 3 const v0, 0x7f0901b6 .line 192 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ImageView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->ivBack:Landroid/widget/ImageView; .line 193 invoke-virtual {v0, p0}, Landroid/widget/ImageView;->setOnClickListener(Landroid/view/View$OnClickListener;)V const v0, 0x7f090172 .line 194 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ImageView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->imageViewAdd:Landroid/widget/ImageView; const/16 v1, 0x8 .line 195 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setVisibility(I)V const v0, 0x7f0905da .line 196 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/TextView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tvTitle:Landroid/widget/TextView; const v0, 0x7f090060 .line 197 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/Button; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->btnSend:Landroid/widget/Button; .line 198 invoke-virtual {v0, p0}, Landroid/widget/Button;->setOnClickListener(Landroid/view/View$OnClickListener;)V const v0, 0x7f0900e5 .line 200 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Lcom/forum/im/widget/pulltorefresh/PullToRefreshLayout; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->pullList:Lcom/forum/im/widget/pulltorefresh/PullToRefreshLayout; const v0, 0x7f090210 .line 201 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->activityRootView:Landroid/view/View; const v0, 0x7f0902d1 .line 202 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/EditText; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mEditTextContent:Landroid/widget/EditText; const v0, 0x7f0902d2 .line 203 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ImageView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_iv:Landroid/widget/ImageView; const v0, 0x7f090117 .line 204 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ImageView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->emoji:Landroid/widget/ImageView; const v0, 0x7f090678 .line 205 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/ImageView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->voiceIv:Landroid/widget/ImageView; const v0, 0x7f09065b .line 206 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroidx/viewpager/widget/ViewPager; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->expressionViewpager:Landroidx/viewpager/widget/ViewPager; const v0, 0x7f090675 .line 207 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Lcom/forum/im/widget/AudioRecordButton; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->voiceBtn:Lcom/forum/im/widget/AudioRecordButton; const v0, 0x7f090118 .line 208 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/LinearLayout; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->emoji_group:Landroid/widget/LinearLayout; const v0, 0x7f09047f .line 209 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Landroid/widget/TextView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->send_emoji_icon:Landroid/widget/TextView; const v0, 0x7f0902f7 .line 210 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->findViewById(I)Landroid/view/View; move-result-object v0 check-cast v0, Lcom/forum/im/widget/ChatBottomView; iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tbbv:Lcom/forum/im/widget/ChatBottomView; .line 211 invoke-direct {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->initActionBar()V return-void .end method .method public getExpressionRes(I)Ljava/util/List; .registers 6 .annotation system Ldalvik/annotation/Signature; value = { "(I)", "Ljava/util/List<", "Ljava/lang/String;", ">;" } .end annotation .line 866 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V const/4 v1, 0x1 :goto_6 if-gt v1, p1, :cond_1d .line 868 new-instance v2, Ljava/lang/StringBuilder; const-string v3, "f" invoke-direct {v2, v3}, Ljava/lang/StringBuilder;->(Ljava/lang/String;)V invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; move-result-object v2 invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v2 .line 869 invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z add-int/lit8 v1, v1, 0x1 goto :goto_6 :cond_1d return-object v0 .end method .method protected getPersimmions()V .registers 5 .line 582 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V .line 584 const-string v1, "android.permission.WRITE_EXTERNAL_STORAGE" invoke-direct {p0, v0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->addPermission(Ljava/util/ArrayList;Ljava/lang/String;)Z move-result v1 const-string v2, "Manifest.permission.WRITE_EXTERNAL_STORAGE Deny \n" if-eqz v1, :cond_24 .line 585 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V iget-object v3, p0, Lcom/forum/im/ui/base/IMBaseActivity;->permissionInfo:Ljava/lang/String; invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 iput-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->permissionInfo:Ljava/lang/String; .line 588 :cond_24 const-string v1, "android.permission.RECORD_AUDIO" invoke-direct {p0, v0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->addPermission(Ljava/util/ArrayList;Ljava/lang/String;)Z move-result v1 if-eqz v1, :cond_41 .line 589 new-instance v1, Ljava/lang/StringBuilder; invoke-direct {v1}, Ljava/lang/StringBuilder;->()V iget-object v3, p0, Lcom/forum/im/ui/base/IMBaseActivity;->permissionInfo:Ljava/lang/String; invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; move-result-object v1 invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String; move-result-object v1 iput-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->permissionInfo:Ljava/lang/String; .line 591 :cond_41 invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v1 if-lez v1, :cond_58 .line 592 invoke-virtual {v0}, Ljava/util/ArrayList;->size()I move-result v1 new-array v1, v1, [Ljava/lang/String; invoke-virtual {v0, v1}, Ljava/util/ArrayList;->toArray([Ljava/lang/Object;)[Ljava/lang/Object; move-result-object v0 check-cast v0, [Ljava/lang/String; const/16 v1, 0x7f invoke-virtual {p0, v0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->requestPermissions([Ljava/lang/String;I)V :cond_58 return-void .end method .method public getTbub(Ljava/lang/String;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/Float;I)Lcom/forum/im/db/ChatMessageBean; .registers 14 .line 915 new-instance v0, Lcom/forum/im/db/ChatMessageBean; invoke-direct {v0}, Lcom/forum/im/db/ChatMessageBean;->()V .line 916 invoke-virtual {v0, p1}, Lcom/forum/im/db/ChatMessageBean;->setId(Ljava/lang/String;)V .line 917 invoke-virtual {v0, p2}, Lcom/forum/im/db/ChatMessageBean;->setUserName(Ljava/lang/String;)V .line 919 invoke-virtual {v0, p5}, Lcom/forum/im/db/ChatMessageBean;->setTime(Ljava/lang/String;)V .line 920 invoke-virtual {v0, p3}, Lcom/forum/im/db/ChatMessageBean;->setType(I)V .line 921 invoke-virtual {v0, p4}, Lcom/forum/im/db/ChatMessageBean;->setUserContent(Ljava/lang/String;)V .line 922 invoke-virtual {v0, p6}, Lcom/forum/im/db/ChatMessageBean;->setImageIconUrl(Ljava/lang/String;)V .line 923 invoke-virtual {v0, p7}, Lcom/forum/im/db/ChatMessageBean;->setImageUrl(Ljava/lang/String;)V .line 924 invoke-virtual {v0, p9}, Lcom/forum/im/db/ChatMessageBean;->setUserVoicePath(Ljava/lang/String;)V .line 925 invoke-virtual {v0, p10}, Lcom/forum/im/db/ChatMessageBean;->setUserVoiceUrl(Ljava/lang/String;)V .line 926 invoke-virtual {p11}, Ljava/lang/Float;->floatValue()F move-result p1 invoke-virtual {v0, p1}, Lcom/forum/im/db/ChatMessageBean;->setUserVoiceTime(F)V .line 927 invoke-virtual {v0, p12}, Lcom/forum/im/db/ChatMessageBean;->setSendState(I)V .line 928 invoke-virtual {v0, p8}, Lcom/forum/im/db/ChatMessageBean;->setImageLocal(Ljava/lang/String;)V .line 929 iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mChatDbManager:Lcom/forum/im/db/ChatDbManager; invoke-virtual {p1, v0}, Lcom/forum/im/db/ChatDbManager;->insert(Ljava/lang/Object;)Z return-object v0 .end method .method protected init()V .registers 4 .line 222 new-instance v0, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder; .line 223 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getApplicationContext()Landroid/content/Context; move-result-object v1 invoke-direct {v0, v1}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->(Landroid/content/Context;)V const/4 v1, 0x0 .line 224 invoke-virtual {v0, v1}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->defaultDisplayImageOptions(Lcom/nostra13/universalimageloader/core/DisplayImageOptions;)Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder; move-result-object v0 const/high16 v1, 0x3200000 .line 225 invoke-virtual {v0, v1}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->discCacheSize(I)Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder; move-result-object v0 const/16 v1, 0x32 .line 226 invoke-virtual {v0, v1}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->discCacheFileCount(I)Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder; move-result-object v0 .line 227 invoke-virtual {v0}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->writeDebugLogs()Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder; move-result-object v0 .line 228 invoke-virtual {v0}, Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration$Builder;->build()Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration; move-result-object v0 .line 229 invoke-static {}, Lcom/nostra13/universalimageloader/core/ImageLoader;->getInstance()Lcom/nostra13/universalimageloader/core/ImageLoader; move-result-object v1 invoke-virtual {v1, v0}, Lcom/nostra13/universalimageloader/core/ImageLoader;->init(Lcom/nostra13/universalimageloader/core/ImageLoaderConfiguration;)V .line 231 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mEditTextContent:Landroid/widget/EditText; iget-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->onKeyListener:Landroid/view/View$OnKeyListener; invoke-virtual {v0, v1}, Landroid/widget/EditText;->setOnKeyListener(Landroid/view/View$OnKeyListener;)V .line 233 new-instance v0, Lcom/forum/im/db/ChatDbManager; invoke-direct {v0}, Lcom/forum/im/db/ChatDbManager;->()V iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mChatDbManager:Lcom/forum/im/db/ChatDbManager; .line 234 new-instance v0, Lcom/forum/im/ui/base/IMBaseActivity$1; invoke-direct {v0, p0}, Lcom/forum/im/ui/base/IMBaseActivity$1;->(Lcom/forum/im/ui/base/IMBaseActivity;)V .line 242 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->voiceIv:Landroid/widget/ImageView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$2; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$2;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 266 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_iv:Landroid/widget/ImageView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$3; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$3;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 295 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->send_emoji_icon:Landroid/widget/TextView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$4; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$4;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/TextView;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 304 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tbbv:Lcom/forum/im/widget/ChatBottomView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$5; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$5;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Lcom/forum/im/widget/ChatBottomView;->setOnHeadIconClickListener(Lcom/forum/im/widget/HeadIconSelectorView$OnHeadIconClickListener;)V .line 361 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->emoji:Landroid/widget/ImageView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$6; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$6;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setOnClickListener(Landroid/view/View$OnClickListener;)V const/16 v0, 0x28 .line 385 invoke-virtual {p0, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->getExpressionRes(I)Ljava/util/List; move-result-object v0 iput-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->reslist:Ljava/util/List; .line 387 new-instance v0, Ljava/util/ArrayList; invoke-direct {v0}, Ljava/util/ArrayList;->()V const/4 v1, 0x1 .line 388 invoke-direct {p0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->getGridChildView(I)Landroid/view/View; move-result-object v1 const/4 v2, 0x2 .line 389 invoke-direct {p0, v2}, Lcom/forum/im/ui/base/IMBaseActivity;->getGridChildView(I)Landroid/view/View; move-result-object v2 .line 390 invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 391 invoke-interface {v0, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z .line 392 iget-object v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->expressionViewpager:Landroidx/viewpager/widget/ViewPager; new-instance v2, Lcom/forum/im/adapter/ExpressionPagerAdapter; invoke-direct {v2, v0}, Lcom/forum/im/adapter/ExpressionPagerAdapter;->(Ljava/util/List;)V invoke-virtual {v1, v2}, Landroidx/viewpager/widget/ViewPager;->setAdapter(Landroidx/viewpager/widget/PagerAdapter;)V .line 394 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mEditTextContent:Landroid/widget/EditText; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$7; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$7;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/EditText;->setOnClickListener(Landroid/view/View$OnClickListener;)V .line 409 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_lv:Landroid/widget/ListView; new-instance v1, Lcom/forum/im/ui/base/IMBaseActivity$8; invoke-direct {v1, p0}, Lcom/forum/im/ui/base/IMBaseActivity$8;->(Lcom/forum/im/ui/base/IMBaseActivity;)V invoke-virtual {v0, v1}, Landroid/widget/ListView;->setOnItemClickListener(Landroid/widget/AdapterView$OnItemClickListener;)V .line 421 invoke-static {p0}, Lcom/forum/im/utils/ScreenUtil;->getNavigationBarHeight(Landroid/content/Context;)I move-result v0 iput v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->bottomStatusHeight:I .line 423 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mChatDbManager:Lcom/forum/im/db/ChatDbManager; iget v1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->number:I invoke-virtual {v0, v1}, Lcom/forum/im/db/ChatDbManager;->getPages(I)J move-result-wide v0 long-to-int v0, v0 iput v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->page:I .line 424 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->loadRecords()V return-void .end method .method protected abstract loadRecords()V .end method .method protected onActivityResult(IILandroid/content/Intent;)V .registers 8 .line 678 invoke-super {p0, p1, p2, p3}, Landroid/app/Activity;->onActivityResult(IILandroid/content/Intent;)V const/4 v0, -0x1 if-ne p2, v0, :cond_97 .line 680 iget-object p2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tbbv:Lcom/forum/im/widget/ChatBottomView; const/16 v0, 0x8 invoke-virtual {p2, v0}, Lcom/forum/im/widget/ChatBottomView;->setVisibility(I)V .line 681 iget-object p2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_iv:Landroid/widget/ImageView; const v0, 0x7f08044e invoke-virtual {p2, v0}, Landroid/widget/ImageView;->setBackgroundResource(I)V const/4 p2, 0x2 const v0, 0x19000 .line 682 const-string v1, "The file does not exist!" const/4 v2, 0x1 const/4 v3, 0x0 if-eq p1, p2, :cond_61 const/16 p2, 0x10 if-eq p1, p2, :cond_25 goto/16 :goto_97 :cond_25 if-eqz p3, :cond_2c .line 689 invoke-virtual {p3}, Landroid/content/Intent;->getData()Landroid/net/Uri; move-result-object p1 goto :goto_2e .line 691 :cond_2c iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mCameraUri:Landroid/net/Uri; .line 693 :goto_2e invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getApplicationContext()Landroid/content/Context; move-result-object p2 invoke-static {p2, p1}, Lcom/forum/im/utils/FileSaveUtil;->getPath(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String; move-result-object p1 .line 694 new-instance p2, Ljava/io/File; invoke-direct {p2, p1}, Ljava/io/File;->(Ljava/lang/String;)V iput-object p2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mCurrentPhotoFile:Ljava/io/File; .line 695 invoke-virtual {p2}, Ljava/io/File;->exists()Z move-result p2 if-eqz p2, :cond_5d .line 696 invoke-static {p1}, Lcom/forum/im/utils/ImageCheckoutUtil;->getLoacalBitmap(Ljava/lang/String;)Landroid/graphics/Bitmap; move-result-object p2 invoke-static {p2}, Lcom/forum/im/utils/ImageCheckoutUtil;->getImageSize(Landroid/graphics/Bitmap;)I move-result p2 if-le p2, v0, :cond_55 .line 701 invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object p2 invoke-virtual {p0, v3, p1, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->sendImage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V goto :goto_97 .line 704 :cond_55 invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object p2 invoke-virtual {p0, v3, p1, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->sendImage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V goto :goto_97 .line 708 :cond_5d invoke-virtual {p0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->showToast(Ljava/lang/String;)V goto :goto_97 .line 717 :cond_61 invoke-virtual {p3}, Landroid/content/Intent;->getData()Landroid/net/Uri; move-result-object p1 .line 718 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getApplicationContext()Landroid/content/Context; move-result-object p2 invoke-static {p2, p1}, Lcom/forum/im/utils/FileSaveUtil;->getPath(Landroid/content/Context;Landroid/net/Uri;)Ljava/lang/String; move-result-object p1 .line 719 new-instance p2, Ljava/io/File; invoke-direct {p2, p1}, Ljava/io/File;->(Ljava/lang/String;)V iput-object p2, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mCurrentPhotoFile:Ljava/io/File; .line 720 invoke-virtual {p2}, Ljava/io/File;->exists()Z move-result p2 if-eqz p2, :cond_94 .line 721 invoke-static {p1}, Lcom/forum/im/utils/ImageCheckoutUtil;->getLoacalBitmap(Ljava/lang/String;)Landroid/graphics/Bitmap; move-result-object p2 invoke-static {p2}, Lcom/forum/im/utils/ImageCheckoutUtil;->getImageSize(Landroid/graphics/Bitmap;)I move-result p2 if-le p2, v0, :cond_8c .line 726 invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object p2 invoke-virtual {p0, v3, p1, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->sendImage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V goto :goto_97 .line 729 :cond_8c invoke-static {v2}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object p2 invoke-virtual {p0, v3, p1, p2}, Lcom/forum/im/ui/base/IMBaseActivity;->sendImage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V goto :goto_97 .line 733 :cond_94 invoke-virtual {p0, v1}, Lcom/forum/im/ui/base/IMBaseActivity;->showToast(Ljava/lang/String;)V :cond_97 :goto_97 return-void .end method .method public onClick(Landroid/view/View;)V .registers 4 .line 567 invoke-virtual {p1}, Landroid/view/View;->getId()I move-result p1 const v0, 0x7f090060 if-eq p1, v0, :cond_13 const v0, 0x7f0901b6 if-eq p1, v0, :cond_f goto :goto_1e .line 569 :cond_f invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->finish()V goto :goto_1e :cond_13 const/4 p1, 0x1 .line 572 invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean; move-result-object p1 const-string v0, "" const/4 v1, 0x0 invoke-virtual {p0, v1, p1, v0}, Lcom/forum/im/ui/base/IMBaseActivity;->sendMessage(Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;)V :goto_1e return-void .end method .method protected onCreate(Landroid/os/Bundle;)V .registers 4 .line 169 invoke-super {p0, p1}, Landroid/app/Activity;->onCreate(Landroid/os/Bundle;)V const p1, 0x7f0c0022 .line 170 invoke-virtual {p0, p1}, Lcom/forum/im/ui/base/IMBaseActivity;->setContentView(I)V .line 172 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getWindow()Landroid/view/Window; move-result-object p1 const/high16 v0, -0x80000000 .line 173 invoke-virtual {p1, v0}, Landroid/view/Window;->addFlags(I)V .line 174 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->getResources()Landroid/content/res/Resources; move-result-object v0 const v1, 0x7f06003b invoke-virtual {v0, v1}, Landroid/content/res/Resources;->getColor(I)I move-result v0 invoke-virtual {p1, v0}, Landroid/view/Window;->setStatusBarColor(I)V .line 176 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->findView()V .line 177 invoke-direct {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->initpop()V .line 178 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->init()V return-void .end method .method protected onDestroy()V .registers 1 .line 185 invoke-static {}, Lcom/forum/im/widget/MediaManager;->pause()V .line 186 invoke-static {}, Lcom/forum/im/widget/MediaManager;->release()V .line 187 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->cancelToast()V .line 188 invoke-super {p0}, Landroid/app/Activity;->onDestroy()V return-void .end method .method public onKeyDown(ILandroid/view/KeyEvent;)Z .registers 5 .line 745 invoke-virtual {p2}, Landroid/view/KeyEvent;->getKeyCode()I move-result v0 const/4 v1, 0x4 if-ne v0, v1, :cond_c .line 746 invoke-virtual {p0}, Lcom/forum/im/ui/base/IMBaseActivity;->finish()V const/4 p1, 0x1 return p1 .line 749 :cond_c invoke-super {p0, p1, p2}, Landroid/app/Activity;->onKeyDown(ILandroid/view/KeyEvent;)Z move-result p1 return p1 .end method .method public onRequestPermissionsResult(I[Ljava/lang/String;[I)V .registers 10 .line 616 invoke-super {p0, p1, p2, p3}, Landroid/app/Activity;->onRequestPermissionsResult(I[Ljava/lang/String;[I)V const/16 v0, 0x7f if-eq p1, v0, :cond_b .line 640 invoke-super {p0, p1, p2, p3}, Landroid/app/Activity;->onRequestPermissionsResult(I[Ljava/lang/String;[I)V goto :goto_63 .line 619 :cond_b new-instance p1, Ljava/util/HashMap; invoke-direct {p1}, Ljava/util/HashMap;->()V const/4 v0, 0x0 .line 621 invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v1 const-string v2, "android.permission.WRITE_EXTERNAL_STORAGE" invoke-interface {p1, v2, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; .line 622 invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v1 const-string v3, "android.permission.RECORD_AUDIO" invoke-interface {p1, v3, v1}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; move v1, v0 .line 624 :goto_24 array-length v4, p2 if-ge v1, v4, :cond_35 .line 625 aget-object v4, p2, v1 aget v5, p3, v1 invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer; move-result-object v5 invoke-interface {p1, v4, v5}, Ljava/util/Map;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object; add-int/lit8 v1, v1, 0x1 goto :goto_24 .line 627 :cond_35 invoke-interface {p1, v2}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p2 check-cast p2, Ljava/lang/Integer; invoke-virtual {p2}, Ljava/lang/Integer;->intValue()I move-result p2 if-eqz p2, :cond_4c .line 629 iput-boolean v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->CAN_WRITE_EXTERNAL_STORAGE:Z .line 630 const-string p2, "\u7981\u7528\u56fe\u7247\u6743\u9650\u5c06\u5bfc\u81f4\u53d1\u9001\u56fe\u7247\u529f\u80fd\u65e0\u6cd5\u4f7f\u7528\uff01" invoke-static {p0, p2, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p2 .line 631 invoke-virtual {p2}, Landroid/widget/Toast;->show()V .line 633 :cond_4c invoke-interface {p1, v3}, Ljava/util/Map;->get(Ljava/lang/Object;)Ljava/lang/Object; move-result-object p1 check-cast p1, Ljava/lang/Integer; invoke-virtual {p1}, Ljava/lang/Integer;->intValue()I move-result p1 if-eqz p1, :cond_63 .line 634 iput-boolean v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->CAN_RECORD_AUDIO:Z .line 635 const-string p1, "\u7981\u7528\u5f55\u5236\u97f3\u9891\u6743\u9650\u5c06\u5bfc\u81f4\u8bed\u97f3\u529f\u80fd\u65e0\u6cd5\u4f7f\u7528\uff01" invoke-static {p0, p1, v0}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p1 .line 636 invoke-virtual {p1}, Landroid/widget/Toast;->show()V :cond_63 :goto_63 return-void .end method .method protected reset()V .registers 3 .line 756 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->emoji_group:Landroid/widget/LinearLayout; const/16 v1, 0x8 invoke-virtual {v0, v1}, Landroid/widget/LinearLayout;->setVisibility(I)V .line 757 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->tbbv:Lcom/forum/im/widget/ChatBottomView; invoke-virtual {v0, v1}, Lcom/forum/im/widget/ChatBottomView;->setVisibility(I)V .line 758 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_lv:Landroid/widget/ListView; invoke-virtual {v0, v1}, Landroid/widget/ListView;->setVisibility(I)V .line 759 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->emoji:Landroid/widget/ImageView; const v1, 0x7f080155 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setBackgroundResource(I)V .line 760 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mess_iv:Landroid/widget/ImageView; const v1, 0x7f08044e invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setBackgroundResource(I)V .line 761 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->voiceIv:Landroid/widget/ImageView; const v1, 0x7f080471 invoke-virtual {v0, v1}, Landroid/widget/ImageView;->setBackgroundResource(I)V return-void .end method .method protected abstract sendImage(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Boolean;)V .end method .method protected abstract sendMessage(Ljava/lang/String;Ljava/lang/Boolean;Ljava/lang/String;)V .end method .method protected abstract sendVoice(FLjava/lang/String;)V .end method .method public showToast(Ljava/lang/String;)V .registers 4 .line 765 iget-object v0, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mToast:Landroid/widget/Toast; const/4 v1, 0x0 if-nez v0, :cond_c .line 766 invoke-static {p0, p1, v1}, Landroid/widget/Toast;->makeText(Landroid/content/Context;Ljava/lang/CharSequence;I)Landroid/widget/Toast; move-result-object p1 iput-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mToast:Landroid/widget/Toast; goto :goto_14 .line 768 :cond_c invoke-virtual {v0, p1}, Landroid/widget/Toast;->setText(Ljava/lang/CharSequence;)V .line 769 iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mToast:Landroid/widget/Toast; invoke-virtual {p1, v1}, Landroid/widget/Toast;->setDuration(I)V .line 771 :goto_14 iget-object p1, p0, Lcom/forum/im/ui/base/IMBaseActivity;->mToast:Landroid/widget/Toast; invoke-virtual {p1}, Landroid/widget/Toast;->show()V return-void .end method