CallTransferModel.smali
.class public Lcom/zzdy/calltransfer/CallTransferModel;
.super Lcom/taobao/weex/common/WXModule;
.source "CallTransferModel.java"
# static fields
.field public static call_label:Ljava/lang/String; = "set"
.field public static stateListen:I
.field public static transferState:Ljava/lang/Boolean;
# instance fields
.field manager:Landroid/telephony/TelephonyManager;
.field stateListener:Landroid/telephony/PhoneStateListener;
# direct methods
.method static constructor <clinit>()V
.registers 1
const/4 v0, 0x0
.line 45
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v0
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->transferState:Ljava/lang/Boolean;
return-void
.end method
.method public constructor <init>()V
.registers 2
.line 39
invoke-direct {p0}, Lcom/taobao/weex/common/WXModule;-><init>()V
const/4 v0, 0x0
.line 41
iput-object v0, p0, Lcom/zzdy/calltransfer/CallTransferModel;->manager:Landroid/telephony/TelephonyManager;
.line 75
new-instance v0, Lcom/zzdy/calltransfer/CallTransferModel$1;
invoke-direct {v0, p0}, Lcom/zzdy/calltransfer/CallTransferModel$1;-><init>(Lcom/zzdy/calltransfer/CallTransferModel;)V
iput-object v0, p0, Lcom/zzdy/calltransfer/CallTransferModel;->stateListener:Landroid/telephony/PhoneStateListener;
return-void
.end method
.method public static IsValidMobileNo(Ljava/lang/String;)Z
.registers 2
.line 308
invoke-static {p0}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
move-result v0
if-eqz v0, :cond_8
const/4 p0, 0x0
return p0
:cond_8
const-string v0, "[1][345789]\\d{9}"
.line 309
invoke-virtual {p0, v0}, Ljava/lang/String;->matches(Ljava/lang/String;)Z
move-result p0
return p0
.end method
# virtual methods
.method public call(Landroid/content/Context;ILjava/lang/String;)V
.registers 8
const-string v0, "telecom"
.line 319
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telecom/TelecomManager;
if-eqz v0, :cond_67
.line 322
iget-object v1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v1
const-string v2, "android.permission.READ_PHONE_STATE"
invoke-static {v1, v2}, Landroidx/core/app/ActivityCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v1
if-eqz v1, :cond_19
return-void
.line 332
:cond_19
invoke-virtual {v0}, Landroid/telecom/TelecomManager;->getCallCapablePhoneAccounts()Ljava/util/List;
move-result-object v0
.line 333
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v2, ""
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-interface {v0}, Ljava/util/List;->size()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
const-string v2, "-----------"
invoke-static {v2, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
.line 334
new-instance v1, Landroid/content/Intent;
invoke-direct {v1}, Landroid/content/Intent;-><init>()V
const-string v2, "android.intent.action.CALL"
.line 335
invoke-virtual {v1, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
.line 336
new-instance v2, Ljava/lang/StringBuilder;
invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
const-string v3, "tel:"
invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p3
invoke-static {p3}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p3
invoke-virtual {v1, p3}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
.line 337
invoke-interface {v0, p2}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p2
check-cast p2, Landroid/os/Parcelable;
const-string p3, "android.telecom.extra.PHONE_ACCOUNT_HANDLE"
invoke-virtual {v1, p3, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;
.line 338
invoke-virtual {p1, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
:cond_67
return-void
.end method
.method public callTransferStateListener(Lcom/taobao/weex/bridge/JSCallback;)V
.registers 5
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
.end annotation
const-string v0, ""
.line 108
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->call_label:Ljava/lang/String;
.line 109
sput-object p1, Lcom/zzdy/calltransfer/util/Msg;->callStateBack:Lcom/taobao/weex/bridge/JSCallback;
.line 110
sget p1, Lcom/zzdy/calltransfer/CallTransferModel;->stateListen:I
if-nez p1, :cond_45
.line 111
sget-object p1, Lcom/zzdy/calltransfer/util/Msg;->callStateBack:Lcom/taobao/weex/bridge/JSCallback;
if-eqz p1, :cond_45
.line 112
new-instance p1, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {p1}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
.line 113
iget-object v0, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v0}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v0
const/4 v1, 0x0
const-string v2, "state"
invoke-static {v0, v2, v1}, Lcom/zzdy/calltransfer/util/SharedPrefsUtil;->getValue(Landroid/content/Context;Ljava/lang/String;Z)Z
move-result v0
invoke-static {v0}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object v0
.line 114
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->transferState:Ljava/lang/Boolean;
.line 115
invoke-virtual {p1, v2, v0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
.line 116
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v2, "\u5f53\u524d\u662f\u5426\u542f\u52a8\u547c\u53eb\u8f6c\u79fb:"
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "tips"
invoke-virtual {p1, v1, v0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
.line 117
sget-object v0, Lcom/zzdy/calltransfer/util/Msg;->callStateBack:Lcom/taobao/weex/bridge/JSCallback;
invoke-interface {v0, p1}, Lcom/taobao/weex/bridge/JSCallback;->invokeAndKeepAlive(Ljava/lang/Object;)V
.line 120
:cond_45
iget-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
.line 121
invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object p1
const-string v0, "phone"
invoke-virtual {p1, v0}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/telephony/TelephonyManager;
iput-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->manager:Landroid/telephony/TelephonyManager;
.line 122
iget-object v0, p0, Lcom/zzdy/calltransfer/CallTransferModel;->stateListener:Landroid/telephony/PhoneStateListener;
const/16 v1, 0x8
invoke-virtual {p1, v0, v1}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
return-void
.end method
.method public cancleTransCall(Lcom/alibaba/fastjson/JSONObject;Lcom/taobao/weex/bridge/JSCallback;)V
.registers 8
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
uiThread = true
.end annotation
const-string v0, "cancel"
.line 190
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->call_label:Ljava/lang/String;
.line 191
new-instance v0, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {v0}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
const-string v1, "type"
.line 193
invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Integer;
invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
move-result v1
const-string v2, "simId"
.line 194
invoke-virtual {p1, v2}, Lcom/alibaba/fastjson/JSONObject;->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
.line 195
new-instance v2, Landroid/content/Intent;
invoke-direct {v2}, Landroid/content/Intent;-><init>()V
const-string v3, "android.intent.action.CALL"
.line 196
invoke-virtual {v2, v3}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
if-nez v1, :cond_37
const-string v1, "tel:%23%2321%23"
.line 198
invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_5d
:cond_37
const/4 v3, 0x1
if-ne v1, v3, :cond_44
const-string v1, "tel:%23%2367%23"
.line 200
invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_5d
:cond_44
const/4 v3, 0x2
if-ne v1, v3, :cond_51
const-string v1, "tel:%23%2361%23"
.line 202
invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_5d
:cond_51
const/4 v3, 0x3
if-ne v1, v3, :cond_5d
const-string v1, "tel:%23%2362%23"
.line 204
invoke-static {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v2, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
.line 206
:cond_5d
:goto_5d
iget-object v1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v1
const-string v3, "telecom"
invoke-virtual {v1, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/telecom/TelecomManager;
.line 207
iget-object v3, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v3}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v3
const-string v4, "android.permission.READ_PHONE_STATE"
invoke-static {v3, v4}, Landroidx/core/app/ActivityCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v3
if-eqz v3, :cond_7a
return-void
.line 217
:cond_7a
invoke-virtual {v1}, Landroid/telecom/TelecomManager;->getCallCapablePhoneAccounts()Ljava/util/List;
move-result-object v1
.line 218
invoke-interface {v1, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/os/Parcelable;
const-string v1, "android.telecom.extra.PHONE_ACCOUNT_HANDLE"
invoke-virtual {v2, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;
.line 219
iget-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object p1
invoke-virtual {p1, v2}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
const/16 p1, 0xc8
.line 220
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
const-string v1, "code"
invoke-virtual {v0, v1, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string p1, "msg"
const-string v1, "success"
.line 221
invoke-virtual {v0, p1, v1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
if-eqz p2, :cond_a9
.line 223
invoke-interface {p2, v0}, Lcom/taobao/weex/bridge/JSCallback;->invoke(Ljava/lang/Object;)V
:cond_a9
return-void
.end method
.method public getPhoneCount(Lcom/taobao/weex/bridge/JSCallback;)V
.registers 5
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
.end annotation
.line 269
iget-object v0, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v0}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v0
const-string v1, "phone"
invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v0
check-cast v0, Landroid/telephony/TelephonyManager;
.line 270
invoke-virtual {v0}, Landroid/telephony/TelephonyManager;->getPhoneCount()I
move-result v0
.line 271
new-instance v1, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {v1}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
.line 272
invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object v0
const-string v2, "phoneCount"
invoke-virtual {v1, v2, v0}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string v0, "msg"
const-string v2, "success"
.line 273
invoke-virtual {v1, v0, v2}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
if-eqz p1, :cond_2c
.line 275
invoke-interface {p1, v1}, Lcom/taobao/weex/bridge/JSCallback;->invoke(Ljava/lang/Object;)V
:cond_2c
return-void
.end method
.method public onRequestPermissionsResult(I[Ljava/lang/String;[I)V
.registers 8
.line 281
invoke-super {p0, p1, p2, p3}, Lcom/taobao/weex/common/WXModule;->onRequestPermissionsResult(I[Ljava/lang/String;[I)V
const/16 p2, 0x11
if-ne p1, p2, :cond_40
const/4 p1, 0x0
.line 283
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p2
.line 286
array-length v0, p3
const-string/jumbo v1, "\u6743\u9650\u88ab\u5141\u8bb8"
const-string v2, "CMCC"
const-string/jumbo v3, "\u6743\u9650\u88ab\u62d2\u7edd"
if-lez v0, :cond_24
aget p1, p3, p1
if-nez p1, :cond_24
const/4 p1, 0x1
.line 289
invoke-static {p1}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
move-result-object p2
.line 290
invoke-static {v2, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
goto :goto_28
.line 293
:cond_24
invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
move-object v1, v3
.line 295
:goto_28
sget-object p1, Lcom/zzdy/calltransfer/util/Msg;->globalCallBack:Lcom/taobao/weex/bridge/JSCallback;
if-eqz p1, :cond_40
.line 296
new-instance p1, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {p1}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
const-string p3, "msg"
.line 297
invoke-virtual {p1, p3, v1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string p3, "flag"
invoke-virtual {p1, p3, p2}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
.line 298
sget-object p2, Lcom/zzdy/calltransfer/util/Msg;->globalCallBack:Lcom/taobao/weex/bridge/JSCallback;
invoke-interface {p2, p1}, Lcom/taobao/weex/bridge/JSCallback;->invokeAndKeepAlive(Ljava/lang/Object;)V
:cond_40
return-void
.end method
.method public queryTransCall(Lcom/alibaba/fastjson/JSONObject;Lcom/taobao/weex/bridge/JSCallback;)V
.registers 6
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
uiThread = true
.end annotation
const-string v0, "query"
.line 230
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->call_label:Ljava/lang/String;
.line 231
new-instance v0, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {v0}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
const-string v1, "type"
.line 232
invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/JSONObject;->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
.line 233
new-instance v1, Landroid/content/Intent;
invoke-direct {v1}, Landroid/content/Intent;-><init>()V
const-string v2, "android.intent.action.CALL"
.line 234
invoke-virtual {v1, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
if-nez p1, :cond_2b
const-string p1, "tel:*%2321%23"
.line 236
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
invoke-virtual {v1, p1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_51
:cond_2b
const/4 v2, 0x1
if-ne p1, v2, :cond_38
const-string p1, "tel:*%2367%23"
.line 238
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
invoke-virtual {v1, p1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_51
:cond_38
const/4 v2, 0x2
if-ne p1, v2, :cond_45
const-string p1, "tel:*%2361%23"
.line 240
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
invoke-virtual {v1, p1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_51
:cond_45
const/4 v2, 0x3
if-ne p1, v2, :cond_51
const-string p1, "tel:*%2362%23"
.line 242
invoke-static {p1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object p1
invoke-virtual {v1, p1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
:cond_51
:goto_51
const/high16 p1, 0x10000000
.line 244
invoke-virtual {v1, p1}, Landroid/content/Intent;->setFlags(I)Landroid/content/Intent;
.line 245
iget-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object p1
invoke-virtual {p1, v1}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
const/16 p1, 0xc8
.line 246
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
const-string v1, "code"
invoke-virtual {v0, v1, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
.line 247
sget-object p1, Lcom/zzdy/calltransfer/CallTransferModel;->transferState:Ljava/lang/Boolean;
const-string v1, "state"
invoke-virtual {v0, v1, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
.line 248
new-instance p1, Ljava/lang/StringBuilder;
invoke-direct {p1}, Ljava/lang/StringBuilder;-><init>()V
const-string/jumbo v1, "\u5f53\u524d\u662f\u5426\u542f\u52a8\u547c\u53eb\u8f6c\u79fb:"
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
sget-object v1, Lcom/zzdy/calltransfer/CallTransferModel;->transferState:Ljava/lang/Boolean;
invoke-virtual {p1, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {p1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object p1
const-string v1, "tips"
invoke-virtual {v0, v1, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
if-eqz p2, :cond_8f
.line 250
invoke-interface {p2, v0}, Lcom/taobao/weex/bridge/JSCallback;->invoke(Ljava/lang/Object;)V
:cond_8f
return-void
.end method
.method public requestCallTransferPermissions(Lcom/taobao/weex/bridge/JSCallback;)V
.registers 4
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
.end annotation
.line 257
sput-object p1, Lcom/zzdy/calltransfer/util/Msg;->globalCallBack:Lcom/taobao/weex/bridge/JSCallback;
.line 259
iget-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object p1
check-cast p1, Landroid/app/Activity;
const-string v0, "android.permission.CALL_PHONE"
filled-new-array {v0}, [Ljava/lang/String;
move-result-object v0
const/16 v1, 0x11
invoke-static {p1, v0, v1}, Landroidx/core/app/ActivityCompat;->requestPermissions(Landroid/app/Activity;[Ljava/lang/String;I)V
return-void
.end method
.method public setTransCall(Lcom/alibaba/fastjson/JSONObject;Lcom/taobao/weex/bridge/JSCallback;)V
.registers 11
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
uiThread = true
.end annotation
const-string v0, "set"
.line 133
sput-object v0, Lcom/zzdy/calltransfer/CallTransferModel;->call_label:Ljava/lang/String;
.line 134
new-instance v0, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {v0}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
const-string v1, "type"
.line 136
invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/Integer;
invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
move-result v1
const-string v2, "phoneNum"
.line 137
invoke-virtual {p1, v2}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v2
check-cast v2, Ljava/lang/String;
const-string v3, "simId"
.line 138
invoke-virtual {p1, v3}, Lcom/alibaba/fastjson/JSONObject;->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
const-string v3, "msg"
const-string v4, "code"
if-eqz v2, :cond_113
.line 139
invoke-virtual {v2}, Ljava/lang/String;->length()I
move-result v5
if-lez v5, :cond_113
.line 140
invoke-static {v2}, Lcom/zzdy/calltransfer/CallTransferModel;->IsValidMobileNo(Ljava/lang/String;)Z
move-result v5
const/4 v6, 0x1
if-eqz v5, :cond_105
.line 141
new-instance v5, Landroid/content/Intent;
invoke-direct {v5}, Landroid/content/Intent;-><init>()V
const-string v7, "android.intent.action.CALL"
.line 142
invoke-virtual {v5, v7}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
const-string v7, "%23"
if-nez v1, :cond_66
.line 144
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "tel:**21*"
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, 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 {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v5, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_c1
:cond_66
if-ne v1, v6, :cond_84
.line 146
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "tel:**67*"
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, 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 {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v5, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_c1
:cond_84
const/4 v6, 0x2
if-ne v1, v6, :cond_a3
.line 148
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "tel:**61*"
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, 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 {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v5, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
goto :goto_c1
:cond_a3
const/4 v6, 0x3
if-ne v1, v6, :cond_c1
.line 150
new-instance v1, Ljava/lang/StringBuilder;
invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
const-string v6, "tel:**62*"
invoke-virtual {v1, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v1, v7}, 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 {v1}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
move-result-object v1
invoke-virtual {v5, v1}, Landroid/content/Intent;->setData(Landroid/net/Uri;)Landroid/content/Intent;
.line 152
:cond_c1
:goto_c1
iget-object v1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v1
const-string v2, "telecom"
invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Landroid/telecom/TelecomManager;
.line 153
iget-object v2, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v2}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v2
const-string v6, "android.permission.READ_PHONE_STATE"
invoke-static {v2, v6}, Landroidx/core/app/ActivityCompat;->checkSelfPermission(Landroid/content/Context;Ljava/lang/String;)I
move-result v2
if-eqz v2, :cond_de
return-void
.line 163
:cond_de
invoke-virtual {v1}, Landroid/telecom/TelecomManager;->getCallCapablePhoneAccounts()Ljava/util/List;
move-result-object v1
.line 164
invoke-interface {v1, p1}, Ljava/util/List;->get(I)Ljava/lang/Object;
move-result-object p1
check-cast p1, Landroid/os/Parcelable;
const-string v1, "android.telecom.extra.PHONE_ACCOUNT_HANDLE"
invoke-virtual {v5, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Landroid/os/Parcelable;)Landroid/content/Intent;
.line 165
iget-object p1, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {p1}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object p1
invoke-virtual {p1, v5}, Landroid/content/Context;->startActivity(Landroid/content/Intent;)V
const/16 p1, 0xc8
.line 166
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string p1, "success"
.line 167
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_121
.line 169
:cond_105
invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string/jumbo p1, "\u53f7\u7801\u8f93\u5165\u6709\u8bef\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165"
.line 170
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_121
:cond_113
const/4 p1, 0x0
.line 174
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string/jumbo p1, "\u53f7\u7801\u4e3a\u7a7a"
.line 175
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
:goto_121
if-eqz p2, :cond_126
.line 179
invoke-interface {p2, v0}, Lcom/taobao/weex/bridge/JSCallback;->invoke(Ljava/lang/Object;)V
:cond_126
return-void
.end method
.method public startCall(Lcom/alibaba/fastjson/JSONObject;Lcom/taobao/weex/bridge/JSCallback;)V
.registers 9
.annotation runtime Lcom/taobao/weex/annotation/JSMethod;
uiThread = true
.end annotation
.line 50
new-instance v0, Ljava/lang/StringBuilder;
invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
const-string v1, "startCall--"
invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
move-result-object v0
const-string v1, "ContentValues"
invoke-static {v1, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
.line 51
new-instance v0, Lcom/alibaba/fastjson/JSONObject;
invoke-direct {v0}, Lcom/alibaba/fastjson/JSONObject;-><init>()V
const-string v1, "phoneNum"
.line 52
invoke-virtual {p1, v1}, Lcom/alibaba/fastjson/JSONObject;->get(Ljava/lang/Object;)Ljava/lang/Object;
move-result-object v1
check-cast v1, Ljava/lang/String;
const-string v2, "simId"
.line 53
invoke-virtual {p1, v2}, Lcom/alibaba/fastjson/JSONObject;->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
const/4 v2, 0x1
const-string v3, "msg"
const-string v4, "code"
if-gt p1, v2, :cond_64
if-ltz p1, :cond_64
.line 56
invoke-static {v1}, Lcom/zzdy/calltransfer/CallTransferModel;->IsValidMobileNo(Ljava/lang/String;)Z
move-result v5
if-eqz v5, :cond_56
.line 57
iget-object v2, p0, Lcom/zzdy/calltransfer/CallTransferModel;->mWXSDKInstance:Lcom/taobao/weex/WXSDKInstance;
invoke-virtual {v2}, Lcom/taobao/weex/WXSDKInstance;->getContext()Landroid/content/Context;
move-result-object v2
invoke-virtual {p0, v2, p1, v1}, Lcom/zzdy/calltransfer/CallTransferModel;->call(Landroid/content/Context;ILjava/lang/String;)V
const/16 p1, 0xc8
.line 58
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string p1, "success"
.line 59
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_71
.line 61
:cond_56
invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string/jumbo p1, "\u53f7\u7801\u8f93\u5165\u6709\u8bef\uff0c\u8bf7\u91cd\u65b0\u8f93\u5165"
.line 62
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
goto :goto_71
:cond_64
const/4 p1, 0x0
.line 65
invoke-static {p1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
move-result-object p1
invoke-virtual {v0, v4, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
const-string p1, "simId 0\u5373\u4e3a\u53611 \uff0c1\u5373\u4e3a\u5361\u4e8c \u8bf7\u68c0\u6d4bsimId\u503c\u662f\u5426\u662f0\u62161"
.line 66
invoke-virtual {v0, v3, p1}, Lcom/alibaba/fastjson/JSONObject;->put(Ljava/lang/String;Ljava/lang/Object;)Ljava/lang/Object;
:goto_71
if-eqz p2, :cond_76
.line 69
invoke-interface {p2, v0}, Lcom/taobao/weex/bridge/JSCallback;->invoke(Ljava/lang/Object;)V
:cond_76
return-void
.end method