Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- .class final Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;
- .super Lcom/android/internal/telephony/ServiceStateTracker;
- .source "GsmServiceStateTracker.java"
- # annotations
- .annotation system Ldalvik/annotation/MemberClasses;
- value = {
- Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$3;
- }
- .end annotation
- # static fields
- .field static final CS_DISABLED:I = 0x3ec
- .field static final CS_EMERGENCY_ENABLED:I = 0x3ee
- .field static final CS_ENABLED:I = 0x3eb
- .field static final CS_NORMAL_ENABLED:I = 0x3ed
- .field static final CS_NOTIFICATION:I = 0x3e7
- .field static final DBG:Z = true
- .field static final DEFAULT_GPRS_CHECK_PERIOD_MILLIS:I = 0xea60
- .field static final LOG_TAG:Ljava/lang/String; = "GSM"
- .field static final MAX_NUM_DATA_STATE_READS:I = 0xf
- .field static final PS_DISABLED:I = 0x3ea
- .field static final PS_ENABLED:I = 0x3e9
- .field static final PS_NOTIFICATION:I = 0x378
- .field private static final SUPPORT_OFFLINE_ALARM:Z = false
- .field private static final WAKELOCK_TAG:Ljava/lang/String; = "ServiceStateTracker"
- .field static final mChinaOpList:Ljava/util/ArrayList;
- .field static final mNeedAppendixOpList:Ljava/util/ArrayList;
- # instance fields
- .field cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .field private cr:Landroid/content/ContentResolver;
- .field private curPlmn:Ljava/lang/String;
- .field private curSpn:Ljava/lang/String;
- .field private curSpnRule:I
- .field private gprsAttachedRegistrants:Landroid/os/RegistrantList;
- .field private gprsDetachedRegistrants:Landroid/os/RegistrantList;
- .field private gprsState:I
- .field private isFirstNetworkStateChange:Z
- .field private m2gWithDTM:Z
- .field private mAutoTimeObserver:Landroid/database/ContentObserver;
- .field private mCFUFlag:Z
- .field private mCgregChange:Z
- .field private mCregChange:Z
- .field private mDataRoaming:Z
- .field private mEmergencyOnly:Z
- .field mFlightModeBootup:Z
- .field private mGotCountryCode:Z
- .field private mGsmRoaming:Z
- .field private mHtcContext:Landroid/content/Context;
- .field private mIntentReceiver:Landroid/content/BroadcastReceiver;
- .field private mLocale:Ljava/util/Locale;
- .field private mMMRejectCause:I
- .field private mNeedFixZone:Z
- .field private mNeedToRegForSimLoaded:Z
- .field private mNewMMRejectCause:I
- .field private mNotification:Landroid/app/Notification;
- .field private mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- .field private mOperatorNumeric:Ljava/lang/String;
- .field private mOperatorStringLists:Ljava/util/HashMap;
- .annotation system Ldalvik/annotation/Signature;
- value = {
- "Ljava/util/HashMap",
- "<",
- "Ljava/lang/String;",
- "Ljava/lang/String;",
- ">;"
- }
- .end annotation
- .end field
- .field private mOriginalOperatorName:Ljava/lang/String;
- .field mPreferredNetworkType:I
- .field public mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- .field private mReportedGprsNoReg:Z
- .field mSavedAtTime:J
- .field mSavedTime:J
- .field mSavedTimeZone:Ljava/lang/String;
- .field private mSpecialEmMode:Z
- .field private mStartedGprsRegCheck:Z
- .field private mWakeLock:Landroid/os/PowerManager$WakeLock;
- .field private mZoneDst:Z
- .field private mZoneOffset:I
- .field private mZoneTime:J
- .field private networkType:I
- .field newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .field private newGPRSState:I
- .field private newNetworkType:I
- .field private newRilCgregState:I
- .field private newRilCregState:I
- .field private oldRilCgregState:I
- .field private oldRilCregState:I
- .field operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- .field phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- .field private psRestrictDisabledRegistrants:Landroid/os/RegistrantList;
- .field private psRestrictEnabledRegistrants:Landroid/os/RegistrantList;
- .field rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- # direct methods
- .method static constructor <clinit>()V
- .registers 7
- .prologue
- const/4 v6, 0x2
- const/4 v5, 0x1
- const/4 v4, 0x0
- .line 233
- new-instance v0, Ljava/util/ArrayList;
- const/4 v1, 0x4
- new-array v1, v1, [Ljava/lang/String;
- const-string v2, "46000"
- aput-object v2, v1, v4
- const-string v2, "46002"
- aput-object v2, v1, v5
- const-string v2, "46007"
- aput-object v2, v1, v6
- const/4 v2, 0x3
- const-string v3, "45412"
- aput-object v3, v1, v2
- invoke-static {v1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
- move-result-object v1
- invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
- sput-object v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedAppendixOpList:Ljava/util/ArrayList;
- .line 236
- new-instance v0, Ljava/util/ArrayList;
- new-array v1, v6, [Ljava/lang/String;
- const-string v2, "460"
- aput-object v2, v1, v4
- const-string v2, "454"
- aput-object v2, v1, v5
- invoke-static {v1}, Ljava/util/Arrays;->asList([Ljava/lang/Object;)Ljava/util/List;
- move-result-object v1
- invoke-direct {v0, v1}, Ljava/util/ArrayList;-><init>(Ljava/util/Collection;)V
- sput-object v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mChinaOpList:Ljava/util/ArrayList;
- return-void
- .end method
- .method public constructor <init>(Lcom/android/internal/telephony/gsm/GSMPhone;)V
- .registers 11
- .parameter "phone"
- .prologue
- const/4 v8, 0x1
- const/4 v7, 0x0
- const/4 v5, 0x0
- .line 282
- invoke-direct {p0}, Lcom/android/internal/telephony/ServiceStateTracker;-><init>()V
- .line 107
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- .line 108
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- .line 111
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCregState:I
- .line 112
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- .line 113
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCgregState:I
- .line 114
- iput v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- .line 115
- iput-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isFirstNetworkStateChange:Z
- .line 116
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- .line 117
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- .line 124
- iput v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- .line 125
- iput v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- .line 131
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
- .line 137
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
- .line 146
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCFUFlag:Z
- .line 155
- iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorNumeric:Ljava/lang/String;
- .line 164
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- .line 166
- new-instance v4, Landroid/os/RegistrantList;
- invoke-direct {v4}, Landroid/os/RegistrantList;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsAttachedRegistrants:Landroid/os/RegistrantList;
- .line 167
- new-instance v4, Landroid/os/RegistrantList;
- invoke-direct {v4}, Landroid/os/RegistrantList;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsDetachedRegistrants:Landroid/os/RegistrantList;
- .line 168
- new-instance v4, Landroid/os/RegistrantList;
- invoke-direct {v4}, Landroid/os/RegistrantList;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictEnabledRegistrants:Landroid/os/RegistrantList;
- .line 169
- new-instance v4, Landroid/os/RegistrantList;
- invoke-direct {v4}, Landroid/os/RegistrantList;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictDisabledRegistrants:Landroid/os/RegistrantList;
- .line 176
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- .line 180
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- .line 194
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
- .line 197
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
- .line 200
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSpecialEmMode:Z
- .line 213
- iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- .line 214
- iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- .line 215
- iput v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- .line 242
- const-string v4, ""
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- .line 250
- new-instance v4, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$1;
- invoke-direct {v4, p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$1;-><init>(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;)V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mIntentReceiver:Landroid/content/BroadcastReceiver;
- .line 273
- new-instance v4, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$2;
- new-instance v5, Landroid/os/Handler;
- invoke-direct {v5}, Landroid/os/Handler;-><init>()V
- invoke-direct {v4, p0, v5}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$2;-><init>(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;Landroid/os/Handler;)V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
- .line 508
- iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- .line 284
- iput-object p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- .line 285
- iget-object v4, p1, Lcom/android/internal/telephony/gsm/GSMPhone;->mCM:Lcom/android/internal/telephony/CommandsInterface;
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- .line 286
- new-instance v4, Landroid/telephony/ServiceState;
- invoke-direct {v4}, Landroid/telephony/ServiceState;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- .line 287
- new-instance v4, Landroid/telephony/ServiceState;
- invoke-direct {v4}, Landroid/telephony/ServiceState;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- .line 288
- new-instance v4, Landroid/telephony/gsm/GsmCellLocation;
- invoke-direct {v4}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .line 289
- new-instance v4, Landroid/telephony/gsm/GsmCellLocation;
- invoke-direct {v4}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .line 290
- new-instance v4, Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-direct {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- .line 291
- new-instance v4, Landroid/telephony/SignalStrength;
- invoke-direct {v4}, Landroid/telephony/SignalStrength;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- .line 293
- new-instance v4, Lcom/android/internal/telephony/gsm/OperatorInfo;
- invoke-direct {v4}, Lcom/android/internal/telephony/gsm/OperatorInfo;-><init>()V
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- .line 296
- invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v4
- const-string/jumbo v5, "power"
- invoke-virtual {v4, v5}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Landroid/os/PowerManager;
- .line 298
- .local v3, powerManager:Landroid/os/PowerManager;
- const-string v4, "ServiceStateTracker"
- invoke-virtual {v3, v8, v4}, Landroid/os/PowerManager;->newWakeLock(ILjava/lang/String;)Landroid/os/PowerManager$WakeLock;
- move-result-object v4
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- .line 300
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0xd
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForAvailable(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 301
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v4, p0, v8, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForRadioStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 303
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0x33
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForRadioStateChangedExt(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 306
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/4 v5, 0x2
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForNetworkStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 307
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0x3d
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForDataNetworkStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 309
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0xb
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnNITZTime(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 310
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0xc
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnSignalStrengthUpdate(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 311
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0x17
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnRestrictedStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 312
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v5, 0x11
- invoke-interface {v4, p0, v5, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForSIMReady(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 324
- const/4 v0, 0x0
- .line 326
- .local v0, alarmTriggered:Z
- invoke-direct {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updatePowerState(Z)V
- .line 329
- invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v4
- invoke-virtual {v4}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v4
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
- .line 330
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
- const-string v5, "auto_time"
- invoke-static {v5}, Landroid/provider/Settings$System;->getUriFor(Ljava/lang/String;)Landroid/net/Uri;
- move-result-object v5
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
- invoke-virtual {v4, v5, v8, v6}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V
- .line 333
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
- .line 334
- iput-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
- .line 337
- new-instance v2, Landroid/content/IntentFilter;
- invoke-direct {v2}, Landroid/content/IntentFilter;-><init>()V
- .line 338
- .local v2, filter:Landroid/content/IntentFilter;
- const-string v4, "android.intent.action.LOCALE_CHANGED"
- invoke-virtual {v2, v4}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
- .line 340
- const-string v4, "android.intent.action.CONFIGURATION_CHANGED"
- invoke-virtual {v2, v4}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
- .line 345
- invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v4
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mIntentReceiver:Landroid/content/BroadcastReceiver;
- invoke-virtual {v4, v5, v2}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
- .line 349
- :try_start_12b
- invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v4
- const-string v5, "com.htc"
- const/4 v6, 0x0
- invoke-virtual {v4, v5, v6}, Landroid/content/Context;->createPackageContext(Ljava/lang/String;I)Landroid/content/Context;
- move-result-object v4
- iput-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- :try_end_138
- .catch Landroid/content/pm/PackageManager$NameNotFoundException; {:try_start_12b .. :try_end_138} :catch_170
- .line 369
- :goto_138
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handleIfLanguageChanged()V
- .line 373
- const-string v4, "1"
- const-string/jumbo v5, "ro.ril.emc.mode"
- const-string v6, "0"
- invoke-static {v5, v6}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
- move-result-object v5
- invoke-virtual {v4, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v4
- iput-boolean v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSpecialEmMode:Z
- .line 374
- const-string v4, "GSM"
- new-instance v5, Ljava/lang/StringBuilder;
- invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v6, "mSpecialEmMode:"
- invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v5
- iget-boolean v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSpecialEmMode:Z
- invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v5
- invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v5
- invoke-static {v4, v5}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 377
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v4
- if-eqz v4, :cond_16f
- .line 378
- iput-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isFirstNetworkStateChange:Z
- .line 380
- :cond_16f
- return-void
- .line 350
- :catch_170
- move-exception v4
- move-object v1, v4
- .line 351
- .local v1, ex:Landroid/content/pm/PackageManager$NameNotFoundException;
- iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- goto :goto_138
- .end method
- .method static synthetic access$000(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;)V
- .registers 1
- .parameter "x0"
- .prologue
- .line 90
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->revertToNitz()V
- return-void
- .end method
- .method private airplaneModeOn(Landroid/content/Context;)V
- .registers 7
- .parameter "context"
- .prologue
- .line 2669
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->checkOffAlarm()Z
- move-result v1
- .line 2670
- .local v1, isAlarmTriggered:Z
- if-eqz v1, :cond_28
- .line 2673
- invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v2
- .line 2674
- .local v2, resolver:Landroid/content/ContentResolver;
- new-instance v0, Landroid/content/Intent;
- const-string v3, "android.intent.action.AIRPLANE_MODE"
- invoke-direct {v0, v3}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- .line 2675
- .local v0, airplaneIntent:Landroid/content/Intent;
- const/high16 v3, 0x2000
- invoke-virtual {v0, v3}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
- .line 2676
- const-string/jumbo v3, "state"
- const/4 v4, 0x1
- invoke-virtual {v0, v3, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 2677
- invoke-virtual {p1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
- .line 2678
- const-string v3, "GSM"
- const-string/jumbo v4, "turn on airplane mode"
- invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2680
- .end local v0 #airplaneIntent:Landroid/content/Intent;
- .end local v2 #resolver:Landroid/content/ContentResolver;
- :cond_28
- return-void
- .end method
- .method private checkOffAlarm()Z
- .registers 2
- .prologue
- .line 2638
- const/4 v0, 0x0
- .line 2649
- .local v0, alarmTriggered:Z
- return v0
- .end method
- .method private static displayNameFor(I)Ljava/lang/String;
- .registers 7
- .parameter "off"
- .prologue
- const/4 v5, 0x3
- .line 2202
- div-int/lit16 v3, p0, 0x3e8
- div-int/lit8 p0, v3, 0x3c
- .line 2204
- const/16 v3, 0x9
- new-array v0, v3, [C
- .line 2205
- .local v0, buf:[C
- const/4 v3, 0x0
- const/16 v4, 0x47
- aput-char v4, v0, v3
- .line 2206
- const/4 v3, 0x1
- const/16 v4, 0x4d
- aput-char v4, v0, v3
- .line 2207
- const/4 v3, 0x2
- const/16 v4, 0x54
- aput-char v4, v0, v3
- .line 2209
- if-gez p0, :cond_4f
- .line 2210
- const/16 v3, 0x2d
- aput-char v3, v0, v5
- .line 2211
- neg-int p0, p0
- .line 2216
- :goto_1f
- div-int/lit8 v1, p0, 0x3c
- .line 2217
- .local v1, hours:I
- rem-int/lit8 v2, p0, 0x3c
- .line 2219
- .local v2, minutes:I
- const/4 v3, 0x4
- div-int/lit8 v4, v1, 0xa
- add-int/lit8 v4, v4, 0x30
- int-to-char v4, v4
- aput-char v4, v0, v3
- .line 2220
- const/4 v3, 0x5
- rem-int/lit8 v4, v1, 0xa
- add-int/lit8 v4, v4, 0x30
- int-to-char v4, v4
- aput-char v4, v0, v3
- .line 2222
- const/4 v3, 0x6
- const/16 v4, 0x3a
- aput-char v4, v0, v3
- .line 2224
- const/4 v3, 0x7
- div-int/lit8 v4, v2, 0xa
- add-int/lit8 v4, v4, 0x30
- int-to-char v4, v4
- aput-char v4, v0, v3
- .line 2225
- const/16 v3, 0x8
- rem-int/lit8 v4, v2, 0xa
- add-int/lit8 v4, v4, 0x30
- int-to-char v4, v4
- aput-char v4, v0, v3
- .line 2227
- new-instance v3, Ljava/lang/String;
- invoke-direct {v3, v0}, Ljava/lang/String;-><init>([C)V
- return-object v3
- .line 2213
- .end local v1 #hours:I
- .end local v2 #minutes:I
- :cond_4f
- const/16 v3, 0x2b
- aput-char v3, v0, v5
- goto :goto_1f
- .end method
- .method private findTimeZone(IZJ)Ljava/util/TimeZone;
- .registers 15
- .parameter "offset"
- .parameter "dst"
- .parameter "when"
- .prologue
- .line 1868
- move v5, p1
- .line 1869
- .local v5, rawOffset:I
- if-eqz p2, :cond_7
- .line 1870
- const v9, 0x36ee80
- sub-int/2addr v5, v9
- .line 1872
- :cond_7
- invoke-static {v5}, Ljava/util/TimeZone;->getAvailableIDs(I)[Ljava/lang/String;
- move-result-object v8
- .line 1873
- .local v8, zones:[Ljava/lang/String;
- const/4 v2, 0x0
- .line 1874
- .local v2, guess:Ljava/util/TimeZone;
- new-instance v1, Ljava/util/Date;
- invoke-direct {v1, p3, p4}, Ljava/util/Date;-><init>(J)V
- .line 1875
- .local v1, d:Ljava/util/Date;
- move-object v0, v8
- .local v0, arr$:[Ljava/lang/String;
- array-length v4, v0
- .local v4, len$:I
- const/4 v3, 0x0
- .local v3, i$:I
- :goto_14
- if-ge v3, v4, :cond_29
- aget-object v7, v0, v3
- .line 1876
- .local v7, zone:Ljava/lang/String;
- invoke-static {v7}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
- move-result-object v6
- .line 1877
- .local v6, tz:Ljava/util/TimeZone;
- invoke-virtual {v6, p3, p4}, Ljava/util/TimeZone;->getOffset(J)I
- move-result v9
- if-ne v9, p1, :cond_2a
- invoke-virtual {v6, v1}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
- move-result v9
- if-ne v9, p2, :cond_2a
- .line 1879
- move-object v2, v6
- .line 1884
- .end local v6 #tz:Ljava/util/TimeZone;
- .end local v7 #zone:Ljava/lang/String;
- :cond_29
- return-object v2
- .line 1875
- .restart local v6 #tz:Ljava/util/TimeZone;
- .restart local v7 #zone:Ljava/lang/String;
- :cond_2a
- add-int/lit8 v3, v3, 0x1
- goto :goto_14
- .end method
- .method private getAutoTime()Z
- .registers 5
- .prologue
- const/4 v3, 0x1
- .line 2411
- :try_start_1
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v1
- const-string v2, "auto_time"
- invoke-static {v1, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I
- :try_end_10
- .catch Landroid/provider/Settings$SettingNotFoundException; {:try_start_1 .. :try_end_10} :catch_17
- move-result v1
- if-lez v1, :cond_15
- move v1, v3
- .line 2414
- :goto_14
- return v1
- .line 2411
- :cond_15
- const/4 v1, 0x0
- goto :goto_14
- .line 2413
- :catch_17
- move-exception v1
- move-object v0, v1
- .local v0, snfe:Landroid/provider/Settings$SettingNotFoundException;
- move v1, v3
- .line 2414
- goto :goto_14
- .end method
- .method private getNitzTimeZone(IZJ)Ljava/util/TimeZone;
- .registers 9
- .parameter "offset"
- .parameter "dst"
- .parameter "when"
- .prologue
- .line 1855
- invoke-direct {p0, p1, p2, p3, p4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->findTimeZone(IZJ)Ljava/util/TimeZone;
- move-result-object v0
- .line 1856
- .local v0, guess:Ljava/util/TimeZone;
- if-nez v0, :cond_d
- .line 1858
- if-nez p2, :cond_29
- const/4 v1, 0x1
- :goto_9
- invoke-direct {p0, p1, v1, p3, p4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->findTimeZone(IZJ)Ljava/util/TimeZone;
- move-result-object v0
- .line 1861
- :cond_d
- const-string v1, "GSM"
- new-instance v2, Ljava/lang/StringBuilder;
- invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
- const-string v3, "getNitzTimeZone returning "
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- if-nez v0, :cond_2b
- move-object v3, v0
- :goto_1d
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v2
- invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v2
- invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1864
- return-object v0
- .line 1858
- :cond_29
- const/4 v1, 0x0
- goto :goto_9
- .line 1861
- :cond_2b
- invoke-virtual {v0}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v3
- goto :goto_1d
- .end method
- .method private getOffAlarm()Z
- .registers 3
- .prologue
- .line 2653
- const-string v1, "dev.bootreason"
- invoke-static {v1}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v0
- .line 2654
- .local v0, reason:Ljava/lang/String;
- const-string/jumbo v1, "rtc_alarm"
- invoke-static {v0, v1}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
- move-result v1
- return v1
- .end method
- .method private handleIfLanguageChanged()V
- .registers 8
- .prologue
- const/4 v6, 0x1
- const-string v5, "GSM"
- .line 2474
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- if-eqz v3, :cond_d2
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- invoke-virtual {v4}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v4
- invoke-virtual {v4}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
- move-result-object v4
- iget-object v4, v4, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
- if-eq v3, v4, :cond_d2
- .line 2475
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v3
- invoke-virtual {v3}, Landroid/content/res/Resources;->getConfiguration()Landroid/content/res/Configuration;
- move-result-object v3
- iget-object v3, v3, Landroid/content/res/Configuration;->locale:Ljava/util/Locale;
- iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- .line 2476
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- sget-object v4, Ljava/util/Locale;->TAIWAN:Ljava/util/Locale;
- invoke-virtual {v3, v4}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
- move-result v3
- if-nez v3, :cond_43
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- sget-object v4, Ljava/util/Locale;->TRADITIONAL_CHINESE:Ljava/util/Locale;
- invoke-virtual {v3, v4}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
- move-result v3
- if-nez v3, :cond_43
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- sget-object v4, Ljava/util/Locale;->CHINA:Ljava/util/Locale;
- invoke-virtual {v3, v4}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
- move-result v3
- if-eqz v3, :cond_78
- .line 2479
- :cond_43
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- if-nez v3, :cond_4e
- .line 2480
- new-instance v3, Ljava/util/HashMap;
- invoke-direct {v3}, Ljava/util/HashMap;-><init>()V
- iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- .line 2482
- :cond_4e
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- invoke-virtual {v3}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
- move-result-object v3
- const v4, 0x207000d
- invoke-virtual {v3, v4}, Landroid/content/res/Resources;->getStringArray(I)[Ljava/lang/String;
- move-result-object v1
- .line 2483
- .local v1, opStr:[Ljava/lang/String;
- const/4 v0, 0x0
- .local v0, i:I
- :goto_5c
- array-length v3, v1
- if-ge v0, v3, :cond_81
- .line 2484
- aget-object v3, v1, v0
- const-string v4, ","
- invoke-virtual {v3, v4}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
- move-result-object v2
- .line 2485
- .local v2, strArray:[Ljava/lang/String;
- array-length v3, v2
- const/4 v4, 0x2
- if-ne v3, v4, :cond_75
- .line 2486
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- const/4 v4, 0x0
- aget-object v4, v2, v4
- aget-object v5, v2, v6
- invoke-virtual {v3, v4, v5}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
- .line 2483
- :cond_75
- add-int/lit8 v0, v0, 0x1
- goto :goto_5c
- .line 2491
- .end local v0 #i:I
- .end local v1 #opStr:[Ljava/lang/String;
- .end local v2 #strArray:[Ljava/lang/String;
- :cond_78
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- if-eqz v3, :cond_81
- .line 2492
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- invoke-virtual {v3}, Ljava/util/HashMap;->clear()V
- .line 2496
- :cond_81
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v3}, Landroid/telephony/ServiceState;->getState()I
- move-result v3
- if-nez v3, :cond_bd
- .line 2497
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- if-eqz v3, :cond_be
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v4}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v4
- invoke-virtual {v3, v4}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
- move-result v3
- if-ne v6, v3, :cond_be
- .line 2498
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v5}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v5
- invoke-virtual {v3, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
- move-result-object v3
- check-cast v3, Ljava/lang/String;
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v5}, Landroid/telephony/ServiceState;->getOperatorAlphaShort()Ljava/lang/String;
- move-result-object v5
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v6}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v6
- invoke-virtual {v4, v3, v5, v6}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
- .line 2502
- :goto_ba
- invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateNetworkNameDisplay()V
- .line 2511
- :cond_bd
- :goto_bd
- return-void
- .line 2500
- :cond_be
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOriginalOperatorName:Ljava/lang/String;
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v5}, Landroid/telephony/ServiceState;->getOperatorAlphaShort()Ljava/lang/String;
- move-result-object v5
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v6}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v6
- invoke-virtual {v3, v4, v5, v6}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
- goto :goto_ba
- .line 2505
- :cond_d2
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mHtcContext:Landroid/content/Context;
- if-nez v3, :cond_de
- .line 2506
- const-string v3, "GSM"
- const-string v3, "No HTC Context was loaded!!"
- invoke-static {v5, v3}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_bd
- .line 2508
- :cond_de
- const-string v3, "GSM"
- const-string v3, "Language is not changed, leave as what it was!!"
- invoke-static {v5, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_bd
- .end method
- .method private isGprsConsistent(II)Z
- .registers 4
- .parameter "gprsState"
- .parameter "serviceState"
- .prologue
- .line 1847
- if-nez p2, :cond_4
- if-nez p1, :cond_6
- :cond_4
- const/4 v0, 0x1
- :goto_5
- return v0
- :cond_6
- const/4 v0, 0x0
- goto :goto_5
- .end method
- .method private isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
- .registers 16
- .parameter "gsmRoaming"
- .parameter "s"
- .prologue
- const/4 v12, 0x1
- const/4 v11, 0x0
- .line 2141
- const-string/jumbo v8, "gsm.sim.operator.alpha"
- const-string v9, "empty"
- invoke-static {v8, v9}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
- move-result-object v7
- .line 2143
- .local v7, spn:Ljava/lang/String;
- invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
- move-result-object v3
- .line 2144
- .local v3, onsl:Ljava/lang/String;
- invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorAlphaShort()Ljava/lang/String;
- move-result-object v4
- .line 2146
- .local v4, onss:Ljava/lang/String;
- if-eqz v3, :cond_4d
- invoke-virtual {v7, v3}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v8
- if-eqz v8, :cond_4d
- move v1, v12
- .line 2147
- .local v1, equalsOnsl:Z
- :goto_1c
- if-eqz v4, :cond_4f
- invoke-virtual {v7, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v8
- if-eqz v8, :cond_4f
- move v2, v12
- .line 2149
- .local v2, equalsOnss:Z
- :goto_25
- const-string/jumbo v8, "gsm.sim.operator.numeric"
- const-string v9, ""
- invoke-static {v8, v9}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
- move-result-object v6
- .line 2151
- .local v6, simNumeric:Ljava/lang/String;
- invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v5
- .line 2153
- .local v5, operatorNumeric:Ljava/lang/String;
- const/4 v0, 0x1
- .line 2155
- .local v0, equalsMcc:Z
- const/4 v8, 0x0
- const/4 v9, 0x3
- :try_start_35
- invoke-virtual {v6, v8, v9}, Ljava/lang/String;->substring(II)Ljava/lang/String;
- move-result-object v8
- const/4 v9, 0x0
- const/4 v10, 0x3
- invoke-virtual {v5, v9, v10}, Ljava/lang/String;->substring(II)Ljava/lang/String;
- move-result-object v9
- invoke-virtual {v8, v9}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- :try_end_42
- .catch Ljava/lang/Exception; {:try_start_35 .. :try_end_42} :catch_53
- move-result v0
- .line 2160
- :goto_43
- if-eqz p1, :cond_51
- if-eqz v0, :cond_4b
- if-nez v1, :cond_51
- if-nez v2, :cond_51
- :cond_4b
- move v8, v12
- :goto_4c
- return v8
- .end local v0 #equalsMcc:Z
- .end local v1 #equalsOnsl:Z
- .end local v2 #equalsOnss:Z
- .end local v5 #operatorNumeric:Ljava/lang/String;
- .end local v6 #simNumeric:Ljava/lang/String;
- :cond_4d
- move v1, v11
- .line 2146
- goto :goto_1c
- .restart local v1 #equalsOnsl:Z
- :cond_4f
- move v2, v11
- .line 2147
- goto :goto_25
- .restart local v0 #equalsMcc:Z
- .restart local v2 #equalsOnss:Z
- .restart local v5 #operatorNumeric:Ljava/lang/String;
- .restart local v6 #simNumeric:Ljava/lang/String;
- :cond_51
- move v8, v11
- .line 2160
- goto :goto_4c
- .line 2157
- :catch_53
- move-exception v8
- goto :goto_43
- .end method
- .method private log(Ljava/lang/String;)V
- .registers 5
- .parameter "s"
- .prologue
- .line 2633
- const-string v0, "GSM"
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "[GsmServiceStateTracker] "
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- invoke-virtual {v1, p1}, 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 {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2634
- return-void
- .end method
- .method private static networkTypeToString(I)Ljava/lang/String;
- .registers 5
- .parameter "type"
- .prologue
- .line 1463
- const-string/jumbo v0, "unknown"
- .line 1465
- .local v0, ret:Ljava/lang/String;
- packed-switch p0, :pswitch_data_38
- .line 1492
- :pswitch_6
- const-string v1, "GSM"
- new-instance v2, Ljava/lang/StringBuilder;
- invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
- const-string v3, "Wrong network type: "
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- invoke-static {p0}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
- move-result-object v3
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v2
- invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1497
- :goto_22
- return-object v0
- .line 1467
- :pswitch_23
- const-string v0, "GPRS"
- .line 1468
- goto :goto_22
- .line 1470
- :pswitch_26
- const-string v0, "EDGE"
- .line 1471
- goto :goto_22
- .line 1473
- :pswitch_29
- const-string v0, "UMTS"
- .line 1474
- goto :goto_22
- .line 1476
- :pswitch_2c
- const-string v0, "HSDPA"
- .line 1477
- goto :goto_22
- .line 1479
- :pswitch_2f
- const-string v0, "HSUPA"
- .line 1480
- goto :goto_22
- .line 1482
- :pswitch_32
- const-string v0, "HSPA"
- .line 1483
- goto :goto_22
- .line 1486
- :pswitch_35
- const-string v0, "LTE"
- .line 1487
- goto :goto_22
- .line 1465
- :pswitch_data_38
- .packed-switch 0x1
- :pswitch_23
- :pswitch_26
- :pswitch_29
- :pswitch_6
- :pswitch_6
- :pswitch_6
- :pswitch_6
- :pswitch_6
- :pswitch_2c
- :pswitch_2f
- :pswitch_32
- :pswitch_6
- :pswitch_6
- :pswitch_35
- .end packed-switch
- .end method
- .method private onRestrictedStateChanged(Landroid/os/AsyncResult;)V
- .registers 13
- .parameter "ar"
- .prologue
- const/16 v10, 0x3ec
- const/16 v9, 0x3eb
- const/4 v8, 0x1
- const/4 v6, 0x0
- const-string v7, "GSM"
- .line 1986
- const-string v4, "GSM"
- const-string v4, "[DSAC DEB] onRestrictedStateChanged"
- invoke-static {v7, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1987
- new-instance v2, Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-direct {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;-><init>()V
- .line 1989
- .local v2, newRs:Lcom/android/internal/telephony/gsm/RestrictedState;
- const-string v4, "GSM"
- new-instance v4, Ljava/lang/StringBuilder;
- invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
- const-string v5, "[DSAC DEB] current rs at enter "
- invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v4
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v4
- invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v4
- invoke-static {v7, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1991
- iget-object v4, p1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- if-nez v4, :cond_ad
- .line 1992
- iget-object v4, p1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- check-cast v4, [I
- move-object v0, v4
- check-cast v0, [I
- move-object v1, v0
- .line 1993
- .local v1, ints:[I
- aget v3, v1, v6
- .line 1995
- .local v3, state:I
- and-int/lit8 v4, v3, 0x1
- if-nez v4, :cond_44
- and-int/lit8 v4, v3, 0x4
- if-eqz v4, :cond_c8
- :cond_44
- move v4, v8
- :goto_45
- invoke-virtual {v2, v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->setCsEmergencyRestricted(Z)V
- .line 1999
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/GSMPhone;->getIccCard()Lcom/android/internal/telephony/IccCard;
- move-result-object v4
- invoke-virtual {v4}, Lcom/android/internal/telephony/IccCard;->getState()Lcom/android/internal/telephony/IccCard$State;
- move-result-object v4
- sget-object v5, Lcom/android/internal/telephony/IccCard$State;->READY:Lcom/android/internal/telephony/IccCard$State;
- if-ne v4, v5, :cond_6a
- .line 2000
- and-int/lit8 v4, v3, 0x2
- if-nez v4, :cond_5e
- and-int/lit8 v4, v3, 0x4
- if-eqz v4, :cond_cb
- :cond_5e
- move v4, v8
- :goto_5f
- invoke-virtual {v2, v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->setCsNormalRestricted(Z)V
- .line 2003
- and-int/lit8 v4, v3, 0x10
- if-eqz v4, :cond_cd
- move v4, v8
- :goto_67
- invoke-virtual {v2, v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->setPsRestricted(Z)V
- .line 2007
- :cond_6a
- const-string v4, "GSM"
- new-instance v4, Ljava/lang/StringBuilder;
- invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
- const-string v5, "[DSAC DEB] new rs "
- invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v4
- invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v4
- invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v4
- invoke-static {v7, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2009
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v4
- if-nez v4, :cond_cf
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v4
- if-eqz v4, :cond_cf
- .line 2010
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictEnabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v4}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 2011
- const/16 v4, 0x3e9
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- .line 2022
- :cond_9a
- :goto_9a
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-eqz v4, :cond_100
- .line 2023
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-nez v4, :cond_e8
- .line 2025
- invoke-direct {p0, v10}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- .line 2068
- :cond_ab
- :goto_ab
- iput-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- .line 2070
- .end local v1 #ints:[I
- .end local v3 #state:I
- :cond_ad
- const-string v4, "GSM"
- new-instance v4, Ljava/lang/StringBuilder;
- invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
- const-string v5, "[DSAC DEB] current rs at return "
- invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v4
- iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v4
- invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v4
- invoke-static {v7, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2071
- return-void
- .restart local v1 #ints:[I
- .restart local v3 #state:I
- :cond_c8
- move v4, v6
- .line 1995
- goto/16 :goto_45
- :cond_cb
- move v4, v6
- .line 2000
- goto :goto_5f
- :cond_cd
- move v4, v6
- .line 2003
- goto :goto_67
- .line 2012
- :cond_cf
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v4
- if-eqz v4, :cond_9a
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v4
- if-nez v4, :cond_9a
- .line 2013
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictDisabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v4}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 2014
- const/16 v4, 0x3ea
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto :goto_9a
- .line 2026
- :cond_e8
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsNormalRestricted()Z
- move-result v4
- if-nez v4, :cond_f4
- .line 2028
- const/16 v4, 0x3ee
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto :goto_ab
- .line 2029
- :cond_f4
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsEmergencyRestricted()Z
- move-result v4
- if-nez v4, :cond_ab
- .line 2031
- const/16 v4, 0x3ed
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto :goto_ab
- .line 2033
- :cond_100
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsEmergencyRestricted()Z
- move-result v4
- if-eqz v4, :cond_131
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsNormalRestricted()Z
- move-result v4
- if-nez v4, :cond_131
- .line 2034
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-nez v4, :cond_11a
- .line 2036
- invoke-direct {p0, v10}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto :goto_ab
- .line 2037
- :cond_11a
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-eqz v4, :cond_124
- .line 2039
- invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto :goto_ab
- .line 2040
- :cond_124
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsNormalRestricted()Z
- move-result v4
- if-eqz v4, :cond_ab
- .line 2042
- const/16 v4, 0x3ed
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2044
- :cond_131
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsEmergencyRestricted()Z
- move-result v4
- if-nez v4, :cond_164
- iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v4}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsNormalRestricted()Z
- move-result v4
- if-eqz v4, :cond_164
- .line 2045
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-nez v4, :cond_14c
- .line 2047
- invoke-direct {p0, v10}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2048
- :cond_14c
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-eqz v4, :cond_157
- .line 2050
- invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2051
- :cond_157
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsEmergencyRestricted()Z
- move-result v4
- if-eqz v4, :cond_ab
- .line 2053
- const/16 v4, 0x3ee
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2056
- :cond_164
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsRestricted()Z
- move-result v4
- if-eqz v4, :cond_16f
- .line 2058
- invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2059
- :cond_16f
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsEmergencyRestricted()Z
- move-result v4
- if-eqz v4, :cond_17c
- .line 2061
- const/16 v4, 0x3ee
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .line 2062
- :cond_17c
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/RestrictedState;->isCsNormalRestricted()Z
- move-result v4
- if-eqz v4, :cond_ab
- .line 2064
- const/16 v4, 0x3ed
- invoke-direct {p0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
- goto/16 :goto_ab
- .end method
- .method private onSignalStrengthResult(Landroid/os/AsyncResult;)V
- .registers 24
- .parameter "ar"
- .prologue
- .line 1910
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- move-object/from16 v21, v0
- .line 1911
- .local v21, oldSignalStrength:Landroid/telephony/SignalStrength;
- const/16 v3, 0x63
- .line 1913
- .local v3, rssi:I
- const/16 v11, 0x63
- .line 1914
- .local v11, signalDbm:I
- const/4 v12, -0x1
- .line 1915
- .local v12, ecno:I
- const/4 v13, -0x1
- .line 1916
- .local v13, lteSignalStrength:I
- const/4 v14, -0x1
- .line 1917
- .local v14, lteRsrp:I
- const/4 v15, -0x1
- .line 1918
- .local v15, lteRsrq:I
- const/16 v16, -0x1
- .line 1919
- .local v16, lteRssnr:I
- const/16 v17, -0x1
- .line 1920
- .local v17, lteCqi:I
- const/16 v19, 0x0
- .line 1923
- .local v19, extraInfo:Z
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object v2, v0
- if-eqz v2, :cond_48
- .line 1926
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
- .line 1957
- .end local p1
- :cond_1e
- :goto_1e
- if-eqz v19, :cond_8f
- .line 1958
- new-instance v2, Landroid/telephony/SignalStrength;
- const/4 v4, -0x1
- const/4 v5, -0x1
- const/4 v6, -0x1
- const/4 v7, -0x1
- const/4 v8, -0x1
- const/4 v9, -0x1
- const/4 v10, 0x1
- invoke-direct/range {v2 .. v17}, Landroid/telephony/SignalStrength;-><init>(IIIIIIIZIIIIIII)V
- move-object v0, v2
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- .line 1967
- :goto_31
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- move-object v2, v0
- move-object v0, v2
- move-object/from16 v1, v21
- invoke-virtual {v0, v1}, Landroid/telephony/SignalStrength;->equals(Ljava/lang/Object;)Z
- move-result v2
- if-nez v2, :cond_47
- .line 1970
- :try_start_3f
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object v2, v0
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifySignalStrength()V
- :try_end_47
- .catch Ljava/lang/NullPointerException; {:try_start_3f .. :try_end_47} :catch_a1
- .line 1976
- .end local v3 #rssi:I
- :cond_47
- :goto_47
- return-void
- .line 1928
- .restart local v3 #rssi:I
- .restart local p1
- :cond_48
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [I
- move-object/from16 v0, p1
- check-cast v0, [I
- move-object/from16 v20, v0
- .line 1931
- .local v20, ints:[I
- move-object/from16 v0, v20
- array-length v0, v0
- move v2, v0
- if-eqz v2, :cond_85
- .line 1932
- const/4 v2, 0x0
- aget v3, v20, v2
- .line 1939
- :goto_5f
- move-object/from16 v0, v20
- array-length v0, v0
- move v2, v0
- const/16 v4, 0xe
- if-lt v2, v4, :cond_1e
- .line 1940
- const/16 v19, 0x1
- .line 1941
- const/4 v2, 0x7
- aget v11, v20, v2
- .line 1942
- const/16 v2, 0x8
- aget v12, v20, v2
- .line 1943
- const/16 v2, 0x9
- aget v13, v20, v2
- .line 1944
- const/16 v2, 0xa
- aget v14, v20, v2
- .line 1945
- const/16 v2, 0xb
- aget v15, v20, v2
- .line 1946
- const/16 v2, 0xc
- aget v16, v20, v2
- .line 1947
- const/16 v2, 0xd
- aget v17, v20, v2
- goto :goto_1e
- .line 1934
- :cond_85
- const-string v2, "GSM"
- const-string v3, "Bogus signal strength response"
- .end local v3 #rssi:I
- invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- .line 1935
- const/16 v3, 0x63
- .restart local v3 #rssi:I
- goto :goto_5f
- .line 1962
- .end local v20 #ints:[I
- :cond_8f
- new-instance v2, Landroid/telephony/SignalStrength;
- const/4 v4, -0x1
- const/4 v5, -0x1
- const/4 v6, -0x1
- const/4 v7, -0x1
- const/4 v8, -0x1
- const/4 v9, -0x1
- const/4 v10, 0x1
- invoke-direct/range {v2 .. v10}, Landroid/telephony/SignalStrength;-><init>(IIIIIIIZ)V
- move-object v0, v2
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- goto :goto_31
- .line 1971
- :catch_a1
- move-exception v2
- move-object/from16 v18, v2
- .line 1972
- .local v18, ex:Ljava/lang/NullPointerException;
- new-instance v2, Ljava/lang/StringBuilder;
- invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v3, "onSignalStrengthResult() Phone already destroyed: "
- .end local v3 #rssi:I
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- move-object v0, v2
- move-object/from16 v1, v18
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v2
- const-string v3, "SignalStrength not notified"
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v2
- move-object/from16 v0, p0
- move-object v1, v2
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- goto :goto_47
- .end method
- .method private pollState()V
- .registers 5
- .prologue
- const/4 v3, 0x0
- .line 1381
- const/4 v0, 0x1
- new-array v0, v0, [I
- iput-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- .line 1382
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- aput v3, v0, v3
- .line 1384
- sget-object v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$3;->$SwitchMap$com$android$internal$telephony$CommandsInterface$RadioState:[I
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v1}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v1
- invoke-virtual {v1}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->ordinal()I
- move-result v1
- aget v0, v0, v1
- packed-switch v0, :pswitch_data_aa
- .line 1420
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- aget v1, v0, v3
- add-int/lit8 v1, v1, 0x1
- aput v1, v0, v3
- .line 1421
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/4 v1, 0x6
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v1
- invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getOperator(Landroid/os/Message;)V
- .line 1442
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- aget v1, v0, v3
- add-int/lit8 v1, v1, 0x1
- aput v1, v0, v3
- .line 1443
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/4 v1, 0x4
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v1
- invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getRegistrationState(Landroid/os/Message;)V
- .line 1447
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- aget v1, v0, v3
- add-int/lit8 v1, v1, 0x1
- aput v1, v0, v3
- .line 1448
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/4 v1, 0x5
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v1
- invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getGPRSRegistrationState(Landroid/os/Message;)V
- .line 1453
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- aget v1, v0, v3
- add-int/lit8 v1, v1, 0x1
- aput v1, v0, v3
- .line 1454
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/16 v1, 0xe
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v1
- invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getNetworkSelectionMode(Landroid/os/Message;)V
- .line 1459
- :goto_6c
- return-void
- .line 1386
- :pswitch_6d
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- invoke-virtual {v0}, Landroid/telephony/ServiceState;->setStateOutOfService()V
- .line 1387
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- invoke-virtual {v0}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
- .line 1388
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
- .line 1389
- iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- .line 1390
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
- goto :goto_6c
- .line 1394
- :pswitch_80
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- invoke-virtual {v0}, Landroid/telephony/ServiceState;->setStateOff()V
- .line 1395
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- invoke-virtual {v0}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
- .line 1396
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
- .line 1397
- iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- .line 1398
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
- goto :goto_6c
- .line 1406
- :pswitch_93
- const-string v0, "GSM"
- const-string v1, "Radio Technology Change ongoing, setting SS to off"
- invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1407
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- invoke-virtual {v0}, Landroid/telephony/ServiceState;->setStateOff()V
- .line 1408
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- invoke-virtual {v0}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
- .line 1409
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
- .line 1410
- iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- goto :goto_6c
- .line 1384
- :pswitch_data_aa
- .packed-switch 0x1
- :pswitch_6d
- :pswitch_80
- :pswitch_93
- :pswitch_93
- :pswitch_93
- :pswitch_93
- :pswitch_93
- .end packed-switch
- .end method
- .method private pollStateDone()V
- .registers 35
- .prologue
- .line 1502
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v29
- if-eqz v29, :cond_12
- sget-boolean v29, Lcom/android/internal/telephony/gsm/GSMPhone;->mDropEvent:Z
- if-eqz v29, :cond_12
- .line 1503
- const-string v29, "GSM"
- const-string v30, " pollStateDone drop event "
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1824
- :cond_11
- :goto_11
- return-void
- .line 1508
- :cond_12
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "Poll ServiceState done: oldSS=["
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, "] newSS=["
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, "] oldGprs="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " newGprs="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " oldType="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- move/from16 v31, v0
- invoke-static/range {v31 .. v31}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkTypeToString(I)Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " newType="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v31, v0
- invoke-static/range {v31 .. v31}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkTypeToString(I)Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1515
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- if-eqz v29, :cond_731
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- if-nez v29, :cond_731
- const/16 v29, 0x1
- move/from16 v15, v29
- .line 1520
- .local v15, hasRegistered:Z
- :goto_a4
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v29
- if-eqz v29, :cond_109
- .line 1522
- if-nez v15, :cond_e2
- .line 1524
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- move/from16 v29, v0
- if-eqz v29, :cond_e2
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- if-nez v29, :cond_e2
- .line 1525
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "Set the hasRegistered ="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move v1, v15
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, "due to there has network change during poll state"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1526
- const/4 v15, 0x1
- .line 1529
- :cond_e2
- const/16 v29, 0x0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- .line 1530
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "reset the mCregChange ="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1533
- :cond_109
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- if-nez v29, :cond_737
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- if-eqz v29, :cond_737
- const/16 v29, 0x1
- move/from16 v9, v29
- .line 1537
- .local v9, hasDeregistered:Z
- :goto_125
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v29, v0
- if-eqz v29, :cond_73d
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v29, v0
- if-nez v29, :cond_73d
- const/16 v29, 0x1
- move/from16 v10, v29
- .line 1542
- .local v10, hasGprsAttached:Z
- :goto_139
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v29
- if-eqz v29, :cond_19a
- .line 1544
- if-nez v10, :cond_173
- .line 1546
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- move/from16 v29, v0
- if-eqz v29, :cond_173
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v29, v0
- if-nez v29, :cond_173
- .line 1547
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "Set the hasGprsAttached ="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move v1, v10
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, "due to there has network change during poll state"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1548
- const/4 v10, 0x1
- .line 1551
- :cond_173
- const/16 v29, 0x0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- .line 1552
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "reset the mCgregChange ="
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1556
- :cond_19a
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v29, v0
- if-nez v29, :cond_743
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v29, v0
- if-eqz v29, :cond_743
- const/16 v29, 0x1
- move/from16 v11, v29
- .line 1560
- .local v11, hasGprsDetached:Z
- :goto_1ae
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v30, v0
- move/from16 v0, v29
- move/from16 v1, v30
- if-eq v0, v1, :cond_749
- const/16 v29, 0x1
- move/from16 v14, v29
- .line 1562
- .local v14, hasNetworkTypeChanged:Z
- :goto_1c4
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v30, v0
- invoke-virtual/range {v29 .. v30}, Landroid/telephony/ServiceState;->equals(Ljava/lang/Object;)Z
- move-result v29
- if-nez v29, :cond_74f
- const/16 v29, 0x1
- move/from16 v8, v29
- .line 1564
- .local v8, hasChanged:Z
- :goto_1da
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getRoaming()Z
- move-result v29
- if-nez v29, :cond_755
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getRoaming()Z
- move-result v29
- if-eqz v29, :cond_755
- const/16 v29, 0x1
- move/from16 v17, v29
- .line 1566
- .local v17, hasRoamingOn:Z
- :goto_1f6
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getRoaming()Z
- move-result v29
- if-eqz v29, :cond_75b
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getRoaming()Z
- move-result v29
- if-nez v29, :cond_75b
- const/16 v29, 0x1
- move/from16 v16, v29
- .line 1568
- .local v16, hasRoamingOff:Z
- :goto_212
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v29, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v30, v0
- invoke-virtual/range {v29 .. v30}, Landroid/telephony/gsm/GsmCellLocation;->equals(Ljava/lang/Object;)Z
- move-result v29
- if-nez v29, :cond_761
- const/16 v29, 0x1
- move/from16 v12, v29
- .line 1571
- .local v12, hasLocationChanged:Z
- :goto_228
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getState()I
- move-result v29
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v30, v0
- invoke-virtual/range {v30 .. v30}, Landroid/telephony/ServiceState;->getState()I
- move-result v30
- move/from16 v0, v29
- move/from16 v1, v30
- if-ne v0, v1, :cond_254
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v30, v0
- move/from16 v0, v29
- move/from16 v1, v30
- if-eq v0, v1, :cond_2a2
- .line 1572
- :cond_254
- const v29, 0xc3c2
- const/16 v30, 0x4
- move/from16 v0, v30
- new-array v0, v0, [Ljava/lang/Object;
- move-object/from16 v30, v0
- const/16 v31, 0x0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v32, v0
- invoke-virtual/range {v32 .. v32}, Landroid/telephony/ServiceState;->getState()I
- move-result v32
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- const/16 v31, 0x1
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v32, v0
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- const/16 v31, 0x2
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v32, v0
- invoke-virtual/range {v32 .. v32}, Landroid/telephony/ServiceState;->getState()I
- move-result v32
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- const/16 v31, 0x3
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v32, v0
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- invoke-static/range {v29 .. v30}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
- .line 1577
- :cond_2a2
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- move/from16 v29, v0
- if-eqz v29, :cond_767
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- move/from16 v30, v0
- move/from16 v0, v29
- move/from16 v1, v30
- if-eq v0, v1, :cond_767
- const/16 v29, 0x1
- move/from16 v13, v29
- .line 1582
- .local v13, hasMMRejectChanged:Z
- :goto_2c0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v24, v0
- .line 1583
- .local v24, tss:Landroid/telephony/ServiceState;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- move-object/from16 v0, v29
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- .line 1584
- move-object/from16 v0, v24
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- .line 1586
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->setStateOutOfService()V
- .line 1588
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v22, v0
- .line 1589
- .local v22, tcl:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v29, v0
- move-object/from16 v0, v29
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .line 1590
- move-object/from16 v0, v22
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- .line 1595
- if-eqz v14, :cond_383
- .line 1596
- const/4 v6, -0x1
- .line 1597
- .local v6, cid:I
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
- move-result-object v20
- check-cast v20, Landroid/telephony/gsm/GsmCellLocation;
- .line 1598
- .local v20, loc:Landroid/telephony/gsm/GsmCellLocation;
- if-eqz v20, :cond_30e
- invoke-virtual/range {v20 .. v20}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
- move-result v6
- .line 1599
- :cond_30e
- const v29, 0xc3c0
- const/16 v30, 0x3
- move/from16 v0, v30
- new-array v0, v0, [Ljava/lang/Object;
- move-object/from16 v30, v0
- const/16 v31, 0x0
- invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- const/16 v31, 0x1
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- move/from16 v32, v0
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- const/16 v31, 0x2
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v32, v0
- invoke-static/range {v32 .. v32}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v32
- aput-object v32, v30, v31
- invoke-static/range {v29 .. v30}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
- .line 1600
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "RAT switched "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- move/from16 v31, v0
- invoke-static/range {v31 .. v31}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkTypeToString(I)Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " -> "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v31, v0
- invoke-static/range {v31 .. v31}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkTypeToString(I)Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " at cell "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move v1, v6
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1605
- .end local v6 #cid:I
- .end local v20 #loc:Landroid/telephony/gsm/GsmCellLocation;
- :cond_383
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v29, v0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- .line 1606
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v29, v0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- .line 1608
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->setStateOutOfService()V
- .line 1610
- if-eqz v14, :cond_3bc
- .line 1614
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.network.type"
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- move/from16 v31, v0
- invoke-static/range {v31 .. v31}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkTypeToString(I)Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v29 .. v31}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1621
- :cond_3bc
- if-eqz v15, :cond_3c7
- .line 1622
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkAttachedRegistrants:Landroid/os/RegistrantList;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 1626
- :cond_3c7
- if-eqz v9, :cond_3da
- .line 1627
- const-string v29, ""
- move-object/from16 v0, v29
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOriginalOperatorName:Ljava/lang/String;
- .line 1628
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->processRestartManualNetworkSelection()V
- .line 1632
- :cond_3da
- if-eqz v8, :cond_63a
- .line 1636
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateNetworkNameDisplay()V
- .line 1646
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v21
- .line 1647
- .local v21, operatorNumeric:Ljava/lang/String;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.numeric"
- move-object/from16 v0, v29
- move-object/from16 v1, v30
- move-object/from16 v2, v21
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1648
- if-nez v21, :cond_76d
- .line 1649
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.iso-country"
- const-string v31, ""
- invoke-virtual/range {v29 .. v31}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1650
- const-string v29, ""
- move-object/from16 v0, v29
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- .line 1651
- const/16 v29, 0x0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- .line 1670
- :goto_41b
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v29, v0
- if-eqz v29, :cond_7ee
- const/16 v29, 0x1
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v30, v0
- move-object/from16 v0, v30
- move-object/from16 v1, v21
- invoke-virtual {v0, v1}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
- move-result v30
- move/from16 v0, v29
- move/from16 v1, v30
- if-ne v0, v1, :cond_7ee
- .line 1671
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.alpha"
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v31, v0
- move-object/from16 v0, v31
- move-object/from16 v1, v21
- invoke-virtual {v0, v1}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
- move-result-object v5
- check-cast v5, Ljava/lang/String;
- move-object/from16 v0, v29
- move-object/from16 v1, v30
- move-object v2, v5
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1679
- :goto_45a
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->checkTestIcc()Z
- move-result v18
- .line 1681
- .local v18, isTestIcc:Z
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v29, v0
- invoke-static/range {v29 .. v29}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v29
- if-eqz v29, :cond_472
- if-eqz v18, :cond_5bc
- :cond_472
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- move/from16 v29, v0
- if-eqz v29, :cond_5bc
- .line 1682
- const/16 v27, 0x0
- .line 1686
- .local v27, zone:Ljava/util/TimeZone;
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "fixTimeZone mOPERATOR_ISO_COUNTRY: "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1687
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "mZoneOffset: "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " mZoneDst: "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " mZoneTime:"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
- move-wide/from16 v31, v0
- invoke-virtual/range {v30 .. v32}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " isTestIcc:"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move/from16 v1, v18
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1689
- const-string/jumbo v29, "persist.sys.timezone"
- invoke-static/range {v29 .. v29}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v28
- .line 1690
- .local v28, zoneName:Ljava/lang/String;
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- move/from16 v29, v0
- if-nez v29, :cond_81c
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- move/from16 v29, v0
- if-nez v29, :cond_81c
- if-eqz v28, :cond_81c
- invoke-virtual/range {v28 .. v28}, Ljava/lang/String;->length()I
- move-result v29
- if-lez v29, :cond_81c
- sget-object v29, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->GMT_COUNTRY_CODES:[Ljava/lang/String;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v30, v0
- invoke-static/range {v29 .. v30}, Ljava/util/Arrays;->binarySearch([Ljava/lang/Object;Ljava/lang/Object;)I
- move-result v29
- if-gez v29, :cond_81c
- .line 1694
- if-eqz v18, :cond_806
- .line 1695
- const-string v29, "UTC"
- invoke-static/range {v29 .. v29}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
- move-result-object v27
- .line 1699
- :goto_51c
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "mZoneOffset:0, mZoneDst:false, zoneName != null, zone:"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v27 .. v27}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1705
- invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
- move-result-wide v29
- move-object/from16 v0, v27
- move-wide/from16 v1, v29
- invoke-virtual {v0, v1, v2}, Ljava/util/TimeZone;->getOffset(J)I
- move-result v29
- move/from16 v0, v29
- int-to-long v0, v0
- move-wide/from16 v25, v0
- .line 1706
- .local v25, tzOffset:J
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
- move-result v29
- if-eqz v29, :cond_80c
- .line 1707
- invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
- move-result-wide v29
- sub-long v29, v29, v25
- move-object/from16 v0, p0
- move-wide/from16 v1, v29
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
- .line 1734
- .end local v25 #tzOffset:J
- :goto_55d
- if-eqz v27, :cond_8d0
- .line 1735
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "fixTimeZone is done zone:"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v27 .. v27}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
- .line 1736
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
- move-result v29
- if-eqz v29, :cond_5a9
- .line 1738
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "pollStateDone AUTO_TIME update time zone: "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v27 .. v27}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1740
- invoke-virtual/range {v27 .. v27}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v29
- move-object/from16 v0, p0
- move-object/from16 v1, v29
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
- .line 1742
- :cond_5a9
- invoke-virtual/range {v27 .. v27}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v29
- move-object/from16 v0, p0
- move-object/from16 v1, v29
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTimeZone(Ljava/lang/String;)V
- .line 1743
- const/16 v29, 0x0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- .line 1749
- .end local v27 #zone:Ljava/util/TimeZone;
- .end local v28 #zoneName:Ljava/lang/String;
- :cond_5bc
- :goto_5bc
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.isroaming"
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v31, v0
- invoke-virtual/range {v31 .. v31}, Landroid/telephony/ServiceState;->getRoaming()Z
- move-result v31
- if-eqz v31, :cond_8d9
- const-string/jumbo v31, "true"
- :goto_5d4
- invoke-virtual/range {v29 .. v31}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1752
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->getPhoneType()I
- move-result v29
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v30, v0
- const/16 v30, 0x1
- move/from16 v0, v29
- move/from16 v1, v30
- if-ne v0, v1, :cond_612
- .line 1754
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->VERIZON_WPHONE_CONFIG()Z
- move-result v29
- if-nez v29, :cond_612
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- move-object/from16 v0, v29
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- move-object/from16 v29, v0
- if-eqz v29, :cond_612
- .line 1755
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- move-object/from16 v0, v29
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/SIMRecords;->queryCFUIfNecessary()V
- .line 1760
- :cond_612
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v30, v0
- invoke-virtual/range {v29 .. v30}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyServiceStateChanged(Landroid/telephony/ServiceState;)V
- .line 1762
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v29
- if-eqz v29, :cond_63a
- .line 1763
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v29, v0
- const/16 v30, 0x3
- move-object/from16 v0, p0
- move/from16 v1, v30
- invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
- move-result-object v30
- invoke-interface/range {v29 .. v30}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
- .line 1768
- .end local v18 #isTestIcc:Z
- .end local v21 #operatorNumeric:Ljava/lang/String;
- :cond_63a
- if-eqz v10, :cond_645
- .line 1769
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsAttachedRegistrants:Landroid/os/RegistrantList;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 1772
- :cond_645
- if-eqz v11, :cond_650
- .line 1773
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsDetachedRegistrants:Landroid/os/RegistrantList;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 1781
- :cond_650
- if-nez v14, :cond_654
- if-eqz v10, :cond_65f
- .line 1783
- :cond_654
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const/16 v30, 0x0
- invoke-virtual/range {v29 .. v30}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyDataConnection(Ljava/lang/String;)V
- .line 1786
- :cond_65f
- if-eqz v17, :cond_66a
- .line 1787
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->roamingOnRegistrants:Landroid/os/RegistrantList;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 1790
- :cond_66a
- if-eqz v16, :cond_675
- .line 1791
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->roamingOffRegistrants:Landroid/os/RegistrantList;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Landroid/os/RegistrantList;->notifyRegistrants()V
- .line 1794
- :cond_675
- if-eqz v12, :cond_680
- .line 1795
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
- .line 1799
- :cond_680
- if-eqz v13, :cond_6cc
- .line 1800
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- move/from16 v29, v0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- .line 1801
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "MM Reject Cause: "
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- move/from16 v31, v0
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1802
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const/16 v30, 0x1
- move/from16 v0, v30
- new-array v0, v0, [I
- move-object/from16 v30, v0
- const/16 v31, 0x0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- move/from16 v32, v0
- aput v32, v30, v31
- invoke-virtual/range {v29 .. v30}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyMMLocationUpdateInfo([I)V
- .line 1804
- if-nez v8, :cond_6cc
- .line 1805
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateNetworkNameDisplay()V
- .line 1810
- :cond_6cc
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v30, v0
- invoke-virtual/range {v30 .. v30}, Landroid/telephony/ServiceState;->getState()I
- move-result v30
- move-object/from16 v0, p0
- move/from16 v1, v29
- move/from16 v2, v30
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
- move-result v29
- if-nez v29, :cond_8dd
- .line 1811
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
- move/from16 v29, v0
- if-nez v29, :cond_11
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
- move/from16 v29, v0
- if-nez v29, :cond_11
- .line 1812
- const/16 v29, 0x1
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
- .line 1814
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- invoke-virtual/range {v29 .. v29}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v29
- invoke-virtual/range {v29 .. v29}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v29
- const-string/jumbo v30, "gprs_register_check_period_ms"
- const v31, 0xea60
- invoke-static/range {v29 .. v31}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
- move-result v5
- .line 1818
- .local v5, check_period:I
- const/16 v29, 0x16
- move-object/from16 v0, p0
- move/from16 v1, v29
- invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
- move-result-object v29
- move v0, v5
- int-to-long v0, v0
- move-wide/from16 v30, v0
- move-object/from16 v0, p0
- move-object/from16 v1, v29
- move-wide/from16 v2, v30
- invoke-virtual {v0, v1, v2, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->sendMessageDelayed(Landroid/os/Message;J)Z
- goto/16 :goto_11
- .line 1515
- .end local v5 #check_period:I
- .end local v8 #hasChanged:Z
- .end local v9 #hasDeregistered:Z
- .end local v10 #hasGprsAttached:Z
- .end local v11 #hasGprsDetached:Z
- .end local v12 #hasLocationChanged:Z
- .end local v13 #hasMMRejectChanged:Z
- .end local v14 #hasNetworkTypeChanged:Z
- .end local v15 #hasRegistered:Z
- .end local v16 #hasRoamingOff:Z
- .end local v17 #hasRoamingOn:Z
- .end local v22 #tcl:Landroid/telephony/gsm/GsmCellLocation;
- .end local v24 #tss:Landroid/telephony/ServiceState;
- :cond_731
- const/16 v29, 0x0
- move/from16 v15, v29
- goto/16 :goto_a4
- .line 1533
- .restart local v15 #hasRegistered:Z
- :cond_737
- const/16 v29, 0x0
- move/from16 v9, v29
- goto/16 :goto_125
- .line 1537
- .restart local v9 #hasDeregistered:Z
- :cond_73d
- const/16 v29, 0x0
- move/from16 v10, v29
- goto/16 :goto_139
- .line 1556
- .restart local v10 #hasGprsAttached:Z
- :cond_743
- const/16 v29, 0x0
- move/from16 v11, v29
- goto/16 :goto_1ae
- .line 1560
- .restart local v11 #hasGprsDetached:Z
- :cond_749
- const/16 v29, 0x0
- move/from16 v14, v29
- goto/16 :goto_1c4
- .line 1562
- .restart local v14 #hasNetworkTypeChanged:Z
- :cond_74f
- const/16 v29, 0x0
- move/from16 v8, v29
- goto/16 :goto_1da
- .line 1564
- .restart local v8 #hasChanged:Z
- :cond_755
- const/16 v29, 0x0
- move/from16 v17, v29
- goto/16 :goto_1f6
- .line 1566
- .restart local v17 #hasRoamingOn:Z
- :cond_75b
- const/16 v29, 0x0
- move/from16 v16, v29
- goto/16 :goto_212
- .line 1568
- .restart local v16 #hasRoamingOff:Z
- :cond_761
- const/16 v29, 0x0
- move/from16 v12, v29
- goto/16 :goto_228
- .line 1577
- .restart local v12 #hasLocationChanged:Z
- :cond_767
- const/16 v29, 0x0
- move/from16 v13, v29
- goto/16 :goto_2c0
- .line 1653
- .restart local v13 #hasMMRejectChanged:Z
- .restart local v21 #operatorNumeric:Ljava/lang/String;
- .restart local v22 #tcl:Landroid/telephony/gsm/GsmCellLocation;
- .restart local v24 #tss:Landroid/telephony/ServiceState;
- :cond_76d
- const-string v19, ""
- .line 1655
- .local v19, iso:Ljava/lang/String;
- const/16 v29, 0x0
- const/16 v30, 0x3
- :try_start_773
- move-object/from16 v0, v21
- move/from16 v1, v29
- move/from16 v2, v30
- invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
- move-result-object v29
- invoke-static/range {v29 .. v29}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v29
- invoke-static/range {v29 .. v29}, Lcom/android/internal/telephony/MccTable;->countryCodeForMcc(I)Ljava/lang/String;
- :try_end_784
- .catch Ljava/lang/NumberFormatException; {:try_start_773 .. :try_end_784} :catch_7ad
- .catch Ljava/lang/StringIndexOutOfBoundsException; {:try_start_773 .. :try_end_784} :catch_7cc
- move-result-object v19
- .line 1663
- :goto_785
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.iso-country"
- move-object/from16 v0, v29
- move-object/from16 v1, v30
- move-object/from16 v2, v19
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1664
- move-object/from16 v0, v19
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- .line 1665
- invoke-static/range {v19 .. v19}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v29
- if-nez v29, :cond_7eb
- const/16 v29, 0x1
- :goto_7a5
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- goto/16 :goto_41b
- .line 1657
- :catch_7ad
- move-exception v29
- move-object/from16 v7, v29
- .line 1658
- .local v7, ex:Ljava/lang/NumberFormatException;
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "countryCodeForMcc error"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move-object v1, v7
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_785
- .line 1659
- .end local v7 #ex:Ljava/lang/NumberFormatException;
- :catch_7cc
- move-exception v29
- move-object/from16 v7, v29
- .line 1660
- .local v7, ex:Ljava/lang/StringIndexOutOfBoundsException;
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string v31, "countryCodeForMcc error"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move-object v1, v7
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_785
- .line 1665
- .end local v7 #ex:Ljava/lang/StringIndexOutOfBoundsException;
- :cond_7eb
- const/16 v29, 0x0
- goto :goto_7a5
- .line 1674
- .end local v19 #iso:Ljava/lang/String;
- :cond_7ee
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v29, v0
- const-string/jumbo v30, "gsm.operator.alpha"
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v31, v0
- invoke-virtual/range {v31 .. v31}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
- move-result-object v31
- invoke-virtual/range {v29 .. v31}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- goto/16 :goto_45a
- .line 1697
- .restart local v18 #isTestIcc:Z
- .restart local v27 #zone:Ljava/util/TimeZone;
- .restart local v28 #zoneName:Ljava/lang/String;
- :cond_806
- invoke-static {}, Ljava/util/TimeZone;->getDefault()Ljava/util/TimeZone;
- move-result-object v27
- goto/16 :goto_51c
- .line 1710
- .restart local v25 #tzOffset:J
- :cond_80c
- move-object/from16 v0, p0
- iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- move-wide/from16 v29, v0
- sub-long v29, v29, v25
- move-wide/from16 v0, v29
- move-object/from16 v2, p0
- iput-wide v0, v2, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- goto/16 :goto_55d
- .line 1712
- .end local v25 #tzOffset:J
- :cond_81c
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v29, v0
- const-string v30, ""
- invoke-virtual/range {v29 .. v30}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v29
- if-eqz v29, :cond_8b2
- .line 1716
- const-string v23, "001"
- .line 1717
- .local v23, testOperatorMCC:Ljava/lang/String;
- invoke-static/range {v21 .. v21}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v29
- if-nez v29, :cond_882
- move-object/from16 v0, v21
- move-object/from16 v1, v23
- invoke-virtual {v0, v1}, Ljava/lang/String;->equalsIgnoreCase(Ljava/lang/String;)Z
- move-result v29
- if-eqz v29, :cond_882
- .line 1719
- const-string v29, "GSM"
- new-instance v30, Ljava/lang/StringBuilder;
- invoke-direct/range {v30 .. v30}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v31, "test operator :"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- move-object/from16 v0, v30
- move-object/from16 v1, v21
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- const-string v31, " for iso is empty"
- invoke-virtual/range {v30 .. v31}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v30
- invoke-virtual/range {v30 .. v30}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v30
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
- .line 1720
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- move/from16 v30, v0
- move-object/from16 v0, p0
- iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
- move-wide/from16 v31, v0
- const-string/jumbo v33, "us"
- invoke-static/range {v29 .. v33}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
- move-result-object v27
- .line 1722
- const/16 v29, 0x1
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- goto/16 :goto_55d
- .line 1724
- :cond_882
- const-string v29, "GSM"
- const-string/jumbo v30, "to figure out time zone in no iso case"
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->v(Ljava/lang/String;Ljava/lang/String;)I
- .line 1725
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- move/from16 v30, v0
- move-object/from16 v0, p0
- iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
- move-wide/from16 v31, v0
- move-object/from16 v0, p0
- move/from16 v1, v29
- move/from16 v2, v30
- move-wide/from16 v3, v31
- invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getNitzTimeZone(IZJ)Ljava/util/TimeZone;
- move-result-object v27
- .line 1726
- const/16 v29, 0x1
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- goto/16 :goto_55d
- .line 1730
- .end local v23 #testOperatorMCC:Ljava/lang/String;
- :cond_8b2
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- move/from16 v29, v0
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- move/from16 v30, v0
- move-object/from16 v0, p0
- iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
- move-wide/from16 v31, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v33, v0
- invoke-static/range {v29 .. v33}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
- move-result-object v27
- goto/16 :goto_55d
- .line 1745
- :cond_8d0
- const-string v29, "GSM"
- const-string v30, "fixTimeZone zone is null"
- invoke-static/range {v29 .. v30}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto/16 :goto_5bc
- .line 1749
- .end local v27 #zone:Ljava/util/TimeZone;
- .end local v28 #zoneName:Ljava/lang/String;
- :cond_8d9
- const-string v31, "false"
- goto/16 :goto_5d4
- .line 1822
- .end local v18 #isTestIcc:Z
- .end local v21 #operatorNumeric:Ljava/lang/String;
- :cond_8dd
- const/16 v29, 0x0
- move/from16 v0, v29
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
- goto/16 :goto_11
- .end method
- .method private processIfDTMCase(I)I
- .registers 7
- .parameter "networkType"
- .prologue
- const/4 v4, 0x1
- .line 2686
- const-string v1, "GSM"
- new-instance v2, Ljava/lang/StringBuilder;
- invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v3, "networkType:"
- invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v2
- invoke-virtual {v2, p1}, 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
- invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2688
- move v0, p1
- .line 2689
- .local v0, resultType:I
- const/4 v1, 0x0
- iput-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->m2gWithDTM:Z
- .line 2694
- const/16 v1, 0x10
- if-ne p1, v1, :cond_26
- .line 2695
- iput-boolean v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->m2gWithDTM:Z
- .line 2696
- const/4 v0, 0x1
- .line 2701
- :cond_25
- :goto_25
- return v0
- .line 2697
- :cond_26
- const/16 v1, 0x13
- if-ne p1, v1, :cond_25
- .line 2698
- iput-boolean v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->m2gWithDTM:Z
- .line 2699
- const/4 v0, 0x2
- goto :goto_25
- .end method
- .method private queryCFUIfNecessary()V
- .registers 6
- .prologue
- const/4 v4, 0x1
- const/4 v3, 0x0
- .line 1830
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v1
- const-string v2, "cfu_query_when_campon"
- invoke-static {v1, v2, v3}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
- move-result v1
- if-lez v1, :cond_2e
- move v0, v4
- .line 1832
- .local v0, cfuQuery:Z
- :goto_15
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->checkTestIcc()Z
- move-result v1
- if-nez v1, :cond_2d
- if-ne v0, v4, :cond_2d
- .line 1833
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v1}, Landroid/telephony/ServiceState;->getState()I
- move-result v1
- if-nez v1, :cond_2d
- .line 1834
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- const/4 v2, 0x0
- invoke-virtual {v1, v3, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCallForwardingOption(ILandroid/os/Message;)V
- .line 1837
- :cond_2d
- return-void
- .end local v0 #cfuQuery:Z
- :cond_2e
- move v0, v3
- .line 1830
- goto :goto_15
- .end method
- .method private queueNextSignalStrengthPoll()V
- .registers 4
- .prologue
- .line 1888
- iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
- if-nez v1, :cond_10
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v1}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v1
- invoke-virtual {v1}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isCdma()Z
- move-result v1
- if-eqz v1, :cond_11
- .line 1903
- :cond_10
- :goto_10
- return-void
- .line 1896
- :cond_11
- invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage()Landroid/os/Message;
- move-result-object v0
- .line 1897
- .local v0, msg:Landroid/os/Message;
- const/16 v1, 0xa
- iput v1, v0, Landroid/os/Message;->what:I
- .line 1902
- const-wide/16 v1, 0x4e20
- invoke-virtual {p0, v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->sendMessageDelayed(Landroid/os/Message;J)Z
- goto :goto_10
- .end method
- .method private regCodeIsRoaming(I)Z
- .registers 3
- .parameter "code"
- .prologue
- .line 2130
- const/4 v0, 0x5
- if-ne v0, p1, :cond_5
- const/4 v0, 0x1
- :goto_4
- return v0
- :cond_5
- const/4 v0, 0x0
- goto :goto_4
- .end method
- .method private regCodeToServiceState(I)I
- .registers 6
- .parameter "code"
- .prologue
- const/4 v0, 0x0
- const/4 v1, 0x2
- const/4 v2, 0x1
- const-string v3, "GSM"
- .line 2075
- packed-switch p1, :pswitch_data_42
- .line 2118
- :pswitch_8
- const-string v0, "GSM"
- new-instance v0, Ljava/lang/StringBuilder;
- invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v1, "unexpected service state "
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v0
- invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v0
- invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v0
- invoke-static {v3, v0}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- move v0, v2
- .line 2119
- :goto_22
- :pswitch_22
- return v0
- :pswitch_23
- move v0, v2
- .line 2078
- goto :goto_22
- .line 2083
- :pswitch_25
- iget-boolean v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSpecialEmMode:Z
- if-eqz v0, :cond_2b
- move v0, v2
- .line 2084
- goto :goto_22
- :cond_2b
- move v0, v1
- .line 2086
- goto :goto_22
- .line 2092
- :pswitch_2d
- iget-boolean v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSpecialEmMode:Z
- if-eqz v0, :cond_33
- move v0, v2
- .line 2093
- goto :goto_22
- :cond_33
- move v0, v1
- .line 2095
- goto :goto_22
- :pswitch_35
- move v0, v1
- .line 2102
- goto :goto_22
- .line 2113
- :pswitch_37
- const-string v0, "GSM"
- const-string/jumbo v0, "special emergency state with +CREG:15"
- invoke-static {v3, v0}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- move v0, v1
- .line 2114
- goto :goto_22
- .line 2075
- nop
- :pswitch_data_42
- .packed-switch 0x0
- :pswitch_23
- :pswitch_22
- :pswitch_25
- :pswitch_2d
- :pswitch_2d
- :pswitch_22
- :pswitch_8
- :pswitch_8
- :pswitch_8
- :pswitch_8
- :pswitch_35
- :pswitch_8
- :pswitch_35
- :pswitch_35
- :pswitch_35
- :pswitch_37
- .end packed-switch
- .end method
- .method private revertToNitz()V
- .registers 7
- .prologue
- const-wide/16 v4, 0x0
- .line 2458
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v0
- invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v0
- const-string v1, "auto_time"
- const/4 v2, 0x0
- invoke-static {v0, v1, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
- move-result v0
- if-nez v0, :cond_16
- .line 2470
- :cond_15
- :goto_15
- return-void
- .line 2462
- :cond_16
- const-string v0, "GSM"
- new-instance v1, Ljava/lang/StringBuilder;
- invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
- const-string v2, "Reverting to NITZ: tz=\'"
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- const-string v2, "\' mSavedTime="
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- iget-wide v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v1
- const-string v2, " mSavedAtTime="
- invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v1
- iget-wide v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
- invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v1
- invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v1
- invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2465
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
- if-eqz v0, :cond_15
- iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- cmp-long v0, v0, v4
- if-eqz v0, :cond_15
- iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
- cmp-long v0, v0, v4
- if-eqz v0, :cond_15
- .line 2466
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
- invoke-direct {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
- .line 2467
- iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
- move-result-wide v2
- iget-wide v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
- sub-long/2addr v2, v4
- add-long/2addr v0, v2
- invoke-direct {p0, v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
- goto :goto_15
- .end method
- .method private saveNitzTime(J)V
- .registers 5
- .parameter "time"
- .prologue
- .line 2423
- iput-wide p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
- .line 2424
- invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
- move-result-wide v0
- iput-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
- .line 2425
- return-void
- .end method
- .method private saveNitzTimeZone(Ljava/lang/String;)V
- .registers 2
- .parameter "zoneId"
- .prologue
- .line 2419
- iput-object p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
- .line 2420
- return-void
- .end method
- .method private setAndBroadcastNetworkSetTime(J)V
- .registers 5
- .parameter "time"
- .prologue
- .line 2450
- invoke-static {p1, p2}, Landroid/os/SystemClock;->setCurrentTimeMillis(J)Z
- .line 2451
- new-instance v0, Landroid/content/Intent;
- const-string v1, "android.intent.action.NETWORK_SET_TIME"
- invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- .line 2452
- .local v0, intent:Landroid/content/Intent;
- const/high16 v1, 0x2000
- invoke-virtual {v0, v1}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
- .line 2453
- const-string/jumbo v1, "time"
- invoke-virtual {v0, v1, p1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
- .line 2454
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
- .line 2455
- return-void
- .end method
- .method private setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
- .registers 6
- .parameter "zoneId"
- .prologue
- .line 2434
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v2
- const-string v3, "alarm"
- invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
- move-result-object v0
- check-cast v0, Landroid/app/AlarmManager;
- .line 2436
- .local v0, alarm:Landroid/app/AlarmManager;
- invoke-virtual {v0, p1}, Landroid/app/AlarmManager;->setTimeZone(Ljava/lang/String;)V
- .line 2437
- new-instance v1, Landroid/content/Intent;
- const-string v2, "android.intent.action.NETWORK_SET_TIMEZONE"
- invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- .line 2438
- .local v1, intent:Landroid/content/Intent;
- const/high16 v2, 0x2000
- invoke-virtual {v1, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
- .line 2439
- const-string/jumbo v2, "time-zone"
- invoke-virtual {v1, v2, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 2440
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v2
- invoke-virtual {v2, v1}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
- .line 2441
- return-void
- .end method
- .method private setNotification(I)V
- .registers 12
- .parameter "notifyType"
- .prologue
- const-string v9, "GSM"
- .line 2577
- const-string v6, "GSM"
- new-instance v6, Ljava/lang/StringBuilder;
- invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
- const-string v7, "[DSAC DEB] create notification "
- invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v6
- invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v6
- invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v6
- invoke-static {v9, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2578
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v6}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v0
- .line 2580
- .local v0, context:Landroid/content/Context;
- new-instance v6, Landroid/app/Notification;
- invoke-direct {v6}, Landroid/app/Notification;-><init>()V
- iput-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- .line 2581
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
- move-result-wide v7
- iput-wide v7, v6, Landroid/app/Notification;->when:J
- .line 2582
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- const/16 v7, 0x10
- iput v7, v6, Landroid/app/Notification;->flags:I
- .line 2583
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- const v7, 0x108008a
- iput v7, v6, Landroid/app/Notification;->icon:I
- .line 2584
- new-instance v2, Landroid/content/Intent;
- invoke-direct {v2}, Landroid/content/Intent;-><init>()V
- .line 2585
- .local v2, intent:Landroid/content/Intent;
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- const/4 v7, 0x0
- const/high16 v8, 0x1000
- invoke-static {v0, v7, v2, v8}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent;
- move-result-object v7
- iput-object v7, v6, Landroid/app/Notification;->contentIntent:Landroid/app/PendingIntent;
- .line 2588
- const-string v1, ""
- .line 2589
- .local v1, details:Ljava/lang/CharSequence;
- const v6, 0x1040115
- invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
- move-result-object v5
- .line 2590
- .local v5, title:Ljava/lang/CharSequence;
- const/16 v3, 0x3e7
- .line 2592
- .local v3, notificationId:I
- packed-switch p1, :pswitch_data_ca
- .line 2614
- :goto_5a
- :pswitch_5a
- const-string v6, "GSM"
- new-instance v6, Ljava/lang/StringBuilder;
- invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
- const-string v7, "[DSAC DEB] put notification "
- invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v6
- invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v6
- const-string v7, " / "
- invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v6
- invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v6
- invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v6
- invoke-static {v9, v6}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2615
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- iput-object v5, v6, Landroid/app/Notification;->tickerText:Ljava/lang/CharSequence;
- .line 2616
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- iget-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- iget-object v7, v7, Landroid/app/Notification;->contentIntent:Landroid/app/PendingIntent;
- invoke-virtual {v6, v0, v5, v1, v7}, Landroid/app/Notification;->setLatestEventInfo(Landroid/content/Context;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V
- .line 2619
- const-string/jumbo v6, "notification"
- invoke-virtual {v0, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
- move-result-object v4
- check-cast v4, Landroid/app/NotificationManager;
- .line 2622
- .local v4, notificationManager:Landroid/app/NotificationManager;
- const/16 v6, 0x3ea
- if-eq p1, v6, :cond_9a
- const/16 v6, 0x3ec
- if-ne p1, v6, :cond_c3
- .line 2624
- :cond_9a
- invoke-virtual {v4, v3}, Landroid/app/NotificationManager;->cancel(I)V
- .line 2630
- :goto_9d
- return-void
- .line 2594
- .end local v4 #notificationManager:Landroid/app/NotificationManager;
- :pswitch_9e
- const/16 v3, 0x378
- .line 2595
- const v6, 0x1040116
- invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
- move-result-object v1
- .line 2596
- goto :goto_5a
- .line 2598
- :pswitch_a8
- const/16 v3, 0x378
- .line 2599
- goto :goto_5a
- .line 2601
- :pswitch_ab
- const v6, 0x1040119
- invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
- move-result-object v1
- .line 2602
- goto :goto_5a
- .line 2604
- :pswitch_b3
- const v6, 0x1040118
- invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
- move-result-object v1
- .line 2605
- goto :goto_5a
- .line 2607
- :pswitch_bb
- const v6, 0x1040117
- invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
- move-result-object v1
- .line 2608
- goto :goto_5a
- .line 2627
- .restart local v4 #notificationManager:Landroid/app/NotificationManager;
- :cond_c3
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
- invoke-virtual {v4, v3, v6}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V
- goto :goto_9d
- .line 2592
- nop
- :pswitch_data_ca
- .packed-switch 0x3e9
- :pswitch_9e
- :pswitch_a8
- :pswitch_ab
- :pswitch_5a
- :pswitch_b3
- :pswitch_bb
- .end packed-switch
- .end method
- .method private setSignalStrengthDefaultValues()V
- .registers 10
- .prologue
- const/4 v2, -0x1
- .line 1369
- new-instance v0, Landroid/telephony/SignalStrength;
- const/16 v1, 0x63
- const/4 v8, 0x1
- move v3, v2
- move v4, v2
- move v5, v2
- move v6, v2
- move v7, v2
- invoke-direct/range {v0 .. v8}, Landroid/telephony/SignalStrength;-><init>(IIIIIIIZ)V
- iput-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
- .line 1370
- return-void
- .end method
- .method private setTimeFromNITZString(Ljava/lang/String;J)V
- .registers 37
- .parameter "nitz"
- .parameter "nitzReceiveTime"
- .prologue
- .line 2237
- invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
- move-result-wide v21
- .line 2238
- .local v21, start:J
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "NITZ: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-object/from16 v1, p1
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, ","
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-wide/from16 v1, p2
- invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " start="
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-wide/from16 v1, v21
- invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " delay="
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- sub-long v29, v21, p2
- invoke-virtual/range {v28 .. v30}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- .line 2244
- :try_start_48
- const-string v27, "GMT"
- invoke-static/range {v27 .. v27}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
- move-result-object v27
- invoke-static/range {v27 .. v27}, Ljava/util/Calendar;->getInstance(Ljava/util/TimeZone;)Ljava/util/Calendar;
- move-result-object v5
- .line 2246
- .local v5, c:Ljava/util/Calendar;
- invoke-virtual {v5}, Ljava/util/Calendar;->clear()V
- .line 2247
- const/16 v27, 0x10
- const/16 v28, 0x0
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v28
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2249
- const-string v27, "[/:,+-]"
- move-object/from16 v0, p1
- move-object/from16 v1, v27
- invoke-virtual {v0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
- move-result-object v18
- .line 2251
- .local v18, nitzSubs:[Ljava/lang/String;
- const/16 v27, 0x0
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v27
- move/from16 v0, v27
- add-int/lit16 v0, v0, 0x7d0
- move/from16 v25, v0
- .line 2252
- .local v25, year:I
- const/16 v27, 0x1
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v25
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2255
- const/16 v27, 0x1
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v27
- const/16 v28, 0x1
- sub-int v17, v27, v28
- .line 2256
- .local v17, month:I
- const/16 v27, 0x2
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v17
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2258
- const/16 v27, 0x2
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v6
- .line 2259
- .local v6, date:I
- const/16 v27, 0x5
- move-object v0, v5
- move/from16 v1, v27
- move v2, v6
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2261
- const/16 v27, 0x3
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v10
- .line 2262
- .local v10, hour:I
- const/16 v27, 0xa
- move-object v0, v5
- move/from16 v1, v27
- move v2, v10
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2264
- const/16 v27, 0x4
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v16
- .line 2265
- .local v16, minute:I
- const/16 v27, 0xc
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v16
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2267
- const/16 v27, 0x5
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v19
- .line 2268
- .local v19, second:I
- const/16 v27, 0xd
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v19
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->set(II)V
- .line 2270
- const/16 v27, 0x2d
- move-object/from16 v0, p1
- move/from16 v1, v27
- invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I
- move-result v27
- const/16 v28, -0x1
- move/from16 v0, v27
- move/from16 v1, v28
- if-ne v0, v1, :cond_265
- const/16 v27, 0x1
- move/from16 v20, v27
- .line 2272
- .local v20, sign:Z
- :goto_f5
- const/16 v27, 0x6
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v23
- .line 2274
- .local v23, tzOffset:I
- move-object/from16 v0, v18
- array-length v0, v0
- move/from16 v27, v0
- const/16 v28, 0x8
- move/from16 v0, v27
- move/from16 v1, v28
- if-lt v0, v1, :cond_26b
- const/16 v27, 0x7
- aget-object v27, v18, v27
- invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v27
- move/from16 v7, v27
- .line 2284
- .local v7, dst:I
- :goto_114
- if-eqz v20, :cond_271
- const/16 v27, 0x1
- :goto_118
- mul-int v27, v27, v23
- mul-int/lit8 v27, v27, 0xf
- mul-int/lit8 v27, v27, 0x3c
- move/from16 v0, v27
- mul-int/lit16 v0, v0, 0x3e8
- move/from16 v23, v0
- .line 2286
- const/16 v26, 0x0
- .line 2292
- .local v26, zone:Ljava/util/TimeZone;
- move-object/from16 v0, v18
- array-length v0, v0
- move/from16 v27, v0
- const/16 v28, 0x9
- move/from16 v0, v27
- move/from16 v1, v28
- if-lt v0, v1, :cond_143
- .line 2293
- const/16 v27, 0x8
- aget-object v27, v18, v27
- const/16 v28, 0x21
- const/16 v29, 0x2f
- invoke-virtual/range {v27 .. v29}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
- move-result-object v24
- .line 2294
- .local v24, tzname:Ljava/lang/String;
- invoke-static/range {v24 .. v24}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
- move-result-object v26
- .line 2297
- .end local v24 #tzname:Ljava/lang/String;
- :cond_143
- const-string/jumbo v27, "gsm.operator.iso-country"
- invoke-static/range {v27 .. v27}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v13
- .line 2298
- .local v13, iso:Ljava/lang/String;
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "get ISO: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-object v1, v13
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " mGotCountryCode: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- move/from16 v29, v0
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " mOPERATOR_ISO_COUNTRY: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v29, v0
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2299
- if-nez v26, :cond_1aa
- .line 2301
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
- move/from16 v27, v0
- if-eqz v27, :cond_1aa
- .line 2302
- if-eqz v13, :cond_279
- invoke-virtual {v13}, Ljava/lang/String;->length()I
- move-result v27
- if-lez v27, :cond_279
- .line 2303
- if-eqz v7, :cond_275
- const/16 v27, 0x1
- :goto_19b
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v28
- move/from16 v0, v23
- move/from16 v1, v27
- move-wide/from16 v2, v28
- move-object v4, v13
- invoke-static {v0, v1, v2, v3, v4}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
- :try_end_1a9
- .catch Ljava/lang/RuntimeException; {:try_start_48 .. :try_end_1a9} :catch_2d1
- move-result-object v26
- .line 2321
- :cond_1aa
- :goto_1aa
- const/4 v12, 0x0
- .line 2323
- .local v12, isTestIcc:Z
- :try_start_1ab
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Lcom/android/internal/telephony/gsm/GSMPhone;->checkTestIcc()Z
- :try_end_1b4
- .catch Ljava/lang/Exception; {:try_start_1ab .. :try_end_1b4} :catch_2c5
- .catch Ljava/lang/RuntimeException; {:try_start_1ab .. :try_end_1b4} :catch_2d1
- move-result v12
- .line 2327
- :goto_1b5
- if-nez v26, :cond_1e9
- if-eqz v12, :cond_1e9
- .line 2328
- :try_start_1b9
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v29, "isTestIcc: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move v1, v12
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2329
- if-eqz v7, :cond_2f7
- const/16 v27, 0x1
- :goto_1d9
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v28
- move-object/from16 v0, p0
- move/from16 v1, v23
- move/from16 v2, v27
- move-wide/from16 v3, v28
- invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getNitzTimeZone(IZJ)Ljava/util/TimeZone;
- move-result-object v26
- .line 2333
- :cond_1e9
- if-nez v26, :cond_20d
- .line 2338
- const/16 v27, 0x1
- move/from16 v0, v27
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZone:Z
- .line 2339
- move/from16 v0, v23
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
- .line 2340
- if-eqz v7, :cond_2fb
- const/16 v27, 0x1
- :goto_1fd
- move/from16 v0, v27
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
- .line 2341
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v27
- move-wide/from16 v0, v27
- move-object/from16 v2, p0
- iput-wide v0, v2, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
- .line 2344
- :cond_20d
- if-eqz v26, :cond_248
- .line 2345
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
- move-result v27
- if-eqz v27, :cond_23d
- .line 2347
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v29, "setTimeFromNITZString AUTO_TIME update time zone: "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v26 .. v26}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v29
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2349
- invoke-virtual/range {v26 .. v26}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v27
- move-object/from16 v0, p0
- move-object/from16 v1, v27
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
- .line 2351
- :cond_23d
- invoke-virtual/range {v26 .. v26}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
- move-result-object v27
- move-object/from16 v0, p0
- move-object/from16 v1, v27
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTimeZone(Ljava/lang/String;)V
- .line 2354
- :cond_248
- const-string/jumbo v27, "gsm.ignore-nitz"
- invoke-static/range {v27 .. v27}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v11
- .line 2355
- .local v11, ignore:Ljava/lang/String;
- if-eqz v11, :cond_2ff
- const-string/jumbo v27, "yes"
- move-object v0, v11
- move-object/from16 v1, v27
- invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v27
- if-eqz v27, :cond_2ff
- .line 2356
- const-string v27, "GSM"
- const-string v28, "NITZ: Not setting clock because gsm.ignore-nitz is set"
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- .line 2407
- .end local v5 #c:Ljava/util/Calendar;
- .end local v6 #date:I
- .end local v7 #dst:I
- .end local v10 #hour:I
- .end local v11 #ignore:Ljava/lang/String;
- .end local v12 #isTestIcc:Z
- .end local v13 #iso:Ljava/lang/String;
- .end local v16 #minute:I
- .end local v17 #month:I
- .end local v18 #nitzSubs:[Ljava/lang/String;
- .end local v19 #second:I
- .end local v20 #sign:Z
- .end local v23 #tzOffset:I
- .end local v25 #year:I
- .end local v26 #zone:Ljava/util/TimeZone;
- :goto_264
- return-void
- .line 2270
- .restart local v5 #c:Ljava/util/Calendar;
- .restart local v6 #date:I
- .restart local v10 #hour:I
- .restart local v16 #minute:I
- .restart local v17 #month:I
- .restart local v18 #nitzSubs:[Ljava/lang/String;
- .restart local v19 #second:I
- .restart local v25 #year:I
- :cond_265
- const/16 v27, 0x0
- move/from16 v20, v27
- goto/16 :goto_f5
- .line 2274
- .restart local v20 #sign:Z
- .restart local v23 #tzOffset:I
- :cond_26b
- const/16 v27, 0x0
- move/from16 v7, v27
- goto/16 :goto_114
- .line 2284
- .restart local v7 #dst:I
- :cond_271
- const/16 v27, -0x1
- goto/16 :goto_118
- .line 2303
- .restart local v13 #iso:Ljava/lang/String;
- .restart local v26 #zone:Ljava/util/TimeZone;
- :cond_275
- const/16 v27, 0x0
- goto/16 :goto_19b
- .line 2306
- :cond_279
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v27, v0
- if-eqz v27, :cond_2ac
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Ljava/lang/String;->length()I
- move-result v27
- if-lez v27, :cond_2ac
- .line 2307
- if-eqz v7, :cond_2a9
- const/16 v27, 0x1
- :goto_291
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v28
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOPERATOR_ISO_COUNTRY:Ljava/lang/String;
- move-object/from16 v30, v0
- move/from16 v0, v23
- move/from16 v1, v27
- move-wide/from16 v2, v28
- move-object/from16 v4, v30
- invoke-static {v0, v1, v2, v3, v4}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
- move-result-object v26
- goto/16 :goto_1aa
- :cond_2a9
- const/16 v27, 0x0
- goto :goto_291
- .line 2315
- :cond_2ac
- if-eqz v7, :cond_2c2
- const/16 v27, 0x1
- :goto_2b0
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v28
- move-object/from16 v0, p0
- move/from16 v1, v23
- move/from16 v2, v27
- move-wide/from16 v3, v28
- invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getNitzTimeZone(IZJ)Ljava/util/TimeZone;
- move-result-object v26
- goto/16 :goto_1aa
- :cond_2c2
- const/16 v27, 0x0
- goto :goto_2b0
- .line 2324
- .restart local v12 #isTestIcc:Z
- :catch_2c5
- move-exception v27
- move-object/from16 v8, v27
- .line 2325
- .local v8, e:Ljava/lang/Exception;
- const-string v27, "GSM"
- const-string v28, "checkTestIcc fail"
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- :try_end_2cf
- .catch Ljava/lang/RuntimeException; {:try_start_1b9 .. :try_end_2cf} :catch_2d1
- goto/16 :goto_1b5
- .line 2404
- .end local v5 #c:Ljava/util/Calendar;
- .end local v6 #date:I
- .end local v7 #dst:I
- .end local v8 #e:Ljava/lang/Exception;
- .end local v10 #hour:I
- .end local v12 #isTestIcc:Z
- .end local v13 #iso:Ljava/lang/String;
- .end local v16 #minute:I
- .end local v17 #month:I
- .end local v18 #nitzSubs:[Ljava/lang/String;
- .end local v19 #second:I
- .end local v20 #sign:Z
- .end local v23 #tzOffset:I
- .end local v25 #year:I
- .end local v26 #zone:Ljava/util/TimeZone;
- :catch_2d1
- move-exception v27
- move-object/from16 v9, v27
- .line 2405
- .local v9, ex:Ljava/lang/RuntimeException;
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "NITZ: Parsing NITZ time "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-object/from16 v1, p1
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- move-object/from16 v0, v27
- move-object/from16 v1, v28
- move-object v2, v9
- invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
- goto/16 :goto_264
- .line 2329
- .end local v9 #ex:Ljava/lang/RuntimeException;
- .restart local v5 #c:Ljava/util/Calendar;
- .restart local v6 #date:I
- .restart local v7 #dst:I
- .restart local v10 #hour:I
- .restart local v12 #isTestIcc:Z
- .restart local v13 #iso:Ljava/lang/String;
- .restart local v16 #minute:I
- .restart local v17 #month:I
- .restart local v18 #nitzSubs:[Ljava/lang/String;
- .restart local v19 #second:I
- .restart local v20 #sign:Z
- .restart local v23 #tzOffset:I
- .restart local v25 #year:I
- .restart local v26 #zone:Ljava/util/TimeZone;
- :cond_2f7
- const/16 v27, 0x0
- goto/16 :goto_1d9
- .line 2340
- :cond_2fb
- const/16 v27, 0x0
- goto/16 :goto_1fd
- .line 2361
- .restart local v11 #ignore:Ljava/lang/String;
- :cond_2ff
- :try_start_2ff
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Landroid/os/PowerManager$WakeLock;->acquire()V
- .line 2363
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
- move-result v27
- if-eqz v27, :cond_3e1
- .line 2364
- invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
- move-result-wide v27
- sub-long v14, v27, p2
- .line 2367
- .local v14, millisSinceNitzReceived:J
- const-wide/16 v27, 0x0
- cmp-long v27, v14, v27
- if-gez v27, :cond_341
- .line 2369
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "NITZ: not setting time, clock has rolled backwards since NITZ time was received, "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-object/from16 v1, p1
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- :try_end_336
- .catchall {:try_start_2ff .. :try_end_336} :catchall_405
- .line 2402
- :try_start_336
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Landroid/os/PowerManager$WakeLock;->release()V
- :try_end_33f
- .catch Ljava/lang/RuntimeException; {:try_start_336 .. :try_end_33f} :catch_2d1
- goto/16 :goto_264
- .line 2375
- :cond_341
- const-wide/32 v27, 0x7fffffff
- cmp-long v27, v14, v27
- if-lez v27, :cond_376
- .line 2377
- :try_start_348
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "NITZ: not setting time, processing has taken "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- const-wide/32 v29, 0x5265c00
- div-long v29, v14, v29
- invoke-virtual/range {v28 .. v30}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " days"
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- :try_end_36b
- .catchall {:try_start_348 .. :try_end_36b} :catchall_405
- .line 2402
- :try_start_36b
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Landroid/os/PowerManager$WakeLock;->release()V
- :try_end_374
- .catch Ljava/lang/RuntimeException; {:try_start_36b .. :try_end_374} :catch_2d1
- goto/16 :goto_264
- .line 2384
- :cond_376
- const/16 v27, 0xe
- move-wide v0, v14
- long-to-int v0, v0
- move/from16 v28, v0
- :try_start_37c
- move-object v0, v5
- move/from16 v1, v27
- move/from16 v2, v28
- invoke-virtual {v0, v1, v2}, Ljava/util/Calendar;->add(II)V
- .line 2386
- const-string v27, "GSM"
- new-instance v28, Ljava/lang/StringBuilder;
- invoke-direct/range {v28 .. v28}, Ljava/lang/StringBuilder;-><init>()V
- const-string v29, "NITZ: Setting time of day to "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual {v5}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
- move-result-object v29
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " NITZ receive delay(ms): "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-wide v1, v14
- invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " gained(ms): "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v29
- invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
- move-result-wide v31
- sub-long v29, v29, v31
- invoke-virtual/range {v28 .. v30}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
- move-result-object v28
- const-string v29, " from "
- invoke-virtual/range {v28 .. v29}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- move-object/from16 v0, v28
- move-object/from16 v1, p1
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v28
- invoke-virtual/range {v28 .. v28}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- .line 2392
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v27
- move-object/from16 v0, p0
- move-wide/from16 v1, v27
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
- .line 2393
- const-string v27, "GSM"
- const-string v28, "NITZ: after Setting time of day"
- invoke-static/range {v27 .. v28}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
- .line 2395
- .end local v14 #millisSinceNitzReceived:J
- :cond_3e1
- const-string/jumbo v27, "gsm.nitz.time"
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v28
- invoke-static/range {v28 .. v29}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
- move-result-object v28
- invoke-static/range {v27 .. v28}, Landroid/os/SystemProperties;->set(Ljava/lang/String;Ljava/lang/String;)V
- .line 2396
- invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
- move-result-wide v27
- move-object/from16 v0, p0
- move-wide/from16 v1, v27
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTime(J)V
- :try_end_3fa
- .catchall {:try_start_37c .. :try_end_3fa} :catchall_405
- .line 2402
- :try_start_3fa
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- move-object/from16 v27, v0
- invoke-virtual/range {v27 .. v27}, Landroid/os/PowerManager$WakeLock;->release()V
- goto/16 :goto_264
- :catchall_405
- move-exception v27
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
- move-object/from16 v28, v0
- invoke-virtual/range {v28 .. v28}, Landroid/os/PowerManager$WakeLock;->release()V
- throw v27
- :try_end_410
- .catch Ljava/lang/RuntimeException; {:try_start_3fa .. :try_end_410} :catch_2d1
- .end method
- .method private static twoDigitsAt(Ljava/lang/String;I)I
- .registers 6
- .parameter "s"
- .parameter "offset"
- .prologue
- const/16 v3, 0xa
- .line 2166
- invoke-virtual {p0, p1}, Ljava/lang/String;->charAt(I)C
- move-result v2
- invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
- move-result v0
- .line 2167
- .local v0, a:I
- add-int/lit8 v2, p1, 0x1
- invoke-virtual {p0, v2}, Ljava/lang/String;->charAt(I)C
- move-result v2
- invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
- move-result v1
- .line 2169
- .local v1, b:I
- if-ltz v0, :cond_18
- if-gez v1, :cond_21
- .line 2171
- :cond_18
- new-instance v2, Ljava/lang/RuntimeException;
- const-string/jumbo v3, "invalid format"
- invoke-direct {v2, v3}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
- throw v2
- .line 2174
- :cond_21
- mul-int/lit8 v2, v0, 0xa
- add-int/2addr v2, v1
- return v2
- .end method
- .method private updateOperatorInfo()V
- .registers 8
- .prologue
- const/4 v5, 0x1
- const/4 v4, 0x0
- const-string v6, ""
- .line 2518
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v2}, Landroid/telephony/ServiceState;->getState()I
- move-result v2
- if-nez v2, :cond_70
- .line 2519
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iput-boolean v5, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->inService:Z
- .line 2520
- iget v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- and-int/lit8 v2, v2, 0x1
- if-ne v2, v5, :cond_68
- move v1, v5
- .line 2522
- .local v1, showSpn:Z
- :goto_17
- iget v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- and-int/lit8 v2, v2, 0x2
- const/4 v3, 0x2
- if-ne v2, v3, :cond_6a
- move v0, v5
- .line 2527
- .local v0, showPlmn:Z
- :goto_1f
- if-eqz v1, :cond_36
- if-eqz v0, :cond_36
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- if-eqz v2, :cond_36
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- if-eqz v2, :cond_36
- .line 2528
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- invoke-virtual {v2, v3}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I
- move-result v2
- if-nez v2, :cond_36
- .line 2529
- const/4 v0, 0x0
- .line 2549
- :cond_36
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v3
- if-eqz v3, :cond_6c
- move v3, v4
- :goto_41
- iput-boolean v3, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->showSpn:Z
- .line 2550
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- invoke-static {v3}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v3
- if-eqz v3, :cond_6e
- move v3, v4
- :goto_4e
- iput-boolean v3, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->showPlmn:Z
- .line 2551
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- iput-object v3, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->spn:Ljava/lang/String;
- .line 2552
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- iput-object v3, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->plmn:Ljava/lang/String;
- .line 2562
- .end local v0 #showPlmn:Z
- .end local v1 #showSpn:Z
- :goto_5c
- const-string v2, "GSM"
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/OperatorInfo;->toString()Ljava/lang/String;
- move-result-object v3
- invoke-static {v2, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 2564
- return-void
- :cond_68
- move v1, v4
- .line 2520
- goto :goto_17
- .restart local v1 #showSpn:Z
- :cond_6a
- move v0, v4
- .line 2522
- goto :goto_1f
- .restart local v0 #showPlmn:Z
- :cond_6c
- move v3, v1
- .line 2549
- goto :goto_41
- :cond_6e
- move v3, v0
- .line 2550
- goto :goto_4e
- .line 2554
- .end local v0 #showPlmn:Z
- .end local v1 #showSpn:Z
- :cond_70
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iput-boolean v4, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->inService:Z
- .line 2555
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iput-boolean v4, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->showSpn:Z
- .line 2556
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- iput-boolean v4, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->showPlmn:Z
- .line 2557
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- const-string v3, ""
- iput-object v6, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->spn:Ljava/lang/String;
- .line 2558
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- const-string v3, ""
- iput-object v6, v2, Lcom/android/internal/telephony/gsm/OperatorInfo;->plmn:Ljava/lang/String;
- goto :goto_5c
- .end method
- .method private updatePowerState(Z)V
- .registers 7
- .parameter "alarmTriggered"
- .prologue
- const/4 v4, 0x0
- const/4 v3, 0x1
- .line 2659
- if-ne v3, p1, :cond_10
- move v0, v3
- .line 2664
- .local v0, airplaneMode:I
- :goto_5
- if-gtz v0, :cond_22
- move v1, v3
- :goto_8
- iput-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
- .line 2665
- if-lez v0, :cond_24
- move v1, v3
- :goto_d
- iput-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mFlightModeBootup:Z
- .line 2666
- return-void
- .line 2659
- .end local v0 #airplaneMode:I
- :cond_10
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v1
- invoke-virtual {v1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
- move-result-object v1
- const-string v2, "airplane_mode_on"
- invoke-static {v1, v2, v4}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
- move-result v1
- move v0, v1
- goto :goto_5
- .restart local v0 #airplaneMode:I
- :cond_22
- move v1, v4
- .line 2664
- goto :goto_8
- :cond_24
- move v1, v4
- .line 2665
- goto :goto_d
- .end method
- # virtual methods
- .method public dispose()V
- .registers 3
- .prologue
- .line 384
- const/16 v0, 0xa
- invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->removeMessages(I)V
- .line 385
- const/4 v0, 0x3
- invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->removeMessages(I)V
- .line 388
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForAvailable(Landroid/os/Handler;)V
- .line 389
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForRadioStateChanged(Landroid/os/Handler;)V
- .line 390
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForNetworkStateChanged(Landroid/os/Handler;)V
- .line 391
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForSIMReady(Landroid/os/Handler;)V
- .line 393
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForRadioStateChangedExt(Landroid/os/Handler;)V
- .line 396
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- invoke-virtual {v0, p0}, Lcom/android/internal/telephony/gsm/SIMRecords;->unregisterForRecordsLoaded(Landroid/os/Handler;)V
- .line 397
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnSignalStrengthUpdate(Landroid/os/Handler;)V
- .line 398
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnRestrictedStateChanged(Landroid/os/Handler;)V
- .line 399
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnNITZTime(Landroid/os/Handler;)V
- .line 400
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
- invoke-virtual {v0, v1}, Landroid/content/ContentResolver;->unregisterContentObserver(Landroid/database/ContentObserver;)V
- .line 402
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v0
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mIntentReceiver:Landroid/content/BroadcastReceiver;
- invoke-virtual {v0, v1}, Landroid/content/Context;->unregisterReceiver(Landroid/content/BroadcastReceiver;)V
- .line 405
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v0
- if-eqz v0, :cond_53
- .line 406
- const/4 v0, 0x1
- iput-boolean v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isFirstNetworkStateChange:Z
- .line 408
- :cond_53
- return-void
- .end method
- .method protected finalize()V
- .registers 3
- .prologue
- .line 411
- const-string v0, "GSM"
- const-string v1, "GsmServiceStateTracker finalized"
- invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 412
- return-void
- .end method
- .method getCurrentGprsState()I
- .registers 2
- .prologue
- .line 2182
- iget v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- return v0
- .end method
- .method public getOperatorInfo()Ljava/lang/Object;
- .registers 2
- .prologue
- .line 2514
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->operatorInfo:Lcom/android/internal/telephony/gsm/OperatorInfo;
- return-object v0
- .end method
- .method public getPRIVersion()Ljava/lang/String;
- .registers 2
- .prologue
- .line 526
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- if-eqz v0, :cond_c
- const-string/jumbo v0, "gsm.cdma.pri.version"
- invoke-static {v0}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
- move-result-object v0
- :goto_b
- return-object v0
- :cond_c
- const-string v0, "Not ready"
- goto :goto_b
- .end method
- .method public getPrlVersion()Ljava/lang/String;
- .registers 2
- .prologue
- .line 513
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- if-eqz v0, :cond_9
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->prl_version:Ljava/lang/String;
- :goto_8
- return-object v0
- :cond_9
- const/4 v0, 0x0
- goto :goto_8
- .end method
- .method public handleMessage(Landroid/os/Message;)V
- .registers 26
- .parameter "msg"
- .prologue
- .line 537
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v20
- if-eqz v20, :cond_29
- sget-boolean v20, Lcom/android/internal/telephony/gsm/GSMPhone;->mDropEvent:Z
- if-eqz v20, :cond_29
- .line 538
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string v22, " GsmServiceTracker drop event "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p1
- iget v0, v0, Landroid/os/Message;->what:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 899
- .end local p0
- .end local p1
- :cond_28
- :goto_28
- return-void
- .line 548
- .restart local p0
- .restart local p1
- :cond_29
- move-object/from16 v0, p1
- iget v0, v0, Landroid/os/Message;->what:I
- move/from16 v20, v0
- sparse-switch v20, :sswitch_data_704
- .line 896
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string v22, "Unhandled message with number: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p1
- iget v0, v0, Landroid/os/Message;->what:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_28
- .line 554
- :sswitch_51
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- const/16 v21, 0x34
- move-object/from16 v0, p0
- move/from16 v1, v21
- invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
- move-result-object v21
- invoke-interface/range {v20 .. v21}, Lcom/android/internal/telephony/CommandsInterface;->requestGetRadioSysInfo(Landroid/os/Message;)V
- .line 555
- const-string v20, "Receive EVENT_RADIO_AVAILABLE and send EVENT_RIL_CDMA_RS_INFO."
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- goto :goto_28
- .line 564
- :sswitch_6e
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
- move/from16 v20, v0
- if-eqz v20, :cond_99
- .line 565
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- move-object/from16 v20, v0
- const/16 v21, 0x10
- const/16 v22, 0x0
- move-object/from16 v0, v20
- move-object/from16 v1, p0
- move/from16 v2, v21
- move-object/from16 v3, v22
- invoke-virtual {v0, v1, v2, v3}, Lcom/android/internal/telephony/gsm/SIMRecords;->registerForRecordsLoaded(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 567
- const/16 v20, 0x0
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
- .line 571
- :cond_99
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->QMI_CONFIG()Z
- move-result v20
- if-eqz v20, :cond_ba
- .line 572
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/gsm/GSMPhone;->getSavedNetworkSelection()Ljava/lang/String;
- move-result-object v10
- .line 575
- .local v10, networkSelection:Ljava/lang/String;
- invoke-static {v10}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v20
- if-nez v20, :cond_ba
- .line 581
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- const/16 v21, 0x0
- invoke-virtual/range {v20 .. v21}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
- .line 598
- .end local v10 #networkSelection:Ljava/lang/String;
- :cond_ba
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
- .line 600
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
- .line 613
- const-string v20, "SIM READY, notify data connection"
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- .line 614
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- const/16 v21, 0x0
- invoke-virtual/range {v20 .. v21}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyDataConnection(Ljava/lang/String;)V
- goto/16 :goto_28
- .line 619
- :sswitch_d6
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 620
- .local v4, ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 v20, v0
- if-nez v20, :cond_ef
- .line 621
- const-string v20, "EVENT_RIL_CDMA_RS_INFO:CDMA Info ar.result == null."
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- goto/16 :goto_28
- .line 622
- :cond_ef
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v20, v0
- if-nez v20, :cond_214
- .line 623
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v0, p1
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- .line 624
- new-instance v20, Ljava/lang/StringBuilder;
- invoke-direct/range {v20 .. v20}, Ljava/lang/StringBuilder;-><init>()V
- const-string v21, "EVENT_RIL_CDMA_RS_INFO:version:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->version:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " mobile_sw_version:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->mobile_sw_version:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " esn:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->esn:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " prl:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->prl_version:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " pre_only:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->pre_only:I
- move/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " imsi:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->imsi:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " customer_id:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->customer_id:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, " prl:"
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->prl_version:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- invoke-virtual/range {v20 .. v20}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v20
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- .line 634
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->pri_version:Ljava/lang/String;
- move-object/from16 v19, v0
- .line 635
- .local v19, unifiedPRIversion:Ljava/lang/String;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->pri_version_2:Ljava/lang/String;
- move-object/from16 v20, v0
- invoke-static/range {v20 .. v20}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v20
- if-nez v20, :cond_208
- .line 637
- new-instance v20, Ljava/lang/StringBuilder;
- invoke-direct/range {v20 .. v20}, Ljava/lang/StringBuilder;-><init>()V
- move-object/from16 v0, v20
- move-object/from16 v1, v19
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- const-string v21, ", "
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRDInfo:Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaRadioStateInfo;->pri_version_2:Ljava/lang/String;
- move-object/from16 v21, v0
- invoke-virtual/range {v20 .. v21}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v20
- invoke-virtual/range {v20 .. v20}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v19
- .line 639
- :cond_208
- const-string/jumbo v20, "gsm.cdma.pri.version"
- move-object/from16 v0, v20
- move-object/from16 v1, v19
- invoke-static {v0, v1}, Landroid/os/SystemProperties;->set(Ljava/lang/String;Ljava/lang/String;)V
- goto/16 :goto_28
- .line 643
- .end local v19 #unifiedPRIversion:Ljava/lang/String;
- .restart local p1
- :cond_214
- const-string v20, "EVENT_RIL_CDMA_RS_INFO:No this section!!"
- move-object/from16 v0, p0
- move-object/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
- goto/16 :goto_28
- .line 654
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_21f
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mImsFlightModeRequest:Z
- move/from16 v20, v0
- if-nez v20, :cond_22a
- .line 655
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setPowerStateToDesired()V
- .line 658
- :cond_22a
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
- goto/16 :goto_28
- .line 663
- :sswitch_22f
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 664
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v20, v0
- if-nez v20, :cond_28
- .line 665
- iget-object v14, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- check-cast v14, Lcom/android/internal/telephony/CommandsInterface$RadioState;
- .line 666
- .local v14, radioState:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string v22, "Radio State: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, v21
- move-object v1, v14
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 667
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mRadioOnDueToECC:Z
- move/from16 v20, v0
- if-nez v20, :cond_28e
- sget-object v20, Lcom/android/internal/telephony/CommandsInterface$RadioState;->SIM_NOT_READY:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-object v0, v14
- move-object/from16 v1, v20
- if-ne v0, v1, :cond_28e
- .line 669
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/gsm/GSMPhone;->getSavedNetworkSelection()Ljava/lang/String;
- move-result-object v10
- .line 670
- .restart local v10 #networkSelection:Ljava/lang/String;
- invoke-static {v10}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v20
- if-nez v20, :cond_281
- .line 676
- :cond_281
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- const/16 v21, 0x0
- invoke-virtual/range {v20 .. v21}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
- goto/16 :goto_28
- .line 677
- .end local v10 #networkSelection:Ljava/lang/String;
- :cond_28e
- sget-object v20, Lcom/android/internal/telephony/CommandsInterface$RadioState;->SIM_READY:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-object v0, v14
- move-object/from16 v1, v20
- if-ne v0, v1, :cond_28
- .line 678
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mRadioOnDueToECC:Z
- move/from16 v20, v0
- const/16 v21, 0x1
- move/from16 v0, v20
- move/from16 v1, v21
- if-ne v0, v1, :cond_28
- .line 680
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/gsm/GSMPhone;->getSavedNetworkSelection()Ljava/lang/String;
- move-result-object v10
- .line 681
- .restart local v10 #networkSelection:Ljava/lang/String;
- invoke-static {v10}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
- move-result v20
- if-nez v20, :cond_2b9
- .line 687
- :cond_2b9
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- const/16 v21, 0x0
- invoke-virtual/range {v20 .. v21}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
- .line 688
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- const/16 v21, 0x0
- move/from16 v0, v21
- move-object/from16 v1, v20
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GSMPhone;->mRadioOnDueToECC:Z
- goto/16 :goto_28
- .line 697
- .end local v4 #ar:Landroid/os/AsyncResult;
- .end local v10 #networkSelection:Ljava/lang/String;
- .end local v14 #radioState:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- :sswitch_2d4
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v20
- if-eqz v20, :cond_3e6
- .line 699
- const-string/jumbo v20, "ril.notify.regstatus"
- const-string v21, "-1"
- invoke-static/range {v20 .. v21}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
- move-result-object v16
- .line 700
- .local v16, rilCregState:Ljava/lang/String;
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v22, "rilCregState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, v21
- move-object/from16 v1, v16
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 701
- const-string/jumbo v20, "ril.notify.gprsregstatus"
- const-string v21, "-1"
- invoke-static/range {v20 .. v21}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
- move-result-object v15
- .line 702
- .local v15, rilCgregState:Ljava/lang/String;
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v22, "rilCgregState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, v21
- move-object v1, v15
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 703
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isFirstNetworkStateChange:Z
- move/from16 v20, v0
- if-eqz v20, :cond_3eb
- .line 705
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v20
- move-object/from16 v0, p0
- move/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v20
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- .line 706
- invoke-static {v15}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v20
- move-object/from16 v0, p0
- move/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v20
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- .line 707
- const/16 v20, 0x0
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isFirstNetworkStateChange:Z
- .line 722
- :cond_359
- :goto_359
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v22, "oldRilCREGState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCregState:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- const-string v22, " newRilCREGState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 723
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v22, "oldRilCGREGState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCgregState:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- const-string v22, " newRilCGREGState: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 724
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v22, "mCregChange: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v21
- const-string v22, " mCgregChange: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- move/from16 v22, v0
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 727
- .end local v15 #rilCgregState:Ljava/lang/String;
- .end local v16 #rilCregState:Ljava/lang/String;
- :cond_3e6
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
- goto/16 :goto_28
- .line 711
- .restart local v15 #rilCgregState:Ljava/lang/String;
- .restart local v16 #rilCregState:Ljava/lang/String;
- :cond_3eb
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- move/from16 v20, v0
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCregState:I
- .line 712
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v20
- move-object/from16 v0, p0
- move/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v20
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- .line 714
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- move/from16 v20, v0
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCgregState:I
- .line 715
- invoke-static {v15}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v20
- move-object/from16 v0, p0
- move/from16 v1, v20
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v20
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- .line 717
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCregState:I
- move/from16 v20, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCregState:I
- move/from16 v21, v0
- move/from16 v0, v20
- move/from16 v1, v21
- if-eq v0, v1, :cond_441
- .line 718
- const/16 v20, 0x1
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCregChange:Z
- .line 719
- :cond_441
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->oldRilCgregState:I
- move/from16 v20, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newRilCgregState:I
- move/from16 v21, v0
- move/from16 v0, v20
- move/from16 v1, v21
- if-eq v0, v1, :cond_359
- .line 720
- const/16 v20, 0x1
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mCgregChange:Z
- goto/16 :goto_359
- .line 731
- .end local v15 #rilCgregState:Ljava/lang/String;
- .end local v16 #rilCregState:Ljava/lang/String;
- :sswitch_45d
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
- goto/16 :goto_28
- .line 737
- :sswitch_462
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- invoke-interface/range {v20 .. v20}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v20
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
- move-result v20
- if-eqz v20, :cond_28
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- invoke-interface/range {v20 .. v20}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v20
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isCdma()Z
- move-result v20
- if-nez v20, :cond_28
- .line 741
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 742
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object/from16 v0, p0
- move-object v1, v4
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
- .line 743
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
- goto/16 :goto_28
- .line 748
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_494
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 750
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v20, v0
- if-nez v20, :cond_50a
- .line 755
- const/16 v17, 0x0
- .line 756
- .local v17, states:[Ljava/lang/String;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [Ljava/lang/String;
- move-object/from16 v0, p1
- check-cast v0, [Ljava/lang/String;
- move-object/from16 v17, v0
- .line 758
- const/4 v7, -0x1
- .line 759
- .local v7, lac:I
- const/4 v5, -0x1
- .line 760
- .local v5, cid:I
- move-object/from16 v0, v17
- array-length v0, v0
- move/from16 v20, v0
- const/16 v21, 0x3
- move/from16 v0, v20
- move/from16 v1, v21
- if-lt v0, v1, :cond_4f4
- .line 762
- const/16 v20, 0x1
- :try_start_4c2
- aget-object v20, v17, v20
- if-eqz v20, :cond_4da
- const/16 v20, 0x1
- aget-object v20, v17, v20
- invoke-virtual/range {v20 .. v20}, Ljava/lang/String;->length()I
- move-result v20
- if-lez v20, :cond_4da
- .line 763
- const/16 v20, 0x1
- aget-object v20, v17, v20
- const/16 v21, 0x10
- invoke-static/range {v20 .. v21}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
- move-result v7
- .line 765
- :cond_4da
- const/16 v20, 0x2
- aget-object v20, v17, v20
- if-eqz v20, :cond_4f4
- const/16 v20, 0x2
- aget-object v20, v17, v20
- invoke-virtual/range {v20 .. v20}, Ljava/lang/String;->length()I
- move-result v20
- if-lez v20, :cond_4f4
- .line 766
- const/16 v20, 0x2
- aget-object v20, v17, v20
- const/16 v21, 0x10
- invoke-static/range {v20 .. v21}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
- :try_end_4f3
- .catch Ljava/lang/NumberFormatException; {:try_start_4c2 .. :try_end_4f3} :catch_50f
- move-result v5
- .line 772
- :cond_4f4
- :goto_4f4
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- move v1, v7
- move v2, v5
- invoke-virtual {v0, v1, v2}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
- .line 773
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
- .line 778
- .end local v5 #cid:I
- .end local v7 #lac:I
- .end local v17 #states:[Ljava/lang/String;
- :cond_50a
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->disableSingleLocationUpdate()V
- goto/16 :goto_28
- .line 768
- .restart local v5 #cid:I
- .restart local v7 #lac:I
- .restart local v17 #states:[Ljava/lang/String;
- :catch_50f
- move-exception v20
- move-object/from16 v6, v20
- .line 769
- .local v6, ex:Ljava/lang/NumberFormatException;
- const-string v20, "GSM"
- new-instance v21, Ljava/lang/StringBuilder;
- invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
- const-string v22, "error parsing location: "
- invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v21
- move-object/from16 v0, v21
- move-object v1, v6
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v21
- invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v21
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_4f4
- .line 786
- .end local v4 #ar:Landroid/os/AsyncResult;
- .end local v5 #cid:I
- .end local v6 #ex:Ljava/lang/NumberFormatException;
- .end local v7 #lac:I
- .end local v17 #states:[Ljava/lang/String;
- .restart local p1
- :sswitch_52e
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 788
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object/from16 v0, p1
- iget v0, v0, Landroid/os/Message;->what:I
- move/from16 v20, v0
- move-object/from16 v0, p0
- move/from16 v1, v20
- move-object v2, v4
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handlePollStateResult(ILandroid/os/AsyncResult;)V
- goto/16 :goto_28
- .line 794
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_545
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- const/16 v21, 0x3
- move-object/from16 v0, p0
- move/from16 v1, v21
- invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
- move-result-object v21
- invoke-interface/range {v20 .. v21}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
- goto/16 :goto_28
- .line 798
- :sswitch_55a
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 800
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [Ljava/lang/Object;
- check-cast p1, [Ljava/lang/Object;
- const/16 v20, 0x0
- aget-object v13, p1, v20
- check-cast v13, Ljava/lang/String;
- .line 801
- .local v13, nitzString:Ljava/lang/String;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- check-cast p1, [Ljava/lang/Object;
- check-cast p1, [Ljava/lang/Object;
- const/16 v20, 0x1
- aget-object p1, p1, v20
- check-cast p1, Ljava/lang/Long;
- invoke-virtual/range {p1 .. p1}, Ljava/lang/Long;->longValue()J
- move-result-wide v11
- .line 803
- .local v11, nitzReceiveTime:J
- move-object/from16 v0, p0
- move-object v1, v13
- move-wide v2, v11
- invoke-direct {v0, v1, v2, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setTimeFromNITZString(Ljava/lang/String;J)V
- goto/16 :goto_28
- .line 810
- .end local v4 #ar:Landroid/os/AsyncResult;
- .end local v11 #nitzReceiveTime:J
- .end local v13 #nitzString:Ljava/lang/String;
- .restart local p1
- :sswitch_58c
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 814
- .restart local v4 #ar:Landroid/os/AsyncResult;
- const/16 v20, 0x1
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
- .line 816
- move-object/from16 v0, p0
- move-object v1, v4
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
- goto/16 :goto_28
- .line 822
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_5a3
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateNetworkNameDisplay()V
- goto/16 :goto_28
- .line 827
- :sswitch_5a8
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 829
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v20, v0
- if-nez v20, :cond_28
- .line 830
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- const/16 v21, 0xf
- const/16 v22, 0x0
- move-object/from16 v0, p0
- move/from16 v1, v21
- move-object/from16 v2, v22
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v21
- invoke-interface/range {v20 .. v21}, Lcom/android/internal/telephony/CommandsInterface;->getRegistrationState(Landroid/os/Message;)V
- goto/16 :goto_28
- .line 835
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_5cf
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 837
- .restart local v4 #ar:Landroid/os/AsyncResult;
- const/16 v20, 0x15
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 v21, v0
- move-object/from16 v0, p0
- move/from16 v1, v20
- move-object/from16 v2, v21
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v9
- .line 838
- .local v9, message:Landroid/os/Message;
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
- move/from16 v21, v0
- move-object/from16 v0, v20
- move/from16 v1, v21
- move-object v2, v9
- invoke-interface {v0, v1, v2}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
- goto/16 :goto_28
- .line 842
- .end local v4 #ar:Landroid/os/AsyncResult;
- .end local v9 #message:Landroid/os/Message;
- :sswitch_5fd
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 843
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 v20, v0
- if-eqz v20, :cond_28
- .line 844
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 p0, v0
- .end local p0
- check-cast p0, Landroid/os/Message;
- invoke-static/range {p0 .. p0}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
- move-result-object v20
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v21, v0
- move-object/from16 v0, v21
- move-object/from16 v1, v20
- iput-object v0, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- .line 846
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 p0, v0
- check-cast p0, Landroid/os/Message;
- invoke-virtual/range {p0 .. p0}, Landroid/os/Message;->sendToTarget()V
- goto/16 :goto_28
- .line 851
- .end local v4 #ar:Landroid/os/AsyncResult;
- .restart local p0
- :sswitch_62d
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 853
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v20, v0
- if-nez v20, :cond_671
- .line 854
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [I
- check-cast p1, [I
- const/16 v20, 0x0
- aget v20, p1, v20
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
- .line 859
- :goto_64e
- const/16 v20, 0x14
- move-object v0, v4
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 v21, v0
- move-object/from16 v0, p0
- move/from16 v1, v20
- move-object/from16 v2, v21
- invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
- move-result-object v9
- .line 860
- .restart local v9 #message:Landroid/os/Message;
- const/16 v18, 0x7
- .line 862
- .local v18, toggledNetworkType:I
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v20, v0
- move-object/from16 v0, v20
- move/from16 v1, v18
- move-object v2, v9
- invoke-interface {v0, v1, v2}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
- goto/16 :goto_28
- .line 856
- .end local v9 #message:Landroid/os/Message;
- .end local v18 #toggledNetworkType:I
- .restart local p1
- :cond_671
- const/16 v20, 0x7
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
- goto :goto_64e
- .line 867
- .end local v4 #ar:Landroid/os/AsyncResult;
- :sswitch_67a
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handleIfLanguageChanged()V
- goto/16 :goto_28
- .line 871
- :sswitch_67f
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v20, v0
- if-eqz v20, :cond_6e1
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- move/from16 v20, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v21, v0
- invoke-virtual/range {v21 .. v21}, Landroid/telephony/ServiceState;->getState()I
- move-result v21
- move-object/from16 v0, p0
- move/from16 v1, v20
- move/from16 v2, v21
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
- move-result v20
- if-nez v20, :cond_6e1
- .line 876
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v20, v0
- invoke-virtual/range {v20 .. v20}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
- move-result-object v8
- check-cast v8, Landroid/telephony/gsm/GsmCellLocation;
- .line 877
- .local v8, loc:Landroid/telephony/gsm/GsmCellLocation;
- const v20, 0xc3bb
- const/16 v21, 0x2
- move/from16 v0, v21
- new-array v0, v0, [Ljava/lang/Object;
- move-object/from16 v21, v0
- const/16 v22, 0x0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- move-object/from16 v23, v0
- invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v23
- aput-object v23, v21, v22
- const/16 v22, 0x1
- if-eqz v8, :cond_6eb
- invoke-virtual {v8}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
- move-result v23
- :goto_6d0
- invoke-static/range {v23 .. v23}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v23
- aput-object v23, v21, v22
- invoke-static/range {v20 .. v21}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
- .line 879
- const/16 v20, 0x1
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
- .line 881
- .end local v8 #loc:Landroid/telephony/gsm/GsmCellLocation;
- :cond_6e1
- const/16 v20, 0x0
- move/from16 v0, v20
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
- goto/16 :goto_28
- .line 877
- .restart local v8 #loc:Landroid/telephony/gsm/GsmCellLocation;
- :cond_6eb
- const/16 v23, -0x1
- goto :goto_6d0
- .line 888
- .end local v8 #loc:Landroid/telephony/gsm/GsmCellLocation;
- :sswitch_6ee
- const-string v20, "GSM"
- const-string v21, "[DSAC DEB] EVENT_RESTRICTED_STATE_CHANGED"
- invoke-static/range {v20 .. v21}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 890
- move-object/from16 v0, p1
- iget-object v0, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
- move-object v4, v0
- check-cast v4, Landroid/os/AsyncResult;
- .line 892
- .restart local v4 #ar:Landroid/os/AsyncResult;
- move-object/from16 v0, p0
- move-object v1, v4
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onRestrictedStateChanged(Landroid/os/AsyncResult;)V
- goto/16 :goto_28
- .line 548
- :sswitch_data_704
- .sparse-switch
- 0x1 -> :sswitch_21f
- 0x2 -> :sswitch_2d4
- 0x3 -> :sswitch_462
- 0x4 -> :sswitch_52e
- 0x5 -> :sswitch_52e
- 0x6 -> :sswitch_52e
- 0xa -> :sswitch_545
- 0xb -> :sswitch_55a
- 0xc -> :sswitch_58c
- 0xd -> :sswitch_51
- 0xe -> :sswitch_52e
- 0xf -> :sswitch_494
- 0x10 -> :sswitch_5a3
- 0x11 -> :sswitch_6e
- 0x12 -> :sswitch_5a8
- 0x13 -> :sswitch_62d
- 0x14 -> :sswitch_5cf
- 0x15 -> :sswitch_5fd
- 0x16 -> :sswitch_67f
- 0x17 -> :sswitch_6ee
- 0x32 -> :sswitch_67a
- 0x33 -> :sswitch_22f
- 0x34 -> :sswitch_d6
- 0x3d -> :sswitch_45d
- 0x3e -> :sswitch_52e
- .end sparse-switch
- .end method
- .method protected handlePollStateResult(ILandroid/os/AsyncResult;)V
- .registers 23
- .parameter "what"
- .parameter "ar"
- .prologue
- .line 1171
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->GENERIC_WPHONE_CONFIG()Z
- move-result v16
- if-eqz v16, :cond_27
- sget-boolean v16, Lcom/android/internal/telephony/gsm/GSMPhone;->mDropEvent:Z
- if-eqz v16, :cond_27
- .line 1172
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, " handlePollStateResult drop event "
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- move-object/from16 v0, v17
- move/from16 v1, p1
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1366
- .end local p1
- :cond_26
- :goto_26
- return-void
- .line 1181
- .restart local p1
- :cond_27
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- move-object/from16 v17, v0
- move-object/from16 v0, v16
- move-object/from16 v1, v17
- if-ne v0, v1, :cond_26
- .line 1183
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v16, v0
- if-eqz v16, :cond_11a
- .line 1184
- const/4 v5, 0x0
- .line 1186
- .local v5, err:Lcom/android/internal/telephony/CommandException$Error;
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- instance-of v0, v0, Lcom/android/internal/telephony/CommandException;
- move/from16 v16, v0
- if-eqz v16, :cond_5e
- .line 1187
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, Lcom/android/internal/telephony/CommandException;
- check-cast p1, Lcom/android/internal/telephony/CommandException;
- invoke-virtual/range {p1 .. p1}, Lcom/android/internal/telephony/CommandException;->getCommandError()Lcom/android/internal/telephony/CommandException$Error;
- move-result-object v5
- .line 1190
- :cond_5e
- sget-object v16, Lcom/android/internal/telephony/CommandException$Error;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/CommandException$Error;
- move-object v0, v5
- move-object/from16 v1, v16
- if-ne v0, v1, :cond_69
- .line 1192
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
- goto :goto_26
- .line 1196
- :cond_69
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- move-object/from16 v16, v0
- invoke-interface/range {v16 .. v16}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v16
- invoke-virtual/range {v16 .. v16}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
- move-result v16
- if-nez v16, :cond_7d
- .line 1198
- invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
- goto :goto_26
- .line 1202
- :cond_7d
- sget-object v16, Lcom/android/internal/telephony/CommandException$Error;->OP_NOT_ALLOWED_BEFORE_REG_NW:Lcom/android/internal/telephony/CommandException$Error;
- move-object v0, v5
- move-object/from16 v1, v16
- if-eq v0, v1, :cond_a9
- sget-object v16, Lcom/android/internal/telephony/CommandException$Error;->OP_NOT_ALLOWED_BEFORE_REG_NW:Lcom/android/internal/telephony/CommandException$Error;
- move-object v0, v5
- move-object/from16 v1, v16
- if-eq v0, v1, :cond_a9
- .line 1204
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, "RIL implementation has returned an error where it must succeed"
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
- move-object/from16 v18, v0
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- .line 1346
- .end local v5 #err:Lcom/android/internal/telephony/CommandException$Error;
- :cond_a9
- :goto_a9
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- move-object/from16 v16, v0
- const/16 v17, 0x0
- aget v18, v16, v17
- const/16 v19, 0x1
- sub-int v18, v18, v19
- aput v18, v16, v17
- .line 1348
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
- move-object/from16 v16, v0
- const/16 v17, 0x0
- aget v16, v16, v17
- if-nez v16, :cond_26
- .line 1358
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
- move/from16 v16, v0
- if-nez v16, :cond_d5
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
- move/from16 v16, v0
- if-eqz v16, :cond_468
- :cond_d5
- const/16 v16, 0x1
- move/from16 v13, v16
- .line 1359
- .local v13, roaming:Z
- :goto_d9
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
- move/from16 v16, v0
- if-eqz v16, :cond_fa
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
- move/from16 v16, v0
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v17, v0
- move-object/from16 v0, p0
- move/from16 v1, v16
- move-object/from16 v2, v17
- invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
- move-result v16
- if-nez v16, :cond_fa
- .line 1360
- const/4 v13, 0x0
- .line 1362
- :cond_fa
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- move v1, v13
- invoke-virtual {v0, v1}, Landroid/telephony/ServiceState;->setRoaming(Z)V
- .line 1363
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- move/from16 v17, v0
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setEmergencyOnly(Z)V
- .line 1364
- invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
- goto/16 :goto_26
- .line 1209
- .end local v13 #roaming:Z
- .restart local p1
- :cond_11a
- sparse-switch p1, :sswitch_data_46e
- goto :goto_a9
- .line 1211
- :sswitch_11e
- :try_start_11e
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [Ljava/lang/String;
- move-object/from16 v0, p1
- check-cast v0, [Ljava/lang/String;
- move-object v14, v0
- .line 1212
- .local v14, states:[Ljava/lang/String;
- const/4 v8, -0x1
- .line 1213
- .local v8, lac:I
- const/4 v4, -0x1
- .line 1214
- .local v4, cid:I
- const/4 v12, -0x1
- .line 1215
- .local v12, regState:I
- const/4 v11, -0x1
- .line 1216
- .local v11, psc:I
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- :try_end_133
- .catch Ljava/lang/RuntimeException; {:try_start_11e .. :try_end_133} :catch_23d
- if-lez v16, :cond_1e1
- .line 1218
- const/16 v16, 0x0
- :try_start_137
- aget-object v16, v14, v16
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v12
- .line 1220
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- const/16 v17, 0x3
- move/from16 v0, v16
- move/from16 v1, v17
- if-lt v0, v1, :cond_17d
- .line 1221
- const/16 v16, 0x1
- aget-object v16, v14, v16
- if-eqz v16, :cond_163
- const/16 v16, 0x1
- aget-object v16, v14, v16
- invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->length()I
- move-result v16
- if-lez v16, :cond_163
- .line 1222
- const/16 v16, 0x1
- aget-object v16, v14, v16
- const/16 v17, 0x10
- invoke-static/range {v16 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
- move-result v8
- .line 1224
- :cond_163
- const/16 v16, 0x2
- aget-object v16, v14, v16
- if-eqz v16, :cond_17d
- const/16 v16, 0x2
- aget-object v16, v14, v16
- invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->length()I
- move-result v16
- if-lez v16, :cond_17d
- .line 1225
- const/16 v16, 0x2
- aget-object v16, v14, v16
- const/16 v17, 0x10
- invoke-static/range {v16 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
- move-result v4
- .line 1228
- :cond_17d
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- const/16 v17, 0xe
- move/from16 v0, v16
- move/from16 v1, v17
- if-le v0, v1, :cond_1a3
- .line 1229
- const/16 v16, 0xe
- aget-object v16, v14, v16
- if-eqz v16, :cond_1a3
- const/16 v16, 0xe
- aget-object v16, v14, v16
- invoke-virtual/range {v16 .. v16}, Ljava/lang/String;->length()I
- move-result v16
- if-lez v16, :cond_1a3
- .line 1230
- const/16 v16, 0xe
- aget-object v16, v14, v16
- const/16 v17, 0x10
- invoke-static/range {v16 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
- move-result v11
- .line 1234
- :cond_1a3
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- const/16 v17, 0xe
- move/from16 v0, v16
- move/from16 v1, v17
- if-lt v0, v1, :cond_24e
- const/16 v16, 0xd
- aget-object v16, v14, v16
- if-eqz v16, :cond_24e
- .line 1235
- const/16 v16, 0xd
- aget-object v16, v14, v16
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v16
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- .line 1236
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, "MM Reject Cause from RIL: "
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- move/from16 v18, v0
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- :try_end_1e1
- .catch Ljava/lang/NumberFormatException; {:try_start_137 .. :try_end_1e1} :catch_257
- .catch Ljava/lang/RuntimeException; {:try_start_137 .. :try_end_1e1} :catch_23d
- .line 1246
- :cond_1e1
- :goto_1e1
- :try_start_1e1
- move-object/from16 v0, p0
- move v1, v12
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
- move-result v16
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
- .line 1247
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- move v1, v12
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v17
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setState(I)V
- .line 1249
- const/16 v16, 0xa
- move v0, v12
- move/from16 v1, v16
- if-eq v0, v1, :cond_21a
- const/16 v16, 0xc
- move v0, v12
- move/from16 v1, v16
- if-eq v0, v1, :cond_21a
- const/16 v16, 0xd
- move v0, v12
- move/from16 v1, v16
- if-eq v0, v1, :cond_21a
- const/16 v16, 0xe
- move v0, v12
- move/from16 v1, v16
- if-ne v0, v1, :cond_277
- .line 1250
- :cond_21a
- const/16 v16, 0x1
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- .line 1256
- :goto_222
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- move v1, v8
- move v2, v4
- invoke-virtual {v0, v1, v2}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
- .line 1257
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- move v1, v11
- invoke-virtual {v0, v1}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
- :try_end_23b
- .catch Ljava/lang/RuntimeException; {:try_start_1e1 .. :try_end_23b} :catch_23d
- goto/16 :goto_a9
- .line 1341
- .end local v4 #cid:I
- .end local v8 #lac:I
- .end local v11 #psc:I
- .end local v12 #regState:I
- .end local v14 #states:[Ljava/lang/String;
- :catch_23d
- move-exception v16
- move-object/from16 v6, v16
- .line 1342
- .local v6, ex:Ljava/lang/RuntimeException;
- const-string v16, "GSM"
- const-string v17, "Exception while polling service state. Probably malformed RIL response."
- move-object/from16 v0, v16
- move-object/from16 v1, v17
- move-object v2, v6
- invoke-static {v0, v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
- goto/16 :goto_a9
- .line 1238
- .end local v6 #ex:Ljava/lang/RuntimeException;
- .restart local v4 #cid:I
- .restart local v8 #lac:I
- .restart local v11 #psc:I
- .restart local v12 #regState:I
- .restart local v14 #states:[Ljava/lang/String;
- :cond_24e
- const/16 v16, 0x0
- :try_start_250
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMMRejectCause:I
- :try_end_256
- .catch Ljava/lang/NumberFormatException; {:try_start_250 .. :try_end_256} :catch_257
- .catch Ljava/lang/RuntimeException; {:try_start_250 .. :try_end_256} :catch_23d
- goto :goto_1e1
- .line 1241
- :catch_257
- move-exception v16
- move-object/from16 v6, v16
- .line 1242
- .local v6, ex:Ljava/lang/NumberFormatException;
- :try_start_25a
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, "error parsing RegistrationState: "
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- move-object/from16 v0, v17
- move-object v1, v6
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto/16 :goto_1e1
- .line 1252
- .end local v6 #ex:Ljava/lang/NumberFormatException;
- :cond_277
- const/16 v16, 0x0
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- goto :goto_222
- .line 1261
- .end local v4 #cid:I
- .end local v8 #lac:I
- .end local v11 #psc:I
- .end local v12 #regState:I
- .end local v14 #states:[Ljava/lang/String;
- .restart local p1
- :sswitch_280
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [Ljava/lang/String;
- move-object/from16 v0, p1
- check-cast v0, [Ljava/lang/String;
- move-object v14, v0
- .line 1263
- .restart local v14 #states:[Ljava/lang/String;
- const/4 v15, 0x0
- .line 1264
- .local v15, type:I
- const/4 v12, -0x1
- .line 1265
- .restart local v12 #regState:I
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- :try_end_293
- .catch Ljava/lang/RuntimeException; {:try_start_25a .. :try_end_293} :catch_23d
- if-lez v16, :cond_2b7
- .line 1267
- const/16 v16, 0x0
- :try_start_297
- aget-object v16, v14, v16
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v12
- .line 1269
- move-object v0, v14
- array-length v0, v0
- move/from16 v16, v0
- const/16 v17, 0x4
- move/from16 v0, v16
- move/from16 v1, v17
- if-lt v0, v1, :cond_2b7
- const/16 v16, 0x3
- aget-object v16, v14, v16
- if-eqz v16, :cond_2b7
- .line 1270
- const/16 v16, 0x3
- aget-object v16, v14, v16
- invoke-static/range {v16 .. v16}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- :try_end_2b6
- .catch Ljava/lang/NumberFormatException; {:try_start_297 .. :try_end_2b6} :catch_30d
- .catch Ljava/lang/RuntimeException; {:try_start_297 .. :try_end_2b6} :catch_23d
- move-result v15
- .line 1276
- :cond_2b7
- :goto_2b7
- :try_start_2b7
- move-object/from16 v0, p0
- move v1, v12
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
- move-result v16
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- .line 1277
- move-object/from16 v0, p0
- move v1, v12
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
- move-result v16
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
- .line 1283
- move-object/from16 v0, p0
- move v1, v15
- invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->processIfDTMCase(I)I
- move-result v16
- move/from16 v0, v16
- move-object/from16 v1, p0
- iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- .line 1285
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
- move/from16 v17, v0
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setGPRSState(I)V
- .line 1287
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v17, v0
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setRadioTechnology(I)V
- .line 1288
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- move-object/from16 v0, p0
- iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newNetworkType:I
- move/from16 v17, v0
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setNetworkType(I)V
- goto/16 :goto_a9
- .line 1272
- :catch_30d
- move-exception v16
- move-object/from16 v6, v16
- .line 1273
- .restart local v6 #ex:Ljava/lang/NumberFormatException;
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, "error parsing GprsRegistrationState: "
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- move-object/from16 v0, v17
- move-object v1, v6
- invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
- goto :goto_2b7
- .line 1293
- .end local v6 #ex:Ljava/lang/NumberFormatException;
- .end local v12 #regState:I
- .end local v14 #states:[Ljava/lang/String;
- .end local v15 #type:I
- .restart local p1
- :sswitch_32c
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [Ljava/lang/String;
- move-object/from16 v0, p1
- check-cast v0, [Ljava/lang/String;
- move-object v10, v0
- .line 1295
- .local v10, opNames:[Ljava/lang/String;
- if-eqz v10, :cond_a9
- move-object v0, v10
- array-length v0, v0
- move/from16 v16, v0
- const/16 v17, 0x3
- move/from16 v0, v16
- move/from16 v1, v17
- if-lt v0, v1, :cond_a9
- .line 1303
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v16, v0
- if-eqz v16, :cond_421
- const/16 v16, 0x1
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v17, v0
- const/16 v18, 0x2
- aget-object v18, v10, v18
- invoke-virtual/range {v17 .. v18}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
- move-result v17
- move/from16 v0, v16
- move/from16 v1, v17
- if-ne v0, v1, :cond_421
- .line 1304
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- move-object/from16 v16, v0
- const/16 v17, 0x2
- aget-object v17, v10, v17
- invoke-virtual/range {v16 .. v17}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
- move-result-object v9
- check-cast v9, Ljava/lang/String;
- .line 1308
- .local v9, opLong:Ljava/lang/String;
- :goto_375
- const/16 v16, 0x0
- aget-object v16, v10, v16
- move-object/from16 v0, v16
- move-object/from16 v1, p0
- iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOriginalOperatorName:Ljava/lang/String;
- .line 1309
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- const/16 v17, 0x1
- aget-object v17, v10, v17
- const/16 v18, 0x2
- aget-object v18, v10, v18
- move-object/from16 v0, v16
- move-object v1, v9
- move-object/from16 v2, v17
- move-object/from16 v3, v18
- invoke-virtual {v0, v1, v2, v3}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
- .line 1312
- sget-object v16, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedAppendixOpList:Ljava/util/ArrayList;
- const/16 v17, 0x2
- aget-object v17, v10, v17
- invoke-virtual/range {v16 .. v17}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
- move-result v16
- if-eqz v16, :cond_433
- .line 1313
- const-string v16, "GSM"
- new-instance v17, Ljava/lang/StringBuilder;
- invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
- const-string v18, "appendix criteria is matched: "
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- const/16 v18, 0x2
- aget-object v18, v10, v18
- invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v17
- invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v17
- invoke-static/range {v16 .. v17}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1314
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- move-object/from16 v16, v0
- sget-object v17, Ljava/util/Locale;->TAIWAN:Ljava/util/Locale;
- invoke-virtual/range {v16 .. v17}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
- move-result v16
- if-nez v16, :cond_3db
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mLocale:Ljava/util/Locale;
- move-object/from16 v16, v0
- sget-object v17, Ljava/util/Locale;->CHINA:Ljava/util/Locale;
- invoke-virtual/range {v16 .. v17}, Ljava/util/Locale;->equals(Ljava/lang/Object;)Z
- move-result v16
- if-eqz v16, :cond_427
- .line 1316
- :cond_3db
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- const/16 v17, 0x2
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setAppendixType(I)V
- .line 1324
- :goto_3e6
- move-object v0, v10
- array-length v0, v0
- move/from16 v16, v0
- :try_end_3ea
- .catch Ljava/lang/RuntimeException; {:try_start_2b7 .. :try_end_3ea} :catch_23d
- const/16 v17, 0x4
- move/from16 v0, v16
- move/from16 v1, v17
- if-lt v0, v1, :cond_a9
- .line 1326
- :try_start_3f2
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- move-object/from16 v16, v0
- const/16 v17, 0x3
- aget-object v17, v10, v17
- invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
- move-result v17
- invoke-virtual/range {v16 .. v17}, Lcom/android/internal/telephony/gsm/SIMRecords;->setOperatorNameSource(I)V
- :try_end_409
- .catch Ljava/lang/NumberFormatException; {:try_start_3f2 .. :try_end_409} :catch_40b
- .catch Ljava/lang/RuntimeException; {:try_start_3f2 .. :try_end_409} :catch_23d
- goto/16 :goto_a9
- .line 1327
- :catch_40b
- move-exception v16
- move-object/from16 v6, v16
- .line 1328
- .restart local v6 #ex:Ljava/lang/NumberFormatException;
- :try_start_40e
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- move-object/from16 v16, v0
- move-object/from16 v0, v16
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- move-object/from16 v16, v0
- const/16 v17, -0x1
- invoke-virtual/range {v16 .. v17}, Lcom/android/internal/telephony/gsm/SIMRecords;->setOperatorNameSource(I)V
- goto/16 :goto_a9
- .line 1306
- .end local v6 #ex:Ljava/lang/NumberFormatException;
- .end local v9 #opLong:Ljava/lang/String;
- :cond_421
- const/16 v16, 0x0
- aget-object v9, v10, v16
- .restart local v9 #opLong:Ljava/lang/String;
- goto/16 :goto_375
- .line 1318
- :cond_427
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- const/16 v17, 0x1
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setAppendixType(I)V
- goto :goto_3e6
- .line 1321
- :cond_433
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- const/16 v17, 0x0
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setAppendixType(I)V
- goto :goto_3e6
- .line 1336
- .end local v9 #opLong:Ljava/lang/String;
- .end local v10 #opNames:[Ljava/lang/String;
- .restart local p1
- :sswitch_43f
- move-object/from16 v0, p2
- iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
- move-object/from16 p1, v0
- .end local p1
- check-cast p1, [I
- move-object/from16 v0, p1
- check-cast v0, [I
- move-object v7, v0
- .line 1337
- .local v7, ints:[I
- move-object/from16 v0, p0
- iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
- move-object/from16 v16, v0
- const/16 v17, 0x0
- aget v17, v7, v17
- const/16 v18, 0x1
- move/from16 v0, v17
- move/from16 v1, v18
- if-ne v0, v1, :cond_465
- const/16 v17, 0x1
- :goto_460
- invoke-virtual/range {v16 .. v17}, Landroid/telephony/ServiceState;->setIsManualSelection(Z)V
- :try_end_463
- .catch Ljava/lang/RuntimeException; {:try_start_40e .. :try_end_463} :catch_23d
- goto/16 :goto_a9
- :cond_465
- const/16 v17, 0x0
- goto :goto_460
- .line 1358
- .end local v7 #ints:[I
- :cond_468
- const/16 v16, 0x0
- move/from16 v13, v16
- goto/16 :goto_d9
- .line 1209
- :sswitch_data_46e
- .sparse-switch
- 0x4 -> :sswitch_11e
- 0x5 -> :sswitch_280
- 0x6 -> :sswitch_32c
- 0xe -> :sswitch_43f
- .end sparse-switch
- .end method
- .method isConcurrentVoiceAndData()Z
- .registers 4
- .prologue
- const/4 v2, 0x1
- .line 2192
- iget v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkType:I
- const/4 v1, 0x3
- if-ge v0, v1, :cond_a
- iget-boolean v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->m2gWithDTM:Z
- if-ne v0, v2, :cond_c
- :cond_a
- move v0, v2
- :goto_b
- return v0
- :cond_c
- const/4 v0, 0x0
- goto :goto_b
- .end method
- .method protected powerOffRadioSafely()V
- .registers 7
- .prologue
- const-string v5, "GSM"
- .line 947
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v0, v3, Lcom/android/internal/telephony/gsm/GSMPhone;->mDataConnection:Lcom/android/internal/telephony/DataConnectionTracker;
- .line 949
- .local v0, dcTracker:Lcom/android/internal/telephony/DataConnectionTracker;
- if-eqz v0, :cond_3c
- .line 950
- const-string v3, "GSM"
- const-string v3, "Data shutdown starting"
- invoke-static {v5, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 951
- const/16 v3, 0x22
- invoke-virtual {v0, v3}, Lcom/android/internal/telephony/DataConnectionTracker;->obtainMessage(I)Landroid/os/Message;
- move-result-object v2
- .line 952
- .local v2, msg:Landroid/os/Message;
- const/4 v3, 0x1
- iput v3, v2, Landroid/os/Message;->arg1:I
- .line 953
- const-string/jumbo v3, "radioTurnedOff"
- iput-object v3, v2, Landroid/os/Message;->obj:Ljava/lang/Object;
- .line 954
- invoke-virtual {v0, v2}, Lcom/android/internal/telephony/DataConnectionTracker;->sendMessage(Landroid/os/Message;)Z
- .line 958
- const/4 v1, 0x0
- .local v1, i:I
- :goto_21
- const/16 v3, 0xf
- if-ge v1, v3, :cond_3c
- .line 959
- invoke-virtual {v0}, Lcom/android/internal/telephony/DataConnectionTracker;->getState()Lcom/android/internal/telephony/DataConnectionTracker$State;
- move-result-object v3
- sget-object v4, Lcom/android/internal/telephony/DataConnectionTracker$State;->CONNECTED:Lcom/android/internal/telephony/DataConnectionTracker$State;
- if-eq v3, v4, :cond_6c
- invoke-virtual {v0}, Lcom/android/internal/telephony/DataConnectionTracker;->getState()Lcom/android/internal/telephony/DataConnectionTracker$State;
- move-result-object v3
- sget-object v4, Lcom/android/internal/telephony/DataConnectionTracker$State;->DISCONNECTING:Lcom/android/internal/telephony/DataConnectionTracker$State;
- if-eq v3, v4, :cond_6c
- .line 961
- const-string v3, "GSM"
- const-string v3, "Data shutdown complete."
- invoke-static {v5, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 976
- .end local v1 #i:I
- .end local v2 #msg:Landroid/os/Message;
- :cond_3c
- const-wide/16 v3, 0x7d0
- invoke-static {v3, v4}, Landroid/os/SystemClock;->sleep(J)V
- .line 983
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/GSMPhone;->isInCall()Z
- move-result v3
- if-eqz v3, :cond_64
- .line 984
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GsmCallTracker;->ringingCall:Lcom/android/internal/telephony/gsm/GsmCall;
- invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
- .line 985
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GsmCallTracker;->backgroundCall:Lcom/android/internal/telephony/gsm/GsmCall;
- invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
- .line 986
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
- iget-object v3, v3, Lcom/android/internal/telephony/gsm/GsmCallTracker;->foregroundCall:Lcom/android/internal/telephony/gsm/GsmCall;
- invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
- .line 989
- :cond_64
- iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- const/4 v4, 0x0
- const/4 v5, 0x0
- invoke-interface {v3, v4, v5}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
- .line 990
- return-void
- .line 964
- .restart local v1 #i:I
- .restart local v2 #msg:Landroid/os/Message;
- :cond_6c
- const-wide/16 v3, 0x64
- invoke-static {v3, v4}, Landroid/os/SystemClock;->sleep(J)V
- .line 958
- add-int/lit8 v1, v1, 0x1
- goto :goto_21
- .end method
- .method registerForGprsAttached(Landroid/os/Handler;ILjava/lang/Object;)V
- .registers 6
- .parameter "h"
- .parameter "what"
- .parameter "obj"
- .prologue
- .line 421
- new-instance v0, Landroid/os/Registrant;
- invoke-direct {v0, p1, p2, p3}, Landroid/os/Registrant;-><init>(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 422
- .local v0, r:Landroid/os/Registrant;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsAttachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v1, v0}, Landroid/os/RegistrantList;->add(Landroid/os/Registrant;)V
- .line 424
- iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- if-nez v1, :cond_11
- .line 425
- invoke-virtual {v0}, Landroid/os/Registrant;->notifyRegistrant()V
- .line 427
- :cond_11
- return-void
- .end method
- .method registerForGprsDetached(Landroid/os/Handler;ILjava/lang/Object;)V
- .registers 7
- .parameter "h"
- .parameter "what"
- .parameter "obj"
- .prologue
- .line 453
- new-instance v0, Landroid/os/Registrant;
- invoke-direct {v0, p1, p2, p3}, Landroid/os/Registrant;-><init>(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 454
- .local v0, r:Landroid/os/Registrant;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsDetachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v1, v0}, Landroid/os/RegistrantList;->add(Landroid/os/Registrant;)V
- .line 456
- iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
- const/4 v2, 0x1
- if-ne v1, v2, :cond_12
- .line 457
- invoke-virtual {v0}, Landroid/os/Registrant;->notifyRegistrant()V
- .line 459
- :cond_12
- return-void
- .end method
- .method registerForNetworkAttach(Landroid/os/Handler;ILjava/lang/Object;)V
- .registers 6
- .parameter "h"
- .parameter "what"
- .parameter "obj"
- .prologue
- .line 434
- new-instance v0, Landroid/os/Registrant;
- invoke-direct {v0, p1, p2, p3}, Landroid/os/Registrant;-><init>(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 435
- .local v0, r:Landroid/os/Registrant;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkAttachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v1, v0}, Landroid/os/RegistrantList;->add(Landroid/os/Registrant;)V
- .line 437
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v1}, Landroid/telephony/ServiceState;->getState()I
- move-result v1
- if-nez v1, :cond_15
- .line 438
- invoke-virtual {v0}, Landroid/os/Registrant;->notifyRegistrant()V
- .line 440
- :cond_15
- return-void
- .end method
- .method registerForPsRestrictedDisabled(Landroid/os/Handler;ILjava/lang/Object;)V
- .registers 7
- .parameter "h"
- .parameter "what"
- .parameter "obj"
- .prologue
- .line 492
- const-string v1, "GSM"
- const-string v2, "[DSAC DEB] registerForPsRestrictedDisabled "
- invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 493
- new-instance v0, Landroid/os/Registrant;
- invoke-direct {v0, p1, p2, p3}, Landroid/os/Registrant;-><init>(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 494
- .local v0, r:Landroid/os/Registrant;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictDisabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v1, v0}, Landroid/os/RegistrantList;->add(Landroid/os/Registrant;)V
- .line 496
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v1
- if-eqz v1, :cond_1c
- .line 497
- invoke-virtual {v0}, Landroid/os/Registrant;->notifyRegistrant()V
- .line 499
- :cond_1c
- return-void
- .end method
- .method registerForPsRestrictedEnabled(Landroid/os/Handler;ILjava/lang/Object;)V
- .registers 7
- .parameter "h"
- .parameter "what"
- .parameter "obj"
- .prologue
- .line 472
- const-string v1, "GSM"
- const-string v2, "[DSAC DEB] registerForPsRestrictedEnabled "
- invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 473
- new-instance v0, Landroid/os/Registrant;
- invoke-direct {v0, p1, p2, p3}, Landroid/os/Registrant;-><init>(Landroid/os/Handler;ILjava/lang/Object;)V
- .line 474
- .local v0, r:Landroid/os/Registrant;
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictEnabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v1, v0}, Landroid/os/RegistrantList;->add(Landroid/os/Registrant;)V
- .line 476
- iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->rs:Lcom/android/internal/telephony/gsm/RestrictedState;
- invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/RestrictedState;->isPsRestricted()Z
- move-result v1
- if-eqz v1, :cond_1c
- .line 477
- invoke-virtual {v0}, Landroid/os/Registrant;->notifyRegistrant()V
- .line 479
- :cond_1c
- return-void
- .end method
- .method protected setPowerStateToDesired()V
- .registers 9
- .prologue
- const/4 v4, 0x0
- const/4 v6, 0x1
- const/4 v5, 0x0
- const-string v7, "GSM"
- .line 903
- iget-boolean v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
- if-eqz v2, :cond_19
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v2
- sget-object v3, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_OFF:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- if-ne v2, v3, :cond_19
- .line 905
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2, v6, v4}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
- .line 942
- :cond_18
- :goto_18
- return-void
- .line 906
- :cond_19
- iget-boolean v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
- if-nez v2, :cond_57
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v2
- invoke-virtual {v2}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
- move-result v2
- if-eqz v2, :cond_57
- .line 907
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v0, v2, Lcom/android/internal/telephony/gsm/GSMPhone;->mDataConnection:Lcom/android/internal/telephony/DataConnectionTracker;
- .line 910
- .local v0, dcTracker:Lcom/android/internal/telephony/DataConnectionTracker;
- if-eqz v0, :cond_51
- invoke-virtual {v0}, Lcom/android/internal/telephony/DataConnectionTracker;->isDataConnectionAsDesired()Z
- move-result v2
- if-nez v2, :cond_51
- .line 912
- const v2, 0xc3bc
- const/4 v3, 0x2
- new-array v3, v3, [Ljava/lang/Object;
- invoke-virtual {v0}, Lcom/android/internal/telephony/DataConnectionTracker;->getStateInString()Ljava/lang/String;
- move-result-object v4
- aput-object v4, v3, v5
- invoke-virtual {v0}, Lcom/android/internal/telephony/DataConnectionTracker;->getAnyDataEnabled()Z
- move-result v4
- if-eqz v4, :cond_55
- move v4, v6
- :goto_48
- invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
- move-result-object v4
- aput-object v4, v3, v6
- invoke-static {v2, v3}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
- .line 916
- :cond_51
- invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->powerOffRadioSafely()V
- goto :goto_18
- :cond_55
- move v4, v5
- .line 912
- goto :goto_48
- .line 920
- .end local v0 #dcTracker:Lcom/android/internal/telephony/DataConnectionTracker;
- :cond_57
- const/4 v1, 0x0
- .line 921
- .local v1, noRedundantCommand:Z
- iget-boolean v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mFlightModeBootup:Z
- if-eqz v2, :cond_75
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v2
- sget-object v3, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_OFF:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- if-ne v2, v3, :cond_75
- .line 924
- const-string v2, "GSM"
- const-string v2, "Boot-up with airplane mode is on"
- invoke-static {v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 925
- iput-boolean v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mFlightModeBootup:Z
- .line 926
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2, v5, v4}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
- .line 927
- const/4 v1, 0x1
- .line 932
- :cond_75
- invoke-static {}, Lcom/android/internal/telephony/HtcBuildUtils;->enableTmoWifiIms()Z
- move-result v2
- if-eqz v2, :cond_18
- .line 934
- if-nez v1, :cond_18
- iget-boolean v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
- if-nez v2, :cond_18
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v2
- sget-object v3, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_OFF:Lcom/android/internal/telephony/CommandsInterface$RadioState;
- if-ne v2, v3, :cond_18
- .line 936
- const-string v2, "GSM"
- const-string v2, "IMS flight mode on, but power off case"
- invoke-static {v7, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 937
- iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v2, v5, v4}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
- goto :goto_18
- .end method
- .method unregisterForGprsAttached(Landroid/os/Handler;)V
- .registers 3
- .parameter "h"
- .prologue
- .line 430
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsAttachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v0, p1}, Landroid/os/RegistrantList;->remove(Landroid/os/Handler;)V
- .line 431
- return-void
- .end method
- .method unregisterForGprsDetached(Landroid/os/Handler;)V
- .registers 3
- .parameter "h"
- .prologue
- .line 462
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsDetachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v0, p1}, Landroid/os/RegistrantList;->remove(Landroid/os/Handler;)V
- .line 463
- return-void
- .end method
- .method unregisterForNetworkAttach(Landroid/os/Handler;)V
- .registers 3
- .parameter "h"
- .prologue
- .line 443
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->networkAttachedRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v0, p1}, Landroid/os/RegistrantList;->remove(Landroid/os/Handler;)V
- .line 444
- return-void
- .end method
- .method unregisterForPsRestrictedDisabled(Landroid/os/Handler;)V
- .registers 3
- .parameter "h"
- .prologue
- .line 502
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictDisabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v0, p1}, Landroid/os/RegistrantList;->remove(Landroid/os/Handler;)V
- .line 503
- return-void
- .end method
- .method unregisterForPsRestrictedEnabled(Landroid/os/Handler;)V
- .registers 3
- .parameter "h"
- .prologue
- .line 482
- iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->psRestrictEnabledRegistrants:Landroid/os/RegistrantList;
- invoke-virtual {v0, p1}, Landroid/os/RegistrantList;->remove(Landroid/os/Handler;)V
- .line 483
- return-void
- .end method
- .method protected updateNetworkNameDisplay()V
- .registers 16
- .prologue
- .line 1030
- new-instance v2, Landroid/content/Intent;
- const-string v12, "android.provider.Telephony.SPN_STRINGS_UPDATED"
- invoke-direct {v2, v12}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- .line 1031
- .local v2, intent:Landroid/content/Intent;
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v12}, Landroid/telephony/ServiceState;->getState()I
- move-result v8
- .line 1032
- .local v8, serviceStatus:I
- const-string/jumbo v12, "networkState"
- invoke-virtual {v2, v12, v8}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
- .line 1033
- const-string/jumbo v12, "unregistered_icc"
- iget v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- if-lez v13, :cond_25
- const/4 v13, 0x1
- :goto_1b
- invoke-virtual {v2, v12, v13}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1035
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v12, v12, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- if-nez v12, :cond_27
- .line 1163
- :goto_24
- return-void
- .line 1033
- :cond_25
- const/4 v13, 0x0
- goto :goto_1b
- .line 1039
- :cond_27
- const-string v12, "GSM"
- new-instance v13, Ljava/lang/StringBuilder;
- invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
- const-string v14, "SPN_STRINGS_UPDATED_ACTION serviceStatus: "
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v13
- const-string v14, " rejectCause:"
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- iget v14, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMMRejectCause:I
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v13
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1041
- if-nez v8, :cond_1fb
- .line 1042
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v12, v12, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- iget-object v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v13}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v13
- invoke-virtual {v12, v13}, Lcom/android/internal/telephony/gsm/SIMRecords;->getDisplayRule(Ljava/lang/String;)I
- move-result v7
- .line 1043
- .local v7, rule:I
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v12, v12, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- invoke-virtual {v12}, Lcom/android/internal/telephony/gsm/SIMRecords;->getServiceProviderName()Ljava/lang/String;
- move-result-object v11
- .line 1045
- .local v11, spn:Ljava/lang/String;
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v12}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v5
- .line 1047
- .local v5, numeric:Ljava/lang/String;
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- if-eqz v12, :cond_197
- const/4 v12, 0x1
- iget-object v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- invoke-virtual {v13, v5}, Ljava/util/HashMap;->containsKey(Ljava/lang/Object;)Z
- move-result v13
- if-ne v12, v13, :cond_197
- .line 1048
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mOperatorStringLists:Ljava/util/HashMap;
- invoke-virtual {v12, v5}, Ljava/util/HashMap;->get(Ljava/lang/Object;)Ljava/lang/Object;
- move-result-object v6
- check-cast v6, Ljava/lang/String;
- .line 1049
- .local v6, plmn:Ljava/lang/String;
- const-string v12, "GSM"
- new-instance v13, Ljava/lang/StringBuilder;
- invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v14, "plmn("
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- const-string v14, ") name in resource: "
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v13
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1056
- :goto_a1
- sget-object v12, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedAppendixOpList:Ljava/util/ArrayList;
- iget-object v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v13}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v13
- invoke-virtual {v12, v13}, Ljava/util/ArrayList;->contains(Ljava/lang/Object;)Z
- move-result v12
- if-eqz v12, :cond_ff
- .line 1057
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v12}, Landroid/telephony/ServiceState;->getNetwrorkType()I
- move-result v12
- const/4 v13, 0x2
- if-le v12, v13, :cond_1c2
- const/4 v12, 0x1
- move v3, v12
- .line 1058
- .local v3, is3Gtype:Z
- :goto_ba
- const-string v12, "GSM"
- new-instance v13, Ljava/lang/StringBuilder;
- invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v14, "network Type: "
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- iget-object v14, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v14}, Landroid/telephony/ServiceState;->getNetwrorkType()I
- move-result v14
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v13
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1059
- if-eqz v3, :cond_ff
- .line 1060
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v12}, Landroid/telephony/ServiceState;->getAppendixType()I
- move-result v0
- .line 1061
- .local v0, appendixType:I
- const/4 v12, 0x2
- if-ne v0, v12, :cond_1c6
- .line 1062
- const-string v12, "3G"
- invoke-virtual {v6, v12}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
- move-result v12
- if-nez v12, :cond_ff
- .line 1063
- new-instance v12, Ljava/lang/StringBuilder;
- invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
- invoke-virtual {v12, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v12
- const-string v13, "3G"
- invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v12
- invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v6
- .line 1073
- .end local v0 #appendixType:I
- .end local v3 #is3Gtype:Z
- :cond_ff
- :goto_ff
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- const-string/jumbo v13, "gsm.operator.alpha"
- invoke-virtual {v12, v13, v6}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
- .line 1075
- iget v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- if-ne v7, v12, :cond_11b
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- invoke-static {v11, v12}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
- move-result v12
- if-eqz v12, :cond_11b
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- invoke-static {v6, v12}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
- move-result v12
- if-nez v12, :cond_18c
- .line 1078
- :cond_11b
- and-int/lit8 v12, v7, 0x1
- const/4 v13, 0x1
- if-ne v12, v13, :cond_1e6
- const/4 v12, 0x1
- move v10, v12
- .line 1080
- .local v10, showSpn:Z
- :goto_122
- and-int/lit8 v12, v7, 0x2
- const/4 v13, 0x2
- if-ne v12, v13, :cond_1ea
- const/4 v12, 0x1
- move v9, v12
- .line 1085
- .local v9, showPlmn:Z
- :goto_129
- if-eqz v10, :cond_140
- if-eqz v9, :cond_140
- if-eqz v6, :cond_140
- if-eqz v11, :cond_140
- .line 1086
- invoke-virtual {v6, v11}, Ljava/lang/String;->compareToIgnoreCase(Ljava/lang/String;)I
- move-result v12
- if-nez v12, :cond_140
- .line 1087
- const-string v12, "GSM"
- const-string/jumbo v13, "spn and plmn are identical strings!!"
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- .line 1088
- const/4 v9, 0x0
- .line 1106
- :cond_140
- if-eqz v5, :cond_16b
- .line 1108
- const/4 v12, 0x0
- const/4 v13, 0x3
- :try_start_144
- invoke-virtual {v5, v12, v13}, Ljava/lang/String;->substring(II)Ljava/lang/String;
- move-result-object v4
- .line 1110
- .local v4, mcc:Ljava/lang/String;
- const-string v12, "404"
- invoke-virtual {v4, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v12
- if-nez v12, :cond_158
- const-string v12, "405"
- invoke-virtual {v4, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v12
- if-eqz v12, :cond_16b
- .line 1113
- :cond_158
- if-eqz v11, :cond_162
- const-string v12, "Vodafone IN"
- invoke-virtual {v11, v12}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
- move-result v12
- if-nez v12, :cond_16b
- .line 1115
- :cond_162
- const-string v12, "GSM"
- const-string v13, "According to customerization table, we only show PLMN!!"
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- :try_end_169
- .catch Ljava/lang/Exception; {:try_start_144 .. :try_end_169} :catch_1ee
- .line 1116
- const/4 v10, 0x0
- .line 1117
- const/4 v9, 0x1
- .line 1125
- .end local v4 #mcc:Ljava/lang/String;
- :cond_16b
- :goto_16b
- const-string/jumbo v12, "showSpn"
- invoke-virtual {v2, v12, v10}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1126
- const-string/jumbo v12, "spn"
- invoke-virtual {v2, v12, v11}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1127
- const-string/jumbo v12, "showPlmn"
- invoke-virtual {v2, v12, v9}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1128
- const-string/jumbo v12, "plmn"
- invoke-virtual {v2, v12, v6}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1129
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v12}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v12
- invoke-virtual {v12, v2}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
- .line 1131
- .end local v9 #showPlmn:Z
- .end local v10 #showSpn:Z
- :cond_18c
- iput v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- .line 1132
- iput-object v11, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- .line 1133
- iput-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- .line 1162
- .end local v5 #numeric:Ljava/lang/String;
- .end local v6 #plmn:Ljava/lang/String;
- .end local v7 #rule:I
- .end local v11 #spn:Ljava/lang/String;
- :goto_192
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateOperatorInfo()V
- goto/16 :goto_24
- .line 1051
- .restart local v5 #numeric:Ljava/lang/String;
- .restart local v7 #rule:I
- .restart local v11 #spn:Ljava/lang/String;
- :cond_197
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v12}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
- move-result-object v6
- .line 1052
- .restart local v6 #plmn:Ljava/lang/String;
- const-string v12, "GSM"
- new-instance v13, Ljava/lang/StringBuilder;
- invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
- const-string/jumbo v14, "plmn("
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- const-string v14, ") name from RIL: "
- invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v13
- invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v13
- invoke-static {v12, v13}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
- goto/16 :goto_a1
- .line 1057
- :cond_1c2
- const/4 v12, 0x0
- move v3, v12
- goto/16 :goto_ba
- .line 1065
- .restart local v0 #appendixType:I
- .restart local v3 #is3Gtype:Z
- :cond_1c6
- const/4 v12, 0x1
- if-ne v0, v12, :cond_ff
- .line 1066
- const-string v12, "3G "
- invoke-virtual {v6, v12}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
- move-result v12
- if-nez v12, :cond_ff
- .line 1067
- new-instance v12, Ljava/lang/StringBuilder;
- invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
- const-string v13, "3G "
- invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v12
- invoke-virtual {v12, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
- move-result-object v12
- invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
- move-result-object v6
- goto/16 :goto_ff
- .line 1078
- .end local v0 #appendixType:I
- .end local v3 #is3Gtype:Z
- :cond_1e6
- const/4 v12, 0x0
- move v10, v12
- goto/16 :goto_122
- .line 1080
- .restart local v10 #showSpn:Z
- :cond_1ea
- const/4 v12, 0x0
- move v9, v12
- goto/16 :goto_129
- .line 1120
- .restart local v9 #showPlmn:Z
- :catch_1ee
- move-exception v12
- move-object v1, v12
- .line 1121
- .local v1, e:Ljava/lang/Exception;
- const-string v12, "GSM"
- invoke-virtual {v1}, Ljava/lang/Exception;->toString()Ljava/lang/String;
- move-result-object v13
- invoke-static {v12, v13}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
- goto/16 :goto_16b
- .line 1153
- .end local v1 #e:Ljava/lang/Exception;
- .end local v5 #numeric:Ljava/lang/String;
- .end local v6 #plmn:Ljava/lang/String;
- .end local v7 #rule:I
- .end local v9 #showPlmn:Z
- .end local v10 #showSpn:Z
- .end local v11 #spn:Ljava/lang/String;
- :cond_1fb
- const/4 v12, 0x0
- iput v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- .line 1154
- const/4 v12, 0x0
- iput-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- .line 1155
- const/4 v12, 0x0
- iput-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- .line 1156
- const-string/jumbo v12, "showSpn"
- const/4 v13, 0x0
- invoke-virtual {v2, v12, v13}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1157
- const-string/jumbo v12, "spn"
- iget-object v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- invoke-virtual {v2, v12, v13}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1158
- const-string/jumbo v12, "showPlmn"
- const/4 v13, 0x0
- invoke-virtual {v2, v12, v13}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1159
- const-string/jumbo v12, "plmn"
- iget-object v13, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- invoke-virtual {v2, v12, v13}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1160
- iget-object v12, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v12}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v12
- invoke-virtual {v12, v2}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
- goto/16 :goto_192
- .end method
- .method protected updateSpnDisplay()V
- .registers 11
- .prologue
- const/4 v9, 0x0
- const/4 v8, 0x1
- .line 993
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v6, v6, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- iget-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v7}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
- move-result-object v7
- invoke-virtual {v6, v7}, Lcom/android/internal/telephony/gsm/SIMRecords;->getDisplayRule(Ljava/lang/String;)I
- move-result v2
- .line 994
- .local v2, rule:I
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- iget-object v6, v6, Lcom/android/internal/telephony/gsm/GSMPhone;->mSIMRecords:Lcom/android/internal/telephony/gsm/SIMRecords;
- invoke-virtual {v6}, Lcom/android/internal/telephony/gsm/SIMRecords;->getServiceProviderName()Ljava/lang/String;
- move-result-object v5
- .line 995
- .local v5, spn:Ljava/lang/String;
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
- invoke-virtual {v6}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
- move-result-object v1
- .line 998
- .local v1, plmn:Ljava/lang/String;
- iget-boolean v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- if-eqz v6, :cond_3d
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
- invoke-interface {v6}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
- move-result-object v6
- invoke-virtual {v6}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
- move-result v6
- if-eqz v6, :cond_3d
- .line 999
- invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
- move-result-object v6
- const v7, 0x10402d7
- invoke-virtual {v6, v7}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
- move-result-object v6
- invoke-virtual {v6}, Ljava/lang/Object;->toString()Ljava/lang/String;
- move-result-object v1
- .line 1003
- :cond_3d
- iget v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- if-ne v2, v6, :cond_51
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- invoke-static {v5, v6}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
- move-result v6
- if-eqz v6, :cond_51
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- invoke-static {v1, v6}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
- move-result v6
- if-nez v6, :cond_8d
- .line 1006
- :cond_51
- iget-boolean v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
- if-nez v6, :cond_97
- and-int/lit8 v6, v2, 0x1
- if-ne v6, v8, :cond_97
- move v4, v8
- .line 1008
- .local v4, showSpn:Z
- :goto_5a
- and-int/lit8 v6, v2, 0x2
- const/4 v7, 0x2
- if-ne v6, v7, :cond_99
- move v3, v8
- .line 1011
- .local v3, showPlmn:Z
- :goto_60
- new-instance v0, Landroid/content/Intent;
- const-string v6, "android.provider.Telephony.SPN_STRINGS_UPDATED"
- invoke-direct {v0, v6}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
- .line 1012
- .local v0, intent:Landroid/content/Intent;
- const/high16 v6, 0x2000
- invoke-virtual {v0, v6}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
- .line 1013
- const-string/jumbo v6, "showSpn"
- invoke-virtual {v0, v6, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1014
- const-string/jumbo v6, "spn"
- invoke-virtual {v0, v6, v5}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1015
- const-string/jumbo v6, "showPlmn"
- invoke-virtual {v0, v6, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
- .line 1016
- const-string/jumbo v6, "plmn"
- invoke-virtual {v0, v6, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
- .line 1017
- iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
- invoke-virtual {v6}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
- move-result-object v6
- invoke-virtual {v6, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
- .line 1020
- .end local v0 #intent:Landroid/content/Intent;
- .end local v3 #showPlmn:Z
- .end local v4 #showSpn:Z
- :cond_8d
- iput v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
- .line 1021
- iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
- .line 1022
- iput-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
- .line 1024
- invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateOperatorInfo()V
- .line 1026
- return-void
- :cond_97
- move v4, v9
- .line 1006
- goto :goto_5a
- .restart local v4 #showSpn:Z
- :cond_99
- move v3, v9
- .line 1008
- goto :goto_60
- .end method
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement