Add SlimRom OpenPdroid; Hide folders+rearrange for ApG
[auto-patcher.git] / patches / openpdroid / 4.1 / .provisionals / system / framework / framework.jar.out / smali / com / android / internal / telephony / gsm / GsmServiceStateTracker.smali
blobcd86a2638defb955f4ad87e9a5ed6e50bb4421be
1 .class final Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;
2 .super Lcom/android/internal/telephony/ServiceStateTracker;
3 .source "GsmServiceStateTracker.java"
6 # annotations
7 .annotation system Ldalvik/annotation/MemberClasses;
8     value = {
9         Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$4;
10     }
11 .end annotation
14 # static fields
15 .field static final CS_DISABLED:I = 0x3ec
17 .field static final CS_EMERGENCY_ENABLED:I = 0x3ee
19 .field static final CS_ENABLED:I = 0x3eb
21 .field static final CS_NORMAL_ENABLED:I = 0x3ed
23 .field static final CS_NOTIFICATION:I = 0x3e7
25 .field static final DBG:Z = true
27 .field static final DEFAULT_GPRS_CHECK_PERIOD_MILLIS:I = 0xea60
29 .field static final LOG_TAG:Ljava/lang/String; = "GSM"
31 .field static final PS_DISABLED:I = 0x3ea
33 .field static final PS_ENABLED:I = 0x3e9
35 .field static final PS_NOTIFICATION:I = 0x378
37 .field private static final WAKELOCK_TAG:Ljava/lang/String; = "ServiceStateTracker"
40 # instance fields
41 .field cellLoc:Landroid/telephony/gsm/GsmCellLocation;
43 .field private cr:Landroid/content/ContentResolver;
45 .field private curPlmn:Ljava/lang/String;
47 .field private curSpn:Ljava/lang/String;
49 .field private curSpnRule:I
51 .field private gprsState:I
53 .field private mAutoTimeObserver:Landroid/database/ContentObserver;
55 .field private mAutoTimeZoneObserver:Landroid/database/ContentObserver;
57 .field private mContext:Landroid/content/Context;
59 .field private mDataRoaming:Z
61 .field private mEmergencyOnly:Z
63 .field private mGotCountryCode:Z
65 .field private mGsmRoaming:Z
67 .field private mIntentReceiver:Landroid/content/BroadcastReceiver;
69 .field private mMaxDataCalls:I
71 .field private mNeedFixZoneAfterNitz:Z
73 .field private mNeedToRegForSimLoaded:Z
75 .field private mNewMaxDataCalls:I
77 .field private mNewReasonDataDenied:I
79 .field private mNitzUpdatedTime:Z
81 .field private mNotification:Landroid/app/Notification;
83 .field mPreferredNetworkType:I
85 .field private mReasonDataDenied:I
87 .field private mReportedGprsNoReg:Z
89 .field mSavedAtTime:J
91 .field mSavedTime:J
93 .field mSavedTimeZone:Ljava/lang/String;
95 .field private mStartedGprsRegCheck:Z
97 .field private mWakeLock:Landroid/os/PowerManager$WakeLock;
99 .field private mZoneDst:Z
101 .field private mZoneOffset:I
103 .field private mZoneTime:J
105 .field newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
107 .field private newGPRSState:I
109 .field private pSetMan:Landroid/privacy/PrivacySettingsManager;
111 .field phone:Lcom/android/internal/telephony/gsm/GSMPhone;
114 # direct methods
115 .method public constructor <init>(Lcom/android/internal/telephony/gsm/GSMPhone;)V
116     .registers 10
118     const/4 v5, -0x1
120     const/4 v7, 0x0
122     const/4 v4, 0x1
124     const/4 v3, 0x0
126     invoke-direct {p0}, Lcom/android/internal/telephony/ServiceStateTracker;-><init>()V
128     iput v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
130     iput v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
132     iput v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMaxDataCalls:I
134     iput v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
136     iput v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReasonDataDenied:I
138     iput v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
140     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
142     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
144     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
146     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
148     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
150     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
152     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
154     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
156     iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
158     iput-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
160     iput v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
162     new-instance v5, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$1;
164     invoke-direct {v5, p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$1;-><init>(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;)V
166     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mIntentReceiver:Landroid/content/BroadcastReceiver;
168     new-instance v5, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$2;
170     new-instance v6, Landroid/os/Handler;
172     invoke-direct {v6}, Landroid/os/Handler;-><init>()V
174     invoke-direct {v5, p0, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$2;-><init>(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;Landroid/os/Handler;)V
176     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
178     new-instance v5, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$3;
180     new-instance v6, Landroid/os/Handler;
182     invoke-direct {v6}, Landroid/os/Handler;-><init>()V
184     invoke-direct {v5, p0, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$3;-><init>(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;Landroid/os/Handler;)V
186     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeZoneObserver:Landroid/database/ContentObserver;
188     iput-object p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
190     iget-object v5, p1, Lcom/android/internal/telephony/gsm/GSMPhone;->mCM:Lcom/android/internal/telephony/CommandsInterface;
192     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
194     new-instance v5, Landroid/telephony/ServiceState;
196     invoke-direct {v5}, Landroid/telephony/ServiceState;-><init>()V
198     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
200     new-instance v5, Landroid/telephony/ServiceState;
202     invoke-direct {v5}, Landroid/telephony/ServiceState;-><init>()V
204     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
206     new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
208     invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
210     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
212     new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
214     invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
216     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
218     new-instance v5, Landroid/telephony/SignalStrength;
220     invoke-direct {v5}, Landroid/telephony/SignalStrength;-><init>()V
222     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
224     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
226     move-result-object v5
228     const-string/jumbo v6, "power"
230     invoke-virtual {v5, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
232     move-result-object v2
234     check-cast v2, Landroid/os/PowerManager;
236     const-string v5, "ServiceStateTracker"
238     invoke-virtual {v2, v4, v5}, Landroid/os/PowerManager;->newWakeLock(ILjava/lang/String;)Landroid/os/PowerManager$WakeLock;
240     move-result-object v5
242     iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
244     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
246     const/16 v6, 0xd
248     invoke-interface {v5, p0, v6, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForAvailable(Landroid/os/Handler;ILjava/lang/Object;)V
250     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
252     invoke-interface {v5, p0, v4, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForRadioStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
254     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
256     const/4 v6, 0x2
258     invoke-interface {v5, p0, v6, v7}, Lcom/android/internal/telephony/CommandsInterface;->registerForVoiceNetworkStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
260     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
262     const/16 v6, 0xb
264     invoke-interface {v5, p0, v6, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnNITZTime(Landroid/os/Handler;ILjava/lang/Object;)V
266     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
268     const/16 v6, 0xc
270     invoke-interface {v5, p0, v6, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnSignalStrengthUpdate(Landroid/os/Handler;ILjava/lang/Object;)V
272     iget-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
274     const/16 v6, 0x17
276     invoke-interface {v5, p0, v6, v7}, Lcom/android/internal/telephony/CommandsInterface;->setOnRestrictedStateChanged(Landroid/os/Handler;ILjava/lang/Object;)V
278     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getIccCard()Lcom/android/internal/telephony/IccCard;
280     move-result-object v5
282     const/16 v6, 0x11
284     invoke-virtual {v5, p0, v6, v7}, Lcom/android/internal/telephony/IccCard;->registerForReady(Landroid/os/Handler;ILjava/lang/Object;)V
286     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
288     move-result-object v5
290     invoke-virtual {v5}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
292     move-result-object v5
294     const-string v6, "airplane_mode_on"
296     invoke-static {v5, v6, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
298     move-result v0
300     if-gtz v0, :cond_c7
302     move v3, v4
304     :cond_c7
305     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
307     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
309     move-result-object v3
311     invoke-virtual {v3}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
313     move-result-object v3
315     iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
317     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
319     const-string v5, "auto_time"
321     invoke-static {v5}, Landroid/provider/Settings$System;->getUriFor(Ljava/lang/String;)Landroid/net/Uri;
323     move-result-object v5
325     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
327     invoke-virtual {v3, v5, v4, v6}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V
329     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
331     const-string v5, "auto_time_zone"
333     invoke-static {v5}, Landroid/provider/Settings$System;->getUriFor(Ljava/lang/String;)Landroid/net/Uri;
335     move-result-object v5
337     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeZoneObserver:Landroid/database/ContentObserver;
339     invoke-virtual {v3, v5, v4, v6}, Landroid/content/ContentResolver;->registerContentObserver(Landroid/net/Uri;ZLandroid/database/ContentObserver;)V
341     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
343     iput-boolean v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
345     new-instance v1, Landroid/content/IntentFilter;
347     invoke-direct {v1}, Landroid/content/IntentFilter;-><init>()V
349     const-string v3, "android.intent.action.LOCALE_CHANGED"
351     invoke-virtual {v1, v3}, Landroid/content/IntentFilter;->addAction(Ljava/lang/String;)V
353     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
355     move-result-object v3
357     iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mIntentReceiver:Landroid/content/BroadcastReceiver;
359     invoke-virtual {v3, v4, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
361     invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
363     move-result-object v3
365     iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
367     new-instance v3, Landroid/privacy/PrivacySettingsManager;
369     iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
371     const-string/jumbo v5, "privacy"
373     invoke-static {v5}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
375     move-result-object v5
377     invoke-static {v5}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
379     move-result-object v5
381     invoke-direct {v3, v4, v5}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
383     iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
385     const/4 v3, 0x3
387     invoke-virtual {p1, v3}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyOtaspChanged(I)V
389     return-void
390 .end method
392 .method static synthetic access$000(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;)V
393     .registers 1
395     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->revertToNitzTime()V
397     return-void
398 .end method
400 .method static synthetic access$100(Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;)V
401     .registers 1
403     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->revertToNitzTimeZone()V
405     return-void
406 .end method
408 .method private static displayNameFor(I)Ljava/lang/String;
409     .registers 7
411     const/4 v5, 0x3
413     div-int/lit16 v3, p0, 0x3e8
415     div-int/lit8 p0, v3, 0x3c
417     const/16 v3, 0x9
419     new-array v0, v3, [C
421     const/4 v3, 0x0
423     const/16 v4, 0x47
425     aput-char v4, v0, v3
427     const/4 v3, 0x1
429     const/16 v4, 0x4d
431     aput-char v4, v0, v3
433     const/4 v3, 0x2
435     const/16 v4, 0x54
437     aput-char v4, v0, v3
439     if-gez p0, :cond_4f
441     const/16 v3, 0x2d
443     aput-char v3, v0, v5
445     neg-int p0, p0
447     :goto_1f
448     div-int/lit8 v1, p0, 0x3c
450     rem-int/lit8 v2, p0, 0x3c
452     const/4 v3, 0x4
454     div-int/lit8 v4, v1, 0xa
456     add-int/lit8 v4, v4, 0x30
458     int-to-char v4, v4
460     aput-char v4, v0, v3
462     const/4 v3, 0x5
464     rem-int/lit8 v4, v1, 0xa
466     add-int/lit8 v4, v4, 0x30
468     int-to-char v4, v4
470     aput-char v4, v0, v3
472     const/4 v3, 0x6
474     const/16 v4, 0x3a
476     aput-char v4, v0, v3
478     const/4 v3, 0x7
480     div-int/lit8 v4, v2, 0xa
482     add-int/lit8 v4, v4, 0x30
484     int-to-char v4, v4
486     aput-char v4, v0, v3
488     const/16 v3, 0x8
490     rem-int/lit8 v4, v2, 0xa
492     add-int/lit8 v4, v4, 0x30
494     int-to-char v4, v4
496     aput-char v4, v0, v3
498     new-instance v3, Ljava/lang/String;
500     invoke-direct {v3, v0}, Ljava/lang/String;-><init>([C)V
502     return-object v3
504     :cond_4f
505     const/16 v3, 0x2b
507     aput-char v3, v0, v5
509     goto :goto_1f
510 .end method
512 .method private findTimeZone(IZJ)Ljava/util/TimeZone;
513     .registers 15
515     move v5, p1
517     if-eqz p2, :cond_7
519     const v9, 0x36ee80
521     sub-int/2addr v5, v9
523     :cond_7
524     invoke-static {v5}, Ljava/util/TimeZone;->getAvailableIDs(I)[Ljava/lang/String;
526     move-result-object v8
528     const/4 v2, 0x0
530     new-instance v1, Ljava/util/Date;
532     invoke-direct {v1, p3, p4}, Ljava/util/Date;-><init>(J)V
534     move-object v0, v8
536     array-length v4, v0
538     const/4 v3, 0x0
540     :goto_14
541     if-ge v3, v4, :cond_29
543     aget-object v7, v0, v3
545     invoke-static {v7}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
547     move-result-object v6
549     invoke-virtual {v6, p3, p4}, Ljava/util/TimeZone;->getOffset(J)I
551     move-result v9
553     if-ne v9, p1, :cond_2a
555     invoke-virtual {v6, v1}, Ljava/util/TimeZone;->inDaylightTime(Ljava/util/Date;)Z
557     move-result v9
559     if-ne v9, p2, :cond_2a
561     move-object v2, v6
563     :cond_29
564     return-object v2
566     :cond_2a
567     add-int/lit8 v3, v3, 0x1
569     goto :goto_14
570 .end method
572 .method private getAutoTime()Z
573     .registers 5
575     const/4 v1, 0x1
577     :try_start_1
578     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
580     invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
582     move-result-object v2
584     invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
586     move-result-object v2
588     const-string v3, "auto_time"
590     invoke-static {v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I
591     :try_end_10
592     .catch Landroid/provider/Settings$SettingNotFoundException; {:try_start_1 .. :try_end_10} :catch_16
594     move-result v2
596     if-lez v2, :cond_14
598     :goto_13
599     return v1
601     :cond_14
602     const/4 v1, 0x0
604     goto :goto_13
606     :catch_16
607     move-exception v0
609     goto :goto_13
610 .end method
612 .method private getAutoTimeZone()Z
613     .registers 5
615     const/4 v1, 0x1
617     :try_start_1
618     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
620     invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
622     move-result-object v2
624     invoke-virtual {v2}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
626     move-result-object v2
628     const-string v3, "auto_time_zone"
630     invoke-static {v2, v3}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;)I
631     :try_end_10
632     .catch Landroid/provider/Settings$SettingNotFoundException; {:try_start_1 .. :try_end_10} :catch_16
634     move-result v2
636     if-lez v2, :cond_14
638     :goto_13
639     return v1
641     :cond_14
642     const/4 v1, 0x0
644     goto :goto_13
646     :catch_16
647     move-exception v0
649     goto :goto_13
650 .end method
652 .method private getNitzTimeZone(IZJ)Ljava/util/TimeZone;
653     .registers 8
655     invoke-direct {p0, p1, p2, p3, p4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->findTimeZone(IZJ)Ljava/util/TimeZone;
657     move-result-object v0
659     if-nez v0, :cond_d
661     if-nez p2, :cond_27
663     const/4 v1, 0x1
665     :goto_9
666     invoke-direct {p0, p1, v1, p3, p4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->findTimeZone(IZJ)Ljava/util/TimeZone;
668     move-result-object v0
670     :cond_d
671     new-instance v1, Ljava/lang/StringBuilder;
673     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
675     const-string v2, "getNitzTimeZone returning "
677     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
679     move-result-object v2
681     if-nez v0, :cond_29
683     move-object v1, v0
685     :goto_1b
686     invoke-virtual {v2, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
688     move-result-object v1
690     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
692     move-result-object v1
694     invoke-virtual {p0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
696     return-object v0
698     :cond_27
699     const/4 v1, 0x0
701     goto :goto_9
703     :cond_29
704     invoke-virtual {v0}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
706     move-result-object v1
708     goto :goto_1b
709 .end method
711 .method private isGprsConsistent(II)Z
712     .registers 4
714     if-nez p2, :cond_4
716     if-nez p1, :cond_6
718     :cond_4
719     const/4 v0, 0x1
721     :goto_5
722     return v0
724     :cond_6
725     const/4 v0, 0x0
727     goto :goto_5
728 .end method
730 .method private isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
731     .registers 15
733     const-string v9, "gsm.sim.operator.alpha"
735     const-string v10, "empty"
737     invoke-static {v9, v10}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
739     move-result-object v8
741     invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
743     move-result-object v4
745     invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorAlphaShort()Ljava/lang/String;
747     move-result-object v5
749     if-eqz v4, :cond_61
751     invoke-virtual {v8, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
753     move-result v9
755     if-eqz v9, :cond_61
757     const/4 v1, 0x1
759     :goto_19
760     if-eqz v5, :cond_63
762     invoke-virtual {v8, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
764     move-result v9
766     if-eqz v9, :cond_63
768     const/4 v2, 0x1
770     :goto_22
771     const-string v9, "gsm.sim.operator.numeric"
773     const-string v10, ""
775     invoke-static {v9, v10}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
777     move-result-object v7
779     invoke-virtual {p2}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
781     move-result-object v6
783     const/4 v0, 0x1
785     const/4 v9, 0x0
787     const/4 v10, 0x3
789     :try_start_31
790     invoke-virtual {v7, v9, v10}, Ljava/lang/String;->substring(II)Ljava/lang/String;
792     move-result-object v9
794     const/4 v10, 0x0
796     const/4 v11, 0x3
798     invoke-virtual {v6, v10, v11}, Ljava/lang/String;->substring(II)Ljava/lang/String;
800     move-result-object v10
802     invoke-virtual {v9, v10}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
803     :try_end_3e
804     .catch Ljava/lang/Exception; {:try_start_31 .. :try_end_3e} :catch_69
806     move-result v0
808     :goto_3f
809     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
811     invoke-virtual {v9}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
813     move-result-object v9
815     invoke-virtual {v9}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
817     move-result-object v9
819     const-string/jumbo v10, "mvno_roaming"
821     const/4 v11, 0x0
823     invoke-static {v9, v10, v11}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
825     move-result v9
827     const/4 v10, 0x1
829     if-ne v9, v10, :cond_65
831     const/4 v3, 0x1
833     :goto_55
834     if-eqz p1, :cond_67
836     if-eqz v0, :cond_5f
838     if-nez v1, :cond_67
840     if-nez v2, :cond_67
842     if-nez v3, :cond_67
844     :cond_5f
845     const/4 v9, 0x1
847     :goto_60
848     return v9
850     :cond_61
851     const/4 v1, 0x0
853     goto :goto_19
855     :cond_63
856     const/4 v2, 0x0
858     goto :goto_22
860     :cond_65
861     const/4 v3, 0x0
863     goto :goto_55
865     :cond_67
866     const/4 v9, 0x0
868     goto :goto_60
870     :catch_69
871     move-exception v9
873     goto :goto_3f
874 .end method
876 .method private onRestrictedStateChanged(Landroid/os/AsyncResult;)V
877     .registers 12
879     const/16 v9, 0x3ed
881     const/16 v8, 0x3ec
883     const/16 v7, 0x3eb
885     const/4 v5, 0x1
887     const/4 v4, 0x0
889     new-instance v1, Lcom/android/internal/telephony/RestrictedState;
891     invoke-direct {v1}, Lcom/android/internal/telephony/RestrictedState;-><init>()V
893     new-instance v3, Ljava/lang/StringBuilder;
895     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
897     const-string/jumbo v6, "onRestrictedStateChanged: E rs "
899     invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
901     move-result-object v3
903     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
905     invoke-virtual {v3, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
907     move-result-object v3
909     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
911     move-result-object v3
913     invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
915     iget-object v3, p1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
917     if-nez v3, :cond_a2
919     iget-object v3, p1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
921     check-cast v3, [I
923     move-object v0, v3
925     check-cast v0, [I
927     aget v2, v0, v4
929     and-int/lit8 v3, v2, 0x1
931     if-nez v3, :cond_3b
933     and-int/lit8 v3, v2, 0x4
935     if-eqz v3, :cond_bc
937     :cond_3b
938     move v3, v5
940     :goto_3c
941     invoke-virtual {v1, v3}, Lcom/android/internal/telephony/RestrictedState;->setCsEmergencyRestricted(Z)V
943     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
945     invoke-virtual {v3}, Lcom/android/internal/telephony/gsm/GSMPhone;->getIccCard()Lcom/android/internal/telephony/IccCard;
947     move-result-object v3
949     invoke-virtual {v3}, Lcom/android/internal/telephony/IccCard;->getState()Lcom/android/internal/telephony/IccCard$State;
951     move-result-object v3
953     sget-object v6, Lcom/android/internal/telephony/IccCard$State;->READY:Lcom/android/internal/telephony/IccCard$State;
955     if-ne v3, v6, :cond_60
957     and-int/lit8 v3, v2, 0x2
959     if-nez v3, :cond_55
961     and-int/lit8 v3, v2, 0x4
963     if-eqz v3, :cond_bf
965     :cond_55
966     move v3, v5
968     :goto_56
969     invoke-virtual {v1, v3}, Lcom/android/internal/telephony/RestrictedState;->setCsNormalRestricted(Z)V
971     and-int/lit8 v3, v2, 0x10
973     if-eqz v3, :cond_c1
975     :goto_5d
976     invoke-virtual {v1, v5}, Lcom/android/internal/telephony/RestrictedState;->setPsRestricted(Z)V
978     :cond_60
979     new-instance v3, Ljava/lang/StringBuilder;
981     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
983     const-string/jumbo v4, "onRestrictedStateChanged: new rs "
985     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
987     move-result-object v3
989     invoke-virtual {v3, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
991     move-result-object v3
993     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
995     move-result-object v3
997     invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
999     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1001     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isPsRestricted()Z
1003     move-result v3
1005     if-nez v3, :cond_c3
1007     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isPsRestricted()Z
1009     move-result v3
1011     if-eqz v3, :cond_c3
1013     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPsRestrictEnabledRegistrants:Landroid/os/RegistrantList;
1015     invoke-virtual {v3}, Landroid/os/RegistrantList;->notifyRegistrants()V
1017     const/16 v3, 0x3e9
1019     invoke-direct {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1021     :cond_8f
1022     :goto_8f
1023     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1025     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1027     move-result v3
1029     if-eqz v3, :cond_f2
1031     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1033     move-result v3
1035     if-nez v3, :cond_dc
1037     invoke-direct {p0, v8}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1039     :cond_a0
1040     :goto_a0
1041     iput-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1043     :cond_a2
1044     new-instance v3, Ljava/lang/StringBuilder;
1046     invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
1048     const-string/jumbo v4, "onRestrictedStateChanged: X rs "
1050     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1052     move-result-object v3
1054     iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1056     invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
1058     move-result-object v3
1060     invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1062     move-result-object v3
1064     invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
1066     return-void
1068     :cond_bc
1069     move v3, v4
1071     goto/16 :goto_3c
1073     :cond_bf
1074     move v3, v4
1076     goto :goto_56
1078     :cond_c1
1079     move v5, v4
1081     goto :goto_5d
1083     :cond_c3
1084     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1086     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isPsRestricted()Z
1088     move-result v3
1090     if-eqz v3, :cond_8f
1092     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isPsRestricted()Z
1094     move-result v3
1096     if-nez v3, :cond_8f
1098     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPsRestrictDisabledRegistrants:Landroid/os/RegistrantList;
1100     invoke-virtual {v3}, Landroid/os/RegistrantList;->notifyRegistrants()V
1102     const/16 v3, 0x3ea
1104     invoke-direct {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1106     goto :goto_8f
1108     :cond_dc
1109     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsNormalRestricted()Z
1111     move-result v3
1113     if-nez v3, :cond_e8
1115     const/16 v3, 0x3ee
1117     invoke-direct {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1119     goto :goto_a0
1121     :cond_e8
1122     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsEmergencyRestricted()Z
1124     move-result v3
1126     if-nez v3, :cond_a0
1128     invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1130     goto :goto_a0
1132     :cond_f2
1133     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1135     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isCsEmergencyRestricted()Z
1137     move-result v3
1139     if-eqz v3, :cond_120
1141     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1143     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isCsNormalRestricted()Z
1145     move-result v3
1147     if-nez v3, :cond_120
1149     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1151     move-result v3
1153     if-nez v3, :cond_10c
1155     invoke-direct {p0, v8}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1157     goto :goto_a0
1159     :cond_10c
1160     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1162     move-result v3
1164     if-eqz v3, :cond_116
1166     invoke-direct {p0, v7}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1168     goto :goto_a0
1170     :cond_116
1171     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsNormalRestricted()Z
1173     move-result v3
1175     if-eqz v3, :cond_a0
1177     invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1179     goto :goto_a0
1181     :cond_120
1182     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1184     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isCsEmergencyRestricted()Z
1186     move-result v3
1188     if-nez v3, :cond_153
1190     iget-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRestrictedState:Lcom/android/internal/telephony/RestrictedState;
1192     invoke-virtual {v3}, Lcom/android/internal/telephony/RestrictedState;->isCsNormalRestricted()Z
1194     move-result v3
1196     if-eqz v3, :cond_153
1198     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1200     move-result v3
1202     if-nez v3, :cond_13b
1204     invoke-direct {p0, v8}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1206     goto/16 :goto_a0
1208     :cond_13b
1209     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1211     move-result v3
1213     if-eqz v3, :cond_146
1215     invoke-direct {p0, v7}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1217     goto/16 :goto_a0
1219     :cond_146
1220     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsEmergencyRestricted()Z
1222     move-result v3
1224     if-eqz v3, :cond_a0
1226     const/16 v3, 0x3ee
1228     invoke-direct {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1230     goto/16 :goto_a0
1232     :cond_153
1233     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsRestricted()Z
1235     move-result v3
1237     if-eqz v3, :cond_15e
1239     invoke-direct {p0, v7}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1241     goto/16 :goto_a0
1243     :cond_15e
1244     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsEmergencyRestricted()Z
1246     move-result v3
1248     if-eqz v3, :cond_16b
1250     const/16 v3, 0x3ee
1252     invoke-direct {p0, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1254     goto/16 :goto_a0
1256     :cond_16b
1257     invoke-virtual {v1}, Lcom/android/internal/telephony/RestrictedState;->isCsNormalRestricted()Z
1259     move-result v3
1261     if-eqz v3, :cond_a0
1263     invoke-direct {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setNotification(I)V
1265     goto/16 :goto_a0
1266 .end method
1268 .method private onSignalStrengthResult(Landroid/os/AsyncResult;)V
1269     .registers 20
1271     move-object/from16 v0, p0
1273     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
1275     move-object/from16 v17, v0
1277     const/16 v2, 0x63
1279     const/4 v9, -0x1
1281     const/4 v10, -0x1
1283     const/4 v11, -0x1
1285     const v12, 0x7fffffff
1287     const/4 v13, -0x1
1289     move-object/from16 v0, p1
1291     iget-object v1, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
1293     if-eqz v1, :cond_3c
1295     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
1297     :goto_18
1298     new-instance v1, Landroid/telephony/SignalStrength;
1300     const/4 v3, -0x1
1302     const/4 v4, -0x1
1304     const/4 v5, -0x1
1306     const/4 v6, -0x1
1308     const/4 v7, -0x1
1310     const/4 v8, -0x1
1312     const/4 v14, 0x1
1314     invoke-direct/range {v1 .. v14}, Landroid/telephony/SignalStrength;-><init>(IIIIIIIIIIIIZ)V
1316     move-object/from16 v0, p0
1318     iput-object v1, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
1320     move-object/from16 v0, p0
1322     iget-object v1, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
1324     move-object/from16 v0, v17
1326     invoke-virtual {v1, v0}, Landroid/telephony/SignalStrength;->equals(Ljava/lang/Object;)Z
1328     move-result v1
1330     if-nez v1, :cond_3b
1332     :try_start_34
1333     move-object/from16 v0, p0
1335     iget-object v1, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
1337     invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifySignalStrength()V
1338     :try_end_3b
1339     .catch Ljava/lang/NullPointerException; {:try_start_34 .. :try_end_3b} :catch_6c
1341     :cond_3b
1342     :goto_3b
1343     return-void
1345     :cond_3c
1346     move-object/from16 v0, p1
1348     iget-object v1, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
1350     check-cast v1, [I
1352     move-object/from16 v16, v1
1354     check-cast v16, [I
1356     move-object/from16 v0, v16
1358     array-length v1, v0
1360     if-eqz v1, :cond_62
1362     const/4 v1, 0x0
1364     aget v2, v16, v1
1366     const/4 v1, 0x7
1368     aget v9, v16, v1
1370     const/16 v1, 0x8
1372     aget v10, v16, v1
1374     const/16 v1, 0x9
1376     aget v11, v16, v1
1378     const/16 v1, 0xa
1380     aget v12, v16, v1
1382     const/16 v1, 0xb
1384     aget v13, v16, v1
1386     goto :goto_18
1388     :cond_62
1389     const-string v1, "Bogus signal strength response"
1391     move-object/from16 v0, p0
1393     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
1395     const/16 v2, 0x63
1397     goto :goto_18
1399     :catch_6c
1400     move-exception v15
1402     new-instance v1, Ljava/lang/StringBuilder;
1404     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
1406     const-string/jumbo v3, "onSignalStrengthResult() Phone already destroyed: "
1408     invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1410     move-result-object v1
1412     invoke-virtual {v1, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
1414     move-result-object v1
1416     const-string v3, "SignalStrength not notified"
1418     invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1420     move-result-object v1
1422     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1424     move-result-object v1
1426     move-object/from16 v0, p0
1428     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
1430     goto :goto_3b
1431 .end method
1433 .method private pollState()V
1434     .registers 5
1436     const/4 v3, 0x0
1438     const/4 v0, 0x1
1440     new-array v0, v0, [I
1442     iput-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1444     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1446     aput v3, v0, v3
1448     sget-object v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker$4;->$SwitchMap$com$android$internal$telephony$CommandsInterface$RadioState:[I
1450     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
1452     invoke-interface {v1}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
1454     move-result-object v1
1456     invoke-virtual {v1}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->ordinal()I
1458     move-result v1
1460     aget v0, v0, v1
1462     packed-switch v0, :pswitch_data_98
1464     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1466     aget v1, v0, v3
1468     add-int/lit8 v1, v1, 0x1
1470     aput v1, v0, v3
1472     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
1474     const/4 v1, 0x6
1476     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1478     invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
1480     move-result-object v1
1482     invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getOperator(Landroid/os/Message;)V
1484     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1486     aget v1, v0, v3
1488     add-int/lit8 v1, v1, 0x1
1490     aput v1, v0, v3
1492     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
1494     const/4 v1, 0x5
1496     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1498     invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
1500     move-result-object v1
1502     invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getDataRegistrationState(Landroid/os/Message;)V
1504     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1506     aget v1, v0, v3
1508     add-int/lit8 v1, v1, 0x1
1510     aput v1, v0, v3
1512     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
1514     const/4 v1, 0x4
1516     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1518     invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
1520     move-result-object v1
1522     invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getVoiceRegistrationState(Landroid/os/Message;)V
1524     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1526     aget v1, v0, v3
1528     add-int/lit8 v1, v1, 0x1
1530     aput v1, v0, v3
1532     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
1534     const/16 v1, 0xe
1536     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
1538     invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
1540     move-result-object v1
1542     invoke-interface {v0, v1}, Lcom/android/internal/telephony/CommandsInterface;->getNetworkSelectionMode(Landroid/os/Message;)V
1544     :goto_6c
1545     return-void
1547     :pswitch_6d
1548     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1550     invoke-virtual {v0}, Landroid/telephony/ServiceState;->setStateOutOfService()V
1552     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
1554     invoke-virtual {v0}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
1556     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
1558     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
1560     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
1562     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
1564     goto :goto_6c
1566     :pswitch_82
1567     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1569     invoke-virtual {v0}, Landroid/telephony/ServiceState;->setStateOff()V
1571     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
1573     invoke-virtual {v0}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
1575     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setSignalStrengthDefaultValues()V
1577     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
1579     iput-boolean v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
1581     invoke-direct {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
1583     goto :goto_6c
1585     nop
1587     :pswitch_data_98
1588     .packed-switch 0x1
1589         :pswitch_6d
1590         :pswitch_82
1591     .end packed-switch
1592 .end method
1594 .method private pollStateDone()V
1595     .registers 39
1597     new-instance v34, Ljava/lang/StringBuilder;
1599     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
1601     const-string v35, "Poll ServiceState done:  oldSS=["
1603     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1605     move-result-object v34
1607     move-object/from16 v0, p0
1609     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1611     move-object/from16 v35, v0
1613     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
1615     move-result-object v34
1617     const-string v35, "] newSS=["
1619     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1621     move-result-object v34
1623     move-object/from16 v0, p0
1625     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1627     move-object/from16 v35, v0
1629     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
1631     move-result-object v34
1633     const-string v35, "] oldGprs="
1635     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1637     move-result-object v34
1639     move-object/from16 v0, p0
1641     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
1643     move/from16 v35, v0
1645     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1647     move-result-object v34
1649     const-string v35, " newData="
1651     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1653     move-result-object v34
1655     move-object/from16 v0, p0
1657     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
1659     move/from16 v35, v0
1661     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1663     move-result-object v34
1665     const-string v35, " oldMaxDataCalls="
1667     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1669     move-result-object v34
1671     move-object/from16 v0, p0
1673     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMaxDataCalls:I
1675     move/from16 v35, v0
1677     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1679     move-result-object v34
1681     const-string v35, " mNewMaxDataCalls="
1683     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1685     move-result-object v34
1687     move-object/from16 v0, p0
1689     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
1691     move/from16 v35, v0
1693     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1695     move-result-object v34
1697     const-string v35, " oldReasonDataDenied="
1699     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1701     move-result-object v34
1703     move-object/from16 v0, p0
1705     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReasonDataDenied:I
1707     move/from16 v35, v0
1709     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1711     move-result-object v34
1713     const-string v35, " mNewReasonDataDenied="
1715     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1717     move-result-object v34
1719     move-object/from16 v0, p0
1721     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
1723     move/from16 v35, v0
1725     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
1727     move-result-object v34
1729     const-string v35, " oldType="
1731     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1733     move-result-object v34
1735     move-object/from16 v0, p0
1737     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
1739     move/from16 v35, v0
1741     invoke-static/range {v35 .. v35}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
1743     move-result-object v35
1745     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1747     move-result-object v34
1749     const-string v35, " newType="
1751     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1753     move-result-object v34
1755     move-object/from16 v0, p0
1757     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
1759     move/from16 v35, v0
1761     invoke-static/range {v35 .. v35}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
1763     move-result-object v35
1765     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1767     move-result-object v34
1769     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1771     move-result-object v34
1773     move-object/from16 v0, p0
1775     move-object/from16 v1, v34
1777     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
1779     move-object/from16 v0, p0
1781     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1783     move-object/from16 v34, v0
1785     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getState()I
1787     move-result v34
1789     if-eqz v34, :cond_488
1791     move-object/from16 v0, p0
1793     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1795     move-object/from16 v34, v0
1797     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getState()I
1799     move-result v34
1801     if-nez v34, :cond_488
1803     const/16 v18, 0x1
1805     :goto_d2
1806     move-object/from16 v0, p0
1808     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1810     move-object/from16 v34, v0
1812     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getState()I
1814     move-result v34
1816     if-nez v34, :cond_48c
1818     move-object/from16 v0, p0
1820     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1822     move-object/from16 v34, v0
1824     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getState()I
1826     move-result v34
1828     if-eqz v34, :cond_48c
1830     const/4 v13, 0x1
1832     :goto_eb
1833     move-object/from16 v0, p0
1835     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
1837     move/from16 v34, v0
1839     if-eqz v34, :cond_48f
1841     move-object/from16 v0, p0
1843     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
1845     move/from16 v34, v0
1847     if-nez v34, :cond_48f
1849     const/4 v14, 0x1
1851     :goto_fc
1852     move-object/from16 v0, p0
1854     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
1856     move/from16 v34, v0
1858     if-nez v34, :cond_492
1860     move-object/from16 v0, p0
1862     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
1864     move/from16 v34, v0
1866     if-eqz v34, :cond_492
1868     const/4 v15, 0x1
1870     :goto_10d
1871     move-object/from16 v0, p0
1873     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
1875     move/from16 v34, v0
1877     move-object/from16 v0, p0
1879     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
1881     move/from16 v35, v0
1883     move/from16 v0, v34
1885     move/from16 v1, v35
1887     if-eq v0, v1, :cond_495
1889     const/16 v17, 0x1
1891     :goto_121
1892     move-object/from16 v0, p0
1894     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1896     move-object/from16 v34, v0
1898     move-object/from16 v0, p0
1900     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1902     move-object/from16 v35, v0
1904     invoke-virtual/range {v34 .. v35}, Landroid/telephony/ServiceState;->equals(Ljava/lang/Object;)Z
1906     move-result v34
1908     if-nez v34, :cond_499
1910     const/4 v12, 0x1
1912     :goto_134
1913     move-object/from16 v0, p0
1915     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1917     move-object/from16 v34, v0
1919     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getRoaming()Z
1921     move-result v34
1923     if-nez v34, :cond_49c
1925     move-object/from16 v0, p0
1927     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1929     move-object/from16 v34, v0
1931     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getRoaming()Z
1933     move-result v34
1935     if-eqz v34, :cond_49c
1937     const/16 v20, 0x1
1939     :goto_14e
1940     move-object/from16 v0, p0
1942     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1944     move-object/from16 v34, v0
1946     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getRoaming()Z
1948     move-result v34
1950     if-eqz v34, :cond_4a0
1952     move-object/from16 v0, p0
1954     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
1956     move-object/from16 v34, v0
1958     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getRoaming()Z
1960     move-result v34
1962     if-nez v34, :cond_4a0
1964     const/16 v19, 0x1
1966     :goto_168
1967     move-object/from16 v0, p0
1969     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
1971     move-object/from16 v34, v0
1973     move-object/from16 v0, p0
1975     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
1977     move-object/from16 v35, v0
1979     invoke-virtual/range {v34 .. v35}, Landroid/telephony/gsm/GsmCellLocation;->equals(Ljava/lang/Object;)Z
1981     move-result v34
1983     if-nez v34, :cond_4a4
1985     const/16 v16, 0x1
1987     :goto_17c
1988     move-object/from16 v0, p0
1990     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
1992     move-object/from16 v34, v0
1994     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getState()I
1996     move-result v34
1998     move-object/from16 v0, p0
2000     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2002     move-object/from16 v35, v0
2004     invoke-virtual/range {v35 .. v35}, Landroid/telephony/ServiceState;->getState()I
2006     move-result v35
2008     move/from16 v0, v34
2010     move/from16 v1, v35
2012     if-ne v0, v1, :cond_1a8
2014     move-object/from16 v0, p0
2016     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
2018     move/from16 v34, v0
2020     move-object/from16 v0, p0
2022     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
2024     move/from16 v35, v0
2026     move/from16 v0, v34
2028     move/from16 v1, v35
2030     if-eq v0, v1, :cond_1f6
2032     :cond_1a8
2033     const v34, 0xc3c2
2035     const/16 v35, 0x4
2037     move/from16 v0, v35
2039     new-array v0, v0, [Ljava/lang/Object;
2041     move-object/from16 v35, v0
2043     const/16 v36, 0x0
2045     move-object/from16 v0, p0
2047     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2049     move-object/from16 v37, v0
2051     invoke-virtual/range {v37 .. v37}, Landroid/telephony/ServiceState;->getState()I
2053     move-result v37
2055     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2057     move-result-object v37
2059     aput-object v37, v35, v36
2061     const/16 v36, 0x1
2063     move-object/from16 v0, p0
2065     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
2067     move/from16 v37, v0
2069     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2071     move-result-object v37
2073     aput-object v37, v35, v36
2075     const/16 v36, 0x2
2077     move-object/from16 v0, p0
2079     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2081     move-object/from16 v37, v0
2083     invoke-virtual/range {v37 .. v37}, Landroid/telephony/ServiceState;->getState()I
2085     move-result v37
2087     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2089     move-result-object v37
2091     aput-object v37, v35, v36
2093     const/16 v36, 0x3
2095     move-object/from16 v0, p0
2097     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
2099     move/from16 v37, v0
2101     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2103     move-result-object v37
2105     aput-object v37, v35, v36
2107     invoke-static/range {v34 .. v35}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
2109     :cond_1f6
2110     move-object/from16 v0, p0
2112     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2114     move-object/from16 v28, v0
2116     move-object/from16 v0, p0
2118     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2120     move-object/from16 v34, v0
2122     move-object/from16 v0, v34
2124     move-object/from16 v1, p0
2126     iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2128     move-object/from16 v0, v28
2130     move-object/from16 v1, p0
2132     iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2134     move-object/from16 v0, p0
2136     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2138     move-object/from16 v34, v0
2140     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->setStateOutOfService()V
2142     move-object/from16 v0, p0
2144     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
2146     move-object/from16 v26, v0
2148     move-object/from16 v0, p0
2150     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
2152     move-object/from16 v34, v0
2154     move-object/from16 v0, v34
2156     move-object/from16 v1, p0
2158     iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
2160     move-object/from16 v0, v26
2162     move-object/from16 v1, p0
2164     iput-object v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
2166     if-eqz v17, :cond_2ba
2168     const/4 v8, -0x1
2170     move-object/from16 v0, p0
2172     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2174     move-object/from16 v34, v0
2176     invoke-virtual/range {v34 .. v34}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
2178     move-result-object v22
2180     check-cast v22, Landroid/telephony/gsm/GsmCellLocation;
2182     if-eqz v22, :cond_244
2184     invoke-virtual/range {v22 .. v22}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
2186     move-result v8
2188     :cond_244
2189     const v34, 0xc3c0
2191     const/16 v35, 0x3
2193     move/from16 v0, v35
2195     new-array v0, v0, [Ljava/lang/Object;
2197     move-object/from16 v35, v0
2199     const/16 v36, 0x0
2201     invoke-static {v8}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2203     move-result-object v37
2205     aput-object v37, v35, v36
2207     const/16 v36, 0x1
2209     move-object/from16 v0, p0
2211     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
2213     move/from16 v37, v0
2215     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2217     move-result-object v37
2219     aput-object v37, v35, v36
2221     const/16 v36, 0x2
2223     move-object/from16 v0, p0
2225     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
2227     move/from16 v37, v0
2229     invoke-static/range {v37 .. v37}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
2231     move-result-object v37
2233     aput-object v37, v35, v36
2235     invoke-static/range {v34 .. v35}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
2237     new-instance v34, Ljava/lang/StringBuilder;
2239     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
2241     const-string v35, "RAT switched "
2243     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2245     move-result-object v34
2247     move-object/from16 v0, p0
2249     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
2251     move/from16 v35, v0
2253     invoke-static/range {v35 .. v35}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
2255     move-result-object v35
2257     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2259     move-result-object v34
2261     const-string v35, " -> "
2263     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2265     move-result-object v34
2267     move-object/from16 v0, p0
2269     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
2271     move/from16 v35, v0
2273     invoke-static/range {v35 .. v35}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
2275     move-result-object v35
2277     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2279     move-result-object v34
2281     const-string v35, " at cell "
2283     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2285     move-result-object v34
2287     move-object/from16 v0, v34
2289     invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
2291     move-result-object v34
2293     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2295     move-result-object v34
2297     move-object/from16 v0, p0
2299     move-object/from16 v1, v34
2301     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
2303     :cond_2ba
2304     move-object/from16 v0, p0
2306     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
2308     move/from16 v34, v0
2310     move/from16 v0, v34
2312     move-object/from16 v1, p0
2314     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
2316     move-object/from16 v0, p0
2318     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
2320     move/from16 v34, v0
2322     move/from16 v0, v34
2324     move-object/from16 v1, p0
2326     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReasonDataDenied:I
2328     move-object/from16 v0, p0
2330     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
2332     move/from16 v34, v0
2334     move/from16 v0, v34
2336     move-object/from16 v1, p0
2338     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMaxDataCalls:I
2340     move-object/from16 v0, p0
2342     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
2344     move/from16 v34, v0
2346     move/from16 v0, v34
2348     move-object/from16 v1, p0
2350     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
2352     const/16 v34, 0x0
2354     move/from16 v0, v34
2356     move-object/from16 v1, p0
2358     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
2360     move-object/from16 v0, p0
2362     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
2364     move-object/from16 v34, v0
2366     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->setStateOutOfService()V
2368     if-eqz v17, :cond_312
2370     move-object/from16 v0, p0
2372     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2374     move-object/from16 v34, v0
2376     const-string v35, "gsm.network.type"
2378     move-object/from16 v0, p0
2380     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
2382     move/from16 v36, v0
2384     invoke-static/range {v36 .. v36}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
2386     move-result-object v36
2388     invoke-virtual/range {v34 .. v36}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2390     :cond_312
2391     if-eqz v18, :cond_34c
2393     move-object/from16 v0, p0
2395     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNetworkAttachedRegistrants:Landroid/os/RegistrantList;
2397     move-object/from16 v34, v0
2399     invoke-virtual/range {v34 .. v34}, Landroid/os/RegistrantList;->notifyRegistrants()V
2401     new-instance v34, Ljava/lang/StringBuilder;
2403     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
2405     const-string/jumbo v35, "pollStateDone: registering current mNitzUpdatedTime="
2407     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2409     move-result-object v34
2411     move-object/from16 v0, p0
2413     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
2415     move/from16 v35, v0
2417     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
2419     move-result-object v34
2421     const-string v35, " changing to false"
2423     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2425     move-result-object v34
2427     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2429     move-result-object v34
2431     move-object/from16 v0, p0
2433     move-object/from16 v1, v34
2435     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
2437     const/16 v34, 0x0
2439     move/from16 v0, v34
2441     move-object/from16 v1, p0
2443     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
2445     :cond_34c
2446     if-eqz v12, :cond_3e1
2448     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateSpnDisplay()V
2450     move-object/from16 v0, p0
2452     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2454     move-object/from16 v34, v0
2456     const-string v35, "gsm.operator.alpha"
2458     move-object/from16 v0, p0
2460     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2462     move-object/from16 v36, v0
2464     invoke-virtual/range {v36 .. v36}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
2466     move-result-object v36
2468     invoke-virtual/range {v34 .. v36}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2470     const-string v34, "gsm.operator.numeric"
2472     const-string v35, ""
2474     invoke-static/range {v34 .. v35}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
2476     move-result-object v25
2478     move-object/from16 v0, p0
2480     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2482     move-object/from16 v34, v0
2484     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
2486     move-result-object v24
2488     move-object/from16 v0, p0
2490     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2492     move-object/from16 v34, v0
2494     const-string v35, "gsm.operator.numeric"
2496     move-object/from16 v0, v34
2498     move-object/from16 v1, v35
2500     move-object/from16 v2, v24
2502     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2504     if-nez v24, :cond_4a8
2506     const-string/jumbo v34, "operatorNumeric is null"
2508     move-object/from16 v0, p0
2510     move-object/from16 v1, v34
2512     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
2514     move-object/from16 v0, p0
2516     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2518     move-object/from16 v34, v0
2520     const-string v35, "gsm.operator.iso-country"
2522     const-string v36, ""
2524     invoke-virtual/range {v34 .. v36}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2526     const/16 v34, 0x0
2528     move/from16 v0, v34
2530     move-object/from16 v1, p0
2532     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
2534     const/16 v34, 0x0
2536     move/from16 v0, v34
2538     move-object/from16 v1, p0
2540     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
2542     :cond_3b2
2543     :goto_3b2
2544     move-object/from16 v0, p0
2546     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2548     move-object/from16 v35, v0
2550     const-string v36, "gsm.operator.isroaming"
2552     move-object/from16 v0, p0
2554     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2556     move-object/from16 v34, v0
2558     invoke-virtual/range {v34 .. v34}, Landroid/telephony/ServiceState;->getRoaming()Z
2560     move-result v34
2562     if-eqz v34, :cond_7ec
2564     const-string/jumbo v34, "true"
2566     :goto_3c9
2567     move-object/from16 v0, v35
2569     move-object/from16 v1, v36
2571     move-object/from16 v2, v34
2573     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2575     move-object/from16 v0, p0
2577     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2579     move-object/from16 v34, v0
2581     move-object/from16 v0, p0
2583     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2585     move-object/from16 v35, v0
2587     invoke-virtual/range {v34 .. v35}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyServiceStateChanged(Landroid/telephony/ServiceState;)V
2589     :cond_3e1
2590     if-eqz v14, :cond_3ec
2592     move-object/from16 v0, p0
2594     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAttachedRegistrants:Landroid/os/RegistrantList;
2596     move-object/from16 v34, v0
2598     invoke-virtual/range {v34 .. v34}, Landroid/os/RegistrantList;->notifyRegistrants()V
2600     :cond_3ec
2601     if-eqz v15, :cond_3f7
2603     move-object/from16 v0, p0
2605     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDetachedRegistrants:Landroid/os/RegistrantList;
2607     move-object/from16 v34, v0
2609     invoke-virtual/range {v34 .. v34}, Landroid/os/RegistrantList;->notifyRegistrants()V
2611     :cond_3f7
2612     if-eqz v17, :cond_405
2614     move-object/from16 v0, p0
2616     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2618     move-object/from16 v34, v0
2620     const-string/jumbo v35, "nwTypeChanged"
2622     invoke-virtual/range {v34 .. v35}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyDataConnection(Ljava/lang/String;)V
2624     :cond_405
2625     if-eqz v20, :cond_410
2627     move-object/from16 v0, p0
2629     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRoamingOnRegistrants:Landroid/os/RegistrantList;
2631     move-object/from16 v34, v0
2633     invoke-virtual/range {v34 .. v34}, Landroid/os/RegistrantList;->notifyRegistrants()V
2635     :cond_410
2636     if-eqz v19, :cond_41b
2638     move-object/from16 v0, p0
2640     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRoamingOffRegistrants:Landroid/os/RegistrantList;
2642     move-object/from16 v34, v0
2644     invoke-virtual/range {v34 .. v34}, Landroid/os/RegistrantList;->notifyRegistrants()V
2646     :cond_41b
2647     if-eqz v16, :cond_426
2649     move-object/from16 v0, p0
2651     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2653     move-object/from16 v34, v0
2655     invoke-virtual/range {v34 .. v34}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
2657     :cond_426
2658     move-object/from16 v0, p0
2660     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
2662     move/from16 v34, v0
2664     move-object/from16 v0, p0
2666     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
2668     move-object/from16 v35, v0
2670     invoke-virtual/range {v35 .. v35}, Landroid/telephony/ServiceState;->getState()I
2672     move-result v35
2674     move-object/from16 v0, p0
2676     move/from16 v1, v34
2678     move/from16 v2, v35
2680     invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
2682     move-result v34
2684     if-nez v34, :cond_7f0
2686     move-object/from16 v0, p0
2688     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
2690     move/from16 v34, v0
2692     if-nez v34, :cond_487
2694     move-object/from16 v0, p0
2696     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
2698     move/from16 v34, v0
2700     if-nez v34, :cond_487
2702     const/16 v34, 0x1
2704     move/from16 v0, v34
2706     move-object/from16 v1, p0
2708     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
2710     move-object/from16 v0, p0
2712     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2714     move-object/from16 v34, v0
2716     invoke-virtual/range {v34 .. v34}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
2718     move-result-object v34
2720     invoke-virtual/range {v34 .. v34}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
2722     move-result-object v34
2724     const-string v35, "gprs_register_check_period_ms"
2726     const v36, 0xea60
2728     invoke-static/range {v34 .. v36}, Landroid/provider/Settings$Secure;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
2730     move-result v7
2732     const/16 v34, 0x16
2734     move-object/from16 v0, p0
2736     move/from16 v1, v34
2738     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
2740     move-result-object v34
2742     int-to-long v0, v7
2744     move-wide/from16 v35, v0
2746     move-object/from16 v0, p0
2748     move-object/from16 v1, v34
2750     move-wide/from16 v2, v35
2752     invoke-virtual {v0, v1, v2, v3}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->sendMessageDelayed(Landroid/os/Message;J)Z
2754     :cond_487
2755     :goto_487
2756     return-void
2758     :cond_488
2759     const/16 v18, 0x0
2761     goto/16 :goto_d2
2763     :cond_48c
2764     const/4 v13, 0x0
2766     goto/16 :goto_eb
2768     :cond_48f
2769     const/4 v14, 0x0
2771     goto/16 :goto_fc
2773     :cond_492
2774     const/4 v15, 0x0
2776     goto/16 :goto_10d
2778     :cond_495
2779     const/16 v17, 0x0
2781     goto/16 :goto_121
2783     :cond_499
2784     const/4 v12, 0x0
2786     goto/16 :goto_134
2788     :cond_49c
2789     const/16 v20, 0x0
2791     goto/16 :goto_14e
2793     :cond_4a0
2794     const/16 v19, 0x0
2796     goto/16 :goto_168
2798     :cond_4a4
2799     const/16 v16, 0x0
2801     goto/16 :goto_17c
2803     :cond_4a8
2804     const-string v23, "000"
2806     const-string v21, ""
2808     const/16 v34, 0x0
2810     const/16 v35, 0x3
2812     :try_start_4b0
2813     move-object/from16 v0, v24
2815     move/from16 v1, v34
2817     move/from16 v2, v35
2819     invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
2821     move-result-object v23
2823     invoke-static/range {v23 .. v23}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
2825     move-result v34
2827     invoke-static/range {v34 .. v34}, Lcom/android/internal/telephony/MccTable;->countryCodeForMcc(I)Ljava/lang/String;
2828     :try_end_4c1
2829     .catch Ljava/lang/NumberFormatException; {:try_start_4b0 .. :try_end_4c1} :catch_6e9
2830     .catch Ljava/lang/StringIndexOutOfBoundsException; {:try_start_4b0 .. :try_end_4c1} :catch_709
2832     move-result-object v21
2834     :goto_4c2
2835     move-object/from16 v0, p0
2837     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
2839     move-object/from16 v34, v0
2841     const-string v35, "gsm.operator.iso-country"
2843     move-object/from16 v0, v34
2845     move-object/from16 v1, v35
2847     move-object/from16 v2, v21
2849     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
2851     const/16 v34, 0x1
2853     move/from16 v0, v34
2855     move-object/from16 v1, p0
2857     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
2859     const/16 v32, 0x0
2861     move-object/from16 v0, p0
2863     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
2865     move/from16 v34, v0
2867     if-nez v34, :cond_57c
2869     const-string v34, "000"
2871     move-object/from16 v0, v23
2873     move-object/from16 v1, v34
2875     invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
2877     move-result v34
2879     if-nez v34, :cond_57c
2881     invoke-static/range {v21 .. v21}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
2883     move-result v34
2885     if-nez v34, :cond_57c
2887     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTimeZone()Z
2889     move-result v34
2891     if-eqz v34, :cond_57c
2893     const-string/jumbo v34, "telephony.test.ignore.nitz"
2895     const/16 v35, 0x0
2897     invoke-static/range {v34 .. v35}, Landroid/os/SystemProperties;->getBoolean(Ljava/lang/String;Z)Z
2899     move-result v34
2901     if-eqz v34, :cond_729
2903     invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2905     move-result-wide v34
2907     const-wide/16 v36, 0x1
2909     and-long v34, v34, v36
2911     const-wide/16 v36, 0x0
2913     cmp-long v34, v34, v36
2915     if-nez v34, :cond_729
2917     const/16 v27, 0x1
2919     :goto_518
2920     invoke-static/range {v21 .. v21}, Landroid/util/TimeUtils;->getTimeZonesWithUniqueOffsets(Ljava/lang/String;)Ljava/util/ArrayList;
2922     move-result-object v31
2924     invoke-virtual/range {v31 .. v31}, Ljava/util/ArrayList;->size()I
2926     move-result v34
2928     const/16 v35, 0x1
2930     move/from16 v0, v34
2932     move/from16 v1, v35
2934     if-eq v0, v1, :cond_52a
2936     if-eqz v27, :cond_72d
2938     :cond_52a
2939     const/16 v34, 0x0
2941     move-object/from16 v0, v31
2943     move/from16 v1, v34
2945     invoke-virtual {v0, v1}, Ljava/util/ArrayList;->get(I)Ljava/lang/Object;
2947     move-result-object v32
2949     check-cast v32, Ljava/util/TimeZone;
2951     new-instance v34, Ljava/lang/StringBuilder;
2953     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
2955     const-string/jumbo v35, "pollStateDone: no nitz but one TZ for iso-cc="
2957     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2959     move-result-object v34
2961     move-object/from16 v0, v34
2963     move-object/from16 v1, v21
2965     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2967     move-result-object v34
2969     const-string v35, " with zone.getID="
2971     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2973     move-result-object v34
2975     invoke-virtual/range {v32 .. v32}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
2977     move-result-object v35
2979     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2981     move-result-object v34
2983     const-string v35, " testOneUniqueOffsetPath="
2985     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2987     move-result-object v34
2989     move-object/from16 v0, v34
2991     move/from16 v1, v27
2993     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
2995     move-result-object v34
2997     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2999     move-result-object v34
3001     move-object/from16 v0, p0
3003     move-object/from16 v1, v34
3005     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3007     invoke-virtual/range {v32 .. v32}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
3009     move-result-object v34
3011     move-object/from16 v0, p0
3013     move-object/from16 v1, v34
3015     invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
3017     :cond_57c
3018     :goto_57c
3019     move-object/from16 v0, p0
3021     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
3023     move-object/from16 v34, v0
3025     move-object/from16 v0, p0
3027     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
3029     move/from16 v35, v0
3031     move-object/from16 v0, p0
3033     move-object/from16 v1, v34
3035     move-object/from16 v2, v24
3037     move-object/from16 v3, v25
3039     move/from16 v4, v35
3041     invoke-virtual {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->shouldFixTimeZoneNow(Lcom/android/internal/telephony/PhoneBase;Ljava/lang/String;Ljava/lang/String;Z)Z
3043     move-result v34
3045     if-eqz v34, :cond_3b2
3047     const-string/jumbo v34, "persist.sys.timezone"
3049     invoke-static/range {v34 .. v34}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
3051     move-result-object v33
3053     new-instance v34, Ljava/lang/StringBuilder;
3055     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3057     const-string/jumbo v35, "pollStateDone: fix time zone zoneName=\'"
3059     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3061     move-result-object v34
3063     move-object/from16 v0, v34
3065     move-object/from16 v1, v33
3067     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3069     move-result-object v34
3071     const-string v35, "\' mZoneOffset="
3073     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3075     move-result-object v34
3077     move-object/from16 v0, p0
3079     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
3081     move/from16 v35, v0
3083     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3085     move-result-object v34
3087     const-string v35, " mZoneDst="
3089     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3091     move-result-object v34
3093     move-object/from16 v0, p0
3095     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
3097     move/from16 v35, v0
3099     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
3101     move-result-object v34
3103     const-string v35, " iso-cc=\'"
3105     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3107     move-result-object v34
3109     move-object/from16 v0, v34
3111     move-object/from16 v1, v21
3113     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3115     move-result-object v34
3117     const-string v35, "\' iso-cc-idx="
3119     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3121     move-result-object v34
3123     sget-object v35, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->GMT_COUNTRY_CODES:[Ljava/lang/String;
3125     move-object/from16 v0, v35
3127     move-object/from16 v1, v21
3129     invoke-static {v0, v1}, Ljava/util/Arrays;->binarySearch([Ljava/lang/Object;Ljava/lang/Object;)I
3131     move-result v35
3133     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3135     move-result-object v34
3137     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3139     move-result-object v34
3141     move-object/from16 v0, p0
3143     move-object/from16 v1, v34
3145     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3147     move-object/from16 v0, p0
3149     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
3151     move/from16 v34, v0
3153     if-nez v34, :cond_780
3155     move-object/from16 v0, p0
3157     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
3159     move/from16 v34, v0
3161     if-nez v34, :cond_780
3163     if-eqz v33, :cond_780
3165     invoke-virtual/range {v33 .. v33}, Ljava/lang/String;->length()I
3167     move-result v34
3169     if-lez v34, :cond_780
3171     sget-object v34, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->GMT_COUNTRY_CODES:[Ljava/lang/String;
3173     move-object/from16 v0, v34
3175     move-object/from16 v1, v21
3177     invoke-static {v0, v1}, Ljava/util/Arrays;->binarySearch([Ljava/lang/Object;Ljava/lang/Object;)I
3179     move-result v34
3181     if-gez v34, :cond_780
3183     invoke-static {}, Ljava/util/TimeZone;->getDefault()Ljava/util/TimeZone;
3185     move-result-object v32
3187     move-object/from16 v0, p0
3189     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
3191     move/from16 v34, v0
3193     if-eqz v34, :cond_698
3195     invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
3197     move-result-wide v9
3199     move-object/from16 v0, v32
3201     invoke-virtual {v0, v9, v10}, Ljava/util/TimeZone;->getOffset(J)I
3203     move-result v34
3205     move/from16 v0, v34
3207     int-to-long v0, v0
3209     move-wide/from16 v29, v0
3211     new-instance v34, Ljava/lang/StringBuilder;
3213     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3215     const-string/jumbo v35, "pollStateDone: tzOffset="
3217     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3219     move-result-object v34
3221     move-object/from16 v0, v34
3223     move-wide/from16 v1, v29
3225     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
3227     move-result-object v34
3229     const-string v35, " ltod="
3231     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3233     move-result-object v34
3235     invoke-static {v9, v10}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
3237     move-result-object v35
3239     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3241     move-result-object v34
3243     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3245     move-result-object v34
3247     move-object/from16 v0, p0
3249     move-object/from16 v1, v34
3251     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3253     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
3255     move-result v34
3257     if-eqz v34, :cond_770
3259     sub-long v5, v9, v29
3261     new-instance v34, Ljava/lang/StringBuilder;
3263     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3265     const-string/jumbo v35, "pollStateDone: adj ltod="
3267     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3269     move-result-object v34
3271     invoke-static {v5, v6}, Landroid/util/TimeUtils;->logTimeOfDay(J)Ljava/lang/String;
3273     move-result-object v35
3275     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3277     move-result-object v34
3279     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3281     move-result-object v34
3283     move-object/from16 v0, p0
3285     move-object/from16 v1, v34
3287     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3289     move-object/from16 v0, p0
3291     invoke-direct {v0, v5, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
3293     :cond_698
3294     :goto_698
3295     const-string/jumbo v34, "pollStateDone: using default TimeZone"
3297     move-object/from16 v0, p0
3299     move-object/from16 v1, v34
3301     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3303     :goto_6a2
3304     const/16 v34, 0x0
3306     move/from16 v0, v34
3308     move-object/from16 v1, p0
3310     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
3312     if-eqz v32, :cond_7e0
3314     new-instance v34, Ljava/lang/StringBuilder;
3316     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3318     const-string/jumbo v35, "pollStateDone: zone != null zone.getID="
3320     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3322     move-result-object v34
3324     invoke-virtual/range {v32 .. v32}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
3326     move-result-object v35
3328     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3330     move-result-object v34
3332     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3334     move-result-object v34
3336     move-object/from16 v0, p0
3338     move-object/from16 v1, v34
3340     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3342     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTimeZone()Z
3344     move-result v34
3346     if-eqz v34, :cond_6dc
3348     invoke-virtual/range {v32 .. v32}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
3350     move-result-object v34
3352     move-object/from16 v0, p0
3354     move-object/from16 v1, v34
3356     invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
3358     :cond_6dc
3359     invoke-virtual/range {v32 .. v32}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
3361     move-result-object v34
3363     move-object/from16 v0, p0
3365     move-object/from16 v1, v34
3367     invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTimeZone(Ljava/lang/String;)V
3369     goto/16 :goto_3b2
3371     :catch_6e9
3372     move-exception v11
3374     new-instance v34, Ljava/lang/StringBuilder;
3376     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3378     const-string/jumbo v35, "pollStateDone: countryCodeForMcc error"
3380     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3382     move-result-object v34
3384     move-object/from16 v0, v34
3386     invoke-virtual {v0, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3388     move-result-object v34
3390     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3392     move-result-object v34
3394     move-object/from16 v0, p0
3396     move-object/from16 v1, v34
3398     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
3400     goto/16 :goto_4c2
3402     :catch_709
3403     move-exception v11
3405     new-instance v34, Ljava/lang/StringBuilder;
3407     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3409     const-string/jumbo v35, "pollStateDone: countryCodeForMcc error"
3411     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3413     move-result-object v34
3415     move-object/from16 v0, v34
3417     invoke-virtual {v0, v11}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
3419     move-result-object v34
3421     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3423     move-result-object v34
3425     move-object/from16 v0, p0
3427     move-object/from16 v1, v34
3429     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
3431     goto/16 :goto_4c2
3433     :cond_729
3434     const/16 v27, 0x0
3436     goto/16 :goto_518
3438     :cond_72d
3439     new-instance v34, Ljava/lang/StringBuilder;
3441     invoke-direct/range {v34 .. v34}, Ljava/lang/StringBuilder;-><init>()V
3443     const-string/jumbo v35, "pollStateDone: there are "
3445     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3447     move-result-object v34
3449     invoke-virtual/range {v31 .. v31}, Ljava/util/ArrayList;->size()I
3451     move-result v35
3453     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3455     move-result-object v34
3457     const-string v35, " unique offsets for iso-cc=\'"
3459     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3461     move-result-object v34
3463     move-object/from16 v0, v34
3465     move-object/from16 v1, v21
3467     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3469     move-result-object v34
3471     const-string v35, " testOneUniqueOffsetPath="
3473     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3475     move-result-object v34
3477     move-object/from16 v0, v34
3479     move/from16 v1, v27
3481     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
3483     move-result-object v34
3485     const-string v35, "\', do nothing"
3487     invoke-virtual/range {v34 .. v35}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3489     move-result-object v34
3491     invoke-virtual/range {v34 .. v34}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3493     move-result-object v34
3495     move-object/from16 v0, p0
3497     move-object/from16 v1, v34
3499     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3501     goto/16 :goto_57c
3503     :cond_770
3504     move-object/from16 v0, p0
3506     iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3508     move-wide/from16 v34, v0
3510     sub-long v34, v34, v29
3512     move-wide/from16 v0, v34
3514     move-object/from16 v2, p0
3516     iput-wide v0, v2, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3518     goto/16 :goto_698
3520     :cond_780
3521     const-string v34, ""
3523     move-object/from16 v0, v21
3525     move-object/from16 v1, v34
3527     invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
3529     move-result v34
3531     if-eqz v34, :cond_7b6
3533     move-object/from16 v0, p0
3535     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
3537     move/from16 v34, v0
3539     move-object/from16 v0, p0
3541     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
3543     move/from16 v35, v0
3545     move-object/from16 v0, p0
3547     iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
3549     move-wide/from16 v36, v0
3551     move-object/from16 v0, p0
3553     move/from16 v1, v34
3555     move/from16 v2, v35
3557     move-wide/from16 v3, v36
3559     invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getNitzTimeZone(IZJ)Ljava/util/TimeZone;
3561     move-result-object v32
3563     const-string/jumbo v34, "pollStateDone: using NITZ TimeZone"
3565     move-object/from16 v0, p0
3567     move-object/from16 v1, v34
3569     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3571     goto/16 :goto_6a2
3573     :cond_7b6
3574     move-object/from16 v0, p0
3576     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
3578     move/from16 v34, v0
3580     move-object/from16 v0, p0
3582     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
3584     move/from16 v35, v0
3586     move-object/from16 v0, p0
3588     iget-wide v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
3590     move-wide/from16 v36, v0
3592     move/from16 v0, v34
3594     move/from16 v1, v35
3596     move-wide/from16 v2, v36
3598     move-object/from16 v4, v21
3600     invoke-static {v0, v1, v2, v3, v4}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
3602     move-result-object v32
3604     const-string/jumbo v34, "pollStateDone: using getTimeZone(off, dst, time, iso)"
3606     move-object/from16 v0, p0
3608     move-object/from16 v1, v34
3610     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3612     goto/16 :goto_6a2
3614     :cond_7e0
3615     const-string/jumbo v34, "pollStateDone: zone == null"
3617     move-object/from16 v0, p0
3619     move-object/from16 v1, v34
3621     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3623     goto/16 :goto_3b2
3625     :cond_7ec
3626     const-string v34, "false"
3628     goto/16 :goto_3c9
3630     :cond_7f0
3631     const/16 v34, 0x0
3633     move/from16 v0, v34
3635     move-object/from16 v1, p0
3637     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
3639     goto/16 :goto_487
3640 .end method
3642 .method private queueNextSignalStrengthPoll()V
3643     .registers 4
3645     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
3647     if-eqz v1, :cond_5
3649     :goto_4
3650     return-void
3652     :cond_5
3653     invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage()Landroid/os/Message;
3655     move-result-object v0
3657     const/16 v1, 0xa
3659     iput v1, v0, Landroid/os/Message;->what:I
3661     const-wide/16 v1, 0x4e20
3663     invoke-virtual {p0, v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->sendMessageDelayed(Landroid/os/Message;J)Z
3665     goto :goto_4
3666 .end method
3668 .method private regCodeIsRoaming(I)Z
3669     .registers 3
3671     const/4 v0, 0x5
3673     if-ne v0, p1, :cond_5
3675     const/4 v0, 0x1
3677     :goto_4
3678     return v0
3680     :cond_5
3681     const/4 v0, 0x0
3683     goto :goto_4
3684 .end method
3686 .method private regCodeToServiceState(I)I
3687     .registers 5
3689     const/4 v0, 0x1
3691     const/4 v1, 0x0
3693     packed-switch p1, :pswitch_data_22
3695     :pswitch_5
3696     new-instance v1, Ljava/lang/StringBuilder;
3698     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
3700     const-string/jumbo v2, "regCodeToServiceState: unexpected service state "
3702     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3704     move-result-object v1
3706     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3708     move-result-object v1
3710     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3712     move-result-object v1
3714     invoke-virtual {p0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
3716     :goto_1c
3717     :pswitch_1c
3718     return v0
3720     :pswitch_1d
3721     move v0, v1
3723     goto :goto_1c
3725     :pswitch_1f
3726     move v0, v1
3728     goto :goto_1c
3730     nop
3732     :pswitch_data_22
3733     .packed-switch 0x0
3734         :pswitch_1c
3735         :pswitch_1d
3736         :pswitch_1c
3737         :pswitch_1c
3738         :pswitch_1c
3739         :pswitch_1f
3740         :pswitch_5
3741         :pswitch_5
3742         :pswitch_5
3743         :pswitch_5
3744         :pswitch_1c
3745         :pswitch_5
3746         :pswitch_1c
3747         :pswitch_1c
3748         :pswitch_1c
3749     .end packed-switch
3750 .end method
3752 .method private revertToNitzTime()V
3753     .registers 7
3755     const-wide/16 v3, 0x0
3757     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
3759     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
3761     move-result-object v0
3763     invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
3765     move-result-object v0
3767     const-string v1, "auto_time"
3769     const/4 v2, 0x0
3771     invoke-static {v0, v1, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
3773     move-result v0
3775     if-nez v0, :cond_16
3777     :cond_15
3778     :goto_15
3779     return-void
3781     :cond_16
3782     new-instance v0, Ljava/lang/StringBuilder;
3784     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
3786     const-string v1, "Reverting to NITZ Time: mSavedTime="
3788     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3790     move-result-object v0
3792     iget-wide v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3794     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
3796     move-result-object v0
3798     const-string v1, " mSavedAtTime="
3800     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3802     move-result-object v0
3804     iget-wide v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
3806     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
3808     move-result-object v0
3810     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3812     move-result-object v0
3814     invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3816     iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3818     cmp-long v0, v0, v3
3820     if-eqz v0, :cond_15
3822     iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
3824     cmp-long v0, v0, v3
3826     if-eqz v0, :cond_15
3828     iget-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3830     invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
3832     move-result-wide v2
3834     iget-wide v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
3836     sub-long/2addr v2, v4
3838     add-long/2addr v0, v2
3840     invoke-direct {p0, v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
3842     goto :goto_15
3843 .end method
3845 .method private revertToNitzTimeZone()V
3846     .registers 4
3848     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
3850     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
3852     move-result-object v0
3854     invoke-virtual {v0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
3856     move-result-object v0
3858     const-string v1, "auto_time_zone"
3860     const/4 v2, 0x0
3862     invoke-static {v0, v1, v2}, Landroid/provider/Settings$System;->getInt(Landroid/content/ContentResolver;Ljava/lang/String;I)I
3864     move-result v0
3866     if-nez v0, :cond_14
3868     :cond_13
3869     :goto_13
3870     return-void
3872     :cond_14
3873     new-instance v0, Ljava/lang/StringBuilder;
3875     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
3877     const-string v1, "Reverting to NITZ TimeZone: tz=\'"
3879     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3881     move-result-object v0
3883     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
3885     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3887     move-result-object v0
3889     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3891     move-result-object v0
3893     invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3895     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
3897     if-eqz v0, :cond_13
3899     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
3901     invoke-direct {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
3903     goto :goto_13
3904 .end method
3906 .method private saveNitzTime(J)V
3907     .registers 5
3909     iput-wide p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
3911     invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
3913     move-result-wide v0
3915     iput-wide v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
3917     return-void
3918 .end method
3920 .method private saveNitzTimeZone(Ljava/lang/String;)V
3921     .registers 2
3923     iput-object p1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
3925     return-void
3926 .end method
3928 .method private setAndBroadcastNetworkSetTime(J)V
3929     .registers 6
3931     new-instance v1, Ljava/lang/StringBuilder;
3933     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
3935     const-string/jumbo v2, "setAndBroadcastNetworkSetTime: time="
3937     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3939     move-result-object v1
3941     invoke-virtual {v1, p1, p2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
3943     move-result-object v1
3945     const-string/jumbo v2, "ms"
3947     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3949     move-result-object v1
3951     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3953     move-result-object v1
3955     invoke-virtual {p0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
3957     invoke-static {p1, p2}, Landroid/os/SystemClock;->setCurrentTimeMillis(J)Z
3959     new-instance v0, Landroid/content/Intent;
3961     const-string v1, "android.intent.action.NETWORK_SET_TIME"
3963     invoke-direct {v0, v1}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
3965     const/high16 v1, 0x2000
3967     invoke-virtual {v0, v1}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
3969     const-string/jumbo v1, "time"
3971     invoke-virtual {v0, v1, p1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
3973     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
3975     invoke-virtual {v1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
3977     move-result-object v1
3979     invoke-virtual {v1, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
3981     return-void
3982 .end method
3984 .method private setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
3985     .registers 6
3987     new-instance v2, Ljava/lang/StringBuilder;
3989     invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
3991     const-string/jumbo v3, "setAndBroadcastNetworkSetTimeZone: setTimeZone="
3993     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3995     move-result-object v2
3997     invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3999     move-result-object v2
4001     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4003     move-result-object v2
4005     invoke-virtual {p0, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4007     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
4009     invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
4011     move-result-object v2
4013     const-string v3, "alarm"
4015     invoke-virtual {v2, v3}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
4017     move-result-object v0
4019     check-cast v0, Landroid/app/AlarmManager;
4021     invoke-virtual {v0, p1}, Landroid/app/AlarmManager;->setTimeZone(Ljava/lang/String;)V
4023     new-instance v1, Landroid/content/Intent;
4025     const-string v2, "android.intent.action.NETWORK_SET_TIMEZONE"
4027     invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
4029     const/high16 v2, 0x2000
4031     invoke-virtual {v1, v2}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
4033     const-string/jumbo v2, "time-zone"
4035     invoke-virtual {v1, v2, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
4037     iget-object v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
4039     invoke-virtual {v2}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
4041     move-result-object v2
4043     invoke-virtual {v2, v1}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
4045     new-instance v2, Ljava/lang/StringBuilder;
4047     invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
4049     const-string/jumbo v3, "setAndBroadcastNetworkSetTimeZone: call alarm.setTimeZone and broadcast zoneId="
4051     invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4053     move-result-object v2
4055     invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4057     move-result-object v2
4059     invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4061     move-result-object v2
4063     invoke-virtual {p0, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4065     return-void
4066 .end method
4068 .method private setNotification(I)V
4069     .registers 11
4071     new-instance v6, Ljava/lang/StringBuilder;
4073     invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
4075     const-string/jumbo v7, "setNotification: create notification "
4077     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4079     move-result-object v6
4081     invoke-virtual {v6, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
4083     move-result-object v6
4085     invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4087     move-result-object v6
4089     invoke-virtual {p0, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4091     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
4093     invoke-virtual {v6}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
4095     move-result-object v0
4097     new-instance v6, Landroid/app/Notification;
4099     invoke-direct {v6}, Landroid/app/Notification;-><init>()V
4101     iput-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4103     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4105     invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
4107     move-result-wide v7
4109     iput-wide v7, v6, Landroid/app/Notification;->when:J
4111     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4113     const/16 v7, 0x10
4115     iput v7, v6, Landroid/app/Notification;->flags:I
4117     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4119     const v7, 0x108008a
4121     iput v7, v6, Landroid/app/Notification;->icon:I
4123     new-instance v2, Landroid/content/Intent;
4125     invoke-direct {v2}, Landroid/content/Intent;-><init>()V
4127     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4129     const/4 v7, 0x0
4131     const/high16 v8, 0x1000
4133     invoke-static {v0, v7, v2, v8}, Landroid/app/PendingIntent;->getActivity(Landroid/content/Context;ILandroid/content/Intent;I)Landroid/app/PendingIntent;
4135     move-result-object v7
4137     iput-object v7, v6, Landroid/app/Notification;->contentIntent:Landroid/app/PendingIntent;
4139     const-string v1, ""
4141     const v6, 0x1040103
4143     invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
4145     move-result-object v5
4147     const/16 v3, 0x3e7
4149     packed-switch p1, :pswitch_data_c6
4151     :goto_57
4152     :pswitch_57
4153     new-instance v6, Ljava/lang/StringBuilder;
4155     invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
4157     const-string/jumbo v7, "setNotification: put notification "
4159     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4161     move-result-object v6
4163     invoke-virtual {v6, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4165     move-result-object v6
4167     const-string v7, " / "
4169     invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4171     move-result-object v6
4173     invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4175     move-result-object v6
4177     invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4179     move-result-object v6
4181     invoke-virtual {p0, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4183     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4185     iput-object v5, v6, Landroid/app/Notification;->tickerText:Ljava/lang/CharSequence;
4187     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4189     iget-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4191     iget-object v7, v7, Landroid/app/Notification;->contentIntent:Landroid/app/PendingIntent;
4193     invoke-virtual {v6, v0, v5, v1, v7}, Landroid/app/Notification;->setLatestEventInfo(Landroid/content/Context;Ljava/lang/CharSequence;Ljava/lang/CharSequence;Landroid/app/PendingIntent;)V
4195     const-string/jumbo v6, "notification"
4197     invoke-virtual {v0, v6}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
4199     move-result-object v4
4201     check-cast v4, Landroid/app/NotificationManager;
4203     const/16 v6, 0x3ea
4205     if-eq p1, v6, :cond_96
4207     const/16 v6, 0x3ec
4209     if-ne p1, v6, :cond_bf
4211     :cond_96
4212     invoke-virtual {v4, v3}, Landroid/app/NotificationManager;->cancel(I)V
4214     :goto_99
4215     return-void
4217     :pswitch_9a
4218     const/16 v3, 0x378
4220     const v6, 0x1040104
4222     invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
4224     move-result-object v1
4226     goto :goto_57
4228     :pswitch_a4
4229     const/16 v3, 0x378
4231     goto :goto_57
4233     :pswitch_a7
4234     const v6, 0x1040107
4236     invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
4238     move-result-object v1
4240     goto :goto_57
4242     :pswitch_af
4243     const v6, 0x1040106
4245     invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
4247     move-result-object v1
4249     goto :goto_57
4251     :pswitch_b7
4252     const v6, 0x1040105
4254     invoke-virtual {v0, v6}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
4256     move-result-object v1
4258     goto :goto_57
4260     :cond_bf
4261     iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
4263     invoke-virtual {v4, v3, v6}, Landroid/app/NotificationManager;->notify(ILandroid/app/Notification;)V
4265     goto :goto_99
4267     nop
4269     :pswitch_data_c6
4270     .packed-switch 0x3e9
4271         :pswitch_9a
4272         :pswitch_a4
4273         :pswitch_a7
4274         :pswitch_57
4275         :pswitch_af
4276         :pswitch_b7
4277     .end packed-switch
4278 .end method
4280 .method private setSignalStrengthDefaultValues()V
4281     .registers 15
4283     const/4 v2, -0x1
4285     new-instance v0, Landroid/telephony/SignalStrength;
4287     const/16 v1, 0x63
4289     const v11, 0x7fffffff
4291     const/4 v13, 0x1
4293     move v3, v2
4295     move v4, v2
4297     move v5, v2
4299     move v6, v2
4301     move v7, v2
4303     move v8, v2
4305     move v9, v2
4307     move v10, v2
4309     move v12, v2
4311     invoke-direct/range {v0 .. v13}, Landroid/telephony/SignalStrength;-><init>(IIIIIIIIIIIIZ)V
4313     iput-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSignalStrength:Landroid/telephony/SignalStrength;
4315     return-void
4316 .end method
4318 .method private setTimeFromNITZString(Ljava/lang/String;J)V
4319     .registers 34
4321     invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
4323     move-result-wide v19
4325     new-instance v25, Ljava/lang/StringBuilder;
4327     invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;-><init>()V
4329     const-string v26, "NITZ: "
4331     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4333     move-result-object v25
4335     move-object/from16 v0, v25
4337     move-object/from16 v1, p1
4339     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4341     move-result-object v25
4343     const-string v26, ","
4345     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4347     move-result-object v25
4349     move-object/from16 v0, v25
4351     move-wide/from16 v1, p2
4353     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
4355     move-result-object v25
4357     const-string v26, " start="
4359     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4361     move-result-object v25
4363     move-object/from16 v0, v25
4365     move-wide/from16 v1, v19
4367     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
4369     move-result-object v25
4371     const-string v26, " delay="
4373     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4375     move-result-object v25
4377     sub-long v26, v19, p2
4379     invoke-virtual/range {v25 .. v27}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
4381     move-result-object v25
4383     invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4385     move-result-object v25
4387     move-object/from16 v0, p0
4389     move-object/from16 v1, v25
4391     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4393     :try_start_4a
4394     const-string v25, "GMT"
4396     invoke-static/range {v25 .. v25}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
4398     move-result-object v25
4400     invoke-static/range {v25 .. v25}, Ljava/util/Calendar;->getInstance(Ljava/util/TimeZone;)Ljava/util/Calendar;
4402     move-result-object v5
4404     invoke-virtual {v5}, Ljava/util/Calendar;->clear()V
4406     const/16 v25, 0x10
4408     const/16 v26, 0x0
4410     move/from16 v0, v25
4412     move/from16 v1, v26
4414     invoke-virtual {v5, v0, v1}, Ljava/util/Calendar;->set(II)V
4416     const-string v25, "[/:,+-]"
4418     move-object/from16 v0, p1
4420     move-object/from16 v1, v25
4422     invoke-virtual {v0, v1}, Ljava/lang/String;->split(Ljava/lang/String;)[Ljava/lang/String;
4424     move-result-object v16
4426     const/16 v25, 0x0
4428     aget-object v25, v16, v25
4430     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4432     move-result v25
4434     move/from16 v0, v25
4436     add-int/lit16 v0, v0, 0x7d0
4438     move/from16 v23, v0
4440     const/16 v25, 0x1
4442     move/from16 v0, v25
4444     move/from16 v1, v23
4446     invoke-virtual {v5, v0, v1}, Ljava/util/Calendar;->set(II)V
4448     const/16 v25, 0x1
4450     aget-object v25, v16, v25
4452     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4454     move-result v25
4456     add-int/lit8 v15, v25, -0x1
4458     const/16 v25, 0x2
4460     move/from16 v0, v25
4462     invoke-virtual {v5, v0, v15}, Ljava/util/Calendar;->set(II)V
4464     const/16 v25, 0x2
4466     aget-object v25, v16, v25
4468     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4470     move-result v6
4472     const/16 v25, 0x5
4474     move/from16 v0, v25
4476     invoke-virtual {v5, v0, v6}, Ljava/util/Calendar;->set(II)V
4478     const/16 v25, 0x3
4480     aget-object v25, v16, v25
4482     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4484     move-result v9
4486     const/16 v25, 0xa
4488     move/from16 v0, v25
4490     invoke-virtual {v5, v0, v9}, Ljava/util/Calendar;->set(II)V
4492     const/16 v25, 0x4
4494     aget-object v25, v16, v25
4496     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4498     move-result v14
4500     const/16 v25, 0xc
4502     move/from16 v0, v25
4504     invoke-virtual {v5, v0, v14}, Ljava/util/Calendar;->set(II)V
4506     const/16 v25, 0x5
4508     aget-object v25, v16, v25
4510     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4512     move-result v17
4514     const/16 v25, 0xd
4516     move/from16 v0, v25
4518     move/from16 v1, v17
4520     invoke-virtual {v5, v0, v1}, Ljava/util/Calendar;->set(II)V
4522     const/16 v25, 0x2d
4524     move-object/from16 v0, p1
4526     move/from16 v1, v25
4528     invoke-virtual {v0, v1}, Ljava/lang/String;->indexOf(I)I
4530     move-result v25
4532     const/16 v26, -0x1
4534     move/from16 v0, v25
4536     move/from16 v1, v26
4538     if-ne v0, v1, :cond_1e9
4540     const/16 v18, 0x1
4542     :goto_e6
4543     const/16 v25, 0x6
4545     aget-object v25, v16, v25
4547     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4549     move-result v21
4551     move-object/from16 v0, v16
4553     array-length v0, v0
4555     move/from16 v25, v0
4557     const/16 v26, 0x8
4559     move/from16 v0, v25
4561     move/from16 v1, v26
4563     if-lt v0, v1, :cond_1ed
4565     const/16 v25, 0x7
4567     aget-object v25, v16, v25
4569     invoke-static/range {v25 .. v25}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
4571     move-result v7
4573     :goto_103
4574     if-eqz v18, :cond_1f0
4576     const/16 v25, 0x1
4578     :goto_107
4579     mul-int v25, v25, v21
4581     mul-int/lit8 v25, v25, 0xf
4583     mul-int/lit8 v25, v25, 0x3c
4585     move/from16 v0, v25
4587     mul-int/lit16 v0, v0, 0x3e8
4589     move/from16 v21, v0
4591     const/16 v24, 0x0
4593     move-object/from16 v0, v16
4595     array-length v0, v0
4597     move/from16 v25, v0
4599     const/16 v26, 0x9
4601     move/from16 v0, v25
4603     move/from16 v1, v26
4605     if-lt v0, v1, :cond_144
4607     const/16 v25, 0x8
4609     aget-object v25, v16, v25
4611     const/16 v26, 0x21
4613     invoke-virtual/range {v25 .. v26}, Ljava/lang/String;->indexOf(I)I
4615     move-result v25
4617     const/16 v26, -0x1
4619     move/from16 v0, v25
4621     move/from16 v1, v26
4623     if-eq v0, v1, :cond_144
4625     const/16 v25, 0x8
4627     aget-object v25, v16, v25
4629     const/16 v26, 0x21
4631     const/16 v27, 0x2f
4633     invoke-virtual/range {v25 .. v27}, Ljava/lang/String;->replace(CC)Ljava/lang/String;
4635     move-result-object v22
4637     invoke-static/range {v22 .. v22}, Ljava/util/TimeZone;->getTimeZone(Ljava/lang/String;)Ljava/util/TimeZone;
4639     move-result-object v24
4641     :cond_144
4642     const-string v25, "gsm.operator.iso-country"
4644     invoke-static/range {v25 .. v25}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
4646     move-result-object v11
4648     if-nez v24, :cond_16e
4650     move-object/from16 v0, p0
4652     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
4654     move/from16 v25, v0
4656     if-eqz v25, :cond_16e
4658     if-eqz v11, :cond_1f8
4660     invoke-virtual {v11}, Ljava/lang/String;->length()I
4662     move-result v25
4664     if-lez v25, :cond_1f8
4666     if-eqz v7, :cond_1f4
4668     const/16 v25, 0x1
4670     :goto_160
4671     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
4673     move-result-wide v26
4675     move/from16 v0, v21
4677     move/from16 v1, v25
4679     move-wide/from16 v2, v26
4681     invoke-static {v0, v1, v2, v3, v11}, Landroid/util/TimeUtils;->getTimeZone(IZJLjava/lang/String;)Ljava/util/TimeZone;
4683     move-result-object v24
4685     :cond_16e
4686     :goto_16e
4687     if-eqz v24, :cond_18c
4689     move-object/from16 v0, p0
4691     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
4693     move/from16 v25, v0
4695     move/from16 v0, v25
4697     move/from16 v1, v21
4699     if-ne v0, v1, :cond_18c
4701     move-object/from16 v0, p0
4703     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
4705     move/from16 v26, v0
4707     if-eqz v7, :cond_211
4709     const/16 v25, 0x1
4711     :goto_186
4712     move/from16 v0, v26
4714     move/from16 v1, v25
4716     if-eq v0, v1, :cond_1ae
4718     :cond_18c
4719     const/16 v25, 0x1
4721     move/from16 v0, v25
4723     move-object/from16 v1, p0
4725     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
4727     move/from16 v0, v21
4729     move-object/from16 v1, p0
4731     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
4733     if-eqz v7, :cond_215
4735     const/16 v25, 0x1
4737     :goto_19e
4738     move/from16 v0, v25
4740     move-object/from16 v1, p0
4742     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
4744     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
4746     move-result-wide v25
4748     move-wide/from16 v0, v25
4750     move-object/from16 v2, p0
4752     iput-wide v0, v2, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
4754     :cond_1ae
4755     if-eqz v24, :cond_1cc
4757     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTimeZone()Z
4759     move-result v25
4761     if-eqz v25, :cond_1c1
4763     invoke-virtual/range {v24 .. v24}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
4765     move-result-object v25
4767     move-object/from16 v0, p0
4769     move-object/from16 v1, v25
4771     invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTimeZone(Ljava/lang/String;)V
4773     :cond_1c1
4774     invoke-virtual/range {v24 .. v24}, Ljava/util/TimeZone;->getID()Ljava/lang/String;
4776     move-result-object v25
4778     move-object/from16 v0, p0
4780     move-object/from16 v1, v25
4782     invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTimeZone(Ljava/lang/String;)V
4784     :cond_1cc
4785     const-string v25, "gsm.ignore-nitz"
4787     invoke-static/range {v25 .. v25}, Landroid/os/SystemProperties;->get(Ljava/lang/String;)Ljava/lang/String;
4789     move-result-object v10
4791     if-eqz v10, :cond_218
4793     const-string/jumbo v25, "yes"
4795     move-object/from16 v0, v25
4797     invoke-virtual {v10, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
4799     move-result v25
4801     if-eqz v25, :cond_218
4803     const-string v25, "NITZ: Not setting clock because gsm.ignore-nitz is set"
4805     move-object/from16 v0, p0
4807     move-object/from16 v1, v25
4809     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4811     :goto_1e8
4812     return-void
4814     :cond_1e9
4815     const/16 v18, 0x0
4817     goto/16 :goto_e6
4819     :cond_1ed
4820     const/4 v7, 0x0
4822     goto/16 :goto_103
4824     :cond_1f0
4825     const/16 v25, -0x1
4827     goto/16 :goto_107
4829     :cond_1f4
4830     const/16 v25, 0x0
4832     goto/16 :goto_160
4834     :cond_1f8
4835     if-eqz v7, :cond_20e
4837     const/16 v25, 0x1
4839     :goto_1fc
4840     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
4842     move-result-wide v26
4844     move-object/from16 v0, p0
4846     move/from16 v1, v21
4848     move/from16 v2, v25
4850     move-wide/from16 v3, v26
4852     invoke-direct {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getNitzTimeZone(IZJ)Ljava/util/TimeZone;
4853     :try_end_20b
4854     .catch Ljava/lang/RuntimeException; {:try_start_4a .. :try_end_20b} :catch_25b
4856     move-result-object v24
4858     goto/16 :goto_16e
4860     :cond_20e
4861     const/16 v25, 0x0
4863     goto :goto_1fc
4865     :cond_211
4866     const/16 v25, 0x0
4868     goto/16 :goto_186
4870     :cond_215
4871     const/16 v25, 0x0
4873     goto :goto_19e
4875     :cond_218
4876     :try_start_218
4877     move-object/from16 v0, p0
4879     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
4881     move-object/from16 v25, v0
4883     invoke-virtual/range {v25 .. v25}, Landroid/os/PowerManager$WakeLock;->acquire()V
4885     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->getAutoTime()Z
4887     move-result v25
4889     if-eqz v25, :cond_329
4891     invoke-static {}, Landroid/os/SystemClock;->elapsedRealtime()J
4893     move-result-wide v25
4895     sub-long v12, v25, p2
4897     const-wide/16 v25, 0x0
4899     cmp-long v25, v12, v25
4901     if-gez v25, :cond_288
4903     new-instance v25, Ljava/lang/StringBuilder;
4905     invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;-><init>()V
4907     const-string v26, "NITZ: not setting time, clock has rolled backwards since NITZ time was received, "
4909     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4911     move-result-object v25
4913     move-object/from16 v0, v25
4915     move-object/from16 v1, p1
4917     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4919     move-result-object v25
4921     invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4923     move-result-object v25
4925     move-object/from16 v0, p0
4927     move-object/from16 v1, v25
4929     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
4930     :try_end_251
4931     .catchall {:try_start_218 .. :try_end_251} :catchall_354
4933     :try_start_251
4934     move-object/from16 v0, p0
4936     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
4938     move-object/from16 v25, v0
4940     invoke-virtual/range {v25 .. v25}, Landroid/os/PowerManager$WakeLock;->release()V
4941     :try_end_25a
4942     .catch Ljava/lang/RuntimeException; {:try_start_251 .. :try_end_25a} :catch_25b
4944     goto :goto_1e8
4946     :catch_25b
4947     move-exception v8
4949     new-instance v25, Ljava/lang/StringBuilder;
4951     invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;-><init>()V
4953     const-string v26, "NITZ: Parsing NITZ time "
4955     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4957     move-result-object v25
4959     move-object/from16 v0, v25
4961     move-object/from16 v1, p1
4963     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4965     move-result-object v25
4967     const-string v26, " ex="
4969     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4971     move-result-object v25
4973     move-object/from16 v0, v25
4975     invoke-virtual {v0, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
4977     move-result-object v25
4979     invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4981     move-result-object v25
4983     move-object/from16 v0, p0
4985     move-object/from16 v1, v25
4987     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
4989     goto/16 :goto_1e8
4991     :cond_288
4992     const-wide/32 v25, 0x7fffffff
4994     cmp-long v25, v12, v25
4996     if-lez v25, :cond_2bf
4998     :try_start_28f
4999     new-instance v25, Ljava/lang/StringBuilder;
5001     invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;-><init>()V
5003     const-string v26, "NITZ: not setting time, processing has taken "
5005     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5007     move-result-object v25
5009     const-wide/32 v26, 0x5265c00
5011     div-long v26, v12, v26
5013     invoke-virtual/range {v25 .. v27}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5015     move-result-object v25
5017     const-string v26, " days"
5019     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5021     move-result-object v25
5023     invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5025     move-result-object v25
5027     move-object/from16 v0, p0
5029     move-object/from16 v1, v25
5031     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
5032     :try_end_2b4
5033     .catchall {:try_start_28f .. :try_end_2b4} :catchall_354
5035     :try_start_2b4
5036     move-object/from16 v0, p0
5038     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
5040     move-object/from16 v25, v0
5042     invoke-virtual/range {v25 .. v25}, Landroid/os/PowerManager$WakeLock;->release()V
5043     :try_end_2bd
5044     .catch Ljava/lang/RuntimeException; {:try_start_2b4 .. :try_end_2bd} :catch_25b
5046     goto/16 :goto_1e8
5048     :cond_2bf
5049     const/16 v25, 0xe
5051     long-to-int v0, v12
5053     move/from16 v26, v0
5055     :try_start_2c4
5056     move/from16 v0, v25
5058     move/from16 v1, v26
5060     invoke-virtual {v5, v0, v1}, Ljava/util/Calendar;->add(II)V
5062     new-instance v25, Ljava/lang/StringBuilder;
5064     invoke-direct/range {v25 .. v25}, Ljava/lang/StringBuilder;-><init>()V
5066     const-string v26, "NITZ: Setting time of day to "
5068     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5070     move-result-object v25
5072     invoke-virtual {v5}, Ljava/util/Calendar;->getTime()Ljava/util/Date;
5074     move-result-object v26
5076     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5078     move-result-object v25
5080     const-string v26, " NITZ receive delay(ms): "
5082     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5084     move-result-object v25
5086     move-object/from16 v0, v25
5088     invoke-virtual {v0, v12, v13}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5090     move-result-object v25
5092     const-string v26, " gained(ms): "
5094     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5096     move-result-object v25
5098     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
5100     move-result-wide v26
5102     invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
5104     move-result-wide v28
5106     sub-long v26, v26, v28
5108     invoke-virtual/range {v25 .. v27}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5110     move-result-object v25
5112     const-string v26, " from "
5114     invoke-virtual/range {v25 .. v26}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5116     move-result-object v25
5118     move-object/from16 v0, v25
5120     move-object/from16 v1, p1
5122     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5124     move-result-object v25
5126     invoke-virtual/range {v25 .. v25}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5128     move-result-object v25
5130     move-object/from16 v0, p0
5132     move-object/from16 v1, v25
5134     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
5136     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
5138     move-result-wide v25
5140     move-object/from16 v0, p0
5142     move-wide/from16 v1, v25
5144     invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setAndBroadcastNetworkSetTime(J)V
5146     const-string v25, "GSM"
5148     const-string v26, "NITZ: after Setting time of day"
5150     invoke-static/range {v25 .. v26}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
5152     :cond_329
5153     const-string v25, "gsm.nitz.time"
5155     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
5157     move-result-wide v26
5159     invoke-static/range {v26 .. v27}, Ljava/lang/String;->valueOf(J)Ljava/lang/String;
5161     move-result-object v26
5163     invoke-static/range {v25 .. v26}, Landroid/os/SystemProperties;->set(Ljava/lang/String;Ljava/lang/String;)V
5165     invoke-virtual {v5}, Ljava/util/Calendar;->getTimeInMillis()J
5167     move-result-wide v25
5169     move-object/from16 v0, p0
5171     move-wide/from16 v1, v25
5173     invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->saveNitzTime(J)V
5175     const/16 v25, 0x1
5177     move/from16 v0, v25
5179     move-object/from16 v1, p0
5181     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
5182     :try_end_349
5183     .catchall {:try_start_2c4 .. :try_end_349} :catchall_354
5185     :try_start_349
5186     move-object/from16 v0, p0
5188     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
5190     move-object/from16 v25, v0
5192     invoke-virtual/range {v25 .. v25}, Landroid/os/PowerManager$WakeLock;->release()V
5194     goto/16 :goto_1e8
5196     :catchall_354
5197     move-exception v25
5199     move-object/from16 v0, p0
5201     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
5203     move-object/from16 v26, v0
5205     invoke-virtual/range {v26 .. v26}, Landroid/os/PowerManager$WakeLock;->release()V
5207     throw v25
5208     :try_end_35f
5209     .catch Ljava/lang/RuntimeException; {:try_start_349 .. :try_end_35f} :catch_25b
5210 .end method
5212 .method private static sloge(Ljava/lang/String;)V
5213     .registers 4
5215     const-string v0, "GSM"
5217     new-instance v1, Ljava/lang/StringBuilder;
5219     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
5221     const-string v2, "[GsmSST] "
5223     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5225     move-result-object v1
5227     invoke-virtual {v1, p0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5229     move-result-object v1
5231     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5233     move-result-object v1
5235     invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5237     return-void
5238 .end method
5240 .method private static twoDigitsAt(Ljava/lang/String;I)I
5241     .registers 6
5243     const/16 v3, 0xa
5245     invoke-virtual {p0, p1}, Ljava/lang/String;->charAt(I)C
5247     move-result v2
5249     invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
5251     move-result v0
5253     add-int/lit8 v2, p1, 0x1
5255     invoke-virtual {p0, v2}, Ljava/lang/String;->charAt(I)C
5257     move-result v2
5259     invoke-static {v2, v3}, Ljava/lang/Character;->digit(CI)I
5261     move-result v1
5263     if-ltz v0, :cond_18
5265     if-gez v1, :cond_20
5267     :cond_18
5268     new-instance v2, Ljava/lang/RuntimeException;
5270     const-string v3, "invalid format"
5272     invoke-direct {v2, v3}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
5274     throw v2
5276     :cond_20
5277     mul-int/lit8 v2, v0, 0xa
5279     add-int/2addr v2, v1
5281     return v2
5282 .end method
5285 # virtual methods
5286 .method public dispose()V
5287     .registers 3
5289     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5291     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForAvailable(Landroid/os/Handler;)V
5293     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5295     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForRadioStateChanged(Landroid/os/Handler;)V
5297     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5299     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unregisterForVoiceNetworkStateChanged(Landroid/os/Handler;)V
5301     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
5303     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getIccCard()Lcom/android/internal/telephony/IccCard;
5305     move-result-object v0
5307     invoke-virtual {v0, p0}, Lcom/android/internal/telephony/IccCard;->unregisterForReady(Landroid/os/Handler;)V
5309     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
5311     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
5313     invoke-virtual {v0, p0}, Lcom/android/internal/telephony/IccRecords;->unregisterForRecordsLoaded(Landroid/os/Handler;)V
5315     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5317     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnSignalStrengthUpdate(Landroid/os/Handler;)V
5319     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5321     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnRestrictedStateChanged(Landroid/os/Handler;)V
5323     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
5325     invoke-interface {v0, p0}, Lcom/android/internal/telephony/CommandsInterface;->unSetOnNITZTime(Landroid/os/Handler;)V
5327     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
5329     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeObserver:Landroid/database/ContentObserver;
5331     invoke-virtual {v0, v1}, Landroid/content/ContentResolver;->unregisterContentObserver(Landroid/database/ContentObserver;)V
5333     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cr:Landroid/content/ContentResolver;
5335     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mAutoTimeZoneObserver:Landroid/database/ContentObserver;
5337     invoke-virtual {v0, v1}, Landroid/content/ContentResolver;->unregisterContentObserver(Landroid/database/ContentObserver;)V
5339     return-void
5340 .end method
5342 .method public dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
5343     .registers 7
5345     const-string v0, "GsmServiceStateTracker extends:"
5347     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5349     invoke-super {p0, p1, p2, p3}, Lcom/android/internal/telephony/ServiceStateTracker;->dump(Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
5351     new-instance v0, Ljava/lang/StringBuilder;
5353     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5355     const-string v1, " phone="
5357     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5359     move-result-object v0
5361     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
5363     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5365     move-result-object v0
5367     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5369     move-result-object v0
5371     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5373     new-instance v0, Ljava/lang/StringBuilder;
5375     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5377     const-string v1, " cellLoc="
5379     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5381     move-result-object v0
5383     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
5385     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5387     move-result-object v0
5389     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5391     move-result-object v0
5393     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5395     new-instance v0, Ljava/lang/StringBuilder;
5397     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5399     const-string v1, " newCellLoc="
5401     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5403     move-result-object v0
5405     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
5407     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5409     move-result-object v0
5411     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5413     move-result-object v0
5415     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5417     new-instance v0, Ljava/lang/StringBuilder;
5419     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5421     const-string v1, " mPreferredNetworkType="
5423     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5425     move-result-object v0
5427     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
5429     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5431     move-result-object v0
5433     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5435     move-result-object v0
5437     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5439     new-instance v0, Ljava/lang/StringBuilder;
5441     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5443     const-string v1, " gprsState="
5445     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5447     move-result-object v0
5449     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
5451     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5453     move-result-object v0
5455     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5457     move-result-object v0
5459     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5461     new-instance v0, Ljava/lang/StringBuilder;
5463     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5465     const-string v1, " newGPRSState="
5467     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5469     move-result-object v0
5471     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
5473     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5475     move-result-object v0
5477     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5479     move-result-object v0
5481     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5483     new-instance v0, Ljava/lang/StringBuilder;
5485     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5487     const-string v1, " mMaxDataCalls="
5489     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5491     move-result-object v0
5493     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mMaxDataCalls:I
5495     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5497     move-result-object v0
5499     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5501     move-result-object v0
5503     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5505     new-instance v0, Ljava/lang/StringBuilder;
5507     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5509     const-string v1, " mNewMaxDataCalls="
5511     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5513     move-result-object v0
5515     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
5517     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5519     move-result-object v0
5521     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5523     move-result-object v0
5525     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5527     new-instance v0, Ljava/lang/StringBuilder;
5529     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5531     const-string v1, " mReasonDataDenied="
5533     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5535     move-result-object v0
5537     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReasonDataDenied:I
5539     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5541     move-result-object v0
5543     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5545     move-result-object v0
5547     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5549     new-instance v0, Ljava/lang/StringBuilder;
5551     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5553     const-string v1, " mNewReasonDataDenied="
5555     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5557     move-result-object v0
5559     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
5561     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5563     move-result-object v0
5565     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5567     move-result-object v0
5569     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5571     new-instance v0, Ljava/lang/StringBuilder;
5573     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5575     const-string v1, " mGsmRoaming="
5577     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5579     move-result-object v0
5581     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
5583     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5585     move-result-object v0
5587     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5589     move-result-object v0
5591     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5593     new-instance v0, Ljava/lang/StringBuilder;
5595     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5597     const-string v1, " mDataRoaming="
5599     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5601     move-result-object v0
5603     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
5605     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5607     move-result-object v0
5609     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5611     move-result-object v0
5613     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5615     new-instance v0, Ljava/lang/StringBuilder;
5617     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5619     const-string v1, " mEmergencyOnly="
5621     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5623     move-result-object v0
5625     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
5627     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5629     move-result-object v0
5631     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5633     move-result-object v0
5635     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5637     new-instance v0, Ljava/lang/StringBuilder;
5639     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5641     const-string v1, " mNeedFixZoneAfterNitz="
5643     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5645     move-result-object v0
5647     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedFixZoneAfterNitz:Z
5649     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5651     move-result-object v0
5653     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5655     move-result-object v0
5657     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5659     new-instance v0, Ljava/lang/StringBuilder;
5661     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5663     const-string v1, " mZoneOffset="
5665     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5667     move-result-object v0
5669     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneOffset:I
5671     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
5673     move-result-object v0
5675     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5677     move-result-object v0
5679     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5681     new-instance v0, Ljava/lang/StringBuilder;
5683     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5685     const-string v1, " mZoneDst="
5687     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5689     move-result-object v0
5691     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneDst:Z
5693     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5695     move-result-object v0
5697     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5699     move-result-object v0
5701     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5703     new-instance v0, Ljava/lang/StringBuilder;
5705     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5707     const-string v1, " mZoneTime="
5709     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5711     move-result-object v0
5713     iget-wide v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mZoneTime:J
5715     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5717     move-result-object v0
5719     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5721     move-result-object v0
5723     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5725     new-instance v0, Ljava/lang/StringBuilder;
5727     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5729     const-string v1, " mGotCountryCode="
5731     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5733     move-result-object v0
5735     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGotCountryCode:Z
5737     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5739     move-result-object v0
5741     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5743     move-result-object v0
5745     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5747     new-instance v0, Ljava/lang/StringBuilder;
5749     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5751     const-string v1, " mNitzUpdatedTime="
5753     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5755     move-result-object v0
5757     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNitzUpdatedTime:Z
5759     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5761     move-result-object v0
5763     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5765     move-result-object v0
5767     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5769     new-instance v0, Ljava/lang/StringBuilder;
5771     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5773     const-string v1, " mSavedTimeZone="
5775     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5777     move-result-object v0
5779     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTimeZone:Ljava/lang/String;
5781     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5783     move-result-object v0
5785     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5787     move-result-object v0
5789     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5791     new-instance v0, Ljava/lang/StringBuilder;
5793     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5795     const-string v1, " mSavedTime="
5797     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5799     move-result-object v0
5801     iget-wide v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedTime:J
5803     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5805     move-result-object v0
5807     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5809     move-result-object v0
5811     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5813     new-instance v0, Ljava/lang/StringBuilder;
5815     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5817     const-string v1, " mSavedAtTime="
5819     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5821     move-result-object v0
5823     iget-wide v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mSavedAtTime:J
5825     invoke-virtual {v0, v1, v2}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
5827     move-result-object v0
5829     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5831     move-result-object v0
5833     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5835     new-instance v0, Ljava/lang/StringBuilder;
5837     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5839     const-string v1, " mNeedToRegForSimLoaded="
5841     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5843     move-result-object v0
5845     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
5847     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5849     move-result-object v0
5851     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5853     move-result-object v0
5855     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5857     new-instance v0, Ljava/lang/StringBuilder;
5859     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5861     const-string v1, " mStartedGprsRegCheck="
5863     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5865     move-result-object v0
5867     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
5869     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5871     move-result-object v0
5873     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5875     move-result-object v0
5877     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5879     new-instance v0, Ljava/lang/StringBuilder;
5881     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5883     const-string v1, " mReportedGprsNoReg="
5885     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5887     move-result-object v0
5889     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
5891     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Z)Ljava/lang/StringBuilder;
5893     move-result-object v0
5895     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5897     move-result-object v0
5899     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5901     new-instance v0, Ljava/lang/StringBuilder;
5903     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5905     const-string v1, " mNotification="
5907     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5909     move-result-object v0
5911     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNotification:Landroid/app/Notification;
5913     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5915     move-result-object v0
5917     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5919     move-result-object v0
5921     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5923     new-instance v0, Ljava/lang/StringBuilder;
5925     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5927     const-string v1, " mWakeLock="
5929     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5931     move-result-object v0
5933     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mWakeLock:Landroid/os/PowerManager$WakeLock;
5935     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
5937     move-result-object v0
5939     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5941     move-result-object v0
5943     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5945     new-instance v0, Ljava/lang/StringBuilder;
5947     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5949     const-string v1, " curSpn="
5951     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5953     move-result-object v0
5955     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
5957     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5959     move-result-object v0
5961     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5963     move-result-object v0
5965     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5967     new-instance v0, Ljava/lang/StringBuilder;
5969     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5971     const-string v1, " curPlmn="
5973     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5975     move-result-object v0
5977     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
5979     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5981     move-result-object v0
5983     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5985     move-result-object v0
5987     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
5989     new-instance v0, Ljava/lang/StringBuilder;
5991     invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
5993     const-string v1, " curSpnRule="
5995     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5997     move-result-object v0
5999     iget v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
6001     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
6003     move-result-object v0
6005     invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6007     move-result-object v0
6009     invoke-virtual {p2, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/String;)V
6011     return-void
6012 .end method
6014 .method protected finalize()V
6015     .registers 2
6017     const-string v0, "finalize"
6019     invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
6021     return-void
6022 .end method
6024 .method public getCurrentDataConnectionState()I
6025     .registers 2
6027     iget v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
6029     return v0
6030 .end method
6032 .method getCurrentGprsState()I
6033     .registers 2
6035     iget v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
6037     return v0
6038 .end method
6040 .method protected getPhone()Lcom/android/internal/telephony/Phone;
6041     .registers 2
6043     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6045     return-object v0
6046 .end method
6048 .method public handleMessage(Landroid/os/Message;)V
6049     .registers 24
6051     move-object/from16 v0, p0
6053     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6055     move-object/from16 v18, v0
6057     move-object/from16 v0, v18
6059     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mIsTheCurrentActivePhone:Z
6061     move/from16 v18, v0
6063     if-nez v18, :cond_41
6065     const-string v18, "GSM"
6067     new-instance v19, Ljava/lang/StringBuilder;
6069     invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
6071     const-string v20, "Received message "
6073     invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6075     move-result-object v19
6077     move-object/from16 v0, v19
6079     move-object/from16 v1, p1
6081     invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
6083     move-result-object v19
6085     const-string v20, "["
6087     invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6089     move-result-object v19
6091     move-object/from16 v0, p1
6093     iget v0, v0, Landroid/os/Message;->what:I
6095     move/from16 v20, v0
6097     invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
6099     move-result-object v19
6101     const-string v20, "] while being destroyed. Ignoring."
6103     invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6105     move-result-object v19
6107     invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6109     move-result-object v19
6111     invoke-static/range {v18 .. v19}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
6113     :cond_40
6114     :goto_40
6115     :pswitch_40
6116     return-void
6118     :cond_41
6119     move-object/from16 v0, p1
6121     iget v0, v0, Landroid/os/Message;->what:I
6123     move/from16 v18, v0
6125     packed-switch v18, :pswitch_data_390
6127     :pswitch_4a
6128     invoke-super/range {p0 .. p1}, Lcom/android/internal/telephony/ServiceStateTracker;->handleMessage(Landroid/os/Message;)V
6130     goto :goto_40
6132     :pswitch_4e
6133     move-object/from16 v0, p0
6135     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6137     move-object/from16 v18, v0
6139     invoke-interface/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface;->setCurrentPreferredNetworkType()V
6141     move-object/from16 v0, p0
6143     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
6145     move/from16 v18, v0
6147     if-eqz v18, :cond_82
6149     move-object/from16 v0, p0
6151     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6153     move-object/from16 v18, v0
6155     move-object/from16 v0, v18
6157     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
6159     move-object/from16 v18, v0
6161     const/16 v19, 0x10
6163     const/16 v20, 0x0
6165     move-object/from16 v0, v18
6167     move-object/from16 v1, p0
6169     move/from16 v2, v19
6171     move-object/from16 v3, v20
6173     invoke-virtual {v0, v1, v2, v3}, Lcom/android/internal/telephony/IccRecords;->registerForRecordsLoaded(Landroid/os/Handler;ILjava/lang/Object;)V
6175     const/16 v18, 0x0
6177     move/from16 v0, v18
6179     move-object/from16 v1, p0
6181     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
6183     :cond_82
6184     move-object/from16 v0, p0
6186     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6188     move-object/from16 v18, v0
6190     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
6192     move-result-object v18
6194     invoke-virtual/range {v18 .. v18}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
6196     move-result-object v18
6198     const v19, 0x1110032
6200     invoke-virtual/range {v18 .. v19}, Landroid/content/res/Resources;->getBoolean(I)Z
6202     move-result v14
6204     if-nez v14, :cond_a4
6206     move-object/from16 v0, p0
6208     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6210     move-object/from16 v18, v0
6212     const/16 v19, 0x0
6214     invoke-virtual/range {v18 .. v19}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
6216     :cond_a4
6217     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
6219     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
6221     goto :goto_40
6223     :pswitch_ab
6224     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setPowerStateToDesired()V
6226     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
6228     goto :goto_40
6230     :pswitch_b2
6231     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
6233     goto :goto_40
6235     :pswitch_b6
6236     move-object/from16 v0, p0
6238     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6240     move-object/from16 v18, v0
6242     invoke-interface/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
6244     move-result-object v18
6246     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
6248     move-result v18
6250     if-eqz v18, :cond_40
6252     move-object/from16 v0, p1
6254     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6256     check-cast v4, Landroid/os/AsyncResult;
6258     move-object/from16 v0, p0
6260     invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
6262     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
6264     goto/16 :goto_40
6266     :pswitch_d6
6267     move-object/from16 v0, p1
6269     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6271     check-cast v4, Landroid/os/AsyncResult;
6273     iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
6275     move-object/from16 v18, v0
6277     if-nez v18, :cond_16b
6279     iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
6281     move-object/from16 v18, v0
6283     check-cast v18, [Ljava/lang/String;
6285     move-object/from16 v15, v18
6287     check-cast v15, [Ljava/lang/String;
6289     const/4 v7, -0x1
6291     const/4 v5, -0x1
6293     array-length v0, v15
6295     move/from16 v18, v0
6297     const/16 v19, 0x3
6299     move/from16 v0, v18
6301     move/from16 v1, v19
6303     if-lt v0, v1, :cond_12d
6305     const/16 v18, 0x1
6307     :try_start_fb
6308     aget-object v18, v15, v18
6310     if-eqz v18, :cond_113
6312     const/16 v18, 0x1
6314     aget-object v18, v15, v18
6316     invoke-virtual/range {v18 .. v18}, Ljava/lang/String;->length()I
6318     move-result v18
6320     if-lez v18, :cond_113
6322     const/16 v18, 0x1
6324     aget-object v18, v15, v18
6326     const/16 v19, 0x10
6328     invoke-static/range {v18 .. v19}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
6330     move-result v7
6332     :cond_113
6333     const/16 v18, 0x2
6335     aget-object v18, v15, v18
6337     if-eqz v18, :cond_12d
6339     const/16 v18, 0x2
6341     aget-object v18, v15, v18
6343     invoke-virtual/range {v18 .. v18}, Ljava/lang/String;->length()I
6345     move-result v18
6347     if-lez v18, :cond_12d
6349     const/16 v18, 0x2
6351     aget-object v18, v15, v18
6353     const/16 v19, 0x10
6355     invoke-static/range {v18 .. v19}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
6356     :try_end_12c
6357     .catch Ljava/lang/NumberFormatException; {:try_start_fb .. :try_end_12c} :catch_170
6359     move-result v5
6361     :cond_12d
6362     :goto_12d
6363     move-object/from16 v0, p0
6365     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
6367     move-object/from16 v18, v0
6369     move-object/from16 v0, p0
6371     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
6373     move-object/from16 v19, v0
6375     invoke-virtual/range {v19 .. v19}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
6377     move-result-object v19
6379     const/16 v20, 0x0
6381     invoke-virtual/range {v18 .. v20}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
6383     move-result-object v13
6385     move-object/from16 v0, p0
6387     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
6389     move-object/from16 v18, v0
6391     if-eqz v18, :cond_18c
6393     if-eqz v13, :cond_18c
6395     invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
6397     move-result v18
6399     const/16 v19, 0x1
6401     move/from16 v0, v18
6403     move/from16 v1, v19
6405     if-ne v0, v1, :cond_18c
6407     move-object/from16 v0, p0
6409     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
6411     move-object/from16 v18, v0
6413     invoke-virtual/range {v18 .. v18}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
6415     move-object/from16 v0, p0
6417     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6419     move-object/from16 v18, v0
6421     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
6423     :cond_16b
6424     :goto_16b
6425     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->disableSingleLocationUpdate()V
6427     goto/16 :goto_40
6429     :catch_170
6430     move-exception v6
6432     const-string v18, "GSM"
6434     new-instance v19, Ljava/lang/StringBuilder;
6436     invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
6438     const-string v20, "error parsing location: "
6440     invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6442     move-result-object v19
6444     move-object/from16 v0, v19
6446     invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
6448     move-result-object v19
6450     invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6452     move-result-object v19
6454     invoke-static/range {v18 .. v19}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
6456     goto :goto_12d
6458     :cond_18c
6459     move-object/from16 v0, p0
6461     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
6463     move-object/from16 v18, v0
6465     if-eqz v18, :cond_1c2
6467     if-eqz v13, :cond_1c2
6469     invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
6471     move-result v18
6473     const/16 v19, 0x3
6475     move/from16 v0, v18
6477     move/from16 v1, v19
6479     if-ne v0, v1, :cond_1c2
6481     new-instance v17, Ljava/util/Random;
6483     invoke-direct/range {v17 .. v17}, Ljava/util/Random;-><init>()V
6485     move-object/from16 v0, p0
6487     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
6489     move-object/from16 v18, v0
6491     invoke-virtual/range {v17 .. v17}, Ljava/util/Random;->nextInt()I
6493     move-result v19
6495     invoke-virtual/range {v17 .. v17}, Ljava/util/Random;->nextInt()I
6497     move-result v20
6499     invoke-virtual/range {v18 .. v20}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
6501     move-object/from16 v0, p0
6503     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6505     move-object/from16 v18, v0
6507     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
6509     goto :goto_16b
6511     :cond_1c2
6512     move-object/from16 v0, p0
6514     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
6516     move-object/from16 v18, v0
6518     move-object/from16 v0, v18
6520     invoke-virtual {v0, v7, v5}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
6522     move-object/from16 v0, p0
6524     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6526     move-object/from16 v18, v0
6528     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
6530     goto :goto_16b
6532     :pswitch_1d7
6533     move-object/from16 v0, p1
6535     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6537     check-cast v4, Landroid/os/AsyncResult;
6539     move-object/from16 v0, p1
6541     iget v0, v0, Landroid/os/Message;->what:I
6543     move/from16 v18, v0
6545     move-object/from16 v0, p0
6547     move/from16 v1, v18
6549     invoke-virtual {v0, v1, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handlePollStateResult(ILandroid/os/AsyncResult;)V
6551     goto/16 :goto_40
6553     :pswitch_1ec
6554     move-object/from16 v0, p0
6556     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6558     move-object/from16 v18, v0
6560     const/16 v19, 0x3
6562     move-object/from16 v0, p0
6564     move/from16 v1, v19
6566     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
6568     move-result-object v19
6570     invoke-interface/range {v18 .. v19}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
6572     goto/16 :goto_40
6574     :pswitch_201
6575     move-object/from16 v0, p1
6577     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6579     check-cast v4, Landroid/os/AsyncResult;
6581     iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
6583     move-object/from16 v18, v0
6585     check-cast v18, [Ljava/lang/Object;
6587     check-cast v18, [Ljava/lang/Object;
6589     const/16 v19, 0x0
6591     aget-object v12, v18, v19
6593     check-cast v12, Ljava/lang/String;
6595     iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
6597     move-object/from16 v18, v0
6599     check-cast v18, [Ljava/lang/Object;
6601     check-cast v18, [Ljava/lang/Object;
6603     const/16 v19, 0x1
6605     aget-object v18, v18, v19
6607     check-cast v18, Ljava/lang/Long;
6609     invoke-virtual/range {v18 .. v18}, Ljava/lang/Long;->longValue()J
6611     move-result-wide v10
6613     move-object/from16 v0, p0
6615     invoke-direct {v0, v12, v10, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setTimeFromNITZString(Ljava/lang/String;J)V
6617     goto/16 :goto_40
6619     :pswitch_22e
6620     move-object/from16 v0, p1
6622     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6624     check-cast v4, Landroid/os/AsyncResult;
6626     const/16 v18, 0x1
6628     move/from16 v0, v18
6630     move-object/from16 v1, p0
6632     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
6634     move-object/from16 v0, p0
6636     invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
6638     goto/16 :goto_40
6640     :pswitch_243
6641     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateSpnDisplay()V
6643     goto/16 :goto_40
6645     :pswitch_248
6646     move-object/from16 v0, p1
6648     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6650     check-cast v4, Landroid/os/AsyncResult;
6652     iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
6654     move-object/from16 v18, v0
6656     if-nez v18, :cond_40
6658     move-object/from16 v0, p0
6660     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6662     move-object/from16 v18, v0
6664     const/16 v19, 0xf
6666     const/16 v20, 0x0
6668     move-object/from16 v0, p0
6670     move/from16 v1, v19
6672     move-object/from16 v2, v20
6674     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
6676     move-result-object v19
6678     invoke-interface/range {v18 .. v19}, Lcom/android/internal/telephony/CommandsInterface;->getVoiceRegistrationState(Landroid/os/Message;)V
6680     goto/16 :goto_40
6682     :pswitch_26d
6683     move-object/from16 v0, p1
6685     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6687     check-cast v4, Landroid/os/AsyncResult;
6689     const/16 v18, 0x15
6691     iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
6693     move-object/from16 v19, v0
6695     move-object/from16 v0, p0
6697     move/from16 v1, v18
6699     move-object/from16 v2, v19
6701     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
6703     move-result-object v9
6705     move-object/from16 v0, p0
6707     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6709     move-object/from16 v18, v0
6711     move-object/from16 v0, p0
6713     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
6715     move/from16 v19, v0
6717     move-object/from16 v0, v18
6719     move/from16 v1, v19
6721     invoke-interface {v0, v1, v9}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
6723     goto/16 :goto_40
6725     :pswitch_298
6726     move-object/from16 v0, p1
6728     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6730     check-cast v4, Landroid/os/AsyncResult;
6732     iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
6734     move-object/from16 v18, v0
6736     if-eqz v18, :cond_40
6738     iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
6740     move-object/from16 v18, v0
6742     check-cast v18, Landroid/os/Message;
6744     invoke-static/range {v18 .. v18}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
6746     move-result-object v18
6748     iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
6750     move-object/from16 v19, v0
6752     move-object/from16 v0, v19
6754     move-object/from16 v1, v18
6756     iput-object v0, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
6758     iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
6760     move-object/from16 v18, v0
6762     check-cast v18, Landroid/os/Message;
6764     invoke-virtual/range {v18 .. v18}, Landroid/os/Message;->sendToTarget()V
6766     goto/16 :goto_40
6768     :pswitch_2c3
6769     move-object/from16 v0, p1
6771     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6773     check-cast v4, Landroid/os/AsyncResult;
6775     iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
6777     move-object/from16 v18, v0
6779     if-nez v18, :cond_302
6781     iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
6783     move-object/from16 v18, v0
6785     check-cast v18, [I
6787     check-cast v18, [I
6789     const/16 v19, 0x0
6791     aget v18, v18, v19
6793     move/from16 v0, v18
6795     move-object/from16 v1, p0
6797     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
6799     :goto_2e1
6800     const/16 v18, 0x14
6802     iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
6804     move-object/from16 v19, v0
6806     move-object/from16 v0, p0
6808     move/from16 v1, v18
6810     move-object/from16 v2, v19
6812     invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
6814     move-result-object v9
6816     const/16 v16, 0x7
6818     move-object/from16 v0, p0
6820     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
6822     move-object/from16 v18, v0
6824     move-object/from16 v0, v18
6826     move/from16 v1, v16
6828     invoke-interface {v0, v1, v9}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
6830     goto/16 :goto_40
6832     :cond_302
6833     const/16 v18, 0x7
6835     move/from16 v0, v18
6837     move-object/from16 v1, p0
6839     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
6841     goto :goto_2e1
6843     :pswitch_30b
6844     move-object/from16 v0, p0
6846     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
6848     move-object/from16 v18, v0
6850     if-eqz v18, :cond_36d
6852     move-object/from16 v0, p0
6854     iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
6856     move/from16 v18, v0
6858     move-object/from16 v0, p0
6860     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
6862     move-object/from16 v19, v0
6864     invoke-virtual/range {v19 .. v19}, Landroid/telephony/ServiceState;->getState()I
6866     move-result v19
6868     move-object/from16 v0, p0
6870     move/from16 v1, v18
6872     move/from16 v2, v19
6874     invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
6876     move-result v18
6878     if-nez v18, :cond_36d
6880     move-object/from16 v0, p0
6882     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
6884     move-object/from16 v18, v0
6886     invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
6888     move-result-object v8
6890     check-cast v8, Landroid/telephony/gsm/GsmCellLocation;
6892     const v19, 0xc3bb
6894     const/16 v18, 0x2
6896     move/from16 v0, v18
6898     new-array v0, v0, [Ljava/lang/Object;
6900     move-object/from16 v20, v0
6902     const/16 v18, 0x0
6904     move-object/from16 v0, p0
6906     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
6908     move-object/from16 v21, v0
6910     invoke-virtual/range {v21 .. v21}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
6912     move-result-object v21
6914     aput-object v21, v20, v18
6916     const/16 v21, 0x1
6918     if-eqz v8, :cond_377
6920     invoke-virtual {v8}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
6922     move-result v18
6924     :goto_35c
6925     invoke-static/range {v18 .. v18}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
6927     move-result-object v18
6929     aput-object v18, v20, v21
6931     invoke-static/range {v19 .. v20}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
6933     const/16 v18, 0x1
6935     move/from16 v0, v18
6937     move-object/from16 v1, p0
6939     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
6941     :cond_36d
6942     const/16 v18, 0x0
6944     move/from16 v0, v18
6946     move-object/from16 v1, p0
6948     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
6950     goto/16 :goto_40
6952     :cond_377
6953     const/16 v18, -0x1
6955     goto :goto_35c
6957     :pswitch_37a
6958     const-string v18, "EVENT_RESTRICTED_STATE_CHANGED"
6960     move-object/from16 v0, p0
6962     move-object/from16 v1, v18
6964     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
6966     move-object/from16 v0, p1
6968     iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
6970     check-cast v4, Landroid/os/AsyncResult;
6972     move-object/from16 v0, p0
6974     invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onRestrictedStateChanged(Landroid/os/AsyncResult;)V
6976     goto/16 :goto_40
6978     :pswitch_data_390
6979     .packed-switch 0x1
6980         :pswitch_ab
6981         :pswitch_b2
6982         :pswitch_b6
6983         :pswitch_1d7
6984         :pswitch_1d7
6985         :pswitch_1d7
6986         :pswitch_4a
6987         :pswitch_4a
6988         :pswitch_4a
6989         :pswitch_1ec
6990         :pswitch_201
6991         :pswitch_22e
6992         :pswitch_40
6993         :pswitch_1d7
6994         :pswitch_d6
6995         :pswitch_243
6996         :pswitch_4e
6997         :pswitch_248
6998         :pswitch_2c3
6999         :pswitch_26d
7000         :pswitch_298
7001         :pswitch_30b
7002         :pswitch_37a
7003     .end packed-switch
7004 .end method
7006 .method protected handlePollStateResult(ILandroid/os/AsyncResult;)V
7007     .registers 24
7009     move-object/from16 v0, p2
7011     iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
7013     move-object/from16 v17, v0
7015     move-object/from16 v0, p0
7017     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
7019     move-object/from16 v18, v0
7021     move-object/from16 v0, v17
7023     move-object/from16 v1, v18
7025     if-eq v0, v1, :cond_13
7027     :cond_12
7028     :goto_12
7029     return-void
7031     :cond_13
7032     move-object/from16 v0, p2
7034     iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
7036     move-object/from16 v17, v0
7038     if-eqz v17, :cond_e7
7040     const/4 v4, 0x0
7042     move-object/from16 v0, p2
7044     iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
7046     move-object/from16 v17, v0
7048     move-object/from16 v0, v17
7050     instance-of v0, v0, Lcom/android/internal/telephony/CommandException;
7052     move/from16 v17, v0
7054     if-eqz v17, :cond_38
7056     move-object/from16 v0, p2
7058     iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
7060     move-object/from16 v17, v0
7062     check-cast v17, Lcom/android/internal/telephony/CommandException;
7064     check-cast v17, Lcom/android/internal/telephony/CommandException;
7066     invoke-virtual/range {v17 .. v17}, Lcom/android/internal/telephony/CommandException;->getCommandError()Lcom/android/internal/telephony/CommandException$Error;
7068     move-result-object v4
7070     :cond_38
7071     sget-object v17, Lcom/android/internal/telephony/CommandException$Error;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/CommandException$Error;
7073     move-object/from16 v0, v17
7075     if-ne v4, v0, :cond_42
7077     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
7079     goto :goto_12
7081     :cond_42
7082     move-object/from16 v0, p0
7084     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
7086     move-object/from16 v17, v0
7088     invoke-interface/range {v17 .. v17}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
7090     move-result-object v17
7092     invoke-virtual/range {v17 .. v17}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
7094     move-result v17
7096     if-nez v17, :cond_56
7098     invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
7100     goto :goto_12
7102     :cond_56
7103     sget-object v17, Lcom/android/internal/telephony/CommandException$Error;->OP_NOT_ALLOWED_BEFORE_REG_NW:Lcom/android/internal/telephony/CommandException$Error;
7105     move-object/from16 v0, v17
7107     if-eq v4, v0, :cond_7c
7109     new-instance v17, Ljava/lang/StringBuilder;
7111     invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7113     const-string v18, "RIL implementation has returned an error where it must succeed"
7115     invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7117     move-result-object v17
7119     move-object/from16 v0, p2
7121     iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
7123     move-object/from16 v18, v0
7125     invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7127     move-result-object v17
7129     invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7131     move-result-object v17
7133     move-object/from16 v0, p0
7135     move-object/from16 v1, v17
7137     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
7139     :cond_7c
7140     :goto_7c
7141     move-object/from16 v0, p0
7143     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
7145     move-object/from16 v17, v0
7147     const/16 v18, 0x0
7149     aget v19, v17, v18
7151     add-int/lit8 v19, v19, -0x1
7153     aput v19, v17, v18
7155     move-object/from16 v0, p0
7157     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
7159     move-object/from16 v17, v0
7161     const/16 v18, 0x0
7163     aget v17, v17, v18
7165     if-nez v17, :cond_12
7167     move-object/from16 v0, p0
7169     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
7171     move/from16 v17, v0
7173     if-nez v17, :cond_a6
7175     move-object/from16 v0, p0
7177     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
7179     move/from16 v17, v0
7181     if-eqz v17, :cond_3c7
7183     :cond_a6
7184     const/4 v12, 0x1
7186     :goto_a7
7187     move-object/from16 v0, p0
7189     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
7191     move/from16 v17, v0
7193     if-eqz v17, :cond_c8
7195     move-object/from16 v0, p0
7197     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
7199     move/from16 v17, v0
7201     move-object/from16 v0, p0
7203     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7205     move-object/from16 v18, v0
7207     move-object/from16 v0, p0
7209     move/from16 v1, v17
7211     move-object/from16 v2, v18
7213     invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
7215     move-result v17
7217     if-nez v17, :cond_c8
7219     const/4 v12, 0x0
7221     :cond_c8
7222     move-object/from16 v0, p0
7224     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7226     move-object/from16 v17, v0
7228     move-object/from16 v0, v17
7230     invoke-virtual {v0, v12}, Landroid/telephony/ServiceState;->setRoaming(Z)V
7232     move-object/from16 v0, p0
7234     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7236     move-object/from16 v17, v0
7238     move-object/from16 v0, p0
7240     iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
7242     move/from16 v18, v0
7244     invoke-virtual/range {v17 .. v18}, Landroid/telephony/ServiceState;->setEmergencyOnly(Z)V
7246     invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
7248     goto/16 :goto_12
7250     :cond_e7
7251     :try_start_e7
7252     move-object/from16 v0, p0
7254     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7256     move-object/from16 v17, v0
7258     move-object/from16 v0, p0
7260     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
7262     move-object/from16 v18, v0
7264     invoke-virtual/range {v18 .. v18}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
7266     move-result-object v18
7268     const/16 v19, 0x0
7270     invoke-virtual/range {v17 .. v19}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
7272     move-result-object v13
7274     sparse-switch p1, :sswitch_data_3ca
7276     goto/16 :goto_7c
7278     :sswitch_102
7279     move-object/from16 v0, p2
7281     iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
7283     move-object/from16 v17, v0
7285     check-cast v17, [Ljava/lang/String;
7287     move-object/from16 v0, v17
7289     check-cast v0, [Ljava/lang/String;
7291     move-object v14, v0
7293     const/4 v7, -0x1
7295     const/4 v3, -0x1
7297     const/4 v11, -0x1
7299     const/4 v10, -0x1
7301     const/4 v9, -0x1
7303     array-length v0, v14
7305     move/from16 v17, v0
7306     :try_end_117
7307     .catch Ljava/lang/RuntimeException; {:try_start_e7 .. :try_end_117} :catch_1ec
7309     if-lez v17, :cond_185
7311     const/16 v17, 0x0
7313     :try_start_11b
7314     aget-object v17, v14, v17
7316     invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7318     move-result v11
7320     array-length v0, v14
7322     move/from16 v17, v0
7324     const/16 v18, 0x3
7326     move/from16 v0, v17
7328     move/from16 v1, v18
7330     if-lt v0, v1, :cond_160
7332     const/16 v17, 0x1
7334     aget-object v17, v14, v17
7336     if-eqz v17, :cond_146
7338     const/16 v17, 0x1
7340     aget-object v17, v14, v17
7342     invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
7344     move-result v17
7346     if-lez v17, :cond_146
7348     const/16 v17, 0x1
7350     aget-object v17, v14, v17
7352     const/16 v18, 0x10
7354     invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
7356     move-result v7
7358     :cond_146
7359     const/16 v17, 0x2
7361     aget-object v17, v14, v17
7363     if-eqz v17, :cond_160
7365     const/16 v17, 0x2
7367     aget-object v17, v14, v17
7369     invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
7371     move-result v17
7373     if-lez v17, :cond_160
7375     const/16 v17, 0x2
7377     aget-object v17, v14, v17
7379     const/16 v18, 0x10
7381     invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
7383     move-result v3
7385     :cond_160
7386     array-length v0, v14
7388     move/from16 v17, v0
7390     const/16 v18, 0xe
7392     move/from16 v0, v17
7394     move/from16 v1, v18
7396     if-le v0, v1, :cond_185
7398     const/16 v17, 0xe
7400     aget-object v17, v14, v17
7402     if-eqz v17, :cond_185
7404     const/16 v17, 0xe
7406     aget-object v17, v14, v17
7408     invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
7410     move-result v17
7412     if-lez v17, :cond_185
7414     const/16 v17, 0xe
7416     aget-object v17, v14, v17
7418     const/16 v18, 0x10
7420     invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
7421     :try_end_184
7422     .catch Ljava/lang/NumberFormatException; {:try_start_11b .. :try_end_184} :catch_20b
7423     .catch Ljava/lang/RuntimeException; {:try_start_11b .. :try_end_184} :catch_1ec
7425     move-result v9
7427     :cond_185
7428     :goto_185
7429     :try_start_185
7430     move-object/from16 v0, p0
7432     invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
7434     move-result v17
7436     move/from16 v0, v17
7438     move-object/from16 v1, p0
7440     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
7442     move-object/from16 v0, p0
7444     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7446     move-object/from16 v17, v0
7448     move-object/from16 v0, p0
7450     invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
7452     move-result v18
7454     invoke-virtual/range {v17 .. v18}, Landroid/telephony/ServiceState;->setState(I)V
7456     const/16 v17, 0xa
7458     move/from16 v0, v17
7460     if-eq v11, v0, :cond_1b8
7462     const/16 v17, 0xc
7464     move/from16 v0, v17
7466     if-eq v11, v0, :cond_1b8
7468     const/16 v17, 0xd
7470     move/from16 v0, v17
7472     if-eq v11, v0, :cond_1b8
7474     const/16 v17, 0xe
7476     move/from16 v0, v17
7478     if-ne v11, v0, :cond_22a
7480     :cond_1b8
7481     const/16 v17, 0x1
7483     move/from16 v0, v17
7485     move-object/from16 v1, p0
7487     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
7489     :goto_1c0
7490     move-object/from16 v0, p0
7492     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7494     move-object/from16 v17, v0
7496     if-eqz v17, :cond_233
7498     if-eqz v13, :cond_233
7500     invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
7502     move-result v17
7504     const/16 v18, 0x1
7506     move/from16 v0, v17
7508     move/from16 v1, v18
7510     if-ne v0, v1, :cond_233
7512     move-object/from16 v0, p0
7514     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7516     move-object/from16 v17, v0
7518     invoke-virtual/range {v17 .. v17}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
7520     move-object/from16 v0, p0
7522     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7524     move-object/from16 v17, v0
7526     move-object/from16 v0, v17
7528     invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
7529     :try_end_1ea
7530     .catch Ljava/lang/RuntimeException; {:try_start_185 .. :try_end_1ea} :catch_1ec
7532     goto/16 :goto_7c
7534     :catch_1ec
7535     move-exception v5
7537     new-instance v17, Ljava/lang/StringBuilder;
7539     invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7541     const-string v18, "Exception while polling service state. Probably malformed RIL response."
7543     invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7545     move-result-object v17
7547     move-object/from16 v0, v17
7549     invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7551     move-result-object v17
7553     invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7555     move-result-object v17
7557     move-object/from16 v0, p0
7559     move-object/from16 v1, v17
7561     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
7563     goto/16 :goto_7c
7565     :catch_20b
7566     move-exception v5
7568     :try_start_20c
7569     new-instance v17, Ljava/lang/StringBuilder;
7571     invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7573     const-string v18, "error parsing RegistrationState: "
7575     invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7577     move-result-object v17
7579     move-object/from16 v0, v17
7581     invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7583     move-result-object v17
7585     invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7587     move-result-object v17
7589     move-object/from16 v0, p0
7591     move-object/from16 v1, v17
7593     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
7595     goto/16 :goto_185
7597     :cond_22a
7598     const/16 v17, 0x0
7600     move/from16 v0, v17
7602     move-object/from16 v1, p0
7604     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
7606     goto :goto_1c0
7608     :cond_233
7609     move-object/from16 v0, p0
7611     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7613     move-object/from16 v17, v0
7615     if-eqz v17, :cond_26c
7617     if-eqz v13, :cond_26c
7619     invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
7621     move-result v17
7623     const/16 v18, 0x3
7625     move/from16 v0, v17
7627     move/from16 v1, v18
7629     if-ne v0, v1, :cond_26c
7631     new-instance v16, Ljava/util/Random;
7633     invoke-direct/range {v16 .. v16}, Ljava/util/Random;-><init>()V
7635     move-object/from16 v0, p0
7637     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7639     move-object/from16 v17, v0
7641     invoke-virtual/range {v16 .. v16}, Ljava/util/Random;->nextInt()I
7643     move-result v18
7645     invoke-virtual/range {v16 .. v16}, Ljava/util/Random;->nextInt()I
7647     move-result v19
7649     invoke-virtual/range {v17 .. v19}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
7651     move-object/from16 v0, p0
7653     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7655     move-object/from16 v17, v0
7657     move-object/from16 v0, v17
7659     invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
7661     goto/16 :goto_7c
7663     :cond_26c
7664     move-object/from16 v0, p0
7666     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7668     move-object/from16 v17, v0
7670     move-object/from16 v0, v17
7672     invoke-virtual {v0, v7, v3}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
7674     move-object/from16 v0, p0
7676     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
7678     move-object/from16 v17, v0
7680     move-object/from16 v0, v17
7682     invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
7684     goto/16 :goto_7c
7686     :sswitch_284
7687     move-object/from16 v0, p2
7689     iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
7691     move-object/from16 v17, v0
7693     check-cast v17, [Ljava/lang/String;
7695     move-object/from16 v0, v17
7697     check-cast v0, [Ljava/lang/String;
7699     move-object v14, v0
7701     const/4 v15, 0x0
7703     const/4 v11, -0x1
7705     const/16 v17, -0x1
7707     move/from16 v0, v17
7709     move-object/from16 v1, p0
7711     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
7713     const/16 v17, 0x1
7715     move/from16 v0, v17
7717     move-object/from16 v1, p0
7719     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
7721     array-length v0, v14
7723     move/from16 v17, v0
7724     :try_end_2a6
7725     .catch Ljava/lang/RuntimeException; {:try_start_20c .. :try_end_2a6} :catch_1ec
7727     if-lez v17, :cond_301
7729     const/16 v17, 0x0
7731     :try_start_2aa
7732     aget-object v17, v14, v17
7734     invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7736     move-result v11
7738     array-length v0, v14
7740     move/from16 v17, v0
7742     const/16 v18, 0x4
7744     move/from16 v0, v17
7746     move/from16 v1, v18
7748     if-lt v0, v1, :cond_2c9
7750     const/16 v17, 0x3
7752     aget-object v17, v14, v17
7754     if-eqz v17, :cond_2c9
7756     const/16 v17, 0x3
7758     aget-object v17, v14, v17
7760     invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7762     move-result v15
7764     :cond_2c9
7765     array-length v0, v14
7767     move/from16 v17, v0
7769     const/16 v18, 0x5
7771     move/from16 v0, v17
7773     move/from16 v1, v18
7775     if-lt v0, v1, :cond_2e8
7777     const/16 v17, 0x3
7779     move/from16 v0, v17
7781     if-ne v11, v0, :cond_2e8
7783     const/16 v17, 0x4
7785     aget-object v17, v14, v17
7787     invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7789     move-result v17
7791     move/from16 v0, v17
7793     move-object/from16 v1, p0
7795     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
7797     :cond_2e8
7798     array-length v0, v14
7800     move/from16 v17, v0
7802     const/16 v18, 0x6
7804     move/from16 v0, v17
7806     move/from16 v1, v18
7808     if-lt v0, v1, :cond_301
7810     const/16 v17, 0x5
7812     aget-object v17, v14, v17
7814     invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
7816     move-result v17
7818     move/from16 v0, v17
7820     move-object/from16 v1, p0
7822     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
7823     :try_end_301
7824     .catch Ljava/lang/NumberFormatException; {:try_start_2aa .. :try_end_301} :catch_32a
7825     .catch Ljava/lang/RuntimeException; {:try_start_2aa .. :try_end_301} :catch_1ec
7827     :cond_301
7828     :goto_301
7829     :try_start_301
7830     move-object/from16 v0, p0
7832     invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
7834     move-result v17
7836     move/from16 v0, v17
7838     move-object/from16 v1, p0
7840     iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
7842     move-object/from16 v0, p0
7844     invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
7846     move-result v17
7848     move/from16 v0, v17
7850     move-object/from16 v1, p0
7852     iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
7854     move-object/from16 v0, p0
7856     iput v15, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
7858     move-object/from16 v0, p0
7860     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7862     move-object/from16 v17, v0
7864     move-object/from16 v0, v17
7866     invoke-virtual {v0, v15}, Landroid/telephony/ServiceState;->setRadioTechnology(I)V
7868     goto/16 :goto_7c
7870     :catch_32a
7871     move-exception v5
7873     new-instance v17, Ljava/lang/StringBuilder;
7875     invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
7877     const-string v18, "error parsing GprsRegistrationState: "
7879     invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7881     move-result-object v17
7883     move-object/from16 v0, v17
7885     invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
7887     move-result-object v17
7889     invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7891     move-result-object v17
7893     move-object/from16 v0, p0
7895     move-object/from16 v1, v17
7897     invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
7899     goto :goto_301
7901     :sswitch_348
7902     move-object/from16 v0, p2
7904     iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
7906     move-object/from16 v17, v0
7908     check-cast v17, [Ljava/lang/String;
7910     move-object/from16 v0, v17
7912     check-cast v0, [Ljava/lang/String;
7914     move-object v8, v0
7916     if-eqz v8, :cond_7c
7918     array-length v0, v8
7920     move/from16 v17, v0
7922     const/16 v18, 0x3
7924     move/from16 v0, v17
7926     move/from16 v1, v18
7928     if-lt v0, v1, :cond_7c
7930     move-object/from16 v0, p0
7932     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7934     move-object/from16 v17, v0
7936     if-eqz v17, :cond_383
7938     if-eqz v13, :cond_383
7940     invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
7942     move-result v17
7944     if-eqz v17, :cond_383
7946     move-object/from16 v0, p0
7948     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7950     move-object/from16 v17, v0
7952     const-string v18, ""
7954     const-string v19, ""
7956     const-string v20, ""
7958     invoke-virtual/range {v17 .. v20}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
7960     goto/16 :goto_7c
7962     :cond_383
7963     move-object/from16 v0, p0
7965     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
7967     move-object/from16 v17, v0
7969     const/16 v18, 0x0
7971     aget-object v18, v8, v18
7973     const/16 v19, 0x1
7975     aget-object v19, v8, v19
7977     const/16 v20, 0x2
7979     aget-object v20, v8, v20
7981     invoke-virtual/range {v17 .. v20}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
7983     goto/16 :goto_7c
7985     :sswitch_39a
7986     move-object/from16 v0, p2
7988     iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
7990     move-object/from16 v17, v0
7992     check-cast v17, [I
7994     move-object/from16 v0, v17
7996     check-cast v0, [I
7998     move-object v6, v0
8000     move-object/from16 v0, p0
8002     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
8004     move-object/from16 v18, v0
8006     const/16 v17, 0x0
8008     aget v17, v6, v17
8010     const/16 v19, 0x1
8012     move/from16 v0, v17
8014     move/from16 v1, v19
8016     if-ne v0, v1, :cond_3c4
8018     const/16 v17, 0x1
8020     :goto_3bb
8021     move-object/from16 v0, v18
8023     move/from16 v1, v17
8025     invoke-virtual {v0, v1}, Landroid/telephony/ServiceState;->setIsManualSelection(Z)V
8026     :try_end_3c2
8027     .catch Ljava/lang/RuntimeException; {:try_start_301 .. :try_end_3c2} :catch_1ec
8029     goto/16 :goto_7c
8031     :cond_3c4
8032     const/16 v17, 0x0
8034     goto :goto_3bb
8036     :cond_3c7
8037     const/4 v12, 0x0
8039     goto/16 :goto_a7
8041     :sswitch_data_3ca
8042     .sparse-switch
8043         0x4 -> :sswitch_102
8044         0x5 -> :sswitch_284
8045         0x6 -> :sswitch_348
8046         0xe -> :sswitch_39a
8047     .end sparse-switch
8048 .end method
8050 .method protected hangupAndPowerOff()V
8051     .registers 4
8053     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8055     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GSMPhone;->isInCall()Z
8057     move-result v0
8059     if-eqz v0, :cond_23
8061     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8063     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
8065     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmCallTracker;->ringingCall:Lcom/android/internal/telephony/gsm/GsmCall;
8067     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
8069     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8071     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
8073     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmCallTracker;->backgroundCall:Lcom/android/internal/telephony/gsm/GsmCall;
8075     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
8077     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8079     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mCT:Lcom/android/internal/telephony/gsm/GsmCallTracker;
8081     iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmCallTracker;->foregroundCall:Lcom/android/internal/telephony/gsm/GsmCall;
8083     invoke-virtual {v0}, Lcom/android/internal/telephony/gsm/GsmCall;->hangupIfAlive()V
8085     :cond_23
8086     iget-object v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
8088     const/4 v1, 0x0
8090     const/4 v2, 0x0
8092     invoke-interface {v0, v1, v2}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
8094     return-void
8095 .end method
8097 .method public isConcurrentVoiceAndDataAllowed()Z
8098     .registers 3
8100     iget v0, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mRilRadioTechnology:I
8102     const/4 v1, 0x3
8104     if-lt v0, v1, :cond_7
8106     const/4 v0, 0x1
8108     :goto_6
8109     return v0
8111     :cond_7
8112     const/4 v0, 0x0
8114     goto :goto_6
8115 .end method
8117 .method protected log(Ljava/lang/String;)V
8118     .registers 5
8120     const-string v0, "GSM"
8122     new-instance v1, Ljava/lang/StringBuilder;
8124     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8126     const-string v2, "[GsmSST] "
8128     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8130     move-result-object v1
8132     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8134     move-result-object v1
8136     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8138     move-result-object v1
8140     invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
8142     return-void
8143 .end method
8145 .method protected loge(Ljava/lang/String;)V
8146     .registers 5
8148     const-string v0, "GSM"
8150     new-instance v1, Ljava/lang/StringBuilder;
8152     invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
8154     const-string v2, "[GsmSST] "
8156     invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8158     move-result-object v1
8160     invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8162     move-result-object v1
8164     invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8166     move-result-object v1
8168     invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8170     return-void
8171 .end method
8173 .method protected setPowerStateToDesired()V
8174     .registers 5
8176     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
8178     if-eqz v1, :cond_16
8180     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
8182     invoke-interface {v1}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
8184     move-result-object v1
8186     sget-object v2, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_OFF:Lcom/android/internal/telephony/CommandsInterface$RadioState;
8188     if-ne v1, v2, :cond_16
8190     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
8192     const/4 v2, 0x1
8194     const/4 v3, 0x0
8196     invoke-interface {v1, v2, v3}, Lcom/android/internal/telephony/CommandsInterface;->setRadioPower(ZLandroid/os/Message;)V
8198     :cond_15
8199     :goto_15
8200     return-void
8202     :cond_16
8203     iget-boolean v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDesiredPowerState:Z
8205     if-nez v1, :cond_15
8207     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
8209     invoke-interface {v1}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
8211     move-result-object v1
8213     invoke-virtual {v1}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
8215     move-result v1
8217     if-eqz v1, :cond_15
8219     iget-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8221     iget-object v0, v1, Lcom/android/internal/telephony/gsm/GSMPhone;->mDataConnectionTracker:Lcom/android/internal/telephony/DataConnectionTracker;
8223     invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->powerOffRadioSafely(Lcom/android/internal/telephony/DataConnectionTracker;)V
8225     goto :goto_15
8226 .end method
8228 .method protected updateSpnDisplay()V
8229     .registers 14
8231     const/4 v12, 0x2
8233     const/4 v7, 0x1
8235     const/4 v8, 0x0
8237     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8239     iget-object v9, v9, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
8241     iget-object v10, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
8243     invoke-virtual {v10}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
8245     move-result-object v10
8247     invoke-virtual {v9, v10}, Lcom/android/internal/telephony/IccRecords;->getDisplayRule(Ljava/lang/String;)I
8249     move-result v2
8251     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
8253     iget-object v10, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
8255     invoke-virtual {v10}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
8257     move-result-object v10
8259     invoke-virtual {v9, v10, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
8261     move-result-object v3
8263     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
8265     if-eqz v9, :cond_108
8267     if-eqz v3, :cond_108
8269     invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
8271     move-result v9
8273     if-eqz v9, :cond_108
8275     const-string v6, ""
8277     :goto_2b
8278     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
8280     invoke-virtual {v9}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
8282     move-result-object v1
8284     iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
8286     if-eqz v9, :cond_6d
8288     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
8290     invoke-interface {v9}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
8292     move-result-object v9
8294     invoke-virtual {v9}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
8296     move-result v9
8298     if-eqz v9, :cond_6d
8300     invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
8302     move-result-object v9
8304     const v10, 0x104033c
8306     invoke-virtual {v9, v10}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
8308     move-result-object v9
8310     invoke-virtual {v9}, Ljava/lang/Object;->toString()Ljava/lang/String;
8312     move-result-object v1
8314     new-instance v9, Ljava/lang/StringBuilder;
8316     invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
8318     const-string/jumbo v10, "updateSpnDisplay: emergency only and radio is on plmn=\'"
8320     invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8322     move-result-object v9
8324     invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8326     move-result-object v9
8328     const-string v10, "\'"
8330     invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8332     move-result-object v9
8334     invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8336     move-result-object v9
8338     invoke-virtual {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
8340     :cond_6d
8341     iget v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
8343     if-ne v2, v9, :cond_81
8345     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
8347     invoke-static {v6, v9}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
8349     move-result v9
8351     if-eqz v9, :cond_81
8353     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
8355     invoke-static {v1, v9}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
8357     move-result v9
8359     if-nez v9, :cond_101
8361     :cond_81
8362     iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
8364     if-nez v9, :cond_112
8366     invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
8368     move-result v9
8370     if-nez v9, :cond_112
8372     and-int/lit8 v9, v2, 0x1
8374     if-ne v9, v7, :cond_112
8376     move v5, v7
8378     :goto_90
8379     invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
8381     move-result v9
8383     if-nez v9, :cond_115
8385     iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
8387     if-nez v9, :cond_9e
8389     and-int/lit8 v9, v2, 0x2
8391     if-ne v9, v12, :cond_115
8393     :cond_9e
8394     move v4, v7
8396     :goto_9f
8397     new-instance v9, Ljava/lang/StringBuilder;
8399     invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
8401     const-string/jumbo v10, "updateSpnDisplay: changed sending intent rule="
8403     invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8405     move-result-object v9
8407     invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
8409     move-result-object v9
8411     const-string v10, " showPlmn=\'%b\' plmn=\'%s\' showSpn=\'%b\' spn=\'%s\'"
8413     invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8415     move-result-object v9
8417     invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8419     move-result-object v9
8421     const/4 v10, 0x4
8423     new-array v10, v10, [Ljava/lang/Object;
8425     invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
8427     move-result-object v11
8429     aput-object v11, v10, v8
8431     aput-object v1, v10, v7
8433     invoke-static {v5}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
8435     move-result-object v7
8437     aput-object v7, v10, v12
8439     const/4 v7, 0x3
8441     aput-object v6, v10, v7
8443     invoke-static {v9, v10}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
8445     move-result-object v7
8447     invoke-virtual {p0, v7}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
8449     new-instance v0, Landroid/content/Intent;
8451     const-string v7, "android.provider.Telephony.SPN_STRINGS_UPDATED"
8453     invoke-direct {v0, v7}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
8455     const/high16 v7, 0x2000
8457     invoke-virtual {v0, v7}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
8459     const-string/jumbo v7, "showSpn"
8461     invoke-virtual {v0, v7, v5}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
8463     const-string/jumbo v7, "spn"
8465     invoke-virtual {v0, v7, v6}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
8467     const-string/jumbo v7, "showPlmn"
8469     invoke-virtual {v0, v7, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
8471     const-string/jumbo v7, "plmn"
8473     invoke-virtual {v0, v7, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
8475     iget-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8477     invoke-virtual {v7}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
8479     move-result-object v7
8481     invoke-virtual {v7, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
8483     :cond_101
8484     iput v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
8486     iput-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
8488     iput-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
8490     return-void
8492     :cond_108
8493     iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
8495     iget-object v9, v9, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
8497     invoke-virtual {v9}, Lcom/android/internal/telephony/IccRecords;->getServiceProviderName()Ljava/lang/String;
8499     move-result-object v6
8501     goto/16 :goto_2b
8503     :cond_112
8504     move v5, v8
8506     goto/16 :goto_90
8508     :cond_115
8509     move v4, v8
8511     goto :goto_9f
8512 .end method