Add SlimRom OpenPdroid; Hide folders+rearrange for ApG
[auto-patcher.git] / patches / pd2.0 / 4.1 / .aosp-ever / 20121102 / framework.patch
blob2850864eb0295d85ec5169239f73826288b631bb
1 diff -Npru stock-framework/smali/android/app/ContextImpl$20.smali ext-framework/smali/android/app/ContextImpl$20.smali
2 --- stock-framework/smali/android/app/ContextImpl$20.smali 2012-11-02 22:31:06.659965172 -0500
3 +++ ext-framework/smali/android/app/ContextImpl$20.smali 2012-11-02 22:30:46.159863518 -0500
4 @@ -26,7 +26,7 @@
6 # virtual methods
7 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
8 - .registers 5
9 + .registers 6
11 const-string v1, "location"
13 @@ -34,13 +34,17 @@
15 move-result-object v0
17 - new-instance v1, Landroid/location/LocationManager;
18 + new-instance v1, Landroid/privacy/surrogate/PrivacyLocationManager;
20 invoke-static {v0}, Landroid/location/ILocationManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/location/ILocationManager;
22 move-result-object v2
24 - invoke-direct {v1, p1, v2}, Landroid/location/LocationManager;-><init>(Landroid/content/Context;Landroid/location/ILocationManager;)V
25 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
27 + move-result-object v3
29 + invoke-direct {v1, v2, v3}, Landroid/privacy/surrogate/PrivacyLocationManager;-><init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
31 return-object v1
32 .end method
33 diff -Npru stock-framework/smali/android/app/ContextImpl$29.smali ext-framework/smali/android/app/ContextImpl$29.smali
34 --- stock-framework/smali/android/app/ContextImpl$29.smali 2012-11-02 22:31:06.675965252 -0500
35 +++ ext-framework/smali/android/app/ContextImpl$29.smali 2012-11-02 22:30:46.163863538 -0500
36 @@ -28,13 +28,13 @@
37 .method public createService(Landroid/app/ContextImpl;)Ljava/lang/Object;
38 .registers 4
40 - new-instance v0, Landroid/telephony/TelephonyManager;
41 + new-instance v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;
43 invoke-virtual {p1}, Landroid/app/ContextImpl;->getOuterContext()Landroid/content/Context;
45 move-result-object v1
47 - invoke-direct {v0, v1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
48 + invoke-direct {v0, v1}, Landroid/privacy/surrogate/PrivacyTelephonyManager;-><init>(Landroid/content/Context;)V
50 return-object v0
51 .end method
52 diff -Npru stock-framework/smali/android/app/ContextImpl$35.smali ext-framework/smali/android/app/ContextImpl$35.smali
53 --- stock-framework/smali/android/app/ContextImpl$35.smali 2012-11-02 22:31:06.679965280 -0500
54 +++ ext-framework/smali/android/app/ContextImpl$35.smali 2012-11-02 22:30:46.167863565 -0500
55 @@ -38,7 +38,7 @@
57 move-result-object v1
59 - new-instance v2, Landroid/net/wifi/WifiManager;
60 + new-instance v2, Landroid/privacy/surrogate/PrivacyWifiManager;
62 iget-object v3, p1, Landroid/app/ContextImpl;->mMainThread:Landroid/app/ActivityThread;
64 @@ -46,7 +46,7 @@
66 move-result-object v3
68 - invoke-direct {v2, v1, v3}, Landroid/net/wifi/WifiManager;-><init>(Landroid/net/wifi/IWifiManager;Landroid/os/Handler;)V
69 + invoke-direct {v2, v1, v3, p1}, Landroid/privacy/surrogate/PrivacyWifiManager;-><init>(Landroid/net/wifi/IWifiManager;Landroid/os/Handler;Landroid/content/Context;)V
71 return-object v2
72 .end method
73 diff -Npru stock-framework/smali/android/app/ContextImpl$38.smali ext-framework/smali/android/app/ContextImpl$38.smali
74 --- stock-framework/smali/android/app/ContextImpl$38.smali 1969-12-31 18:00:00.000000000 -0600
75 +++ ext-framework/smali/android/app/ContextImpl$38.smali 2012-11-02 22:30:46.167863565 -0500
76 @@ -0,0 +1,50 @@
77 +.class final Landroid/app/ContextImpl$38;
78 +.super Landroid/app/ContextImpl$StaticServiceFetcher;
79 +.source "ContextImpl.java"
82 +# annotations
83 +.annotation system Ldalvik/annotation/EnclosingClass;
84 + value = Landroid/app/ContextImpl;
85 +.end annotation
87 +.annotation system Ldalvik/annotation/InnerClass;
88 + accessFlags = 0x8
89 + name = null
90 +.end annotation
93 +# direct methods
94 +.method constructor <init>()V
95 + .registers 1
97 + invoke-direct {p0}, Landroid/app/ContextImpl$StaticServiceFetcher;-><init>()V
99 + return-void
100 +.end method
103 +# virtual methods
104 +.method public createStaticService()Ljava/lang/Object;
105 + .registers 5
107 + const-string/jumbo v2, "privacy"
109 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
111 + move-result-object v0
113 + invoke-static {v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
115 + move-result-object v1
117 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
119 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
121 + move-result-object v3
123 + invoke-direct {v2, v3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
125 + return-object v2
126 +.end method
127 diff -Npru stock-framework/smali/android/app/ContextImpl$3.smali ext-framework/smali/android/app/ContextImpl$3.smali
128 --- stock-framework/smali/android/app/ContextImpl$3.smali 2012-11-02 22:31:06.687965309 -0500
129 +++ ext-framework/smali/android/app/ContextImpl$3.smali 2012-11-02 22:30:46.167863565 -0500
130 @@ -38,9 +38,9 @@
132 move-result-object v1
134 - new-instance v2, Landroid/accounts/AccountManager;
135 + new-instance v2, Landroid/privacy/surrogate/PrivacyAccountManager;
137 - invoke-direct {v2, p1, v1}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
138 + invoke-direct {v2, p1, v1}, Landroid/privacy/surrogate/PrivacyAccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
140 return-object v2
141 .end method
142 diff -Npru stock-framework/smali/android/app/ContextImpl$9.smali ext-framework/smali/android/app/ContextImpl$9.smali
143 --- stock-framework/smali/android/app/ContextImpl$9.smali 2012-11-02 22:31:06.691965329 -0500
144 +++ ext-framework/smali/android/app/ContextImpl$9.smali 2012-11-02 22:30:46.171863577 -0500
145 @@ -26,21 +26,25 @@
147 # virtual methods
148 .method public createStaticService()Ljava/lang/Object;
149 - .registers 4
150 + .registers 5
152 - const-string v1, "connectivity"
153 + const-string v2, "connectivity"
155 - invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
156 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
158 move-result-object v0
160 - new-instance v1, Landroid/net/ConnectivityManager;
162 invoke-static {v0}, Landroid/net/IConnectivityManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/net/IConnectivityManager;
164 - move-result-object v2
165 + move-result-object v1
167 + new-instance v2, Landroid/privacy/surrogate/PrivacyConnectivityManager;
169 + invoke-static {}, Landroid/app/ContextImpl;->getStaticOuterContext()Landroid/content/Context;
171 + move-result-object v3
173 - invoke-direct {v1, v2}, Landroid/net/ConnectivityManager;-><init>(Landroid/net/IConnectivityManager;)V
174 + invoke-direct {v2, v1, v3}, Landroid/privacy/surrogate/PrivacyConnectivityManager;-><init>(Landroid/net/IConnectivityManager;Landroid/content/Context;)V
176 - return-object v1
177 + return-object v2
178 .end method
179 diff -Npru stock-framework/smali/android/app/ContextImpl.smali ext-framework/smali/android/app/ContextImpl.smali
180 --- stock-framework/smali/android/app/ContextImpl.smali 2012-11-02 22:31:06.751965633 -0500
181 +++ ext-framework/smali/android/app/ContextImpl.smali 2012-11-02 22:30:46.191863677 -0500
182 @@ -36,6 +36,8 @@
184 .field private static sNextPerContextServiceCacheIndex:I
186 +.field private static sOuterContext:Landroid/content/Context;
188 .field private static final sSharedPrefs:Ljava/util/HashMap;
189 .annotation system Ldalvik/annotation/Signature;
190 value = {
191 @@ -426,6 +428,14 @@
193 invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
195 + const-string/jumbo v0, "privacy"
197 + new-instance v1, Landroid/app/ContextImpl$38;
199 + invoke-direct {v1}, Landroid/app/ContextImpl$38;-><init>()V
201 + invoke-static {v0, v1}, Landroid/app/ContextImpl;->registerService(Ljava/lang/String;Landroid/app/ContextImpl$ServiceFetcher;)V
203 return-void
204 .end method
206 @@ -460,6 +470,8 @@
208 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
210 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
212 return-void
213 .end method
215 @@ -514,6 +526,8 @@
217 iput-object p0, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
219 + sput-object p0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
221 return-void
222 .end method
224 @@ -983,6 +997,14 @@
225 throw v0
226 .end method
228 +.method static final getStaticOuterContext()Landroid/content/Context;
229 + .registers 1
231 + sget-object v0, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
233 + return-object v0
234 +.end method
236 .method private getWallpaperManager()Landroid/app/WallpaperManager;
237 .registers 2
239 @@ -4256,6 +4278,8 @@
241 iput-object p1, p0, Landroid/app/ContextImpl;->mOuterContext:Landroid/content/Context;
243 + sput-object p1, Landroid/app/ContextImpl;->sOuterContext:Landroid/content/Context;
245 return-void
246 .end method
248 diff -Npru stock-framework/smali/android/app/Fragment.smali ext-framework/smali/android/app/Fragment.smali
249 --- stock-framework/smali/android/app/Fragment.smali 2012-11-02 22:31:06.767965715 -0500
250 +++ ext-framework/smali/android/app/Fragment.smali 2012-11-02 22:30:46.199863723 -0500
251 @@ -359,7 +359,7 @@
253 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
255 - const-string v0, "mFragmentId=#"
256 + const-string/jumbo v0, "mFragmentId=#"
258 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
260 @@ -469,7 +469,7 @@
262 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
264 - const-string v0, "mHidden="
265 + const-string/jumbo v0, "mHidden="
267 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
269 @@ -529,11 +529,11 @@
271 iget-object v0, p0, Landroid/app/Fragment;->mFragmentManager:Landroid/app/FragmentManagerImpl;
273 - if-eqz v0, :cond_e8
274 + if-eqz v0, :cond_eb
276 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
278 - const-string v0, "mFragmentManager="
279 + const-string/jumbo v0, "mFragmentManager="
281 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
283 @@ -541,10 +541,10 @@
285 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
287 - :cond_e8
288 + :cond_eb
289 iget-object v0, p0, Landroid/app/Fragment;->mActivity:Landroid/app/Activity;
291 - if-eqz v0, :cond_f9
292 + if-eqz v0, :cond_fc
294 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
296 @@ -556,10 +556,10 @@
298 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
300 - :cond_f9
301 + :cond_fc
302 iget-object v0, p0, Landroid/app/Fragment;->mArguments:Landroid/os/Bundle;
304 - if-eqz v0, :cond_10a
305 + if-eqz v0, :cond_10d
307 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
309 @@ -571,10 +571,10 @@
311 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
313 - :cond_10a
314 + :cond_10d
315 iget-object v0, p0, Landroid/app/Fragment;->mSavedFragmentState:Landroid/os/Bundle;
317 - if-eqz v0, :cond_11c
318 + if-eqz v0, :cond_11f
320 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
322 @@ -586,10 +586,10 @@
324 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
326 - :cond_11c
327 + :cond_11f
328 iget-object v0, p0, Landroid/app/Fragment;->mSavedViewState:Landroid/util/SparseArray;
330 - if-eqz v0, :cond_12e
331 + if-eqz v0, :cond_131
333 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
335 @@ -601,10 +601,10 @@
337 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
339 - :cond_12e
340 + :cond_131
341 iget-object v0, p0, Landroid/app/Fragment;->mTarget:Landroid/app/Fragment;
343 - if-eqz v0, :cond_14a
344 + if-eqz v0, :cond_14d
346 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
348 @@ -624,10 +624,10 @@
350 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
352 - :cond_14a
353 + :cond_14d
354 iget v0, p0, Landroid/app/Fragment;->mNextAnim:I
356 - if-eqz v0, :cond_15c
357 + if-eqz v0, :cond_15f
359 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
361 @@ -639,10 +639,10 @@
363 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
365 - :cond_15c
366 + :cond_15f
367 iget-object v0, p0, Landroid/app/Fragment;->mContainer:Landroid/view/ViewGroup;
369 - if-eqz v0, :cond_16d
370 + if-eqz v0, :cond_170
372 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
374 @@ -654,10 +654,10 @@
376 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
378 - :cond_16d
379 + :cond_170
380 iget-object v0, p0, Landroid/app/Fragment;->mView:Landroid/view/View;
382 - if-eqz v0, :cond_17f
383 + if-eqz v0, :cond_182
385 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
387 @@ -669,10 +669,10 @@
389 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
391 - :cond_17f
392 + :cond_182
393 iget-object v0, p0, Landroid/app/Fragment;->mAnimatingAway:Landroid/animation/Animator;
395 - if-eqz v0, :cond_19e
396 + if-eqz v0, :cond_1a1
398 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
400 @@ -694,10 +694,10 @@
402 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(I)V
404 - :cond_19e
405 + :cond_1a1
406 iget-object v0, p0, Landroid/app/Fragment;->mLoaderManager:Landroid/app/LoaderManagerImpl;
408 - if-eqz v0, :cond_1c2
409 + if-eqz v0, :cond_1c5
411 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
413 @@ -727,7 +727,7 @@
415 invoke-virtual {v0, v1, p2, p3, p4}, Landroid/app/LoaderManagerImpl;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
417 - :cond_1c2
418 + :cond_1c5
419 return-void
420 .end method
422 diff -Npru stock-framework/smali/android/app/Instrumentation$1.smali ext-framework/smali/android/app/Instrumentation$1.smali
423 --- stock-framework/smali/android/app/Instrumentation$1.smali 2012-11-02 22:31:07.067967196 -0500
424 +++ ext-framework/smali/android/app/Instrumentation$1.smali 2012-11-02 22:30:46.571865559 -0500
425 @@ -1,14 +1,96 @@
426 -.class synthetic Landroid/app/Instrumentation$1;
427 +.class Landroid/app/Instrumentation$1;
428 .super Ljava/lang/Object;
429 .source "Instrumentation.java"
431 +# interfaces
432 +.implements Ljava/lang/Runnable;
435 # annotations
436 -.annotation system Ldalvik/annotation/EnclosingClass;
437 - value = Landroid/app/Instrumentation;
438 +.annotation system Ldalvik/annotation/EnclosingMethod;
439 + value = Landroid/app/Instrumentation;->execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
440 .end annotation
442 .annotation system Ldalvik/annotation/InnerClass;
443 - accessFlags = 0x1008
444 + accessFlags = 0x0
445 name = null
446 .end annotation
449 +# instance fields
450 +.field final synthetic this$0:Landroid/app/Instrumentation;
452 +.field final synthetic val$tmp:Landroid/content/Context;
455 +# direct methods
456 +.method constructor <init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
457 + .registers 3
459 + iput-object p1, p0, Landroid/app/Instrumentation$1;->this$0:Landroid/app/Instrumentation;
461 + iput-object p2, p0, Landroid/app/Instrumentation$1;->val$tmp:Landroid/content/Context;
463 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
465 + return-void
466 +.end method
469 +# virtual methods
470 +.method public run()V
471 + .registers 5
473 + const-wide/16 v2, 0x3e8
475 + :try_start_2
476 + invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V
477 + :try_end_5
478 + .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_5} :catch_35
480 + :goto_5
481 + new-instance v1, Landroid/content/Intent;
483 + const-string v2, "android.privacy.BLOCKED_PHONE_CALL"
485 + invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
487 + new-instance v0, Landroid/os/Bundle;
489 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
491 + const-string/jumbo v2, "packageName"
493 + iget-object v3, p0, Landroid/app/Instrumentation$1;->val$tmp:Landroid/content/Context;
495 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
497 + move-result-object v3
499 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
501 + const-string/jumbo v2, "phoneState"
503 + const/4 v3, 0x0
505 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V
507 + invoke-virtual {v1, v0}, Landroid/content/Intent;->putExtras(Landroid/os/Bundle;)Landroid/content/Intent;
509 + iget-object v2, p0, Landroid/app/Instrumentation$1;->val$tmp:Landroid/content/Context;
511 + invoke-virtual {v2, v1}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
513 + const-string v2, "PrivacyContext"
515 + const-string/jumbo v3, "sent privacy intent"
517 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
519 + return-void
521 + :catch_35
522 + move-exception v2
524 + goto :goto_5
525 +.end method
526 diff -Npru stock-framework/smali/android/app/Instrumentation$2.smali ext-framework/smali/android/app/Instrumentation$2.smali
527 --- stock-framework/smali/android/app/Instrumentation$2.smali 1969-12-31 18:00:00.000000000 -0600
528 +++ ext-framework/smali/android/app/Instrumentation$2.smali 2012-11-02 22:30:46.571865559 -0500
529 @@ -0,0 +1,96 @@
530 +.class Landroid/app/Instrumentation$2;
531 +.super Ljava/lang/Object;
532 +.source "Instrumentation.java"
534 +# interfaces
535 +.implements Ljava/lang/Runnable;
538 +# annotations
539 +.annotation system Ldalvik/annotation/EnclosingMethod;
540 + value = Landroid/app/Instrumentation;->execStartActivities(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;[Landroid/content/Intent;Landroid/os/Bundle;)V
541 +.end annotation
543 +.annotation system Ldalvik/annotation/InnerClass;
544 + accessFlags = 0x0
545 + name = null
546 +.end annotation
549 +# instance fields
550 +.field final synthetic this$0:Landroid/app/Instrumentation;
552 +.field final synthetic val$ctx:Landroid/content/Context;
555 +# direct methods
556 +.method constructor <init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
557 + .registers 3
559 + iput-object p1, p0, Landroid/app/Instrumentation$2;->this$0:Landroid/app/Instrumentation;
561 + iput-object p2, p0, Landroid/app/Instrumentation$2;->val$ctx:Landroid/content/Context;
563 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
565 + return-void
566 +.end method
569 +# virtual methods
570 +.method public run()V
571 + .registers 5
573 + const-wide/16 v2, 0x3e8
575 + :try_start_2
576 + invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V
577 + :try_end_5
578 + .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_5} :catch_35
580 + :goto_5
581 + new-instance v1, Landroid/content/Intent;
583 + const-string v2, "android.privacy.BLOCKED_PHONE_CALL"
585 + invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
587 + new-instance v0, Landroid/os/Bundle;
589 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
591 + const-string/jumbo v2, "packageName"
593 + iget-object v3, p0, Landroid/app/Instrumentation$2;->val$ctx:Landroid/content/Context;
595 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
597 + move-result-object v3
599 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
601 + const-string/jumbo v2, "phoneState"
603 + const/4 v3, 0x0
605 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V
607 + invoke-virtual {v1, v0}, Landroid/content/Intent;->putExtras(Landroid/os/Bundle;)Landroid/content/Intent;
609 + iget-object v2, p0, Landroid/app/Instrumentation$2;->val$ctx:Landroid/content/Context;
611 + invoke-virtual {v2, v1}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
613 + const-string v2, "PrivacyContext"
615 + const-string/jumbo v3, "sent privacy intent"
617 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
619 + return-void
621 + :catch_35
622 + move-exception v2
624 + goto :goto_5
625 +.end method
626 diff -Npru stock-framework/smali/android/app/Instrumentation$3.smali ext-framework/smali/android/app/Instrumentation$3.smali
627 --- stock-framework/smali/android/app/Instrumentation$3.smali 1969-12-31 18:00:00.000000000 -0600
628 +++ ext-framework/smali/android/app/Instrumentation$3.smali 2012-11-02 22:30:46.571865559 -0500
629 @@ -0,0 +1,96 @@
630 +.class Landroid/app/Instrumentation$3;
631 +.super Ljava/lang/Object;
632 +.source "Instrumentation.java"
634 +# interfaces
635 +.implements Ljava/lang/Runnable;
638 +# annotations
639 +.annotation system Ldalvik/annotation/EnclosingMethod;
640 + value = Landroid/app/Instrumentation;->execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Fragment;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
641 +.end annotation
643 +.annotation system Ldalvik/annotation/InnerClass;
644 + accessFlags = 0x0
645 + name = null
646 +.end annotation
649 +# instance fields
650 +.field final synthetic this$0:Landroid/app/Instrumentation;
652 +.field final synthetic val$tmp:Landroid/content/Context;
655 +# direct methods
656 +.method constructor <init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
657 + .registers 3
659 + iput-object p1, p0, Landroid/app/Instrumentation$3;->this$0:Landroid/app/Instrumentation;
661 + iput-object p2, p0, Landroid/app/Instrumentation$3;->val$tmp:Landroid/content/Context;
663 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
665 + return-void
666 +.end method
669 +# virtual methods
670 +.method public run()V
671 + .registers 5
673 + const-wide/16 v2, 0x3e8
675 + :try_start_2
676 + invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V
677 + :try_end_5
678 + .catch Ljava/lang/Exception; {:try_start_2 .. :try_end_5} :catch_35
680 + :goto_5
681 + new-instance v1, Landroid/content/Intent;
683 + const-string v2, "android.privacy.BLOCKED_PHONE_CALL"
685 + invoke-direct {v1, v2}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
687 + new-instance v0, Landroid/os/Bundle;
689 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
691 + const-string/jumbo v2, "packageName"
693 + iget-object v3, p0, Landroid/app/Instrumentation$3;->val$tmp:Landroid/content/Context;
695 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
697 + move-result-object v3
699 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putString(Ljava/lang/String;Ljava/lang/String;)V
701 + const-string/jumbo v2, "phoneState"
703 + const/4 v3, 0x0
705 + invoke-virtual {v0, v2, v3}, Landroid/os/Bundle;->putInt(Ljava/lang/String;I)V
707 + invoke-virtual {v1, v0}, Landroid/content/Intent;->putExtras(Landroid/os/Bundle;)Landroid/content/Intent;
709 + iget-object v2, p0, Landroid/app/Instrumentation$3;->val$tmp:Landroid/content/Context;
711 + invoke-virtual {v2, v1}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
713 + const-string v2, "PrivacyContext"
715 + const-string/jumbo v3, "sent privacy intent"
717 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
719 + return-void
721 + :catch_35
722 + move-exception v2
724 + goto :goto_5
725 +.end method
726 diff -Npru stock-framework/smali/android/app/Instrumentation.smali ext-framework/smali/android/app/Instrumentation.smali
727 --- stock-framework/smali/android/app/Instrumentation.smali 2012-11-02 22:31:07.083967273 -0500
728 +++ ext-framework/smali/android/app/Instrumentation.smali 2012-11-02 22:30:46.595865688 -0500
729 @@ -6,7 +6,6 @@
730 # annotations
731 .annotation system Ldalvik/annotation/MemberClasses;
732 value = {
733 - Landroid/app/Instrumentation$1;,
734 Landroid/app/Instrumentation$Idler;,
735 Landroid/app/Instrumentation$ActivityGoing;,
736 Landroid/app/Instrumentation$ActivityWaiter;,
737 @@ -72,6 +71,8 @@
739 .field private mWatcher:Landroid/app/IInstrumentationWatcher;
741 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
744 # direct methods
745 .method public constructor <init>()V
746 @@ -865,510 +866,1408 @@
747 .end method
749 .method public execStartActivities(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;[Landroid/content/Intent;Landroid/os/Bundle;)V
750 - .registers 17
752 - move-object v1, p2
753 + .registers 25
755 - check-cast v1, Landroid/app/IApplicationThread;
756 + move-object/from16 v17, p2
758 - iget-object v0, p0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
759 + check-cast v17, Landroid/app/IApplicationThread;
761 - if-eqz v0, :cond_37
762 + const/4 v14, 0x1
764 - iget-object v2, p0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
765 + :try_start_5
766 + const-string v1, "PrivacyContext"
768 - monitor-enter v2
769 + new-instance v2, Ljava/lang/StringBuilder;
771 - :try_start_a
772 - iget-object v0, p0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
773 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
775 - invoke-interface {v0}, Ljava/util/List;->size()I
776 + const-string/jumbo v3, "now we are in execStartActivities() from package: "
778 - move-result v6
779 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
781 - const/4 v8, 0x0
782 + move-result-object v2
784 - :goto_11
785 - if-ge v8, v6, :cond_36
786 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
788 - iget-object v0, p0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
789 + move-result-object v3
791 - invoke-interface {v0, v8}, Ljava/util/List;->get(I)Ljava/lang/Object;
792 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
794 - move-result-object v7
795 + move-result-object v2
797 - check-cast v7, Landroid/app/Instrumentation$ActivityMonitor;
798 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
800 - const/4 v0, 0x0
801 + move-result-object v2
803 - const/4 v4, 0x0
804 + invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
806 - aget-object v4, p5, v4
807 + new-instance v16, Ljava/util/ArrayList;
809 - invoke-virtual {v7, p1, v0, v4}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
810 + invoke-direct/range {v16 .. v16}, Ljava/util/ArrayList;-><init>()V
812 - move-result v0
813 + const/4 v10, 0x0
815 - if-eqz v0, :cond_33
816 + const/4 v13, 0x0
818 - iget v0, v7, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
819 + :goto_29
820 + move-object/from16 v0, p5
822 - add-int/lit8 v0, v0, 0x1
823 + array-length v1, v0
825 - iput v0, v7, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
826 + if-ge v13, v1, :cond_b2
828 - invoke-virtual {v7}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
829 + aget-object v1, p5, v13
831 - move-result v0
832 + invoke-virtual {v1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
834 - if-eqz v0, :cond_36
835 + move-result-object v1
837 - monitor-exit v2
838 + const-string v2, "android.intent.action.CALL"
840 - :goto_32
841 - return-void
842 + invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
844 - :cond_33
845 - add-int/lit8 v8, v8, 0x1
846 + move-result v1
848 - goto :goto_11
849 + if-nez v1, :cond_4a
851 - :cond_36
852 - monitor-exit v2
853 - :try_end_37
854 - .catchall {:try_start_a .. :try_end_37} :catchall_53
855 + aget-object v1, p5, v13
857 - :cond_37
858 - :try_start_37
859 - array-length v0, p5
860 + invoke-virtual {v1}, Landroid/content/Intent;->getAction()Ljava/lang/String;
862 - new-array v3, v0, [Ljava/lang/String;
863 + move-result-object v1
865 - const/4 v8, 0x0
866 + const-string v2, "android.intent.action.DIAL"
868 - :goto_3b
869 - array-length v0, p5
870 + invoke-virtual {v1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
872 - if-ge v8, v0, :cond_56
873 + move-result v1
875 - aget-object v0, p5, v8
876 + if-eqz v1, :cond_4e
878 - const/4 v2, 0x0
879 + :cond_4a
880 + const/4 v10, 0x1
882 - invoke-virtual {v0, v2}, Landroid/content/Intent;->setAllowFds(Z)V
883 + :goto_4b
884 + add-int/lit8 v13, v13, 0x1
886 - aget-object v0, p5, v8
887 + goto :goto_29
889 - invoke-virtual {p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
890 + :cond_4e
891 + aget-object v1, p5, v13
893 - move-result-object v2
894 + move-object/from16 v0, v16
896 - invoke-virtual {v0, v2}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
897 + invoke-interface {v0, v1}, Ljava/util/List;->add(Ljava/lang/Object;)Z
898 + :try_end_55
899 + .catch Ljava/lang/Exception; {:try_start_5 .. :try_end_55} :catch_56
901 - move-result-object v0
902 + goto :goto_4b
904 - aput-object v0, v3, v8
905 - :try_end_50
906 - .catch Landroid/os/RemoteException; {:try_start_37 .. :try_end_50} :catch_69
907 + :catch_56
908 + move-exception v12
910 - add-int/lit8 v8, v8, 0x1
911 + invoke-virtual {v12}, Ljava/lang/Exception;->printStackTrace()V
913 - goto :goto_3b
914 + if-eqz p1, :cond_15c
916 - :catchall_53
917 - move-exception v0
918 + const-string v1, "PrivacyContext"
920 - :try_start_54
921 - monitor-exit v2
922 - :try_end_55
923 - .catchall {:try_start_54 .. :try_end_55} :catchall_53
924 + new-instance v2, Ljava/lang/StringBuilder;
926 - throw v0
927 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
929 - :cond_56
930 - :try_start_56
931 - invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
932 + const-string v3, "got exception while trying to resolve intents for package: "
934 - move-result-object v0
935 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
937 - move-object v2, p5
938 + move-result-object v2
940 - move-object v4, p3
941 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
943 - move-object/from16 v5, p6
944 + move-result-object v3
946 - invoke-interface/range {v0 .. v5}, Landroid/app/IActivityManager;->startActivities(Landroid/app/IApplicationThread;[Landroid/content/Intent;[Ljava/lang/String;Landroid/os/IBinder;Landroid/os/Bundle;)I
947 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
949 - move-result v9
950 + move-result-object v2
952 - const/4 v0, 0x0
953 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
955 - aget-object v0, p5, v0
956 + move-result-object v2
958 - invoke-static {v9, v0}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
959 - :try_end_68
960 - .catch Landroid/os/RemoteException; {:try_start_56 .. :try_end_68} :catch_69
961 + invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
963 - goto :goto_32
964 + :goto_78
965 + move-object/from16 v0, p0
967 - :catch_69
968 - move-exception v0
969 + iget-object v1, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
971 - goto :goto_32
972 -.end method
973 + if-eqz v1, :cond_16a
975 -.method public execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
976 - .registers 25
977 + move-object/from16 v0, p0
979 - move-object/from16 v3, p2
980 + iget-object v2, v0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
982 - check-cast v3, Landroid/app/IApplicationThread;
983 + monitor-enter v2
985 + :try_start_83
986 move-object/from16 v0, p0
988 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
989 + iget-object v1, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
991 - if-eqz v2, :cond_49
992 + invoke-interface {v1}, Ljava/util/List;->size()I
994 - move-object/from16 v0, p0
995 + move-result v8
997 - iget-object v4, v0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
998 + const/4 v13, 0x0
1000 - monitor-enter v4
1001 + :goto_8c
1002 + if-ge v13, v8, :cond_169
1004 - :try_start_f
1005 move-object/from16 v0, p0
1007 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1008 + iget-object v1, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1010 - invoke-interface {v2}, Ljava/util/List;->size()I
1011 + invoke-interface {v1, v13}, Ljava/util/List;->get(I)Ljava/lang/Object;
1013 - move-result v13
1014 + move-result-object v9
1016 - const/4 v15, 0x0
1017 + check-cast v9, Landroid/app/Instrumentation$ActivityMonitor;
1019 - :goto_18
1020 - if-ge v15, v13, :cond_48
1021 + const/4 v1, 0x0
1023 - move-object/from16 v0, p0
1024 + const/4 v3, 0x0
1026 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1027 + aget-object v3, p5, v3
1029 - invoke-interface {v2, v15}, Ljava/util/List;->get(I)Ljava/lang/Object;
1030 + move-object/from16 v0, p1
1032 - move-result-object v14
1033 + invoke-virtual {v9, v0, v1, v3}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
1035 - check-cast v14, Landroid/app/Instrumentation$ActivityMonitor;
1036 + move-result v1
1038 - const/4 v2, 0x0
1039 + if-eqz v1, :cond_165
1041 - move-object/from16 v0, p1
1042 + iget v1, v9, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1044 - move-object/from16 v1, p5
1045 + add-int/lit8 v1, v1, 0x1
1047 - invoke-virtual {v14, v0, v2, v1}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
1048 + iput v1, v9, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1050 - move-result v2
1051 + invoke-virtual {v9}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
1053 - if-eqz v2, :cond_45
1054 + move-result v1
1056 - iget v2, v14, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1057 + if-eqz v1, :cond_169
1059 - add-int/lit8 v2, v2, 0x1
1060 + monitor-exit v2
1061 + :try_end_b1
1062 + .catchall {:try_start_83 .. :try_end_b1} :catchall_18a
1064 + :goto_b1
1065 + return-void
1067 - iput v2, v14, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1068 + :cond_b2
1069 + if-eqz v10, :cond_155
1071 - invoke-virtual {v14}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
1072 + :try_start_b4
1073 + const-string v1, "PrivacyContext"
1075 - move-result v2
1076 + new-instance v2, Ljava/lang/StringBuilder;
1078 - if-eqz v2, :cond_48
1079 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
1081 - if-ltz p6, :cond_43
1082 + const-string/jumbo v3, "package: "
1084 - invoke-virtual {v14}, Landroid/app/Instrumentation$ActivityMonitor;->getResult()Landroid/app/Instrumentation$ActivityResult;
1085 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1087 move-result-object v2
1089 - :goto_41
1090 - monitor-exit v4
1091 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1093 - :goto_42
1094 - return-object v2
1095 + move-result-object v3
1097 - :cond_43
1098 - const/4 v2, 0x0
1099 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1101 - goto :goto_41
1102 + move-result-object v2
1104 - :cond_45
1105 - add-int/lit8 v15, v15, 0x1
1106 + const-string v3, " tries to take a phone call"
1108 - goto :goto_18
1109 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1111 - :cond_48
1112 - monitor-exit v4
1113 - :try_end_49
1114 - .catchall {:try_start_f .. :try_end_49} :catchall_7e
1115 + move-result-object v2
1117 - :cond_49
1118 - const/4 v2, 0x0
1119 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1121 - :try_start_4a
1122 - move-object/from16 v0, p5
1123 + move-result-object v2
1125 - invoke-virtual {v0, v2}, Landroid/content/Intent;->setAllowFds(Z)V
1126 + invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1128 - invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->migrateExtraStreamToClipData()Z
1129 + move-object/from16 v0, p0
1131 - invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
1132 + iget-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1134 - move-result-object v2
1135 + if-nez v1, :cond_f3
1137 - invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
1138 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
1140 - move-result-object v4
1141 + const-string/jumbo v2, "privacy"
1143 - move-object/from16 v0, p5
1144 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1146 - invoke-virtual {v0, v4}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
1147 + move-result-object v2
1149 - move-result-object v5
1150 + invoke-static {v2}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1152 - if-eqz p4, :cond_81
1153 + move-result-object v2
1155 - move-object/from16 v0, p4
1156 + move-object/from16 v0, p1
1158 - iget-object v7, v0, Landroid/app/Activity;->mEmbeddedID:Ljava/lang/String;
1159 + invoke-direct {v1, v0, v2}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1161 - :goto_66
1162 - const/4 v9, 0x0
1163 + move-object/from16 v0, p0
1165 - const/4 v10, 0x0
1166 + iput-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1168 - const/4 v11, 0x0
1169 + :cond_f3
1170 + move-object/from16 v0, p0
1172 - move-object/from16 v4, p5
1173 + iget-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1175 - move-object/from16 v6, p3
1176 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1178 - move/from16 v8, p6
1179 + move-result-object v2
1181 - move-object/from16 v12, p7
1182 + const/4 v3, -0x1
1184 - invoke-interface/range {v2 .. v12}, Landroid/app/IActivityManager;->startActivity(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IILjava/lang/String;Landroid/os/ParcelFileDescriptor;Landroid/os/Bundle;)I
1185 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
1187 - move-result v16
1188 + move-result-object v7
1190 - move/from16 v0, v16
1191 + move-object/from16 v0, p0
1193 - move-object/from16 v1, p5
1194 + iget-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1196 - invoke-static {v0, v1}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
1197 - :try_end_7c
1198 - .catch Landroid/os/RemoteException; {:try_start_4a .. :try_end_7c} :catch_83
1199 + if-eqz v1, :cond_142
1201 - :goto_7c
1202 - const/4 v2, 0x0
1203 + if-eqz v7, :cond_142
1205 - goto :goto_42
1206 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
1208 - :catchall_7e
1209 - move-exception v2
1210 + move-result v1
1212 - :try_start_7f
1213 - monitor-exit v4
1214 - :try_end_80
1215 - .catchall {:try_start_7f .. :try_end_80} :catchall_7e
1216 + if-eqz v1, :cond_142
1218 - throw v2
1219 + move-object/from16 v11, p1
1221 - :cond_81
1222 - const/4 v7, 0x0
1223 + invoke-interface/range {v16 .. v16}, Ljava/util/List;->toArray()[Ljava/lang/Object;
1225 - goto :goto_66
1226 + move-result-object v1
1228 - :catch_83
1229 - move-exception v2
1230 + check-cast v1, [Landroid/content/Intent;
1232 - goto :goto_7c
1233 -.end method
1234 + move-object v0, v1
1236 -.method public execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Fragment;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
1237 - .registers 25
1238 + check-cast v0, [Landroid/content/Intent;
1240 - move-object/from16 v3, p2
1241 + move-object/from16 p5, v0
1243 - check-cast v3, Landroid/app/IApplicationThread;
1244 + const/16 v16, 0x0
1246 - move-object/from16 v0, p0
1247 + invoke-static {}, Ljava/lang/System;->gc()V
1249 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1250 + new-instance v1, Ljava/lang/Thread;
1252 - if-eqz v2, :cond_49
1253 + new-instance v2, Landroid/app/Instrumentation$2;
1255 move-object/from16 v0, p0
1257 - iget-object v4, v0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
1258 + invoke-direct {v2, v0, v11}, Landroid/app/Instrumentation$2;-><init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
1260 - monitor-enter v4
1261 + invoke-direct {v1, v2}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
1263 + invoke-virtual {v1}, Ljava/lang/Thread;->start()V
1265 - :try_start_f
1266 move-object/from16 v0, p0
1268 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1269 + iget-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1271 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1273 - invoke-interface {v2}, Ljava/util/List;->size()I
1274 + move-result-object v2
1276 + const/4 v3, 0x0
1278 - move-result v13
1279 + const/4 v4, 0x1
1281 - const/4 v15, 0x0
1282 + const-string/jumbo v5, "phoneCall"
1284 - :goto_18
1285 - if-ge v15, v13, :cond_48
1286 + const/4 v6, 0x0
1288 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
1290 + goto/16 :goto_78
1292 + :cond_142
1293 move-object/from16 v0, p0
1295 - iget-object v2, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1296 + iget-object v1, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1298 - invoke-interface {v2, v15}, Ljava/util/List;->get(I)Ljava/lang/Object;
1299 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1301 - move-result-object v14
1302 + move-result-object v2
1304 - check-cast v14, Landroid/app/Instrumentation$ActivityMonitor;
1305 + const/4 v3, 0x0
1307 - const/4 v2, 0x0
1308 + const/4 v4, 0x0
1310 - move-object/from16 v0, p1
1311 + const-string/jumbo v5, "phoneCall"
1313 - move-object/from16 v1, p5
1314 + const/4 v6, 0x0
1316 - invoke-virtual {v14, v0, v2, v1}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
1317 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
1319 - move-result v2
1320 + goto/16 :goto_78
1322 - if-eqz v2, :cond_45
1323 + :cond_155
1324 + const/16 v16, 0x0
1326 - iget v2, v14, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1327 + invoke-static {}, Ljava/lang/System;->gc()V
1328 + :try_end_15a
1329 + .catch Ljava/lang/Exception; {:try_start_b4 .. :try_end_15a} :catch_56
1331 - add-int/lit8 v2, v2, 0x1
1332 + goto/16 :goto_78
1334 - iput v2, v14, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1335 + :cond_15c
1336 + const-string v1, "PrivacyContext"
1338 - invoke-virtual {v14}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
1339 + const-string v2, "got exception while trying to resolve intents for unknown package"
1341 - move-result v2
1342 + invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1344 - if-eqz v2, :cond_48
1345 + goto/16 :goto_78
1347 - if-ltz p6, :cond_43
1348 + :cond_165
1349 + add-int/lit8 v13, v13, 0x1
1351 - invoke-virtual {v14}, Landroid/app/Instrumentation$ActivityMonitor;->getResult()Landroid/app/Instrumentation$ActivityResult;
1352 + goto/16 :goto_8c
1354 - move-result-object v2
1355 + :cond_169
1356 + :try_start_169
1357 + monitor-exit v2
1358 + :try_end_16a
1359 + .catchall {:try_start_169 .. :try_end_16a} :catchall_18a
1361 - :goto_41
1362 - monitor-exit v4
1363 + :cond_16a
1364 + :try_start_16a
1365 + move-object/from16 v0, p5
1367 - :goto_42
1368 - return-object v2
1369 + array-length v1, v0
1371 - :cond_43
1372 - const/4 v2, 0x0
1373 + new-array v4, v1, [Ljava/lang/String;
1375 - goto :goto_41
1376 + const/4 v13, 0x0
1378 - :cond_45
1379 - add-int/lit8 v15, v15, 0x1
1380 + :goto_170
1381 + move-object/from16 v0, p5
1383 - goto :goto_18
1384 + array-length v1, v0
1386 - :cond_48
1387 - monitor-exit v4
1388 - :try_end_49
1389 - .catchall {:try_start_f .. :try_end_49} :catchall_7e
1390 + if-ge v13, v1, :cond_18d
1392 + aget-object v1, p5, v13
1394 - :cond_49
1395 const/4 v2, 0x0
1397 - :try_start_4a
1398 - move-object/from16 v0, p5
1399 + invoke-virtual {v1, v2}, Landroid/content/Intent;->setAllowFds(Z)V
1401 - invoke-virtual {v0, v2}, Landroid/content/Intent;->setAllowFds(Z)V
1402 + aget-object v1, p5, v13
1404 - invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->migrateExtraStreamToClipData()Z
1405 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
1407 + move-result-object v2
1409 + invoke-virtual {v1, v2}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
1411 + move-result-object v1
1413 + aput-object v1, v4, v13
1414 + :try_end_187
1415 + .catch Landroid/os/RemoteException; {:try_start_16a .. :try_end_187} :catch_1a5
1417 + add-int/lit8 v13, v13, 0x1
1419 + goto :goto_170
1421 + :catchall_18a
1422 + move-exception v1
1424 + :try_start_18b
1425 + monitor-exit v2
1426 + :try_end_18c
1427 + .catchall {:try_start_18b .. :try_end_18c} :catchall_18a
1429 + throw v1
1431 + :cond_18d
1432 + :try_start_18d
1433 invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
1435 - move-result-object v2
1436 + move-result-object v1
1438 - invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
1439 + move-object/from16 v2, v17
1441 + move-object/from16 v3, p5
1443 + move-object/from16 v5, p3
1445 + move-object/from16 v6, p6
1447 + invoke-interface/range {v1 .. v6}, Landroid/app/IActivityManager;->startActivities(Landroid/app/IApplicationThread;[Landroid/content/Intent;[Ljava/lang/String;Landroid/os/IBinder;Landroid/os/Bundle;)I
1449 + move-result v15
1451 + const/4 v1, 0x0
1453 + aget-object v1, p5, v1
1455 + invoke-static {v15, v1}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
1456 + :try_end_1a3
1457 + .catch Landroid/os/RemoteException; {:try_start_18d .. :try_end_1a3} :catch_1a5
1459 + goto/16 :goto_b1
1461 + :catch_1a5
1462 + move-exception v1
1464 + goto/16 :goto_b1
1465 +.end method
1467 +.method public execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Activity;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
1468 + .registers 36
1470 + move-object/from16 v11, p2
1472 + check-cast v11, Landroid/app/IApplicationThread;
1474 + const/16 v25, 0x1
1476 + :try_start_6
1477 + const-string v3, "PrivacyContext"
1479 + new-instance v4, Ljava/lang/StringBuilder;
1481 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
1483 + const-string/jumbo v5, "now we are in execStartActivity() from package: "
1485 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1487 move-result-object v4
1489 - move-object/from16 v0, p5
1490 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1492 + move-result-object v5
1494 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1496 + move-result-object v4
1498 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1500 + move-result-object v4
1502 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1504 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->getAction()Ljava/lang/String;
1506 + move-result-object v3
1508 + const-string v4, "android.intent.action.CALL"
1510 + invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
1512 + move-result v3
1514 + if-nez v3, :cond_3b
1516 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->getAction()Ljava/lang/String;
1518 + move-result-object v3
1520 + const-string v4, "android.intent.action.DIAL"
1522 + invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
1524 + move-result v3
1526 + if-eqz v3, :cond_bb
1528 + :cond_3b
1529 + const-string v3, "PrivacyContext"
1531 + new-instance v4, Ljava/lang/StringBuilder;
1533 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
1535 - invoke-virtual {v0, v4}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
1536 + const-string/jumbo v5, "package: "
1538 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1540 + move-result-object v4
1542 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1544 move-result-object v5
1546 - if-eqz p4, :cond_81
1547 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1549 - move-object/from16 v0, p4
1550 + move-result-object v4
1552 - iget-object v7, v0, Landroid/app/Fragment;->mWho:Ljava/lang/String;
1553 + const-string v5, " tries to take a phone call"
1555 - :goto_66
1556 - const/4 v9, 0x0
1557 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1559 - const/4 v10, 0x0
1560 + move-result-object v4
1562 - const/4 v11, 0x0
1563 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1565 - move-object/from16 v4, p5
1566 + move-result-object v4
1568 - move-object/from16 v6, p3
1569 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1571 - move/from16 v8, p6
1572 + move-object/from16 v0, p0
1574 - move-object/from16 v12, p7
1575 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1577 - invoke-interface/range {v2 .. v12}, Landroid/app/IActivityManager;->startActivity(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IILjava/lang/String;Landroid/os/ParcelFileDescriptor;Landroid/os/Bundle;)I
1578 + if-nez v3, :cond_7a
1580 - move-result v16
1581 + new-instance v3, Landroid/privacy/PrivacySettingsManager;
1583 - move/from16 v0, v16
1584 + const-string/jumbo v4, "privacy"
1586 - move-object/from16 v1, p5
1587 + invoke-static {v4}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
1589 - invoke-static {v0, v1}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
1590 - :try_end_7c
1591 - .catch Landroid/os/RemoteException; {:try_start_4a .. :try_end_7c} :catch_83
1592 + move-result-object v4
1594 - :goto_7c
1595 - const/4 v2, 0x0
1596 + invoke-static {v4}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
1598 + move-result-object v4
1600 - goto :goto_42
1601 + move-object/from16 v0, p1
1603 - :catchall_7e
1604 - move-exception v2
1605 + invoke-direct {v3, v0, v4}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
1607 - :try_start_7f
1608 - monitor-exit v4
1609 - :try_end_80
1610 - .catchall {:try_start_7f .. :try_end_80} :catchall_7e
1611 + move-object/from16 v0, p0
1613 + iput-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1615 + :cond_7a
1616 + move-object/from16 v0, p0
1618 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1620 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1622 - throw v2
1623 + move-result-object v4
1625 + const/4 v5, -0x1
1627 + invoke-virtual {v3, v4, v5}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
1629 + move-result-object v9
1631 + move-object/from16 v0, p0
1633 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1635 + if-eqz v3, :cond_107
1637 + if-eqz v9, :cond_107
1639 + invoke-virtual {v9}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
1641 + move-result v3
1643 + if-eqz v3, :cond_107
1645 + move-object/from16 v27, p1
1647 + const/16 v25, 0x0
1649 + new-instance v3, Ljava/lang/Thread;
1651 + new-instance v4, Landroid/app/Instrumentation$1;
1653 - :cond_81
1654 - const/4 v7, 0x0
1655 + move-object/from16 v0, p0
1657 + move-object/from16 v1, v27
1659 + invoke-direct {v4, v0, v1}, Landroid/app/Instrumentation$1;-><init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
1661 + invoke-direct {v3, v4}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
1663 + invoke-virtual {v3}, Ljava/lang/Thread;->start()V
1665 + move-object/from16 v0, p0
1667 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1669 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1671 + move-result-object v4
1673 + const/4 v5, 0x0
1675 + const/4 v6, 0x1
1677 + const-string/jumbo v7, "phoneCall"
1679 + const/4 v8, 0x0
1681 - goto :goto_66
1682 + invoke-virtual/range {v3 .. v9}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
1683 + :try_end_bb
1684 + .catch Ljava/lang/Exception; {:try_start_6 .. :try_end_bb} :catch_11b
1686 - :catch_83
1687 - move-exception v2
1688 + :cond_bb
1689 + :goto_bb
1690 + move-object/from16 v0, p0
1692 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1694 + if-eqz v3, :cond_14e
1696 + move-object/from16 v0, p0
1698 + iget-object v4, v0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
1700 + monitor-enter v4
1702 + :try_start_c6
1703 + move-object/from16 v0, p0
1705 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1707 + invoke-interface {v3}, Ljava/util/List;->size()I
1709 + move-result v21
1711 + const/16 v24, 0x0
1713 + :goto_d0
1714 + move/from16 v0, v24
1716 + move/from16 v1, v21
1718 + if-ge v0, v1, :cond_14d
1720 + move-object/from16 v0, p0
1722 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
1724 + move/from16 v0, v24
1726 + invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
1728 + move-result-object v22
1730 + check-cast v22, Landroid/app/Instrumentation$ActivityMonitor;
1732 + const/4 v3, 0x0
1734 + move-object/from16 v0, v22
1736 + move-object/from16 v1, p1
1738 + move-object/from16 v2, p5
1740 + invoke-virtual {v0, v1, v3, v2}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
1742 + move-result v3
1744 + if-eqz v3, :cond_14a
1746 + move-object/from16 v0, v22
1748 + iget v3, v0, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1750 + add-int/lit8 v3, v3, 0x1
1752 + move-object/from16 v0, v22
1754 + iput v3, v0, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
1756 + invoke-virtual/range {v22 .. v22}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
1758 + move-result v3
1760 + if-eqz v3, :cond_14d
1762 + if-ltz p6, :cond_148
1764 + invoke-virtual/range {v22 .. v22}, Landroid/app/Instrumentation$ActivityMonitor;->getResult()Landroid/app/Instrumentation$ActivityResult;
1766 + move-result-object v3
1768 + :goto_105
1769 + monitor-exit v4
1770 + :try_end_106
1771 + .catchall {:try_start_c6 .. :try_end_106} :catchall_197
1773 + :goto_106
1774 + return-object v3
1776 + :cond_107
1777 + const/16 v25, 0x1
1779 + :try_start_109
1780 + move-object/from16 v0, p0
1782 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
1784 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1786 + move-result-object v4
1788 + const/4 v5, 0x0
1790 + const/4 v6, 0x0
1792 + const-string/jumbo v7, "phoneCall"
1794 + const/4 v8, 0x0
1796 + invoke-virtual/range {v3 .. v9}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
1797 + :try_end_11a
1798 + .catch Ljava/lang/Exception; {:try_start_109 .. :try_end_11a} :catch_11b
1800 + goto :goto_bb
1802 + :catch_11b
1803 + move-exception v23
1805 + invoke-virtual/range {v23 .. v23}, Ljava/lang/Exception;->printStackTrace()V
1807 + if-eqz p1, :cond_13f
1809 + const-string v3, "PrivacyContext"
1811 + new-instance v4, Ljava/lang/StringBuilder;
1813 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
1815 + const-string v5, "got exception while trying to resolve intents for package: "
1817 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1819 + move-result-object v4
1821 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1823 + move-result-object v5
1825 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1827 + move-result-object v4
1829 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1831 + move-result-object v4
1833 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1835 + goto/16 :goto_bb
1837 + :cond_13f
1838 + const-string v3, "PrivacyContext"
1840 + const-string v4, "got exception while trying to resolve intents for unknown package"
1842 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
1844 + goto/16 :goto_bb
1846 + :cond_148
1847 + const/4 v3, 0x0
1849 + goto :goto_105
1851 + :cond_14a
1852 + add-int/lit8 v24, v24, 0x1
1854 + goto :goto_d0
1856 + :cond_14d
1857 + :try_start_14d
1858 + monitor-exit v4
1859 + :try_end_14e
1860 + .catchall {:try_start_14d .. :try_end_14e} :catchall_197
1862 + :cond_14e
1863 + if-nez v25, :cond_15e
1865 + :try_start_150
1866 + new-instance v3, Landroid/app/Instrumentation$ActivityResult;
1868 + move/from16 v0, p6
1870 + move-object/from16 v1, p5
1872 + invoke-direct {v3, v0, v1}, Landroid/app/Instrumentation$ActivityResult;-><init>(ILandroid/content/Intent;)V
1873 + :try_end_159
1874 + .catch Ljava/lang/Exception; {:try_start_150 .. :try_end_159} :catch_15a
1876 + goto :goto_106
1878 + :catch_15a
1879 + move-exception v23
1881 + invoke-virtual/range {v23 .. v23}, Ljava/lang/Exception;->printStackTrace()V
1883 + :cond_15e
1884 + const/4 v3, 0x0
1886 + :try_start_15f
1887 + move-object/from16 v0, p5
1889 + invoke-virtual {v0, v3}, Landroid/content/Intent;->setAllowFds(Z)V
1891 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->migrateExtraStreamToClipData()Z
1893 + invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
1895 + move-result-object v10
1897 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
1899 + move-result-object v3
1901 + move-object/from16 v0, p5
1903 + invoke-virtual {v0, v3}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
1905 + move-result-object v13
1907 + if-eqz p4, :cond_19a
1909 + move-object/from16 v0, p4
1911 + iget-object v15, v0, Landroid/app/Activity;->mEmbeddedID:Ljava/lang/String;
1913 + :goto_17b
1914 + const/16 v17, 0x0
1916 + const/16 v18, 0x0
1918 + const/16 v19, 0x0
1920 + move-object/from16 v12, p5
1922 + move-object/from16 v14, p3
1924 + move/from16 v16, p6
1926 + move-object/from16 v20, p7
1928 + invoke-interface/range {v10 .. v20}, Landroid/app/IActivityManager;->startActivity(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IILjava/lang/String;Landroid/os/ParcelFileDescriptor;Landroid/os/Bundle;)I
1930 + move-result v26
1932 + move/from16 v0, v26
1934 + move-object/from16 v1, p5
1936 + invoke-static {v0, v1}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
1937 + :try_end_194
1938 + .catch Landroid/os/RemoteException; {:try_start_15f .. :try_end_194} :catch_19c
1940 + :goto_194
1941 + const/4 v3, 0x0
1943 + goto/16 :goto_106
1945 + :catchall_197
1946 + move-exception v3
1948 + :try_start_198
1949 + monitor-exit v4
1950 + :try_end_199
1951 + .catchall {:try_start_198 .. :try_end_199} :catchall_197
1953 + throw v3
1955 + :cond_19a
1956 + const/4 v15, 0x0
1958 + goto :goto_17b
1960 + :catch_19c
1961 + move-exception v3
1963 + goto :goto_194
1964 +.end method
1966 +.method public execStartActivity(Landroid/content/Context;Landroid/os/IBinder;Landroid/os/IBinder;Landroid/app/Fragment;Landroid/content/Intent;ILandroid/os/Bundle;)Landroid/app/Instrumentation$ActivityResult;
1967 + .registers 36
1969 + move-object/from16 v11, p2
1971 + check-cast v11, Landroid/app/IApplicationThread;
1973 + const/16 v25, 0x1
1975 + :try_start_6
1976 + const-string v3, "PrivacyContext"
1978 + new-instance v4, Ljava/lang/StringBuilder;
1980 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
1982 + const-string/jumbo v5, "now we are in execStartActivity() from package: "
1984 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1986 + move-result-object v4
1988 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
1990 + move-result-object v5
1992 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
1994 + move-result-object v4
1996 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
1998 + move-result-object v4
2000 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2002 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->getAction()Ljava/lang/String;
2004 + move-result-object v3
2006 + const-string v4, "android.intent.action.CALL"
2008 + invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
2010 + move-result v3
2012 + if-nez v3, :cond_3b
2014 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->getAction()Ljava/lang/String;
2016 + move-result-object v3
2018 + const-string v4, "android.intent.action.DIAL"
2020 + invoke-virtual {v3, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
2022 + move-result v3
2024 + if-eqz v3, :cond_bb
2026 + :cond_3b
2027 + const-string v3, "PrivacyContext"
2029 + new-instance v4, Ljava/lang/StringBuilder;
2031 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
2033 + const-string/jumbo v5, "package: "
2035 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2037 + move-result-object v4
2039 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
2041 + move-result-object v5
2043 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2045 + move-result-object v4
2047 + const-string v5, " tries to take a phone call"
2049 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2051 + move-result-object v4
2053 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2055 + move-result-object v4
2057 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2059 + move-object/from16 v0, p0
2061 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2063 + if-nez v3, :cond_7a
2065 + new-instance v3, Landroid/privacy/PrivacySettingsManager;
2067 + const-string/jumbo v4, "privacy"
2069 + invoke-static {v4}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
2071 + move-result-object v4
2073 + invoke-static {v4}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
2075 + move-result-object v4
2077 + move-object/from16 v0, p1
2079 + invoke-direct {v3, v0, v4}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
2081 + move-object/from16 v0, p0
2083 + iput-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2085 + :cond_7a
2086 + move-object/from16 v0, p0
2088 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2090 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
2092 + move-result-object v4
2094 + const/4 v5, -0x1
2096 + invoke-virtual {v3, v4, v5}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
2098 + move-result-object v9
2100 + move-object/from16 v0, p0
2102 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2104 + if-eqz v3, :cond_107
2106 + if-eqz v9, :cond_107
2108 + invoke-virtual {v9}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
2110 + move-result v3
2112 + if-eqz v3, :cond_107
2114 + move-object/from16 v27, p1
2116 + const/16 v25, 0x0
2118 + new-instance v3, Ljava/lang/Thread;
2120 + new-instance v4, Landroid/app/Instrumentation$3;
2122 + move-object/from16 v0, p0
2124 + move-object/from16 v1, v27
2126 + invoke-direct {v4, v0, v1}, Landroid/app/Instrumentation$3;-><init>(Landroid/app/Instrumentation;Landroid/content/Context;)V
2128 + invoke-direct {v3, v4}, Ljava/lang/Thread;-><init>(Ljava/lang/Runnable;)V
2130 + invoke-virtual {v3}, Ljava/lang/Thread;->start()V
2132 + move-object/from16 v0, p0
2134 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2136 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
2138 + move-result-object v4
2140 + const/4 v5, 0x0
2142 + const/4 v6, 0x1
2144 + const-string/jumbo v7, "phoneCall"
2146 + const/4 v8, 0x0
2148 + invoke-virtual/range {v3 .. v9}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
2149 + :try_end_bb
2150 + .catch Ljava/lang/Exception; {:try_start_6 .. :try_end_bb} :catch_11b
2152 + :cond_bb
2153 + :goto_bb
2154 + move-object/from16 v0, p0
2156 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
2158 + if-eqz v3, :cond_14e
2160 + move-object/from16 v0, p0
2162 + iget-object v4, v0, Landroid/app/Instrumentation;->mSync:Ljava/lang/Object;
2164 + monitor-enter v4
2166 + :try_start_c6
2167 + move-object/from16 v0, p0
2169 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
2171 + invoke-interface {v3}, Ljava/util/List;->size()I
2173 + move-result v21
2175 + const/16 v24, 0x0
2177 + :goto_d0
2178 + move/from16 v0, v24
2180 + move/from16 v1, v21
2182 + if-ge v0, v1, :cond_14d
2184 + move-object/from16 v0, p0
2186 + iget-object v3, v0, Landroid/app/Instrumentation;->mActivityMonitors:Ljava/util/List;
2188 + move/from16 v0, v24
2190 + invoke-interface {v3, v0}, Ljava/util/List;->get(I)Ljava/lang/Object;
2192 + move-result-object v22
2194 + check-cast v22, Landroid/app/Instrumentation$ActivityMonitor;
2196 + const/4 v3, 0x0
2198 + move-object/from16 v0, v22
2200 + move-object/from16 v1, p1
2202 + move-object/from16 v2, p5
2204 + invoke-virtual {v0, v1, v3, v2}, Landroid/app/Instrumentation$ActivityMonitor;->match(Landroid/content/Context;Landroid/app/Activity;Landroid/content/Intent;)Z
2206 + move-result v3
2208 + if-eqz v3, :cond_14a
2210 + move-object/from16 v0, v22
2212 + iget v3, v0, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
2214 + add-int/lit8 v3, v3, 0x1
2216 + move-object/from16 v0, v22
2218 + iput v3, v0, Landroid/app/Instrumentation$ActivityMonitor;->mHits:I
2220 + invoke-virtual/range {v22 .. v22}, Landroid/app/Instrumentation$ActivityMonitor;->isBlocking()Z
2222 + move-result v3
2224 + if-eqz v3, :cond_14d
2226 + if-ltz p6, :cond_148
2228 + invoke-virtual/range {v22 .. v22}, Landroid/app/Instrumentation$ActivityMonitor;->getResult()Landroid/app/Instrumentation$ActivityResult;
2230 + move-result-object v3
2232 + :goto_105
2233 + monitor-exit v4
2234 + :try_end_106
2235 + .catchall {:try_start_c6 .. :try_end_106} :catchall_197
2237 + :goto_106
2238 + return-object v3
2240 + :cond_107
2241 + const/16 v25, 0x1
2243 + :try_start_109
2244 + move-object/from16 v0, p0
2246 + iget-object v3, v0, Landroid/app/Instrumentation;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2248 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
2250 + move-result-object v4
2252 + const/4 v5, 0x0
2254 + const/4 v6, 0x0
2256 + const-string/jumbo v7, "phoneCall"
2258 + const/4 v8, 0x0
2260 + invoke-virtual/range {v3 .. v9}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
2261 + :try_end_11a
2262 + .catch Ljava/lang/Exception; {:try_start_109 .. :try_end_11a} :catch_11b
2264 + goto :goto_bb
2266 + :catch_11b
2267 + move-exception v23
2269 + invoke-virtual/range {v23 .. v23}, Ljava/lang/Exception;->printStackTrace()V
2271 + if-eqz p1, :cond_13f
2273 + const-string v3, "PrivacyContext"
2275 + new-instance v4, Ljava/lang/StringBuilder;
2277 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
2279 + const-string v5, "got exception while trying to resolve intents for package: "
2281 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2283 + move-result-object v4
2285 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
2287 + move-result-object v5
2289 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2291 + move-result-object v4
2293 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2295 + move-result-object v4
2297 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2299 + goto/16 :goto_bb
2301 + :cond_13f
2302 + const-string v3, "PrivacyContext"
2304 + const-string v4, "got exception while trying to resolve intents for unknown package"
2306 + invoke-static {v3, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
2308 + goto/16 :goto_bb
2310 + :cond_148
2311 + const/4 v3, 0x0
2313 + goto :goto_105
2315 + :cond_14a
2316 + add-int/lit8 v24, v24, 0x1
2318 + goto :goto_d0
2320 + :cond_14d
2321 + :try_start_14d
2322 + monitor-exit v4
2323 + :try_end_14e
2324 + .catchall {:try_start_14d .. :try_end_14e} :catchall_197
2326 + :cond_14e
2327 + if-nez v25, :cond_15e
2329 + :try_start_150
2330 + new-instance v3, Landroid/app/Instrumentation$ActivityResult;
2332 + move/from16 v0, p6
2334 + move-object/from16 v1, p5
2336 + invoke-direct {v3, v0, v1}, Landroid/app/Instrumentation$ActivityResult;-><init>(ILandroid/content/Intent;)V
2337 + :try_end_159
2338 + .catch Ljava/lang/Exception; {:try_start_150 .. :try_end_159} :catch_15a
2340 + goto :goto_106
2342 + :catch_15a
2343 + move-exception v23
2345 + invoke-virtual/range {v23 .. v23}, Ljava/lang/Exception;->printStackTrace()V
2347 + :cond_15e
2348 + const/4 v3, 0x0
2350 + :try_start_15f
2351 + move-object/from16 v0, p5
2353 + invoke-virtual {v0, v3}, Landroid/content/Intent;->setAllowFds(Z)V
2355 + invoke-virtual/range {p5 .. p5}, Landroid/content/Intent;->migrateExtraStreamToClipData()Z
2357 + invoke-static {}, Landroid/app/ActivityManagerNative;->getDefault()Landroid/app/IActivityManager;
2359 + move-result-object v10
2361 + invoke-virtual/range {p1 .. p1}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
2363 + move-result-object v3
2365 + move-object/from16 v0, p5
2367 + invoke-virtual {v0, v3}, Landroid/content/Intent;->resolveTypeIfNeeded(Landroid/content/ContentResolver;)Ljava/lang/String;
2369 + move-result-object v13
2371 + if-eqz p4, :cond_19a
2373 + move-object/from16 v0, p4
2375 + iget-object v15, v0, Landroid/app/Fragment;->mWho:Ljava/lang/String;
2377 + :goto_17b
2378 + const/16 v17, 0x0
2380 + const/16 v18, 0x0
2382 + const/16 v19, 0x0
2384 + move-object/from16 v12, p5
2386 + move-object/from16 v14, p3
2388 + move/from16 v16, p6
2390 + move-object/from16 v20, p7
2392 + invoke-interface/range {v10 .. v20}, Landroid/app/IActivityManager;->startActivity(Landroid/app/IApplicationThread;Landroid/content/Intent;Ljava/lang/String;Landroid/os/IBinder;Ljava/lang/String;IILjava/lang/String;Landroid/os/ParcelFileDescriptor;Landroid/os/Bundle;)I
2394 + move-result v26
2396 + move/from16 v0, v26
2398 + move-object/from16 v1, p5
2400 + invoke-static {v0, v1}, Landroid/app/Instrumentation;->checkStartActivityResult(ILjava/lang/Object;)V
2401 + :try_end_194
2402 + .catch Landroid/os/RemoteException; {:try_start_15f .. :try_end_194} :catch_19c
2404 + :goto_194
2405 + const/4 v3, 0x0
2407 + goto/16 :goto_106
2409 + :catchall_197
2410 + move-exception v3
2412 + :try_start_198
2413 + monitor-exit v4
2414 + :try_end_199
2415 + .catchall {:try_start_198 .. :try_end_199} :catchall_197
2417 + throw v3
2419 + :cond_19a
2420 + const/4 v15, 0x0
2422 + goto :goto_17b
2424 + :catch_19c
2425 + move-exception v3
2427 - goto :goto_7c
2428 + goto :goto_194
2429 .end method
2431 .method public finish(ILandroid/os/Bundle;)V
2432 diff -Npru stock-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali ext-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali
2433 --- stock-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali 2012-11-02 22:31:07.119967456 -0500
2434 +++ ext-framework/smali/android/app/LoaderManagerImpl$LoaderInfo.smali 2012-11-02 22:30:46.667866032 -0500
2435 @@ -575,12 +575,12 @@
2437 iget-boolean v0, p0, Landroid/app/LoaderManagerImpl$LoaderInfo;->mDeliveredData:Z
2439 - if-eqz v0, :cond_7b
2440 + if-eqz v0, :cond_7c
2442 :cond_57
2443 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2445 - const-string v0, "mHaveData="
2446 + const-string/jumbo v0, "mHaveData="
2448 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2450 @@ -606,7 +606,7 @@
2452 invoke-virtual {p3, v0}, Ljava/io/PrintWriter;->println(Ljava/lang/Object;)V
2454 - :cond_7b
2455 + :cond_7c
2456 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2458 const-string/jumbo v0, "mStarted="
2459 @@ -661,7 +661,7 @@
2461 iget-object v0, p0, Landroid/app/LoaderManagerImpl$LoaderInfo;->mPendingLoader:Landroid/app/LoaderManagerImpl$LoaderInfo;
2463 - if-eqz v0, :cond_ed
2464 + if-eqz v0, :cond_ee
2466 invoke-virtual {p3, p1}, Ljava/io/PrintWriter;->print(Ljava/lang/String;)V
2468 @@ -699,7 +699,7 @@
2470 invoke-virtual {v0, v1, p2, p3, p4}, Landroid/app/LoaderManagerImpl$LoaderInfo;->dump(Ljava/lang/String;Ljava/io/FileDescriptor;Ljava/io/PrintWriter;[Ljava/lang/String;)V
2472 - :cond_ed
2473 + :cond_ee
2474 return-void
2475 .end method
2477 diff -Npru stock-framework/smali/android/content/ContentResolver.smali ext-framework/smali/android/content/ContentResolver.smali
2478 --- stock-framework/smali/android/content/ContentResolver.smali 2012-11-02 22:31:06.723965487 -0500
2479 +++ ext-framework/smali/android/content/ContentResolver.smali 2012-11-02 22:30:46.179863611 -0500
2480 @@ -3523,8 +3523,8 @@
2482 invoke-virtual {v0, v9}, Landroid/os/CancellationSignal;->setRemote(Landroid/os/ICancellationSignal;)V
2483 :try_end_1d
2484 - .catchall {:try_start_a .. :try_end_1d} :catchall_b9
2485 - .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_1d} :catch_a6
2486 + .catchall {:try_start_a .. :try_end_1d} :catchall_d5
2487 + .catch Landroid/os/RemoteException; {:try_start_a .. :try_end_1d} :catch_c2
2489 :cond_1d
2490 move-object/from16 v4, p1
2491 @@ -3539,25 +3539,39 @@
2493 :try_start_27
2494 invoke-interface/range {v3 .. v9}, Landroid/content/IContentProvider;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/ICancellationSignal;)Landroid/database/Cursor;
2495 - :try_end_2a
2496 - .catchall {:try_start_27 .. :try_end_2a} :catchall_b9
2497 - .catch Landroid/os/DeadObjectException; {:try_start_27 .. :try_end_2a} :catch_3e
2498 - .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_2a} :catch_a6
2500 move-result-object v19
2502 - :goto_2b
2503 - if-nez v19, :cond_6c
2504 + move-object/from16 v0, p0
2506 + iget-object v4, v0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2508 + move-object/from16 v0, p1
2510 + move-object/from16 v1, p2
2512 + move-object/from16 v2, v19
2514 + invoke-static {v0, v1, v4, v2}, Landroid/privacy/surrogate/PrivacyContentResolver;->enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
2515 + :try_end_38
2516 + .catchall {:try_start_27 .. :try_end_38} :catchall_d5
2517 + .catch Landroid/os/DeadObjectException; {:try_start_27 .. :try_end_38} :catch_4c
2518 + .catch Landroid/os/RemoteException; {:try_start_27 .. :try_end_38} :catch_c2
2520 + move-result-object v19
2522 + :goto_39
2523 + if-nez v19, :cond_88
2525 const/16 v22, 0x0
2527 - if-eqz v3, :cond_36
2528 + if-eqz v3, :cond_44
2530 move-object/from16 v0, p0
2532 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z
2534 - :cond_36
2535 + :cond_44
2536 if-eqz v10, :cond_8
2538 move-object/from16 v0, p0
2539 @@ -3566,32 +3580,32 @@
2541 goto :goto_8
2543 - :catch_3e
2544 + :catch_4c
2545 move-exception v18
2547 - :try_start_3f
2548 + :try_start_4d
2549 move-object/from16 v0, p0
2551 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->unstableProviderDied(Landroid/content/IContentProvider;)V
2553 invoke-virtual/range {p0 .. p1}, Landroid/content/ContentResolver;->acquireProvider(Landroid/net/Uri;)Landroid/content/IContentProvider;
2554 - :try_end_47
2555 - .catchall {:try_start_3f .. :try_end_47} :catchall_b9
2556 - .catch Landroid/os/RemoteException; {:try_start_3f .. :try_end_47} :catch_a6
2557 + :try_end_55
2558 + .catchall {:try_start_4d .. :try_end_55} :catchall_d5
2559 + .catch Landroid/os/RemoteException; {:try_start_4d .. :try_end_55} :catch_c2
2561 move-result-object v10
2563 - if-nez v10, :cond_5b
2564 + if-nez v10, :cond_69
2566 const/16 v22, 0x0
2568 - if-eqz v3, :cond_53
2569 + if-eqz v3, :cond_61
2571 move-object/from16 v0, p0
2573 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z
2575 - :cond_53
2576 + :cond_61
2577 if-eqz v10, :cond_8
2579 move-object/from16 v0, p0
2580 @@ -3600,7 +3614,7 @@
2582 goto :goto_8
2584 - :cond_5b
2585 + :cond_69
2586 move-object/from16 v11, p1
2588 move-object/from16 v12, p2
2589 @@ -3613,14 +3627,28 @@
2591 move-object/from16 v16, v9
2593 - :try_start_67
2594 + :try_start_75
2595 invoke-interface/range {v10 .. v16}, Landroid/content/IContentProvider;->query(Landroid/net/Uri;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Landroid/os/ICancellationSignal;)Landroid/database/Cursor;
2597 move-result-object v19
2599 - goto :goto_2b
2600 + move-object/from16 v0, p0
2602 + iget-object v4, v0, Landroid/content/ContentResolver;->mContext:Landroid/content/Context;
2604 + move-object/from16 v0, p1
2606 + move-object/from16 v1, p2
2608 + move-object/from16 v2, v19
2610 + invoke-static {v0, v1, v4, v2}, Landroid/privacy/surrogate/PrivacyContentResolver;->enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
2612 + move-result-object v19
2614 + goto :goto_39
2616 - :cond_6c
2617 + :cond_88
2618 invoke-interface/range {v19 .. v19}, Landroid/database/Cursor;->getCount()I
2620 invoke-static {}, Landroid/os/SystemClock;->uptimeMillis()J
2621 @@ -3643,11 +3671,11 @@
2623 new-instance v22, Landroid/content/ContentResolver$CursorWrapperInner;
2625 - if-eqz v10, :cond_a1
2626 + if-eqz v10, :cond_bd
2628 move-object v4, v10
2630 - :goto_87
2631 + :goto_a3
2632 move-object/from16 v0, v22
2634 move-object/from16 v1, p0
2635 @@ -3655,19 +3683,19 @@
2636 move-object/from16 v2, v19
2638 invoke-direct {v0, v1, v2, v4}, Landroid/content/ContentResolver$CursorWrapperInner;-><init>(Landroid/content/ContentResolver;Landroid/database/Cursor;Landroid/content/IContentProvider;)V
2639 - :try_end_90
2640 - .catchall {:try_start_67 .. :try_end_90} :catchall_b9
2641 - .catch Landroid/os/RemoteException; {:try_start_67 .. :try_end_90} :catch_a6
2642 + :try_end_ac
2643 + .catchall {:try_start_75 .. :try_end_ac} :catchall_d5
2644 + .catch Landroid/os/RemoteException; {:try_start_75 .. :try_end_ac} :catch_c2
2646 const/4 v10, 0x0
2648 - if-eqz v3, :cond_98
2649 + if-eqz v3, :cond_b4
2651 move-object/from16 v0, p0
2653 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z
2655 - :cond_98
2656 + :cond_b4
2657 if-eqz v10, :cond_8
2659 move-object/from16 v0, p0
2660 @@ -3676,29 +3704,29 @@
2662 goto/16 :goto_8
2664 - :cond_a1
2665 - :try_start_a1
2666 + :cond_bd
2667 + :try_start_bd
2668 invoke-virtual/range {p0 .. p1}, Landroid/content/ContentResolver;->acquireProvider(Landroid/net/Uri;)Landroid/content/IContentProvider;
2669 - :try_end_a4
2670 - .catchall {:try_start_a1 .. :try_end_a4} :catchall_b9
2671 - .catch Landroid/os/RemoteException; {:try_start_a1 .. :try_end_a4} :catch_a6
2672 + :try_end_c0
2673 + .catchall {:try_start_bd .. :try_end_c0} :catchall_d5
2674 + .catch Landroid/os/RemoteException; {:try_start_bd .. :try_end_c0} :catch_c2
2676 move-result-object v4
2678 - goto :goto_87
2679 + goto :goto_a3
2681 - :catch_a6
2682 + :catch_c2
2683 move-exception v18
2685 const/16 v22, 0x0
2687 - if-eqz v3, :cond_b0
2688 + if-eqz v3, :cond_cc
2690 move-object/from16 v0, p0
2692 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z
2694 - :cond_b0
2695 + :cond_cc
2696 if-eqz v10, :cond_8
2698 move-object/from16 v0, p0
2699 @@ -3707,23 +3735,23 @@
2701 goto/16 :goto_8
2703 - :catchall_b9
2704 + :catchall_d5
2705 move-exception v4
2707 - if-eqz v3, :cond_c1
2708 + if-eqz v3, :cond_dd
2710 move-object/from16 v0, p0
2712 invoke-virtual {v0, v3}, Landroid/content/ContentResolver;->releaseUnstableProvider(Landroid/content/IContentProvider;)Z
2714 - :cond_c1
2715 - if-eqz v10, :cond_c8
2716 + :cond_dd
2717 + if-eqz v10, :cond_e4
2719 move-object/from16 v0, p0
2721 invoke-virtual {v0, v10}, Landroid/content/ContentResolver;->releaseProvider(Landroid/content/IContentProvider;)Z
2723 - :cond_c8
2724 + :cond_e4
2725 throw v4
2726 .end method
2728 diff -Npru stock-framework/smali/android/content/ContextWrapper.smali ext-framework/smali/android/content/ContextWrapper.smali
2729 --- stock-framework/smali/android/content/ContextWrapper.smali 2012-11-02 22:31:05.575959799 -0500
2730 +++ ext-framework/smali/android/content/ContextWrapper.smali 2012-11-02 22:30:45.403859771 -0500
2731 @@ -3,6 +3,10 @@
2732 .source "ContextWrapper.java"
2735 +# static fields
2736 +.field private static final TAG:Ljava/lang/String; = "PrivacyContextWrapper"
2739 # instance fields
2740 .field mBase:Landroid/content/Context;
2742 diff -Npru stock-framework/smali/android/hardware/Camera$EventHandler.smali ext-framework/smali/android/hardware/Camera$EventHandler.smali
2743 --- stock-framework/smali/android/hardware/Camera$EventHandler.smali 2012-11-02 22:31:08.263973125 -0500
2744 +++ ext-framework/smali/android/hardware/Camera$EventHandler.smali 2012-11-02 22:30:47.991872603 -0500
2745 @@ -36,450 +36,694 @@
2747 # virtual methods
2748 .method public handleMessage(Landroid/os/Message;)V
2749 - .registers 9
2750 + .registers 16
2752 - const/4 v3, 0x1
2753 + const/4 v7, 0x1
2755 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2757 + #getter for: Landroid/hardware/Camera;->privacyMode:Z
2758 + invoke-static {v0}, Landroid/hardware/Camera;->access$000(Landroid/hardware/Camera;)Z
2760 + move-result v0
2762 + if-nez v0, :cond_e
2764 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2766 + #calls: Landroid/hardware/Camera;->initiate()V
2767 + invoke-static {v0}, Landroid/hardware/Camera;->access$100(Landroid/hardware/Camera;)V
2769 + :cond_e
2770 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2772 + #calls: Landroid/hardware/Camera;->getPackageName()[Ljava/lang/String;
2773 + invoke-static {v0}, Landroid/hardware/Camera;->access$200(Landroid/hardware/Camera;)[Ljava/lang/String;
2775 + move-result-object v10
2777 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2779 + #calls: Landroid/hardware/Camera;->checkIfPackagesAllowed()I
2780 + invoke-static {v0}, Landroid/hardware/Camera;->access$300(Landroid/hardware/Camera;)I
2782 + move-result v0
2784 + const/4 v1, -0x2
2786 + if-ne v0, v1, :cond_68
2788 + const/4 v7, 0x0
2790 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2792 + const/4 v1, 0x0
2794 + #calls: Landroid/hardware/Camera;->dataAccess(Z)V
2795 + invoke-static {v0, v1}, Landroid/hardware/Camera;->access$400(Landroid/hardware/Camera;Z)V
2797 + if-eqz v10, :cond_48
2799 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2801 + #getter for: Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2802 + invoke-static {v0}, Landroid/hardware/Camera;->access$500(Landroid/hardware/Camera;)Landroid/privacy/PrivacySettingsManager;
2804 + move-result-object v0
2806 + const/4 v1, 0x0
2808 + aget-object v1, v10, v1
2810 const/4 v2, 0x0
2812 - iget v4, p1, Landroid/os/Message;->what:I
2813 + const/4 v3, 0x1
2815 + const-string v4, "camera"
2817 + const/4 v5, 0x0
2819 + iget-object v6, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2821 + #getter for: Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2822 + invoke-static {v6}, Landroid/hardware/Camera;->access$500(Landroid/hardware/Camera;)Landroid/privacy/PrivacySettingsManager;
2824 - sparse-switch v4, :sswitch_data_174
2825 + move-result-object v6
2827 - const-string v3, "Camera"
2828 + const/4 v12, 0x0
2830 - new-instance v4, Ljava/lang/StringBuilder;
2831 + aget-object v12, v10, v12
2833 - invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
2834 + invoke-static {}, Landroid/os/Process;->myUid()I
2836 - const-string v5, "Unknown message type "
2837 + move-result v13
2839 - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2840 + invoke-virtual {v6, v12, v13}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
2842 - move-result-object v4
2843 + move-result-object v6
2845 - iget v5, p1, Landroid/os/Message;->what:I
2846 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
2848 - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
2849 + :cond_48
2850 + :goto_48
2851 + iget v0, p1, Landroid/os/Message;->what:I
2853 - move-result-object v4
2854 + sparse-switch v0, :sswitch_data_244
2856 - invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2857 + const-string v0, "Camera"
2859 - move-result-object v4
2860 + new-instance v1, Ljava/lang/StringBuilder;
2862 - invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
2863 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
2865 - :cond_21
2866 - :goto_21
2867 + const-string v2, "Unknown message type "
2869 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
2871 + move-result-object v1
2873 + iget v2, p1, Landroid/os/Message;->what:I
2875 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
2877 + move-result-object v1
2879 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
2881 + move-result-object v1
2883 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
2885 + :cond_67
2886 + :goto_67
2887 return-void
2889 - :sswitch_22
2890 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2891 + :cond_68
2892 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2894 + const/4 v1, 0x1
2896 + #calls: Landroid/hardware/Camera;->dataAccess(Z)V
2897 + invoke-static {v0, v1}, Landroid/hardware/Camera;->access$400(Landroid/hardware/Camera;Z)V
2899 + if-eqz v10, :cond_48
2901 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2903 + #getter for: Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2904 + invoke-static {v0}, Landroid/hardware/Camera;->access$500(Landroid/hardware/Camera;)Landroid/privacy/PrivacySettingsManager;
2906 + move-result-object v0
2908 + const/4 v1, 0x0
2910 + aget-object v1, v10, v1
2912 + const/4 v2, 0x0
2914 + const/4 v3, 0x0
2916 + const-string v4, "camera"
2918 + const/4 v5, 0x0
2920 + iget-object v6, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2922 + #getter for: Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
2923 + invoke-static {v6}, Landroid/hardware/Camera;->access$500(Landroid/hardware/Camera;)Landroid/privacy/PrivacySettingsManager;
2925 + move-result-object v6
2927 + const/4 v12, 0x0
2929 + aget-object v12, v10, v12
2931 + invoke-static {}, Landroid/os/Process;->myUid()I
2933 + move-result v13
2935 + invoke-virtual {v6, v12, v13}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
2937 + move-result-object v6
2939 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
2941 + goto :goto_48
2943 + :sswitch_93
2944 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2946 #getter for: Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
2947 - invoke-static {v3}, Landroid/hardware/Camera;->access$000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
2948 + invoke-static {v0}, Landroid/hardware/Camera;->access$600(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
2950 - move-result-object v3
2951 + move-result-object v0
2953 - if-eqz v3, :cond_21
2954 + if-eqz v0, :cond_67
2956 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2957 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2959 #getter for: Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
2960 - invoke-static {v3}, Landroid/hardware/Camera;->access$000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
2961 + invoke-static {v0}, Landroid/hardware/Camera;->access$600(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
2963 - move-result-object v3
2964 + move-result-object v0
2966 - invoke-interface {v3}, Landroid/hardware/Camera$ShutterCallback;->onShutter()V
2967 + invoke-interface {v0}, Landroid/hardware/Camera$ShutterCallback;->onShutter()V
2969 - goto :goto_21
2970 + goto :goto_67
2972 - :sswitch_34
2973 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2974 + :sswitch_a5
2975 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2977 #getter for: Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
2978 - invoke-static {v3}, Landroid/hardware/Camera;->access$100(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
2979 + invoke-static {v0}, Landroid/hardware/Camera;->access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
2981 - move-result-object v3
2982 + move-result-object v0
2984 + if-eqz v0, :cond_67
2986 - if-eqz v3, :cond_21
2987 + if-eqz v7, :cond_c1
2989 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2990 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
2992 #getter for: Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
2993 - invoke-static {v3}, Landroid/hardware/Camera;->access$100(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
2994 + invoke-static {v0}, Landroid/hardware/Camera;->access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
2996 + move-result-object v1
2998 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3000 - move-result-object v4
3001 + check-cast v0, [B
3003 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3004 + check-cast v0, [B
3006 - check-cast v3, [B
3007 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3009 - check-cast v3, [B
3010 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3012 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3013 + goto :goto_67
3015 + :cond_c1
3016 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3018 + #getter for: Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
3019 + invoke-static {v0}, Landroid/hardware/Camera;->access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3021 + move-result-object v0
3023 - invoke-interface {v4, v3, v5}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3024 + const/4 v1, 0x0
3026 - goto :goto_21
3027 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3029 - :sswitch_4e
3030 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3031 + invoke-interface {v0, v1, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3033 + goto :goto_67
3035 + :sswitch_ce
3036 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3038 #getter for: Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
3039 - invoke-static {v3}, Landroid/hardware/Camera;->access$200(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3040 + invoke-static {v0}, Landroid/hardware/Camera;->access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3042 + move-result-object v0
3044 - move-result-object v3
3045 + if-eqz v0, :cond_67
3047 - if-eqz v3, :cond_21
3048 + if-eqz v7, :cond_eb
3050 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3051 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3053 #getter for: Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
3054 - invoke-static {v3}, Landroid/hardware/Camera;->access$200(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3055 + invoke-static {v0}, Landroid/hardware/Camera;->access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3057 - move-result-object v4
3058 + move-result-object v1
3060 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3061 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3063 - check-cast v3, [B
3064 + check-cast v0, [B
3066 - check-cast v3, [B
3067 + check-cast v0, [B
3069 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3070 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3072 - invoke-interface {v4, v3, v5}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3073 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3075 - goto :goto_21
3076 + goto/16 :goto_67
3078 - :sswitch_68
3079 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3080 + :cond_eb
3081 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3083 - #getter for: Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3084 - invoke-static {v4}, Landroid/hardware/Camera;->access$300(Landroid/hardware/Camera;)Landroid/hardware/Camera$PreviewCallback;
3085 + #getter for: Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
3086 + invoke-static {v0}, Landroid/hardware/Camera;->access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3088 + move-result-object v0
3090 + iget-object v1, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3092 + #calls: Landroid/hardware/Camera;->getFakeImage()[B
3093 + invoke-static {v1}, Landroid/hardware/Camera;->access$900(Landroid/hardware/Camera;)[B
3095 move-result-object v1
3097 - if-eqz v1, :cond_21
3098 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3100 + invoke-interface {v0, v1, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3102 + goto/16 :goto_67
3104 + :sswitch_fe
3105 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3107 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3108 + #getter for: Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3109 + invoke-static {v0}, Landroid/hardware/Camera;->access$1000(Landroid/hardware/Camera;)Landroid/hardware/Camera$PreviewCallback;
3111 + move-result-object v9
3113 + if-eqz v9, :cond_67
3115 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3117 #getter for: Landroid/hardware/Camera;->mOneShot:Z
3118 - invoke-static {v4}, Landroid/hardware/Camera;->access$400(Landroid/hardware/Camera;)Z
3119 + invoke-static {v0}, Landroid/hardware/Camera;->access$1100(Landroid/hardware/Camera;)Z
3121 - move-result v4
3122 + move-result v0
3124 - if-eqz v4, :cond_8a
3125 + if-eqz v0, :cond_123
3127 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3128 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3130 - const/4 v4, 0x0
3131 + const/4 v1, 0x0
3133 #setter for: Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3134 - invoke-static {v3, v4}, Landroid/hardware/Camera;->access$302(Landroid/hardware/Camera;Landroid/hardware/Camera$PreviewCallback;)Landroid/hardware/Camera$PreviewCallback;
3135 + invoke-static {v0, v1}, Landroid/hardware/Camera;->access$1002(Landroid/hardware/Camera;Landroid/hardware/Camera$PreviewCallback;)Landroid/hardware/Camera$PreviewCallback;
3137 + :cond_114
3138 + :goto_114
3139 + if-eqz v7, :cond_133
3141 - :cond_7e
3142 - :goto_7e
3143 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3144 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3146 - check-cast v3, [B
3147 + check-cast v0, [B
3149 - check-cast v3, [B
3150 + check-cast v0, [B
3152 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3153 + iget-object v1, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3155 - invoke-interface {v1, v3, v4}, Landroid/hardware/Camera$PreviewCallback;->onPreviewFrame([BLandroid/hardware/Camera;)V
3156 + invoke-interface {v9, v0, v1}, Landroid/hardware/Camera$PreviewCallback;->onPreviewFrame([BLandroid/hardware/Camera;)V
3158 - goto :goto_21
3159 + goto/16 :goto_67
3161 - :cond_8a
3162 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3163 + :cond_123
3164 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3166 #getter for: Landroid/hardware/Camera;->mWithBuffer:Z
3167 - invoke-static {v4}, Landroid/hardware/Camera;->access$500(Landroid/hardware/Camera;)Z
3168 + invoke-static {v0}, Landroid/hardware/Camera;->access$1200(Landroid/hardware/Camera;)Z
3170 - move-result v4
3171 + move-result v0
3173 - if-nez v4, :cond_7e
3174 + if-nez v0, :cond_114
3176 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3177 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3179 + const/4 v1, 0x1
3181 + const/4 v2, 0x0
3183 #calls: Landroid/hardware/Camera;->setHasPreviewCallback(ZZ)V
3184 - invoke-static {v4, v3, v2}, Landroid/hardware/Camera;->access$600(Landroid/hardware/Camera;ZZ)V
3185 + invoke-static {v0, v1, v2}, Landroid/hardware/Camera;->access$1300(Landroid/hardware/Camera;ZZ)V
3187 + goto :goto_114
3189 + :cond_133
3190 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3192 + #calls: Landroid/hardware/Camera;->getFakeImage()[B
3193 + invoke-static {v0}, Landroid/hardware/Camera;->access$900(Landroid/hardware/Camera;)[B
3195 + move-result-object v0
3197 + iget-object v1, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3199 + invoke-interface {v9, v0, v1}, Landroid/hardware/Camera$PreviewCallback;->onPreviewFrame([BLandroid/hardware/Camera;)V
3201 - goto :goto_7e
3202 + goto/16 :goto_67
3204 - :sswitch_98
3205 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3206 + :sswitch_140
3207 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3209 #getter for: Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
3210 - invoke-static {v3}, Landroid/hardware/Camera;->access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3211 + invoke-static {v0}, Landroid/hardware/Camera;->access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3213 + move-result-object v0
3215 + if-eqz v0, :cond_67
3217 + if-eqz v7, :cond_15d
3219 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3221 + #getter for: Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
3222 + invoke-static {v0}, Landroid/hardware/Camera;->access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3224 + move-result-object v1
3226 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3228 - move-result-object v3
3229 + check-cast v0, [I
3231 - if-eqz v3, :cond_21
3232 + check-cast v0, [I
3234 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3235 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3237 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$CameraMetaDataCallback;->onCameraMetaData([ILandroid/hardware/Camera;)V
3239 + goto/16 :goto_67
3241 + :cond_15d
3242 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3244 #getter for: Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
3245 - invoke-static {v3}, Landroid/hardware/Camera;->access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3246 + invoke-static {v0}, Landroid/hardware/Camera;->access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3248 + move-result-object v0
3250 - move-result-object v4
3251 + const/4 v1, 0x0
3253 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3254 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3256 - check-cast v3, [I
3257 + invoke-interface {v0, v1, v2}, Landroid/hardware/Camera$CameraMetaDataCallback;->onCameraMetaData([ILandroid/hardware/Camera;)V
3259 - check-cast v3, [I
3260 + goto/16 :goto_67
3262 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3263 + :sswitch_16b
3264 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3266 - invoke-interface {v4, v3, v5}, Landroid/hardware/Camera$CameraMetaDataCallback;->onCameraMetaData([ILandroid/hardware/Camera;)V
3267 + #getter for: Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
3268 + invoke-static {v0}, Landroid/hardware/Camera;->access$1500(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3270 + move-result-object v0
3272 - goto/16 :goto_21
3273 + if-eqz v0, :cond_67
3275 - :sswitch_b3
3276 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3277 + if-eqz v7, :cond_188
3279 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3281 #getter for: Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
3282 - invoke-static {v3}, Landroid/hardware/Camera;->access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3283 + invoke-static {v0}, Landroid/hardware/Camera;->access$1500(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3285 + move-result-object v1
3287 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3289 + check-cast v0, [B
3291 + check-cast v0, [B
3293 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3295 - move-result-object v3
3296 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3298 - if-eqz v3, :cond_21
3299 + goto/16 :goto_67
3301 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3302 + :cond_188
3303 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3305 #getter for: Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
3306 - invoke-static {v3}, Landroid/hardware/Camera;->access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3307 + invoke-static {v0}, Landroid/hardware/Camera;->access$1500(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3309 - move-result-object v4
3310 + move-result-object v0
3312 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3313 + iget-object v1, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3315 - check-cast v3, [B
3316 + #calls: Landroid/hardware/Camera;->getFakeImage()[B
3317 + invoke-static {v1}, Landroid/hardware/Camera;->access$900(Landroid/hardware/Camera;)[B
3319 - check-cast v3, [B
3320 + move-result-object v1
3322 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3323 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3325 - invoke-interface {v4, v3, v5}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3326 + invoke-interface {v0, v1, v2}, Landroid/hardware/Camera$PictureCallback;->onPictureTaken([BLandroid/hardware/Camera;)V
3328 - goto/16 :goto_21
3329 + goto/16 :goto_67
3331 - :sswitch_ce
3332 - const/4 v0, 0x0
3333 + :sswitch_19b
3334 + const/4 v8, 0x0
3336 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3337 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3339 #getter for: Landroid/hardware/Camera;->mAutoFocusCallbackLock:Ljava/lang/Object;
3340 - invoke-static {v4}, Landroid/hardware/Camera;->access$900(Landroid/hardware/Camera;)Ljava/lang/Object;
3341 + invoke-static {v0}, Landroid/hardware/Camera;->access$1600(Landroid/hardware/Camera;)Ljava/lang/Object;
3343 - move-result-object v4
3344 + move-result-object v1
3346 - monitor-enter v4
3347 + monitor-enter v1
3349 - :try_start_d6
3350 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3351 + :try_start_1a3
3352 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3354 #getter for: Landroid/hardware/Camera;->mAutoFocusCallback:Landroid/hardware/Camera$AutoFocusCallback;
3355 - invoke-static {v5}, Landroid/hardware/Camera;->access$1000(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusCallback;
3356 + invoke-static {v0}, Landroid/hardware/Camera;->access$1700(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusCallback;
3358 - move-result-object v0
3359 + move-result-object v8
3361 - monitor-exit v4
3362 - :try_end_dd
3363 - .catchall {:try_start_d6 .. :try_end_dd} :catchall_ea
3364 + monitor-exit v1
3365 + :try_end_1aa
3366 + .catchall {:try_start_1a3 .. :try_end_1aa} :catchall_1b8
3368 - if-eqz v0, :cond_21
3369 + if-eqz v8, :cond_67
3371 - iget v4, p1, Landroid/os/Message;->arg1:I
3372 + iget v0, p1, Landroid/os/Message;->arg1:I
3374 - if-nez v4, :cond_ed
3375 + if-nez v0, :cond_1bb
3377 - :goto_e3
3378 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3379 + const/4 v11, 0x0
3381 + :goto_1b1
3382 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3384 - invoke-interface {v0, v2, v3}, Landroid/hardware/Camera$AutoFocusCallback;->onAutoFocus(ZLandroid/hardware/Camera;)V
3385 + invoke-interface {v8, v11, v0}, Landroid/hardware/Camera$AutoFocusCallback;->onAutoFocus(ZLandroid/hardware/Camera;)V
3387 - goto/16 :goto_21
3388 + goto/16 :goto_67
3390 - :catchall_ea
3391 - move-exception v3
3392 + :catchall_1b8
3393 + move-exception v0
3395 - :try_start_eb
3396 - monitor-exit v4
3397 - :try_end_ec
3398 - .catchall {:try_start_eb .. :try_end_ec} :catchall_ea
3399 + :try_start_1b9
3400 + monitor-exit v1
3401 + :try_end_1ba
3402 + .catchall {:try_start_1b9 .. :try_end_1ba} :catchall_1b8
3404 - throw v3
3405 + throw v0
3407 - :cond_ed
3408 - move v2, v3
3409 + :cond_1bb
3410 + const/4 v11, 0x1
3412 - goto :goto_e3
3413 + goto :goto_1b1
3415 - :sswitch_ef
3416 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3417 + :sswitch_1bd
3418 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3420 #getter for: Landroid/hardware/Camera;->mZoomListener:Landroid/hardware/Camera$OnZoomChangeListener;
3421 - invoke-static {v4}, Landroid/hardware/Camera;->access$1100(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3422 + invoke-static {v0}, Landroid/hardware/Camera;->access$1800(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3424 - move-result-object v4
3425 + move-result-object v0
3427 - if-eqz v4, :cond_21
3428 + if-eqz v0, :cond_67
3430 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3431 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3433 #getter for: Landroid/hardware/Camera;->mZoomListener:Landroid/hardware/Camera$OnZoomChangeListener;
3434 - invoke-static {v4}, Landroid/hardware/Camera;->access$1100(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3435 + invoke-static {v0}, Landroid/hardware/Camera;->access$1800(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3437 + move-result-object v1
3439 - move-result-object v4
3440 + iget v2, p1, Landroid/os/Message;->arg1:I
3442 - iget v5, p1, Landroid/os/Message;->arg1:I
3443 + iget v0, p1, Landroid/os/Message;->arg2:I
3445 - iget v6, p1, Landroid/os/Message;->arg2:I
3446 + if-eqz v0, :cond_1d9
3448 - if-eqz v6, :cond_10a
3449 + const/4 v0, 0x1
3451 - :goto_103
3452 - iget-object v6, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3453 + :goto_1d2
3454 + iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3456 - invoke-interface {v4, v5, v3, v6}, Landroid/hardware/Camera$OnZoomChangeListener;->onZoomChange(IZLandroid/hardware/Camera;)V
3457 + invoke-interface {v1, v2, v0, v3}, Landroid/hardware/Camera$OnZoomChangeListener;->onZoomChange(IZLandroid/hardware/Camera;)V
3459 - goto/16 :goto_21
3460 + goto/16 :goto_67
3462 - :cond_10a
3463 - move v3, v2
3464 + :cond_1d9
3465 + const/4 v0, 0x0
3467 - goto :goto_103
3468 + goto :goto_1d2
3470 - :sswitch_10c
3471 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3472 + :sswitch_1db
3473 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3475 #getter for: Landroid/hardware/Camera;->mFaceListener:Landroid/hardware/Camera$FaceDetectionListener;
3476 - invoke-static {v3}, Landroid/hardware/Camera;->access$1200(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3477 + invoke-static {v0}, Landroid/hardware/Camera;->access$1900(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3479 - move-result-object v3
3480 + move-result-object v0
3482 - if-eqz v3, :cond_21
3483 + if-eqz v0, :cond_67
3485 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3486 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3488 #getter for: Landroid/hardware/Camera;->mFaceListener:Landroid/hardware/Camera$FaceDetectionListener;
3489 - invoke-static {v3}, Landroid/hardware/Camera;->access$1200(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3490 + invoke-static {v0}, Landroid/hardware/Camera;->access$1900(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3492 - move-result-object v4
3493 + move-result-object v1
3495 - iget-object v3, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3496 + iget-object v0, p1, Landroid/os/Message;->obj:Ljava/lang/Object;
3498 - check-cast v3, [Landroid/hardware/Camera$Face;
3499 + check-cast v0, [Landroid/hardware/Camera$Face;
3501 - check-cast v3, [Landroid/hardware/Camera$Face;
3502 + check-cast v0, [Landroid/hardware/Camera$Face;
3504 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3505 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3507 - invoke-interface {v4, v3, v5}, Landroid/hardware/Camera$FaceDetectionListener;->onFaceDetection([Landroid/hardware/Camera$Face;Landroid/hardware/Camera;)V
3508 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$FaceDetectionListener;->onFaceDetection([Landroid/hardware/Camera$Face;Landroid/hardware/Camera;)V
3510 - goto/16 :goto_21
3511 + goto/16 :goto_67
3513 - :sswitch_127
3514 - const-string v3, "Camera"
3515 + :sswitch_1f6
3516 + const-string v0, "Camera"
3518 - new-instance v4, Ljava/lang/StringBuilder;
3519 + new-instance v1, Ljava/lang/StringBuilder;
3521 - invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
3522 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
3524 - const-string v5, "Error "
3525 + const-string v2, "Error "
3527 - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3528 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
3530 - move-result-object v4
3531 + move-result-object v1
3533 - iget v5, p1, Landroid/os/Message;->arg1:I
3534 + iget v2, p1, Landroid/os/Message;->arg1:I
3536 - invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3537 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
3539 - move-result-object v4
3540 + move-result-object v1
3542 - invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3543 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
3545 - move-result-object v4
3546 + move-result-object v1
3548 - invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3549 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
3551 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3552 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3554 #getter for: Landroid/hardware/Camera;->mErrorCallback:Landroid/hardware/Camera$ErrorCallback;
3555 - invoke-static {v3}, Landroid/hardware/Camera;->access$1300(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3556 + invoke-static {v0}, Landroid/hardware/Camera;->access$2000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3558 - move-result-object v3
3559 + move-result-object v0
3561 - if-eqz v3, :cond_21
3562 + if-eqz v0, :cond_67
3564 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3565 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3567 #getter for: Landroid/hardware/Camera;->mErrorCallback:Landroid/hardware/Camera$ErrorCallback;
3568 - invoke-static {v3}, Landroid/hardware/Camera;->access$1300(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3569 + invoke-static {v0}, Landroid/hardware/Camera;->access$2000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3571 - move-result-object v3
3572 + move-result-object v0
3574 - iget v4, p1, Landroid/os/Message;->arg1:I
3575 + iget v1, p1, Landroid/os/Message;->arg1:I
3577 - iget-object v5, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3578 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3580 - invoke-interface {v3, v4, v5}, Landroid/hardware/Camera$ErrorCallback;->onError(ILandroid/hardware/Camera;)V
3581 + invoke-interface {v0, v1, v2}, Landroid/hardware/Camera$ErrorCallback;->onError(ILandroid/hardware/Camera;)V
3583 - goto/16 :goto_21
3584 + goto/16 :goto_67
3586 - :sswitch_158
3587 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3588 + :sswitch_227
3589 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3591 #getter for: Landroid/hardware/Camera;->mAutoFocusMoveCallback:Landroid/hardware/Camera$AutoFocusMoveCallback;
3592 - invoke-static {v4}, Landroid/hardware/Camera;->access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3593 + invoke-static {v0}, Landroid/hardware/Camera;->access$2100(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3595 - move-result-object v4
3596 + move-result-object v0
3598 - if-eqz v4, :cond_21
3599 + if-eqz v0, :cond_67
3601 - iget-object v4, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3602 + iget-object v0, p0, Landroid/hardware/Camera$EventHandler;->this$0:Landroid/hardware/Camera;
3604 #getter for: Landroid/hardware/Camera;->mAutoFocusMoveCallback:Landroid/hardware/Camera$AutoFocusMoveCallback;
3605 - invoke-static {v4}, Landroid/hardware/Camera;->access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3606 + invoke-static {v0}, Landroid/hardware/Camera;->access$2100(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3608 - move-result-object v4
3609 + move-result-object v1
3611 - iget v5, p1, Landroid/os/Message;->arg1:I
3612 + iget v0, p1, Landroid/os/Message;->arg1:I
3614 - if-nez v5, :cond_171
3615 + if-nez v0, :cond_241
3617 - :goto_16a
3618 - iget-object v3, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3619 + const/4 v0, 0x0
3621 + :goto_23a
3622 + iget-object v2, p0, Landroid/hardware/Camera$EventHandler;->mCamera:Landroid/hardware/Camera;
3624 - invoke-interface {v4, v2, v3}, Landroid/hardware/Camera$AutoFocusMoveCallback;->onAutoFocusMoving(ZLandroid/hardware/Camera;)V
3625 + invoke-interface {v1, v0, v2}, Landroid/hardware/Camera$AutoFocusMoveCallback;->onAutoFocusMoving(ZLandroid/hardware/Camera;)V
3627 - goto/16 :goto_21
3628 + goto/16 :goto_67
3630 - :cond_171
3631 - move v2, v3
3632 + :cond_241
3633 + const/4 v0, 0x1
3635 - goto :goto_16a
3636 + goto :goto_23a
3640 - :sswitch_data_174
3641 + :sswitch_data_244
3642 .sparse-switch
3643 - 0x1 -> :sswitch_127
3644 - 0x2 -> :sswitch_22
3645 - 0x4 -> :sswitch_ce
3646 - 0x8 -> :sswitch_ef
3647 - 0x10 -> :sswitch_68
3648 - 0x40 -> :sswitch_b3
3649 - 0x80 -> :sswitch_34
3650 - 0x100 -> :sswitch_4e
3651 - 0x400 -> :sswitch_10c
3652 - 0x800 -> :sswitch_158
3653 - 0x8000 -> :sswitch_98
3654 + 0x1 -> :sswitch_1f6
3655 + 0x2 -> :sswitch_93
3656 + 0x4 -> :sswitch_19b
3657 + 0x8 -> :sswitch_1bd
3658 + 0x10 -> :sswitch_fe
3659 + 0x40 -> :sswitch_16b
3660 + 0x80 -> :sswitch_a5
3661 + 0x100 -> :sswitch_ce
3662 + 0x400 -> :sswitch_1db
3663 + 0x800 -> :sswitch_227
3664 + 0x8000 -> :sswitch_140
3665 .end sparse-switch
3666 .end method
3667 diff -Npru stock-framework/smali/android/hardware/Camera.smali ext-framework/smali/android/hardware/Camera.smali
3668 --- stock-framework/smali/android/hardware/Camera.smali 2012-11-02 22:31:08.275973178 -0500
3669 +++ ext-framework/smali/android/hardware/Camera.smali 2012-11-02 22:30:48.019872742 -0500
3670 @@ -67,10 +67,20 @@
3672 .field private static final CAMERA_MSG_ZOOM:I = 0x8
3674 +.field private static final GOT_ERROR:I = -0x3
3676 +.field private static final IS_ALLOWED:I = -0x1
3678 +.field private static final IS_NOT_ALLOWED:I = -0x2
3680 +.field private static final PRIVACY_TAG:Ljava/lang/String; = "PM,Camera"
3682 .field private static final TAG:Ljava/lang/String; = "Camera"
3685 # instance fields
3686 +.field private context:Landroid/content/Context;
3688 .field private mAutoFocusCallback:Landroid/hardware/Camera$AutoFocusCallback;
3690 .field private mAutoFocusCallbackLock:Ljava/lang/Object;
3691 @@ -95,6 +105,8 @@
3693 .field private mOneShot:Z
3695 +.field private mPm:Landroid/content/pm/IPackageManager;
3697 .field private mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
3699 .field private mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3700 @@ -107,16 +119,20 @@
3702 .field private mZoomListener:Landroid/hardware/Camera$OnZoomChangeListener;
3704 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
3706 +.field private privacyMode:Z
3709 # direct methods
3710 .method constructor <init>()V
3711 - .registers 2
3712 + .registers 3
3714 - invoke-direct {p0}, Ljava/lang/Object;-><init>()V
3715 + const/4 v1, 0x0
3717 - const/4 v0, 0x0
3718 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
3720 - iput-boolean v0, p0, Landroid/hardware/Camera;->mFaceDetectionRunning:Z
3721 + iput-boolean v1, p0, Landroid/hardware/Camera;->mFaceDetectionRunning:Z
3723 new-instance v0, Ljava/lang/Object;
3725 @@ -124,19 +140,21 @@
3727 iput-object v0, p0, Landroid/hardware/Camera;->mAutoFocusCallbackLock:Ljava/lang/Object;
3729 + iput-boolean v1, p0, Landroid/hardware/Camera;->privacyMode:Z
3731 return-void
3732 .end method
3734 .method constructor <init>(I)V
3735 - .registers 5
3736 + .registers 6
3738 + const/4 v3, 0x0
3740 const/4 v2, 0x0
3742 invoke-direct {p0}, Ljava/lang/Object;-><init>()V
3744 - const/4 v1, 0x0
3746 - iput-boolean v1, p0, Landroid/hardware/Camera;->mFaceDetectionRunning:Z
3747 + iput-boolean v3, p0, Landroid/hardware/Camera;->mFaceDetectionRunning:Z
3749 new-instance v1, Ljava/lang/Object;
3751 @@ -144,6 +162,8 @@
3753 iput-object v1, p0, Landroid/hardware/Camera;->mAutoFocusCallbackLock:Ljava/lang/Object;
3755 + iput-boolean v3, p0, Landroid/hardware/Camera;->privacyMode:Z
3757 iput-object v2, p0, Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
3759 iput-object v2, p0, Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
3760 @@ -160,11 +180,13 @@
3762 iput-object v2, p0, Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
3764 + invoke-direct {p0}, Landroid/hardware/Camera;->initiate()V
3766 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
3768 move-result-object v0
3770 - if-eqz v0, :cond_34
3771 + if-eqz v0, :cond_39
3773 new-instance v1, Landroid/hardware/Camera$EventHandler;
3775 @@ -172,7 +194,7 @@
3777 iput-object v1, p0, Landroid/hardware/Camera;->mEventHandler:Landroid/hardware/Camera$EventHandler;
3779 - :goto_2b
3780 + :goto_30
3781 new-instance v1, Ljava/lang/ref/WeakReference;
3783 invoke-direct {v1, p0}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
3784 @@ -181,12 +203,12 @@
3786 return-void
3788 - :cond_34
3789 + :cond_39
3790 invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
3792 move-result-object v0
3794 - if-eqz v0, :cond_42
3795 + if-eqz v0, :cond_47
3797 new-instance v1, Landroid/hardware/Camera$EventHandler;
3799 @@ -194,12 +216,12 @@
3801 iput-object v1, p0, Landroid/hardware/Camera;->mEventHandler:Landroid/hardware/Camera$EventHandler;
3803 - goto :goto_2b
3804 + goto :goto_30
3806 - :cond_42
3807 + :cond_47
3808 iput-object v2, p0, Landroid/hardware/Camera;->mEventHandler:Landroid/hardware/Camera$EventHandler;
3810 - goto :goto_2b
3811 + goto :goto_30
3812 .end method
3814 .method private final native _addCallbackBuffer([BI)V
3815 @@ -214,114 +236,174 @@
3816 .method private final native _stopPreview()V
3817 .end method
3819 -.method static synthetic access$000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
3820 +.method static synthetic access$000(Landroid/hardware/Camera;)Z
3821 .registers 2
3823 - iget-object v0, p0, Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
3824 + iget-boolean v0, p0, Landroid/hardware/Camera;->privacyMode:Z
3826 - return-object v0
3827 + return v0
3828 .end method
3830 -.method static synthetic access$100(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3831 +.method static synthetic access$100(Landroid/hardware/Camera;)V
3832 + .registers 1
3834 + invoke-direct {p0}, Landroid/hardware/Camera;->initiate()V
3836 + return-void
3837 +.end method
3839 +.method static synthetic access$1000(Landroid/hardware/Camera;)Landroid/hardware/Camera$PreviewCallback;
3840 .registers 2
3842 - iget-object v0, p0, Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
3843 + iget-object v0, p0, Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3845 return-object v0
3846 .end method
3848 -.method static synthetic access$1000(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusCallback;
3849 +.method static synthetic access$1002(Landroid/hardware/Camera;Landroid/hardware/Camera$PreviewCallback;)Landroid/hardware/Camera$PreviewCallback;
3850 .registers 2
3852 - iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusCallback:Landroid/hardware/Camera$AutoFocusCallback;
3853 + iput-object p1, p0, Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3855 + return-object p1
3856 +.end method
3858 +.method static synthetic access$1100(Landroid/hardware/Camera;)Z
3859 + .registers 2
3861 + iget-boolean v0, p0, Landroid/hardware/Camera;->mOneShot:Z
3863 + return v0
3864 +.end method
3866 +.method static synthetic access$1200(Landroid/hardware/Camera;)Z
3867 + .registers 2
3869 + iget-boolean v0, p0, Landroid/hardware/Camera;->mWithBuffer:Z
3871 + return v0
3872 +.end method
3874 +.method static synthetic access$1300(Landroid/hardware/Camera;ZZ)V
3875 + .registers 3
3877 + invoke-direct {p0, p1, p2}, Landroid/hardware/Camera;->setHasPreviewCallback(ZZ)V
3879 + return-void
3880 +.end method
3882 +.method static synthetic access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3883 + .registers 2
3885 + iget-object v0, p0, Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
3887 return-object v0
3888 .end method
3890 -.method static synthetic access$1100(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3891 +.method static synthetic access$1500(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3892 .registers 2
3894 - iget-object v0, p0, Landroid/hardware/Camera;->mZoomListener:Landroid/hardware/Camera$OnZoomChangeListener;
3895 + iget-object v0, p0, Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
3897 return-object v0
3898 .end method
3900 -.method static synthetic access$1200(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3901 +.method static synthetic access$1600(Landroid/hardware/Camera;)Ljava/lang/Object;
3902 .registers 2
3904 - iget-object v0, p0, Landroid/hardware/Camera;->mFaceListener:Landroid/hardware/Camera$FaceDetectionListener;
3905 + iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusCallbackLock:Ljava/lang/Object;
3907 return-object v0
3908 .end method
3910 -.method static synthetic access$1300(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3911 +.method static synthetic access$1700(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusCallback;
3912 .registers 2
3914 - iget-object v0, p0, Landroid/hardware/Camera;->mErrorCallback:Landroid/hardware/Camera$ErrorCallback;
3915 + iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusCallback:Landroid/hardware/Camera$AutoFocusCallback;
3917 return-object v0
3918 .end method
3920 -.method static synthetic access$1400(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3921 +.method static synthetic access$1800(Landroid/hardware/Camera;)Landroid/hardware/Camera$OnZoomChangeListener;
3922 .registers 2
3924 - iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusMoveCallback:Landroid/hardware/Camera$AutoFocusMoveCallback;
3925 + iget-object v0, p0, Landroid/hardware/Camera;->mZoomListener:Landroid/hardware/Camera$OnZoomChangeListener;
3927 return-object v0
3928 .end method
3930 -.method static synthetic access$200(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
3931 +.method static synthetic access$1900(Landroid/hardware/Camera;)Landroid/hardware/Camera$FaceDetectionListener;
3932 .registers 2
3934 - iget-object v0, p0, Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
3935 + iget-object v0, p0, Landroid/hardware/Camera;->mFaceListener:Landroid/hardware/Camera$FaceDetectionListener;
3937 return-object v0
3938 .end method
3940 -.method static synthetic access$300(Landroid/hardware/Camera;)Landroid/hardware/Camera$PreviewCallback;
3941 +.method static synthetic access$200(Landroid/hardware/Camera;)[Ljava/lang/String;
3942 .registers 2
3944 - iget-object v0, p0, Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3945 + invoke-direct {p0}, Landroid/hardware/Camera;->getPackageName()[Ljava/lang/String;
3947 + move-result-object v0
3949 return-object v0
3950 .end method
3952 -.method static synthetic access$302(Landroid/hardware/Camera;Landroid/hardware/Camera$PreviewCallback;)Landroid/hardware/Camera$PreviewCallback;
3953 +.method static synthetic access$2000(Landroid/hardware/Camera;)Landroid/hardware/Camera$ErrorCallback;
3954 .registers 2
3956 - iput-object p1, p0, Landroid/hardware/Camera;->mPreviewCallback:Landroid/hardware/Camera$PreviewCallback;
3957 + iget-object v0, p0, Landroid/hardware/Camera;->mErrorCallback:Landroid/hardware/Camera$ErrorCallback;
3959 - return-object p1
3960 + return-object v0
3961 .end method
3963 -.method static synthetic access$400(Landroid/hardware/Camera;)Z
3964 +.method static synthetic access$2100(Landroid/hardware/Camera;)Landroid/hardware/Camera$AutoFocusMoveCallback;
3965 .registers 2
3967 - iget-boolean v0, p0, Landroid/hardware/Camera;->mOneShot:Z
3968 + iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusMoveCallback:Landroid/hardware/Camera$AutoFocusMoveCallback;
3970 - return v0
3971 + return-object v0
3972 .end method
3974 -.method static synthetic access$500(Landroid/hardware/Camera;)Z
3975 +.method static synthetic access$300(Landroid/hardware/Camera;)I
3976 .registers 2
3978 - iget-boolean v0, p0, Landroid/hardware/Camera;->mWithBuffer:Z
3979 + invoke-direct {p0}, Landroid/hardware/Camera;->checkIfPackagesAllowed()I
3981 + move-result v0
3983 return v0
3984 .end method
3986 -.method static synthetic access$600(Landroid/hardware/Camera;ZZ)V
3987 - .registers 3
3988 +.method static synthetic access$400(Landroid/hardware/Camera;Z)V
3989 + .registers 2
3991 - invoke-direct {p0, p1, p2}, Landroid/hardware/Camera;->setHasPreviewCallback(ZZ)V
3992 + invoke-direct {p0, p1}, Landroid/hardware/Camera;->dataAccess(Z)V
3994 return-void
3995 .end method
3997 -.method static synthetic access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$CameraMetaDataCallback;
3998 +.method static synthetic access$500(Landroid/hardware/Camera;)Landroid/privacy/PrivacySettingsManager;
3999 .registers 2
4001 - iget-object v0, p0, Landroid/hardware/Camera;->mCameraMetaDataCallback:Landroid/hardware/Camera$CameraMetaDataCallback;
4002 + iget-object v0, p0, Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4004 + return-object v0
4005 +.end method
4007 +.method static synthetic access$600(Landroid/hardware/Camera;)Landroid/hardware/Camera$ShutterCallback;
4008 + .registers 2
4010 + iget-object v0, p0, Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
4012 + return-object v0
4013 +.end method
4015 +.method static synthetic access$700(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
4016 + .registers 2
4018 + iget-object v0, p0, Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
4020 return-object v0
4021 .end method
4022 @@ -329,15 +411,17 @@
4023 .method static synthetic access$800(Landroid/hardware/Camera;)Landroid/hardware/Camera$PictureCallback;
4024 .registers 2
4026 - iget-object v0, p0, Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
4027 + iget-object v0, p0, Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
4029 return-object v0
4030 .end method
4032 -.method static synthetic access$900(Landroid/hardware/Camera;)Ljava/lang/Object;
4033 +.method static synthetic access$900(Landroid/hardware/Camera;)[B
4034 .registers 2
4036 - iget-object v0, p0, Landroid/hardware/Camera;->mAutoFocusCallbackLock:Ljava/lang/Object;
4037 + invoke-direct {p0}, Landroid/hardware/Camera;->getFakeImage()[B
4039 + move-result-object v0
4041 return-object v0
4042 .end method
4043 @@ -419,6 +503,205 @@
4044 return v2
4045 .end method
4047 +.method private checkIfPackagesAllowed()I
4048 + .registers 9
4050 + const/4 v5, -0x3
4052 + :try_start_1
4053 + iget-object v6, p0, Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4055 + if-eqz v6, :cond_41
4057 + const/4 v2, 0x0
4059 + invoke-direct {p0}, Landroid/hardware/Camera;->getPackageName()[Ljava/lang/String;
4061 + move-result-object v3
4063 + invoke-static {}, Landroid/os/Process;->myUid()I
4065 + move-result v4
4067 + if-eqz v3, :cond_2c
4069 + const/4 v1, 0x0
4071 + :goto_11
4072 + array-length v6, v3
4074 + if-ge v1, v6, :cond_2a
4076 + iget-object v6, p0, Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4078 + aget-object v7, v3, v1
4080 + invoke-virtual {v6, v7, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
4082 + move-result-object v2
4084 + if-eqz v2, :cond_26
4086 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getCameraSetting()B
4088 + move-result v6
4090 + if-eqz v6, :cond_26
4092 + const/4 v5, -0x2
4094 + :goto_25
4095 + return v5
4097 + :cond_26
4098 + const/4 v2, 0x0
4100 + add-int/lit8 v1, v1, 0x1
4102 + goto :goto_11
4104 + :cond_2a
4105 + const/4 v5, -0x1
4107 + goto :goto_25
4109 + :cond_2c
4110 + const-string v6, "PM,Camera"
4112 + const-string/jumbo v7, "return GOT_ERROR, because package_names are NULL"
4114 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4115 + :try_end_34
4116 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_34} :catch_35
4118 + goto :goto_25
4120 + :catch_35
4121 + move-exception v0
4123 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
4125 + const-string v6, "PM,Camera"
4127 + const-string v7, "Got exception in checkIfPackagesAllowed"
4129 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4131 + goto :goto_25
4133 + :cond_41
4134 + :try_start_41
4135 + const-string v6, "PM,Camera"
4137 + const-string/jumbo v7, "return GOT_ERROR, because pSetMan is NULL"
4139 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4140 + :try_end_49
4141 + .catch Ljava/lang/Exception; {:try_start_41 .. :try_end_49} :catch_35
4143 + goto :goto_25
4144 +.end method
4146 +.method private dataAccess(Z)V
4147 + .registers 7
4149 + invoke-direct {p0}, Landroid/hardware/Camera;->getPackageName()[Ljava/lang/String;
4151 + move-result-object v1
4153 + if-eqz p1, :cond_2f
4155 + if-eqz v1, :cond_2f
4157 + const/4 v0, 0x0
4159 + :goto_9
4160 + array-length v2, v1
4162 + if-ge v0, v2, :cond_58
4164 + const-string v2, "PM,Camera"
4166 + new-instance v3, Ljava/lang/StringBuilder;
4168 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
4170 + const-string v4, "Allowed Package: -"
4172 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4174 + move-result-object v3
4176 + aget-object v4, v1, v0
4178 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4180 + move-result-object v3
4182 + const-string v4, "- accessing camera."
4184 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4186 + move-result-object v3
4188 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4190 + move-result-object v3
4192 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
4194 + add-int/lit8 v0, v0, 0x1
4196 + goto :goto_9
4198 + :cond_2f
4199 + if-eqz v1, :cond_58
4201 + const/4 v0, 0x0
4203 + :goto_32
4204 + array-length v2, v1
4206 + if-ge v0, v2, :cond_58
4208 + const-string v2, "PM,Camera"
4210 + new-instance v3, Ljava/lang/StringBuilder;
4212 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
4214 + const-string v4, "Blocked Package: -"
4216 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4218 + move-result-object v3
4220 + aget-object v4, v1, v0
4222 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4224 + move-result-object v3
4226 + const-string v4, "- accessing camera."
4228 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4230 + move-result-object v3
4232 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4234 + move-result-object v3
4236 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
4238 + add-int/lit8 v0, v0, 0x1
4240 + goto :goto_32
4242 + :cond_58
4243 + return-void
4244 +.end method
4246 .method private native enableFocusMoveCallback(I)V
4247 .end method
4249 @@ -443,9 +726,193 @@
4250 return-object v1
4251 .end method
4253 +.method private getFakeImage()[B
4254 + .registers 9
4256 + :try_start_0
4257 + const-string v2, "/system/media/PDroid.jpeg"
4259 + new-instance v5, Ljava/io/File;
4261 + invoke-direct {v5, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
4263 + const/4 v3, 0x0
4265 + new-instance v3, Ljava/io/FileInputStream;
4267 + invoke-direct {v3, v5}, Ljava/io/FileInputStream;-><init>(Ljava/io/File;)V
4269 + invoke-static {v3}, Landroid/graphics/BitmapFactory;->decodeStream(Ljava/io/InputStream;)Landroid/graphics/Bitmap;
4271 + move-result-object v0
4273 + new-instance v4, Ljava/io/ByteArrayOutputStream;
4275 + invoke-direct {v4}, Ljava/io/ByteArrayOutputStream;-><init>()V
4277 + sget-object v6, Landroid/graphics/Bitmap$CompressFormat;->JPEG:Landroid/graphics/Bitmap$CompressFormat;
4279 + const/16 v7, 0x64
4281 + invoke-virtual {v0, v6, v7, v4}, Landroid/graphics/Bitmap;->compress(Landroid/graphics/Bitmap$CompressFormat;ILjava/io/OutputStream;)Z
4283 + invoke-virtual {v4}, Ljava/io/ByteArrayOutputStream;->toByteArray()[B
4284 + :try_end_20
4285 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_20} :catch_22
4287 + move-result-object v6
4289 + :goto_21
4290 + return-object v6
4292 + :catch_22
4293 + move-exception v1
4295 + const-string v6, "PM,Camera"
4297 + const-string/jumbo v7, "something went wrong with getting the picture!"
4299 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4301 + invoke-virtual {v1}, Ljava/lang/Exception;->printStackTrace()V
4303 + const/4 v6, 0x0
4305 + goto :goto_21
4306 +.end method
4308 .method public static native getNumberOfCameras()I
4309 .end method
4311 +.method private getPackageName()[Ljava/lang/String;
4312 + .registers 6
4314 + :try_start_0
4315 + iget-object v3, p0, Landroid/hardware/Camera;->mPm:Landroid/content/pm/IPackageManager;
4317 + if-eqz v3, :cond_f
4319 + invoke-static {}, Landroid/os/Process;->myUid()I
4321 + move-result v2
4323 + iget-object v3, p0, Landroid/hardware/Camera;->mPm:Landroid/content/pm/IPackageManager;
4325 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
4327 + move-result-object v1
4329 + :goto_e
4330 + return-object v1
4332 + :cond_f
4333 + const-string/jumbo v3, "package"
4335 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4337 + move-result-object v3
4339 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
4341 + move-result-object v3
4343 + iput-object v3, p0, Landroid/hardware/Camera;->mPm:Landroid/content/pm/IPackageManager;
4345 + invoke-static {}, Landroid/os/Process;->myUid()I
4347 + move-result v2
4349 + iget-object v3, p0, Landroid/hardware/Camera;->mPm:Landroid/content/pm/IPackageManager;
4351 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
4352 + :try_end_25
4353 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
4355 + move-result-object v1
4357 + goto :goto_e
4359 + :catch_27
4360 + move-exception v0
4362 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
4364 + const-string v3, "PM,Camera"
4366 + const-string/jumbo v4, "something went wrong with getting package name"
4368 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4370 + const/4 v1, 0x0
4372 + goto :goto_e
4373 +.end method
4375 +.method private initiate()V
4376 + .registers 5
4378 + const/4 v1, 0x0
4380 + :try_start_1
4381 + iput-object v1, p0, Landroid/hardware/Camera;->context:Landroid/content/Context;
4383 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
4385 + iget-object v2, p0, Landroid/hardware/Camera;->context:Landroid/content/Context;
4387 + const-string/jumbo v3, "privacy"
4389 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4391 + move-result-object v3
4393 + invoke-static {v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
4395 + move-result-object v3
4397 + invoke-direct {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
4399 + iput-object v1, p0, Landroid/hardware/Camera;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4401 + const-string/jumbo v1, "package"
4403 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4405 + move-result-object v1
4407 + invoke-static {v1}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
4409 + move-result-object v1
4411 + iput-object v1, p0, Landroid/hardware/Camera;->mPm:Landroid/content/pm/IPackageManager;
4413 + const/4 v1, 0x1
4415 + iput-boolean v1, p0, Landroid/hardware/Camera;->privacyMode:Z
4416 + :try_end_27
4417 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
4419 + :goto_27
4420 + return-void
4422 + :catch_28
4423 + move-exception v0
4425 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
4427 + const-string v1, "PM,Camera"
4429 + const-string v2, "Something went wrong with initalize variables"
4431 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4433 + const/4 v1, 0x0
4435 + iput-boolean v1, p0, Landroid/hardware/Camera;->privacyMode:Z
4437 + goto :goto_27
4438 +.end method
4440 .method private final native native_autoFocus()V
4441 .end method
4443 @@ -1061,7 +1528,7 @@
4444 .end method
4446 .method public final takePicture(Landroid/hardware/Camera$ShutterCallback;Landroid/hardware/Camera$PictureCallback;Landroid/hardware/Camera$PictureCallback;Landroid/hardware/Camera$PictureCallback;)V
4447 - .registers 7
4448 + .registers 8
4450 iput-object p1, p0, Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
4452 @@ -1071,36 +1538,62 @@
4454 iput-object p4, p0, Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
4456 + iget-boolean v1, p0, Landroid/hardware/Camera;->privacyMode:Z
4458 + if-nez v1, :cond_f
4460 + invoke-direct {p0}, Landroid/hardware/Camera;->initiate()V
4462 + :cond_f
4463 + invoke-direct {p0}, Landroid/hardware/Camera;->checkIfPackagesAllowed()I
4465 + move-result v1
4467 + const/4 v2, -0x2
4469 + if-ne v1, v2, :cond_20
4471 + const/4 v1, 0x0
4473 + iput-object v1, p0, Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
4475 + const-string v1, "PM,Camera"
4477 + const-string v2, "blocked rawImageCallback -> it will never be called!"
4479 + invoke-static {v1, v2}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
4481 + :cond_20
4482 const/4 v0, 0x0
4484 iget-object v1, p0, Landroid/hardware/Camera;->mShutterCallback:Landroid/hardware/Camera$ShutterCallback;
4486 - if-eqz v1, :cond_f
4487 + if-eqz v1, :cond_27
4489 or-int/lit8 v0, v0, 0x2
4491 - :cond_f
4492 + :cond_27
4493 iget-object v1, p0, Landroid/hardware/Camera;->mRawImageCallback:Landroid/hardware/Camera$PictureCallback;
4495 - if-eqz v1, :cond_15
4496 + if-eqz v1, :cond_2d
4498 or-int/lit16 v0, v0, 0x80
4500 - :cond_15
4501 + :cond_2d
4502 iget-object v1, p0, Landroid/hardware/Camera;->mPostviewCallback:Landroid/hardware/Camera$PictureCallback;
4504 - if-eqz v1, :cond_1b
4505 + if-eqz v1, :cond_33
4507 or-int/lit8 v0, v0, 0x40
4509 - :cond_1b
4510 + :cond_33
4511 iget-object v1, p0, Landroid/hardware/Camera;->mJpegCallback:Landroid/hardware/Camera$PictureCallback;
4513 - if-eqz v1, :cond_21
4514 + if-eqz v1, :cond_39
4516 or-int/lit16 v0, v0, 0x100
4518 - :cond_21
4519 + :cond_39
4520 invoke-direct {p0, v0}, Landroid/hardware/Camera;->native_takePicture(I)V
4522 const/4 v1, 0x0
4523 diff -Npru stock-framework/smali/android/location/Location.smali ext-framework/smali/android/location/Location.smali
4524 --- stock-framework/smali/android/location/Location.smali 2012-11-02 22:31:08.483974223 -0500
4525 +++ ext-framework/smali/android/location/Location.smali 2012-11-02 22:30:48.323874243 -0500
4526 @@ -1707,7 +1707,7 @@
4528 move-result-object v0
4530 - const-string v1, "mHasAltitude="
4531 + const-string/jumbo v1, "mHasAltitude="
4533 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4535 @@ -1745,7 +1745,7 @@
4537 move-result-object v0
4539 - const-string v1, "mHasSpeed="
4540 + const-string/jumbo v1, "mHasSpeed="
4542 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4544 @@ -1783,7 +1783,7 @@
4546 move-result-object v0
4548 - const-string v1, "mHasBearing="
4549 + const-string/jumbo v1, "mHasBearing="
4551 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4553 @@ -1821,7 +1821,7 @@
4555 move-result-object v0
4557 - const-string v1, "mHasAccuracy="
4558 + const-string/jumbo v1, "mHasAccuracy="
4560 invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4562 diff -Npru stock-framework/smali/android/media/AudioRecord.smali ext-framework/smali/android/media/AudioRecord.smali
4563 --- stock-framework/smali/android/media/AudioRecord.smali 2012-11-02 22:31:08.499974296 -0500
4564 +++ ext-framework/smali/android/media/AudioRecord.smali 2012-11-02 22:30:48.339874326 -0500
4565 @@ -29,10 +29,18 @@
4567 .field public static final ERROR_INVALID_OPERATION:I = -0x3
4569 +.field private static final GOT_ERROR:I = -0x3
4571 +.field private static final IS_ALLOWED:I = -0x1
4573 +.field private static final IS_NOT_ALLOWED:I = -0x2
4575 .field private static final NATIVE_EVENT_MARKER:I = 0x2
4577 .field private static final NATIVE_EVENT_NEW_POS:I = 0x3
4579 +.field private static final PRIVACY_TAG:Ljava/lang/String; = "PM,AudioRecord"
4581 .field public static final RECORDSTATE_RECORDING:I = 0x3
4583 .field public static final RECORDSTATE_STOPPED:I = 0x1
4584 @@ -47,6 +55,8 @@
4587 # instance fields
4588 +.field private context:Landroid/content/Context;
4590 .field private mAudioFormat:I
4592 .field private mChannelConfiguration:I
4593 @@ -65,6 +75,8 @@
4595 .field private mNativeRecorderInJavaObj:I
4597 +.field private mPm:Landroid/content/pm/IPackageManager;
4599 .field private mPositionListener:Landroid/media/AudioRecord$OnRecordPositionUpdateListener;
4601 .field private final mPositionListenerLock:Ljava/lang/Object;
4602 @@ -81,6 +93,10 @@
4604 .field private mState:I
4606 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
4608 +.field private privacyMode:Z
4611 # direct methods
4612 .method public constructor <init>(IIIII)V
4613 @@ -159,6 +175,10 @@
4615 const/4 v0, 0x0
4617 + iput-boolean v0, p0, Landroid/media/AudioRecord;->privacyMode:Z
4619 + const/4 v0, 0x0
4621 iput v0, p0, Landroid/media/AudioRecord;->mState:I
4623 const/4 v0, 0x1
4624 @@ -171,7 +191,7 @@
4626 iput-object v0, p0, Landroid/media/AudioRecord;->mInitializationLooper:Landroid/os/Looper;
4628 - if-nez v0, :cond_4f
4629 + if-nez v0, :cond_52
4631 invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
4633 @@ -179,7 +199,7 @@
4635 iput-object v0, p0, Landroid/media/AudioRecord;->mInitializationLooper:Landroid/os/Looper;
4637 - :cond_4f
4638 + :cond_52
4639 invoke-direct {p0, p1, p2, p3, p4}, Landroid/media/AudioRecord;->audioParamCheck(IIII)V
4641 invoke-direct {p0, p5}, Landroid/media/AudioRecord;->audioBuffSizeCheck(I)V
4642 @@ -214,7 +234,7 @@
4644 move-result v8
4646 - if-eqz v8, :cond_8f
4647 + if-eqz v8, :cond_92
4649 new-instance v0, Ljava/lang/StringBuilder;
4651 @@ -242,10 +262,12 @@
4653 invoke-static {v0}, Landroid/media/AudioRecord;->loge(Ljava/lang/String;)V
4655 - :goto_8e
4656 + :goto_91
4657 return-void
4659 - :cond_8f
4660 + :cond_92
4661 + invoke-direct {p0}, Landroid/media/AudioRecord;->initiate()V
4663 const/4 v0, 0x0
4665 aget v0, v7, v0
4666 @@ -256,7 +278,7 @@
4668 iput v0, p0, Landroid/media/AudioRecord;->mState:I
4670 - goto :goto_8e
4671 + goto :goto_91
4672 .end method
4674 .method static synthetic access$000(Landroid/media/AudioRecord;)Ljava/lang/Object;
4675 @@ -459,6 +481,205 @@
4676 .end packed-switch
4677 .end method
4679 +.method private checkIfPackagesAllowed()I
4680 + .registers 9
4682 + const/4 v5, -0x3
4684 + :try_start_1
4685 + iget-object v6, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4687 + if-eqz v6, :cond_41
4689 + const/4 v2, 0x0
4691 + invoke-direct {p0}, Landroid/media/AudioRecord;->getPackageName()[Ljava/lang/String;
4693 + move-result-object v3
4695 + invoke-static {}, Landroid/os/Process;->myUid()I
4697 + move-result v4
4699 + if-eqz v3, :cond_2c
4701 + const/4 v1, 0x0
4703 + :goto_11
4704 + array-length v6, v3
4706 + if-ge v1, v6, :cond_2a
4708 + iget-object v6, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4710 + aget-object v7, v3, v1
4712 + invoke-virtual {v6, v7, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
4714 + move-result-object v2
4716 + if-eqz v2, :cond_26
4718 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getRecordAudioSetting()B
4720 + move-result v6
4722 + if-eqz v6, :cond_26
4724 + const/4 v5, -0x2
4726 + :goto_25
4727 + return v5
4729 + :cond_26
4730 + const/4 v2, 0x0
4732 + add-int/lit8 v1, v1, 0x1
4734 + goto :goto_11
4736 + :cond_2a
4737 + const/4 v5, -0x1
4739 + goto :goto_25
4741 + :cond_2c
4742 + const-string v6, "PM,AudioRecord"
4744 + const-string/jumbo v7, "return GOT_ERROR, because package_names are NULL"
4746 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4747 + :try_end_34
4748 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_34} :catch_35
4750 + goto :goto_25
4752 + :catch_35
4753 + move-exception v0
4755 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
4757 + const-string v6, "PM,AudioRecord"
4759 + const-string v7, "Got exception in checkIfPackagesAllowed"
4761 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4763 + goto :goto_25
4765 + :cond_41
4766 + :try_start_41
4767 + const-string v6, "PM,AudioRecord"
4769 + const-string/jumbo v7, "return GOT_ERROR, because pSetMan is NULL"
4771 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4772 + :try_end_49
4773 + .catch Ljava/lang/Exception; {:try_start_41 .. :try_end_49} :catch_35
4775 + goto :goto_25
4776 +.end method
4778 +.method private dataAccess(Z)V
4779 + .registers 7
4781 + invoke-direct {p0}, Landroid/media/AudioRecord;->getPackageName()[Ljava/lang/String;
4783 + move-result-object v1
4785 + if-eqz p1, :cond_2f
4787 + if-eqz v1, :cond_2f
4789 + const/4 v0, 0x0
4791 + :goto_9
4792 + array-length v2, v1
4794 + if-ge v0, v2, :cond_58
4796 + const-string v2, "PM,AudioRecord"
4798 + new-instance v3, Ljava/lang/StringBuilder;
4800 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
4802 + const-string v4, "Allowed Package: -"
4804 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4806 + move-result-object v3
4808 + aget-object v4, v1, v0
4810 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4812 + move-result-object v3
4814 + const-string v4, "- accessing microphone."
4816 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4818 + move-result-object v3
4820 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4822 + move-result-object v3
4824 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
4826 + add-int/lit8 v0, v0, 0x1
4828 + goto :goto_9
4830 + :cond_2f
4831 + if-eqz v1, :cond_58
4833 + const/4 v0, 0x0
4835 + :goto_32
4836 + array-length v2, v1
4838 + if-ge v0, v2, :cond_58
4840 + const-string v2, "PM,AudioRecord"
4842 + new-instance v3, Ljava/lang/StringBuilder;
4844 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
4846 + const-string v4, "Blocked Package: -"
4848 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4850 + move-result-object v3
4852 + aget-object v4, v1, v0
4854 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4856 + move-result-object v3
4858 + const-string v4, "- accessing microphone."
4860 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
4862 + move-result-object v3
4864 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
4866 + move-result-object v3
4868 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
4870 + add-int/lit8 v0, v0, 0x1
4872 + goto :goto_32
4874 + :cond_58
4875 + return-void
4876 +.end method
4878 .method public static getMinBufferSize(III)I
4879 .registers 8
4881 @@ -529,6 +750,135 @@
4882 .end sparse-switch
4883 .end method
4885 +.method private getPackageName()[Ljava/lang/String;
4886 + .registers 6
4888 + :try_start_0
4889 + iget-object v3, p0, Landroid/media/AudioRecord;->mPm:Landroid/content/pm/IPackageManager;
4891 + if-eqz v3, :cond_f
4893 + invoke-static {}, Landroid/os/Process;->myUid()I
4895 + move-result v2
4897 + iget-object v3, p0, Landroid/media/AudioRecord;->mPm:Landroid/content/pm/IPackageManager;
4899 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
4901 + move-result-object v1
4903 + :goto_e
4904 + return-object v1
4906 + :cond_f
4907 + const-string/jumbo v3, "package"
4909 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4911 + move-result-object v3
4913 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
4915 + move-result-object v3
4917 + iput-object v3, p0, Landroid/media/AudioRecord;->mPm:Landroid/content/pm/IPackageManager;
4919 + invoke-static {}, Landroid/os/Process;->myUid()I
4921 + move-result v2
4923 + iget-object v3, p0, Landroid/media/AudioRecord;->mPm:Landroid/content/pm/IPackageManager;
4925 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
4926 + :try_end_25
4927 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
4929 + move-result-object v1
4931 + goto :goto_e
4933 + :catch_27
4934 + move-exception v0
4936 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
4938 + const-string v3, "PM,AudioRecord"
4940 + const-string/jumbo v4, "something went wrong with getting package name"
4942 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
4944 + const/4 v1, 0x0
4946 + goto :goto_e
4947 +.end method
4949 +.method private initiate()V
4950 + .registers 5
4952 + const/4 v1, 0x0
4954 + :try_start_1
4955 + iput-object v1, p0, Landroid/media/AudioRecord;->context:Landroid/content/Context;
4957 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
4959 + iget-object v2, p0, Landroid/media/AudioRecord;->context:Landroid/content/Context;
4961 + const-string/jumbo v3, "privacy"
4963 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4965 + move-result-object v3
4967 + invoke-static {v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
4969 + move-result-object v3
4971 + invoke-direct {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
4973 + iput-object v1, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
4975 + const-string/jumbo v1, "package"
4977 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
4979 + move-result-object v1
4981 + invoke-static {v1}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
4983 + move-result-object v1
4985 + iput-object v1, p0, Landroid/media/AudioRecord;->mPm:Landroid/content/pm/IPackageManager;
4987 + const/4 v1, 0x1
4989 + iput-boolean v1, p0, Landroid/media/AudioRecord;->privacyMode:Z
4990 + :try_end_27
4991 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
4993 + :goto_27
4994 + return-void
4996 + :catch_28
4997 + move-exception v0
4999 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
5001 + const-string v1, "PM,AudioRecord"
5003 + const-string v2, "Something went wrong with initalize variables"
5005 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5007 + const/4 v1, 0x0
5009 + iput-boolean v1, p0, Landroid/media/AudioRecord;->privacyMode:Z
5011 + goto :goto_27
5012 +.end method
5014 .method private static logd(Ljava/lang/String;)V
5015 .registers 4
5017 @@ -979,19 +1329,68 @@
5018 .end method
5020 .method public startRecording()V
5021 - .registers 4
5022 + .registers 11
5023 .annotation system Ldalvik/annotation/Throws;
5024 value = {
5025 Ljava/lang/IllegalStateException;
5027 .end annotation
5029 + const/4 v5, 0x0
5031 + const/4 v3, 0x1
5033 + const/4 v2, 0x0
5035 + iget-boolean v0, p0, Landroid/media/AudioRecord;->privacyMode:Z
5037 + if-nez v0, :cond_a
5039 + invoke-direct {p0}, Landroid/media/AudioRecord;->initiate()V
5041 + :cond_a
5042 iget v0, p0, Landroid/media/AudioRecord;->mState:I
5044 - const/4 v1, 0x1
5045 + if-ne v0, v3, :cond_15
5047 + invoke-direct {p0}, Landroid/media/AudioRecord;->checkIfPackagesAllowed()I
5049 + move-result v0
5051 + const/4 v1, -0x2
5053 + if-ne v0, v1, :cond_3d
5055 - if-eq v0, v1, :cond_e
5056 + :cond_15
5057 + invoke-direct {p0, v2}, Landroid/media/AudioRecord;->dataAccess(Z)V
5059 + invoke-direct {p0}, Landroid/media/AudioRecord;->getPackageName()[Ljava/lang/String;
5061 + move-result-object v7
5063 + if-eqz v7, :cond_34
5065 + iget-object v0, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5067 + aget-object v1, v7, v2
5069 + const-string/jumbo v4, "recordAudio"
5071 + iget-object v6, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5073 + aget-object v8, v7, v2
5075 + invoke-static {}, Landroid/os/Process;->myUid()I
5077 + move-result v9
5079 + invoke-virtual {v6, v8, v9}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
5081 + move-result-object v6
5083 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
5085 + :cond_34
5086 new-instance v0, Ljava/lang/IllegalStateException;
5088 const-string/jumbo v1, "startRecording() called on an uninitialized AudioRecord."
5089 @@ -1000,7 +1399,38 @@
5091 throw v0
5093 - :cond_e
5094 + :cond_3d
5095 + invoke-direct {p0, v3}, Landroid/media/AudioRecord;->dataAccess(Z)V
5097 + invoke-direct {p0}, Landroid/media/AudioRecord;->getPackageName()[Ljava/lang/String;
5099 + move-result-object v7
5101 + if-eqz v7, :cond_5d
5103 + iget-object v0, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5105 + aget-object v1, v7, v2
5107 + const-string/jumbo v4, "recordAudio"
5109 + iget-object v3, p0, Landroid/media/AudioRecord;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5111 + aget-object v6, v7, v2
5113 + invoke-static {}, Landroid/os/Process;->myUid()I
5115 + move-result v8
5117 + invoke-virtual {v3, v6, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
5119 + move-result-object v6
5121 + move v3, v2
5123 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
5125 + :cond_5d
5126 iget-object v1, p0, Landroid/media/AudioRecord;->mRecordingStateLock:Ljava/lang/Object;
5128 monitor-enter v1
5129 @@ -1009,28 +1439,28 @@
5131 const/4 v2, 0x0
5133 - :try_start_13
5134 + :try_start_62
5135 invoke-direct {p0, v0, v2}, Landroid/media/AudioRecord;->native_start(II)I
5137 move-result v0
5139 - if-nez v0, :cond_1c
5140 + if-nez v0, :cond_6b
5142 const/4 v0, 0x3
5144 iput v0, p0, Landroid/media/AudioRecord;->mRecordingState:I
5146 - :cond_1c
5147 + :cond_6b
5148 monitor-exit v1
5150 return-void
5152 - :catchall_1e
5153 + :catchall_6d
5154 move-exception v0
5156 monitor-exit v1
5157 - :try_end_20
5158 - .catchall {:try_start_13 .. :try_end_20} :catchall_1e
5159 + :try_end_6f
5160 + .catchall {:try_start_62 .. :try_end_6f} :catchall_6d
5162 throw v0
5163 .end method
5164 diff -Npru stock-framework/smali/android/media/MediaRecorder$PrivacyRunner.smali ext-framework/smali/android/media/MediaRecorder$PrivacyRunner.smali
5165 --- stock-framework/smali/android/media/MediaRecorder$PrivacyRunner.smali 1969-12-31 18:00:00.000000000 -0600
5166 +++ ext-framework/smali/android/media/MediaRecorder$PrivacyRunner.smali 2012-11-02 22:30:48.407874672 -0500
5167 @@ -0,0 +1,215 @@
5168 +.class Landroid/media/MediaRecorder$PrivacyRunner;
5169 +.super Ljava/lang/Thread;
5170 +.source "MediaRecorder.java"
5173 +# annotations
5174 +.annotation system Ldalvik/annotation/EnclosingClass;
5175 + value = Landroid/media/MediaRecorder;
5176 +.end annotation
5178 +.annotation system Ldalvik/annotation/InnerClass;
5179 + accessFlags = 0x2
5180 + name = "PrivacyRunner"
5181 +.end annotation
5184 +# static fields
5185 +.field private static final OFFSET_DELAY:J = 0x9c4L
5188 +# instance fields
5189 +.field private delay:J
5191 +.field final synthetic this$0:Landroid/media/MediaRecorder;
5194 +# direct methods
5195 +.method public constructor <init>(Landroid/media/MediaRecorder;)V
5196 + .registers 4
5198 + iput-object p1, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5200 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
5202 + const-wide/16 v0, 0x9c4
5204 + iput-wide v0, p0, Landroid/media/MediaRecorder$PrivacyRunner;->delay:J
5206 + return-void
5207 +.end method
5210 +# virtual methods
5211 +.method public getDelay()J
5212 + .registers 3
5214 + iget-wide v0, p0, Landroid/media/MediaRecorder$PrivacyRunner;->delay:J
5216 + return-wide v0
5217 +.end method
5219 +.method public run()V
5220 + .registers 5
5222 + :try_start_0
5223 + iget-wide v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->delay:J
5225 + invoke-static {v2, v3}, Ljava/lang/Thread;->sleep(J)V
5227 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5229 + #calls: Landroid/media/MediaRecorder;->privacyStop()V
5230 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$300(Landroid/media/MediaRecorder;)V
5232 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5234 + #getter for: Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
5235 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$400(Landroid/media/MediaRecorder;)Ljava/lang/String;
5237 + move-result-object v2
5239 + if-eqz v2, :cond_2f
5241 + new-instance v1, Ljava/io/File;
5243 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5245 + #getter for: Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
5246 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$400(Landroid/media/MediaRecorder;)Ljava/lang/String;
5248 + move-result-object v2
5250 + invoke-direct {v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
5252 + invoke-virtual {v1}, Ljava/io/File;->delete()Z
5254 + move-result v2
5256 + if-eqz v2, :cond_29
5258 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5260 + const/4 v3, 0x1
5262 + #setter for: Landroid/media/MediaRecorder;->deletedFile:Z
5263 + invoke-static {v2, v3}, Landroid/media/MediaRecorder;->access$502(Landroid/media/MediaRecorder;Z)Z
5264 + :try_end_29
5265 + .catchall {:try_start_0 .. :try_end_29} :catchall_73
5266 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_29} :catch_57
5268 + :cond_29
5269 + :goto_29
5270 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5272 + :goto_2b
5273 + #calls: Landroid/media/MediaRecorder;->privacyStop()V
5274 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$300(Landroid/media/MediaRecorder;)V
5276 + return-void
5278 + :cond_2f
5279 + :try_start_2f
5280 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5282 + #getter for: Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
5283 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$600(Landroid/media/MediaRecorder;)Ljava/io/FileDescriptor;
5285 + move-result-object v2
5287 + if-eqz v2, :cond_65
5289 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5291 + #getter for: Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
5292 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$700(Landroid/media/MediaRecorder;)Ljava/lang/String;
5294 + move-result-object v2
5296 + if-eqz v2, :cond_65
5298 + new-instance v1, Ljava/io/File;
5300 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5302 + #getter for: Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
5303 + invoke-static {v2}, Landroid/media/MediaRecorder;->access$700(Landroid/media/MediaRecorder;)Ljava/lang/String;
5305 + move-result-object v2
5307 + invoke-direct {v1, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
5309 + invoke-virtual {v1}, Ljava/io/File;->delete()Z
5311 + move-result v2
5313 + if-eqz v2, :cond_29
5315 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5317 + const/4 v3, 0x1
5319 + #setter for: Landroid/media/MediaRecorder;->deletedFile:Z
5320 + invoke-static {v2, v3}, Landroid/media/MediaRecorder;->access$502(Landroid/media/MediaRecorder;Z)Z
5321 + :try_end_56
5322 + .catchall {:try_start_2f .. :try_end_56} :catchall_73
5323 + .catch Ljava/lang/Exception; {:try_start_2f .. :try_end_56} :catch_57
5325 + goto :goto_29
5327 + :catch_57
5328 + move-exception v0
5330 + :try_start_58
5331 + const-string v2, "PM,MediaRecorder"
5333 + const-string v3, "Something went wrong while waiting for cancel the stream!"
5335 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5337 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
5338 + :try_end_62
5339 + .catchall {:try_start_58 .. :try_end_62} :catchall_73
5341 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5343 + goto :goto_2b
5345 + :cond_65
5346 + :try_start_65
5347 + const-string v2, "PM,MediaRecorder"
5349 + const-string v3, "Can\'t delete temporary File, because all is null?! It could be that we only want to record audio?!"
5351 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5353 + iget-object v2, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5355 + const/4 v3, 0x0
5357 + #setter for: Landroid/media/MediaRecorder;->deletedFile:Z
5358 + invoke-static {v2, v3}, Landroid/media/MediaRecorder;->access$502(Landroid/media/MediaRecorder;Z)Z
5359 + :try_end_72
5360 + .catchall {:try_start_65 .. :try_end_72} :catchall_73
5361 + .catch Ljava/lang/Exception; {:try_start_65 .. :try_end_72} :catch_57
5363 + goto :goto_29
5365 + :catchall_73
5366 + move-exception v2
5368 + iget-object v3, p0, Landroid/media/MediaRecorder$PrivacyRunner;->this$0:Landroid/media/MediaRecorder;
5370 + #calls: Landroid/media/MediaRecorder;->privacyStop()V
5371 + invoke-static {v3}, Landroid/media/MediaRecorder;->access$300(Landroid/media/MediaRecorder;)V
5373 + throw v2
5374 +.end method
5376 +.method public setDelay(J)V
5377 + .registers 3
5379 + iput-wide p1, p0, Landroid/media/MediaRecorder$PrivacyRunner;->delay:J
5381 + return-void
5382 +.end method
5383 diff -Npru stock-framework/smali/android/media/MediaRecorder.smali ext-framework/smali/android/media/MediaRecorder.smali
5384 --- stock-framework/smali/android/media/MediaRecorder.smali 2012-11-02 22:31:08.575974672 -0500
5385 +++ ext-framework/smali/android/media/MediaRecorder.smali 2012-11-02 22:30:48.411874684 -0500
5386 @@ -6,6 +6,7 @@
5387 # annotations
5388 .annotation system Ldalvik/annotation/MemberClasses;
5389 value = {
5390 + Landroid/media/MediaRecorder$PrivacyRunner;,
5391 Landroid/media/MediaRecorder$EventHandler;,
5392 Landroid/media/MediaRecorder$OnInfoListener;,
5393 Landroid/media/MediaRecorder$OnErrorListener;,
5394 @@ -19,6 +20,14 @@
5397 # static fields
5398 +.field private static final BOTH_DATA_ACCESS:I = 0xb
5400 +.field private static final GOT_ERROR:I = -0x3
5402 +.field private static final IS_ALLOWED:I = -0x1
5404 +.field private static final IS_NOT_ALLOWED:I = -0x2
5406 .field public static final MEDIA_RECORDER_ERROR_UNKNOWN:I = 0x1
5408 .field public static final MEDIA_RECORDER_INFO_MAX_DURATION_REACHED:I = 0x320
5409 @@ -51,10 +60,30 @@
5411 .field public static final MEDIA_RECORDER_TRACK_INTER_CHUNK_TIME_MS:I = 0x3ee
5413 +.field private static final MIC_DATA_ACCESS:I = 0xa
5415 +.field private static final MODE_RECORD_AUDIO:I = 0x2
5417 +.field private static final MODE_RECORD_BOTH:I = 0x3
5419 +.field private static final PRIVACY_PATH_DEF:Ljava/lang/String; = "/data/data/"
5421 +.field private static final PRIVACY_TAG:Ljava/lang/String; = "PM,MediaRecorder"
5423 +.field private static final STATE_RECORD_AUDIO:I = 0x0
5425 +.field private static final STATE_RECORD_BOTH:I = 0x1
5427 .field private static final TAG:Ljava/lang/String; = "MediaRecorder"
5430 # instance fields
5431 +.field private ACTUAL_STATE:I
5433 +.field private context:Landroid/content/Context;
5435 +.field private deletedFile:Z
5437 .field private mEventHandler:Landroid/media/MediaRecorder$EventHandler;
5439 .field private mFd:Ljava/io/FileDescriptor;
5440 @@ -67,8 +96,24 @@
5442 .field private mPath:Ljava/lang/String;
5444 +.field private mPm:Landroid/content/pm/IPackageManager;
5446 .field private mSurface:Landroid/view/Surface;
5448 +.field private pFileDescriptor:Ljava/io/FileDescriptor;
5450 +.field private pFileDescriptorPath:Ljava/lang/String;
5452 +.field private pPath:Ljava/lang/String;
5454 +.field private pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
5456 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
5458 +.field private privacyMode:Z
5460 +.field private stoppedStream:Z
5463 # direct methods
5464 .method static constructor <clinit>()V
5465 @@ -84,15 +129,35 @@
5466 .end method
5468 .method public constructor <init>()V
5469 - .registers 3
5470 + .registers 4
5472 + const/4 v2, 0x0
5474 + const/4 v1, 0x0
5476 invoke-direct {p0}, Ljava/lang/Object;-><init>()V
5478 + iput-object v1, p0, Landroid/media/MediaRecorder;->pPath:Ljava/lang/String;
5480 + iput-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
5482 + iput-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptor:Ljava/io/FileDescriptor;
5484 + iput-object v1, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
5486 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
5488 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->privacyMode:Z
5490 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->stoppedStream:Z
5492 + iput v2, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
5494 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
5496 move-result-object v0
5498 - if-eqz v0, :cond_19
5499 + if-eqz v0, :cond_2e
5501 new-instance v1, Landroid/media/MediaRecorder$EventHandler;
5503 @@ -100,7 +165,9 @@
5505 iput-object v1, p0, Landroid/media/MediaRecorder;->mEventHandler:Landroid/media/MediaRecorder$EventHandler;
5507 - :goto_10
5508 + :goto_22
5509 + invoke-direct {p0}, Landroid/media/MediaRecorder;->initiate()V
5511 new-instance v1, Ljava/lang/ref/WeakReference;
5513 invoke-direct {v1, p0}, Ljava/lang/ref/WeakReference;-><init>(Ljava/lang/Object;)V
5514 @@ -109,12 +176,12 @@
5516 return-void
5518 - :cond_19
5519 + :cond_2e
5520 invoke-static {}, Landroid/os/Looper;->getMainLooper()Landroid/os/Looper;
5522 move-result-object v0
5524 - if-eqz v0, :cond_27
5525 + if-eqz v0, :cond_3c
5527 new-instance v1, Landroid/media/MediaRecorder$EventHandler;
5529 @@ -122,14 +189,12 @@
5531 iput-object v1, p0, Landroid/media/MediaRecorder;->mEventHandler:Landroid/media/MediaRecorder$EventHandler;
5533 - goto :goto_10
5535 - :cond_27
5536 - const/4 v1, 0x0
5537 + goto :goto_22
5539 + :cond_3c
5540 iput-object v1, p0, Landroid/media/MediaRecorder;->mEventHandler:Landroid/media/MediaRecorder$EventHandler;
5542 - goto :goto_10
5543 + goto :goto_22
5544 .end method
5546 .method private native _prepare()V
5547 @@ -141,45 +206,1757 @@
5548 .end annotation
5549 .end method
5551 -.method private native _setOutputFile(Ljava/io/FileDescriptor;JJ)V
5552 - .annotation system Ldalvik/annotation/Throws;
5553 - value = {
5554 - Ljava/lang/IllegalStateException;,
5555 - Ljava/io/IOException;
5557 - .end annotation
5558 -.end method
5559 +.method private native _setOutputFile(Ljava/io/FileDescriptor;JJ)V
5560 + .annotation system Ldalvik/annotation/Throws;
5561 + value = {
5562 + Ljava/lang/IllegalStateException;,
5563 + Ljava/io/IOException;
5565 + .end annotation
5566 +.end method
5568 +.method static synthetic access$000(Landroid/media/MediaRecorder;)I
5569 + .registers 2
5571 + iget v0, p0, Landroid/media/MediaRecorder;->mNativeContext:I
5573 + return v0
5574 +.end method
5576 +.method static synthetic access$100(Landroid/media/MediaRecorder;)Landroid/media/MediaRecorder$OnErrorListener;
5577 + .registers 2
5579 + iget-object v0, p0, Landroid/media/MediaRecorder;->mOnErrorListener:Landroid/media/MediaRecorder$OnErrorListener;
5581 + return-object v0
5582 +.end method
5584 +.method static synthetic access$200(Landroid/media/MediaRecorder;)Landroid/media/MediaRecorder$OnInfoListener;
5585 + .registers 2
5587 + iget-object v0, p0, Landroid/media/MediaRecorder;->mOnInfoListener:Landroid/media/MediaRecorder$OnInfoListener;
5589 + return-object v0
5590 +.end method
5592 +.method static synthetic access$300(Landroid/media/MediaRecorder;)V
5593 + .registers 1
5595 + invoke-direct {p0}, Landroid/media/MediaRecorder;->privacyStop()V
5597 + return-void
5598 +.end method
5600 +.method static synthetic access$400(Landroid/media/MediaRecorder;)Ljava/lang/String;
5601 + .registers 2
5603 + iget-object v0, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
5605 + return-object v0
5606 +.end method
5608 +.method static synthetic access$502(Landroid/media/MediaRecorder;Z)Z
5609 + .registers 2
5611 + iput-boolean p1, p0, Landroid/media/MediaRecorder;->deletedFile:Z
5613 + return p1
5614 +.end method
5616 +.method static synthetic access$600(Landroid/media/MediaRecorder;)Ljava/io/FileDescriptor;
5617 + .registers 2
5619 + iget-object v0, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
5621 + return-object v0
5622 +.end method
5624 +.method static synthetic access$700(Landroid/media/MediaRecorder;)Ljava/lang/String;
5625 + .registers 2
5627 + iget-object v0, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
5629 + return-object v0
5630 +.end method
5632 +.method private checkIfPackagesAllowed(I)I
5633 + .registers 12
5635 + const/4 v6, -0x1
5637 + const/4 v5, -0x2
5639 + const/4 v7, -0x3
5641 + :try_start_3
5642 + iget-object v8, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5644 + if-eqz v8, :cond_5b
5646 + const/4 v2, 0x0
5648 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
5650 + move-result-object v3
5652 + invoke-static {}, Landroid/os/Process;->myUid()I
5654 + move-result v4
5656 + if-eqz v3, :cond_51
5658 + packed-switch p1, :pswitch_data_72
5660 + move v5, v7
5662 + :cond_16
5663 + :goto_16
5664 + return v5
5666 + :pswitch_17
5667 + const/4 v1, 0x0
5669 + :goto_18
5670 + array-length v8, v3
5672 + if-ge v1, v8, :cond_2f
5674 + iget-object v8, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5676 + aget-object v9, v3, v1
5678 + invoke-virtual {v8, v9, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
5680 + move-result-object v2
5682 + if-eqz v2, :cond_2b
5684 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getRecordAudioSetting()B
5686 + move-result v8
5688 + if-nez v8, :cond_16
5690 + :cond_2b
5691 + const/4 v2, 0x0
5693 + add-int/lit8 v1, v1, 0x1
5695 + goto :goto_18
5697 + :cond_2f
5698 + move v5, v6
5700 + goto :goto_16
5702 + :pswitch_31
5703 + const/4 v1, 0x0
5705 + :goto_32
5706 + array-length v8, v3
5708 + if-ge v1, v8, :cond_4f
5710 + iget-object v8, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
5712 + aget-object v9, v3, v1
5714 + invoke-virtual {v8, v9, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
5716 + move-result-object v2
5718 + if-eqz v2, :cond_4b
5720 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getRecordAudioSetting()B
5722 + move-result v8
5724 + if-nez v8, :cond_16
5726 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getCameraSetting()B
5728 + move-result v8
5730 + if-nez v8, :cond_16
5732 + :cond_4b
5733 + const/4 v2, 0x0
5735 + add-int/lit8 v1, v1, 0x1
5737 + goto :goto_32
5739 + :cond_4f
5740 + move v5, v6
5742 + goto :goto_16
5744 + :cond_51
5745 + const-string v5, "PM,MediaRecorder"
5747 + const-string/jumbo v6, "return GOT_ERROR, because package_names are NULL"
5749 + invoke-static {v5, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5751 + move v5, v7
5753 + goto :goto_16
5755 + :cond_5b
5756 + const-string v5, "PM,MediaRecorder"
5758 + const-string/jumbo v6, "return GOT_ERROR, because pSetMan is NULL"
5760 + invoke-static {v5, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5761 + :try_end_63
5762 + .catch Ljava/lang/Exception; {:try_start_3 .. :try_end_63} :catch_65
5764 + move v5, v7
5766 + goto :goto_16
5768 + :catch_65
5769 + move-exception v0
5771 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
5773 + const-string v5, "PM,MediaRecorder"
5775 + const-string v6, "Got exception in checkIfPackagesAllowed"
5777 + invoke-static {v5, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
5779 + move v5, v7
5781 + goto :goto_16
5783 + :pswitch_data_72
5784 + .packed-switch 0x2
5785 + :pswitch_17
5786 + :pswitch_31
5787 + .end packed-switch
5788 +.end method
5790 +.method private dataAccess(ZI)V
5791 + .registers 8
5793 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
5795 + move-result-object v1
5797 + if-eqz p1, :cond_5a
5799 + if-eqz v1, :cond_5a
5801 + packed-switch p2, :pswitch_data_ae
5803 + :cond_b
5804 + :goto_b
5805 + return-void
5807 + :pswitch_c
5808 + const/4 v0, 0x0
5810 + :goto_d
5811 + array-length v2, v1
5813 + if-ge v0, v2, :cond_b
5815 + const-string v2, "PM,MediaRecorder"
5817 + new-instance v3, Ljava/lang/StringBuilder;
5819 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
5821 + const-string v4, "Allowed Package: -"
5823 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5825 + move-result-object v3
5827 + aget-object v4, v1, v0
5829 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5831 + move-result-object v3
5833 + const-string v4, "- accessing microphone."
5835 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5837 + move-result-object v3
5839 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5841 + move-result-object v3
5843 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
5845 + add-int/lit8 v0, v0, 0x1
5847 + goto :goto_d
5849 + :pswitch_33
5850 + const/4 v0, 0x0
5852 + :goto_34
5853 + array-length v2, v1
5855 + if-ge v0, v2, :cond_b
5857 + const-string v2, "PM,MediaRecorder"
5859 + new-instance v3, Ljava/lang/StringBuilder;
5861 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
5863 + const-string v4, "Allowed Package: -"
5865 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5867 + move-result-object v3
5869 + aget-object v4, v1, v0
5871 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5873 + move-result-object v3
5875 + const-string v4, "- accessing microphone and camera."
5877 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5879 + move-result-object v3
5881 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5883 + move-result-object v3
5885 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
5887 + add-int/lit8 v0, v0, 0x1
5889 + goto :goto_34
5891 + :cond_5a
5892 + if-eqz v1, :cond_b
5894 + packed-switch p2, :pswitch_data_b6
5896 + goto :goto_b
5898 + :pswitch_60
5899 + const/4 v0, 0x0
5901 + :goto_61
5902 + array-length v2, v1
5904 + if-ge v0, v2, :cond_b
5906 + const-string v2, "PM,MediaRecorder"
5908 + new-instance v3, Ljava/lang/StringBuilder;
5910 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
5912 + const-string v4, "Blocked Package: -"
5914 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5916 + move-result-object v3
5918 + aget-object v4, v1, v0
5920 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5922 + move-result-object v3
5924 + const-string v4, "- accessing microphone."
5926 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5928 + move-result-object v3
5930 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5932 + move-result-object v3
5934 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
5936 + add-int/lit8 v0, v0, 0x1
5938 + goto :goto_61
5940 + :pswitch_87
5941 + const/4 v0, 0x0
5943 + :goto_88
5944 + array-length v2, v1
5946 + if-ge v0, v2, :cond_b
5948 + const-string v2, "PM,MediaRecorder"
5950 + new-instance v3, Ljava/lang/StringBuilder;
5952 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
5954 + const-string v4, "Blocked Package: -"
5956 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5958 + move-result-object v3
5960 + aget-object v4, v1, v0
5962 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5964 + move-result-object v3
5966 + const-string v4, "- accessing microphone and camera."
5968 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
5970 + move-result-object v3
5972 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
5974 + move-result-object v3
5976 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
5978 + add-int/lit8 v0, v0, 0x1
5980 + goto :goto_88
5982 + :pswitch_data_ae
5983 + .packed-switch 0xa
5984 + :pswitch_c
5985 + :pswitch_33
5986 + .end packed-switch
5988 + :pswitch_data_b6
5989 + .packed-switch 0xa
5990 + :pswitch_60
5991 + :pswitch_87
5992 + .end packed-switch
5993 +.end method
5995 +.method public static final getAudioSourceMax()I
5996 + .registers 1
5998 + const/4 v0, 0x7
6000 + return v0
6001 +.end method
6003 +.method private getPackageName()[Ljava/lang/String;
6004 + .registers 6
6006 + :try_start_0
6007 + iget-object v3, p0, Landroid/media/MediaRecorder;->mPm:Landroid/content/pm/IPackageManager;
6009 + if-eqz v3, :cond_f
6011 + invoke-static {}, Landroid/os/Process;->myUid()I
6013 + move-result v2
6015 + iget-object v3, p0, Landroid/media/MediaRecorder;->mPm:Landroid/content/pm/IPackageManager;
6017 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
6019 + move-result-object v1
6021 + :goto_e
6022 + return-object v1
6024 + :cond_f
6025 + const-string/jumbo v3, "package"
6027 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
6029 + move-result-object v3
6031 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
6033 + move-result-object v3
6035 + iput-object v3, p0, Landroid/media/MediaRecorder;->mPm:Landroid/content/pm/IPackageManager;
6037 + invoke-static {}, Landroid/os/Process;->myUid()I
6039 + move-result v2
6041 + iget-object v3, p0, Landroid/media/MediaRecorder;->mPm:Landroid/content/pm/IPackageManager;
6043 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
6044 + :try_end_25
6045 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
6047 + move-result-object v1
6049 + goto :goto_e
6051 + :catch_27
6052 + move-exception v0
6054 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
6056 + const-string v3, "PM,MediaRecorder"
6058 + const-string/jumbo v4, "something went wrong with getting package name"
6060 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
6062 + const/4 v1, 0x0
6064 + goto :goto_e
6065 +.end method
6067 +.method private getPrivacyFileDescriptor()Ljava/io/FileDescriptor;
6068 + .registers 19
6070 + invoke-direct/range {p0 .. p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
6072 + move-result-object v12
6074 + new-instance v14, Ljava/util/Random;
6076 + invoke-direct {v14}, Ljava/util/Random;-><init>()V
6078 + const/4 v1, 0x0
6080 + new-instance v15, Ljava/lang/StringBuilder;
6082 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6084 + invoke-virtual {v14}, Ljava/util/Random;->nextLong()J
6086 + move-result-wide v16
6088 + invoke-virtual/range {v15 .. v17}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
6090 + move-result-object v15
6092 + const-string v16, ".tmp"
6094 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6096 + move-result-object v15
6098 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6100 + move-result-object v2
6102 + const/4 v7, 0x0
6104 + const/4 v3, 0x0
6106 + const/4 v11, 0x0
6108 + :goto_24
6109 + array-length v15, v12
6111 + if-ge v11, v15, :cond_247
6113 + :try_start_27
6114 + new-instance v9, Ljava/io/File;
6116 + new-instance v15, Ljava/lang/StringBuilder;
6118 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6120 + const-string v16, "/data/data/"
6122 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6124 + move-result-object v15
6126 + aget-object v16, v12, v11
6128 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6130 + move-result-object v15
6132 + const-string v16, "/cache/"
6134 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6136 + move-result-object v15
6138 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6140 + move-result-object v15
6142 + invoke-direct {v9, v15}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6144 + invoke-virtual {v9}, Ljava/io/File;->mkdirs()Z
6146 + new-instance v8, Ljava/io/FileWriter;
6148 + new-instance v15, Ljava/lang/StringBuilder;
6150 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6152 + const-string v16, "/data/data/"
6154 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6156 + move-result-object v15
6158 + aget-object v16, v12, v11
6160 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6162 + move-result-object v15
6164 + const-string v16, "/cache/"
6166 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6168 + move-result-object v15
6170 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6172 + move-result-object v15
6174 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6176 + move-result-object v15
6178 + invoke-direct {v8, v15}, Ljava/io/FileWriter;-><init>(Ljava/lang/String;)V
6179 + :try_end_6e
6180 + .catchall {:try_start_27 .. :try_end_6e} :catchall_155
6181 + .catch Ljava/lang/Exception; {:try_start_27 .. :try_end_6e} :catch_15c
6183 + :try_start_6e
6184 + const-string/jumbo v15, "test"
6186 + invoke-virtual {v8, v15}, Ljava/io/FileWriter;->write(Ljava/lang/String;)V
6188 + invoke-virtual {v8}, Ljava/io/FileWriter;->flush()V
6190 + invoke-virtual {v8}, Ljava/io/FileWriter;->close()V
6192 + new-instance v4, Ljava/io/File;
6194 + new-instance v15, Ljava/lang/StringBuilder;
6196 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6198 + const-string v16, "/data/data/"
6200 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6202 + move-result-object v15
6204 + aget-object v16, v12, v11
6206 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6208 + move-result-object v15
6210 + const-string v16, "/cache/"
6212 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6214 + move-result-object v15
6216 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6218 + move-result-object v15
6220 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6222 + move-result-object v15
6224 + invoke-direct {v4, v15}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6225 + :try_end_9e
6226 + .catchall {:try_start_6e .. :try_end_9e} :catchall_235
6227 + .catch Ljava/lang/Exception; {:try_start_6e .. :try_end_9e} :catch_23e
6229 + :try_start_9e
6230 + invoke-virtual {v4}, Ljava/io/File;->delete()Z
6232 + const-string v15, "PM,MediaRecorder"
6234 + new-instance v16, Ljava/lang/StringBuilder;
6236 + invoke-direct/range {v16 .. v16}, Ljava/lang/StringBuilder;-><init>()V
6238 + const-string v17, "found our package: "
6240 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6242 + move-result-object v16
6244 + aget-object v17, v12, v11
6246 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6248 + move-result-object v16
6250 + const-string v17, " with internal path. File: "
6252 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6254 + move-result-object v16
6256 + move-object/from16 v0, v16
6258 + invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6260 + move-result-object v16
6262 + invoke-virtual/range {v16 .. v16}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6264 + move-result-object v16
6266 + invoke-static/range {v15 .. v16}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6268 + aget-object v1, v12, v11
6269 + :try_end_c9
6270 + .catchall {:try_start_9e .. :try_end_c9} :catchall_239
6271 + .catch Ljava/lang/Exception; {:try_start_9e .. :try_end_c9} :catch_242
6273 + const/4 v7, 0x0
6275 + const/4 v3, 0x0
6277 + invoke-static {}, Ljava/lang/System;->gc()V
6279 + move-object v4, v3
6281 + move-object v8, v7
6283 + :goto_d0
6284 + if-eqz v1, :cond_172
6286 + :try_start_d2
6287 + new-instance v10, Ljava/io/FileOutputStream;
6289 + new-instance v15, Ljava/lang/StringBuilder;
6291 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6293 + const-string v16, "/data/data/"
6295 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6297 + move-result-object v15
6299 + invoke-virtual {v15, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6301 + move-result-object v15
6303 + const-string v16, "/cache/"
6305 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6307 + move-result-object v15
6309 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6311 + move-result-object v15
6313 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6315 + move-result-object v15
6317 + invoke-direct {v10, v15}, Ljava/io/FileOutputStream;-><init>(Ljava/lang/String;)V
6319 + invoke-virtual {v10}, Ljava/io/FileOutputStream;->getFD()Ljava/io/FileDescriptor;
6321 + move-result-object v6
6323 + new-instance v15, Ljava/lang/StringBuilder;
6325 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6327 + const-string v16, "/data/data/"
6329 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6331 + move-result-object v15
6333 + invoke-virtual {v15, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6335 + move-result-object v15
6337 + const-string v16, "/cache/"
6339 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6341 + move-result-object v15
6343 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6345 + move-result-object v15
6347 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6349 + move-result-object v15
6351 + move-object/from16 v0, p0
6353 + iput-object v15, v0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
6355 + const-string v15, "PM,MediaRecorder"
6357 + new-instance v16, Ljava/lang/StringBuilder;
6359 + invoke-direct/range {v16 .. v16}, Ljava/lang/StringBuilder;-><init>()V
6361 + const-string/jumbo v17, "returned fileDescriptor for package: "
6363 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6365 + move-result-object v16
6367 + move-object/from16 v0, v16
6369 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6371 + move-result-object v16
6373 + const-string v17, " with internal path. Path: "
6375 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6377 + move-result-object v16
6379 + const-string v17, "/data/data/"
6381 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6383 + move-result-object v16
6385 + move-object/from16 v0, v16
6387 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6389 + move-result-object v16
6391 + const-string v17, "/cache/"
6393 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6395 + move-result-object v16
6397 + move-object/from16 v0, v16
6399 + invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6401 + move-result-object v16
6403 + invoke-virtual/range {v16 .. v16}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6405 + move-result-object v16
6407 + invoke-static/range {v15 .. v16}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6408 + :try_end_152
6409 + .catch Ljava/lang/Exception; {:try_start_d2 .. :try_end_152} :catch_166
6411 + move-object v3, v4
6413 + move-object v7, v8
6415 + :goto_154
6416 + return-object v6
6418 + :catchall_155
6419 + move-exception v15
6421 + :goto_156
6422 + const/4 v7, 0x0
6424 + const/4 v3, 0x0
6426 + invoke-static {}, Ljava/lang/System;->gc()V
6428 + throw v15
6430 + :catch_15c
6431 + move-exception v15
6433 + :goto_15d
6434 + const/4 v7, 0x0
6436 + const/4 v3, 0x0
6438 + invoke-static {}, Ljava/lang/System;->gc()V
6440 + add-int/lit8 v11, v11, 0x1
6442 + goto/16 :goto_24
6444 + :catch_166
6445 + move-exception v5
6447 + const-string v15, "PM,MediaRecorder"
6449 + const-string v16, "Got exception while creating fileDescriptor -> return null"
6451 + invoke-static/range {v15 .. v16}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
6453 + const/4 v6, 0x0
6455 + move-object v3, v4
6457 + move-object v7, v8
6459 + goto :goto_154
6461 + :cond_172
6462 + :try_start_172
6463 + invoke-static {}, Landroid/os/Environment;->getExternalStorageDirectory()Ljava/io/File;
6465 + move-result-object v15
6467 + invoke-virtual {v15}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
6469 + move-result-object v13
6471 + new-instance v7, Ljava/io/FileWriter;
6473 + new-instance v15, Ljava/lang/StringBuilder;
6475 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6477 + invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6479 + move-result-object v15
6481 + const-string v16, "/"
6483 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6485 + move-result-object v15
6487 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6489 + move-result-object v15
6491 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6493 + move-result-object v15
6495 + invoke-direct {v7, v15}, Ljava/io/FileWriter;-><init>(Ljava/lang/String;)V
6496 + :try_end_196
6497 + .catch Ljava/lang/Exception; {:try_start_172 .. :try_end_196} :catch_22e
6499 + :try_start_196
6500 + const-string/jumbo v15, "test"
6502 + invoke-virtual {v7, v15}, Ljava/io/FileWriter;->write(Ljava/lang/String;)V
6504 + invoke-virtual {v7}, Ljava/io/FileWriter;->flush()V
6506 + invoke-virtual {v7}, Ljava/io/FileWriter;->close()V
6508 + new-instance v3, Ljava/io/File;
6510 + new-instance v15, Ljava/lang/StringBuilder;
6512 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6514 + invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6516 + move-result-object v15
6518 + const-string v16, "/"
6520 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6522 + move-result-object v15
6524 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6526 + move-result-object v15
6528 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6530 + move-result-object v15
6532 + invoke-direct {v3, v15}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6533 + :try_end_1be
6534 + .catch Ljava/lang/Exception; {:try_start_196 .. :try_end_1be} :catch_232
6536 + :try_start_1be
6537 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
6539 + new-instance v10, Ljava/io/FileOutputStream;
6541 + new-instance v15, Ljava/lang/StringBuilder;
6543 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6545 + invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6547 + move-result-object v15
6549 + const-string v16, "/"
6551 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6553 + move-result-object v15
6555 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6557 + move-result-object v15
6559 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6561 + move-result-object v15
6563 + invoke-direct {v10, v15}, Ljava/io/FileOutputStream;-><init>(Ljava/lang/String;)V
6565 + invoke-virtual {v10}, Ljava/io/FileOutputStream;->getFD()Ljava/io/FileDescriptor;
6567 + move-result-object v6
6569 + new-instance v15, Ljava/lang/StringBuilder;
6571 + invoke-direct {v15}, Ljava/lang/StringBuilder;-><init>()V
6573 + invoke-virtual {v15, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6575 + move-result-object v15
6577 + const-string v16, "/"
6579 + invoke-virtual/range {v15 .. v16}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6581 + move-result-object v15
6583 + invoke-virtual {v15, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6585 + move-result-object v15
6587 + invoke-virtual {v15}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6589 + move-result-object v15
6591 + move-object/from16 v0, p0
6593 + iput-object v15, v0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
6595 + const-string v15, "PM,MediaRecorder"
6597 + new-instance v16, Ljava/lang/StringBuilder;
6599 + invoke-direct/range {v16 .. v16}, Ljava/lang/StringBuilder;-><init>()V
6601 + const-string v17, "Returned FileDescriptor. Path: "
6603 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6605 + move-result-object v16
6607 + move-object/from16 v0, v16
6609 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6611 + move-result-object v16
6613 + const-string v17, "/"
6615 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6617 + move-result-object v16
6619 + move-object/from16 v0, v16
6621 + invoke-virtual {v0, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6623 + move-result-object v16
6625 + const-string v17, " . It is on SDCard!"
6627 + invoke-virtual/range {v16 .. v17}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6629 + move-result-object v16
6631 + invoke-virtual/range {v16 .. v16}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6633 + move-result-object v16
6635 + invoke-static/range {v15 .. v16}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6636 + :try_end_228
6637 + .catch Ljava/lang/Exception; {:try_start_1be .. :try_end_228} :catch_22a
6639 + goto/16 :goto_154
6641 + :catch_22a
6642 + move-exception v5
6644 + :goto_22b
6645 + const/4 v6, 0x0
6647 + goto/16 :goto_154
6649 + :catch_22e
6650 + move-exception v5
6652 + move-object v3, v4
6654 + move-object v7, v8
6656 + goto :goto_22b
6658 + :catch_232
6659 + move-exception v5
6661 + move-object v3, v4
6663 + goto :goto_22b
6665 + :catchall_235
6666 + move-exception v15
6668 + move-object v7, v8
6670 + goto/16 :goto_156
6672 + :catchall_239
6673 + move-exception v15
6675 + move-object v3, v4
6677 + move-object v7, v8
6679 + goto/16 :goto_156
6681 + :catch_23e
6682 + move-exception v15
6684 + move-object v7, v8
6686 + goto/16 :goto_15d
6688 + :catch_242
6689 + move-exception v15
6691 + move-object v3, v4
6693 + move-object v7, v8
6695 + goto/16 :goto_15d
6697 + :cond_247
6698 + move-object v4, v3
6700 + move-object v8, v7
6702 + goto/16 :goto_d0
6703 +.end method
6705 +.method private getPrivacyPath()Ljava/lang/String;
6706 + .registers 16
6708 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
6710 + move-result-object v9
6712 + new-instance v11, Ljava/util/Random;
6714 + invoke-direct {v11}, Ljava/util/Random;-><init>()V
6716 + const/4 v0, 0x0
6718 + new-instance v12, Ljava/lang/StringBuilder;
6720 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
6722 + invoke-virtual {v11}, Ljava/util/Random;->nextLong()J
6724 + move-result-wide v13
6726 + invoke-virtual {v12, v13, v14}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
6728 + move-result-object v12
6730 + const-string v13, ".tmp"
6732 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6734 + move-result-object v12
6736 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6738 + move-result-object v1
6740 + const/4 v5, 0x0
6742 + const/4 v2, 0x0
6744 + const/4 v8, 0x0
6746 + :goto_24
6747 + array-length v12, v9
6749 + if-ge v8, v12, :cond_1eb
6751 + :try_start_27
6752 + new-instance v7, Ljava/io/File;
6754 + new-instance v12, Ljava/lang/StringBuilder;
6756 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
6758 + const-string v13, "/data/data/"
6760 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6762 + move-result-object v12
6764 + aget-object v13, v9, v8
6766 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6768 + move-result-object v12
6770 + const-string v13, "/cache/"
6772 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6774 + move-result-object v12
6776 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6778 + move-result-object v12
6780 + invoke-direct {v7, v12}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6782 + invoke-virtual {v7}, Ljava/io/File;->mkdirs()Z
6784 + new-instance v6, Ljava/io/FileWriter;
6786 + new-instance v12, Ljava/lang/StringBuilder;
6788 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
6790 + const-string v13, "/data/data/"
6792 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6794 + move-result-object v12
6796 + aget-object v13, v9, v8
6798 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6800 + move-result-object v12
6802 + const-string v13, "/cache/"
6804 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6806 + move-result-object v12
6808 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6810 + move-result-object v12
6812 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6814 + move-result-object v12
6816 + invoke-direct {v6, v12}, Ljava/io/FileWriter;-><init>(Ljava/lang/String;)V
6817 + :try_end_6e
6818 + .catchall {:try_start_27 .. :try_end_6e} :catchall_12d
6819 + .catch Ljava/lang/Exception; {:try_start_27 .. :try_end_6e} :catch_134
6821 + :try_start_6e
6822 + const-string/jumbo v12, "test"
6824 + invoke-virtual {v6, v12}, Ljava/io/FileWriter;->write(Ljava/lang/String;)V
6826 + invoke-virtual {v6}, Ljava/io/FileWriter;->flush()V
6828 + invoke-virtual {v6}, Ljava/io/FileWriter;->close()V
6830 + new-instance v3, Ljava/io/File;
6832 + new-instance v12, Ljava/lang/StringBuilder;
6834 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
6836 + const-string v13, "/data/data/"
6838 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6840 + move-result-object v12
6842 + aget-object v13, v9, v8
6844 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6846 + move-result-object v12
6848 + const-string v13, "/cache/"
6850 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6852 + move-result-object v12
6854 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6856 + move-result-object v12
6858 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6860 + move-result-object v12
6862 + invoke-direct {v3, v12}, Ljava/io/File;-><init>(Ljava/lang/String;)V
6863 + :try_end_9e
6864 + .catchall {:try_start_6e .. :try_end_9e} :catchall_1d9
6865 + .catch Ljava/lang/Exception; {:try_start_6e .. :try_end_9e} :catch_1e2
6867 + :try_start_9e
6868 + invoke-virtual {v3}, Ljava/io/File;->delete()Z
6870 + const-string v12, "PM,MediaRecorder"
6872 + new-instance v13, Ljava/lang/StringBuilder;
6874 + invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
6876 + const-string v14, "found our package: "
6878 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6880 + move-result-object v13
6882 + aget-object v14, v9, v8
6884 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6886 + move-result-object v13
6888 + const-string v14, " with internal path. File: "
6890 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6892 + move-result-object v13
6894 + invoke-virtual {v13, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6896 + move-result-object v13
6898 + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6900 + move-result-object v13
6902 + invoke-static {v12, v13}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6904 + aget-object v0, v9, v8
6905 + :try_end_c7
6906 + .catchall {:try_start_9e .. :try_end_c7} :catchall_1dd
6907 + .catch Ljava/lang/Exception; {:try_start_9e .. :try_end_c7} :catch_1e6
6909 + const/4 v5, 0x0
6911 + const/4 v2, 0x0
6913 + invoke-static {}, Ljava/lang/System;->gc()V
6915 + move-object v3, v2
6917 + move-object v6, v5
6919 + :goto_ce
6920 + if-eqz v0, :cond_13e
6922 + const-string v12, "PM,MediaRecorder"
6924 + new-instance v13, Ljava/lang/StringBuilder;
6926 + invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
6928 + const-string/jumbo v14, "returned file: "
6930 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6932 + move-result-object v13
6934 + invoke-virtual {v13, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6936 + move-result-object v13
6938 + const-string v14, " for package: "
6940 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6942 + move-result-object v13
6944 + invoke-virtual {v13, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6946 + move-result-object v13
6948 + const-string v14, " with internal path. Path: "
6950 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6952 + move-result-object v13
6954 + const-string v14, "/data/data/"
6956 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6958 + move-result-object v13
6960 + invoke-virtual {v13, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6962 + move-result-object v13
6964 + const-string v14, "/cache/"
6966 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6968 + move-result-object v13
6970 + invoke-virtual {v13, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6972 + move-result-object v13
6974 + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
6976 + move-result-object v13
6978 + invoke-static {v12, v13}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
6980 + new-instance v12, Ljava/lang/StringBuilder;
6982 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
6984 + const-string v13, "/data/data/"
6986 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6988 + move-result-object v12
6990 + invoke-virtual {v12, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6992 + move-result-object v12
6994 + const-string v13, "/cache/"
6996 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
6998 + move-result-object v12
7000 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7002 + move-result-object v12
7004 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7006 + move-result-object v12
7008 + move-object v2, v3
7010 + move-object v5, v6
7012 + :goto_12c
7013 + return-object v12
7015 + :catchall_12d
7016 + move-exception v12
7018 + :goto_12e
7019 + const/4 v5, 0x0
7021 + const/4 v2, 0x0
7023 + invoke-static {}, Ljava/lang/System;->gc()V
7025 + throw v12
7027 + :catch_134
7028 + move-exception v12
7030 + :goto_135
7031 + const/4 v5, 0x0
7033 + const/4 v2, 0x0
7035 + invoke-static {}, Ljava/lang/System;->gc()V
7037 + add-int/lit8 v8, v8, 0x1
7039 + goto/16 :goto_24
7041 + :cond_13e
7042 + :try_start_13e
7043 + invoke-static {}, Landroid/os/Environment;->getExternalStorageDirectory()Ljava/io/File;
7045 + move-result-object v12
7047 + invoke-virtual {v12}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
7049 + move-result-object v10
7051 + new-instance v5, Ljava/io/FileWriter;
7053 + new-instance v12, Ljava/lang/StringBuilder;
7055 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
7057 + invoke-virtual {v12, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7059 + move-result-object v12
7061 + const-string v13, "/"
7063 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7065 + move-result-object v12
7067 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7069 + move-result-object v12
7071 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7073 + move-result-object v12
7075 + invoke-direct {v5, v12}, Ljava/io/FileWriter;-><init>(Ljava/lang/String;)V
7076 + :try_end_162
7077 + .catch Ljava/lang/Exception; {:try_start_13e .. :try_end_162} :catch_1ce
7079 + :try_start_162
7080 + const-string/jumbo v12, "test"
7082 + invoke-virtual {v5, v12}, Ljava/io/FileWriter;->write(Ljava/lang/String;)V
7084 + invoke-virtual {v5}, Ljava/io/FileWriter;->flush()V
7086 + invoke-virtual {v5}, Ljava/io/FileWriter;->close()V
7088 + new-instance v2, Ljava/io/File;
7090 + new-instance v12, Ljava/lang/StringBuilder;
7092 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
7094 + invoke-virtual {v12, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7096 + move-result-object v12
7098 + const-string v13, "/"
7100 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7102 + move-result-object v12
7104 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7106 + move-result-object v12
7108 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7110 + move-result-object v12
7112 + invoke-direct {v2, v12}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7113 + :try_end_18a
7114 + .catch Ljava/lang/Exception; {:try_start_162 .. :try_end_18a} :catch_1d4
7116 + :try_start_18a
7117 + invoke-virtual {v2}, Ljava/io/File;->delete()Z
7119 + const-string v12, "PM,MediaRecorder"
7121 + new-instance v13, Ljava/lang/StringBuilder;
7123 + invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
7125 + const-string v14, "Return filePath: "
7127 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7129 + move-result-object v13
7131 + invoke-virtual {v13, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7133 + move-result-object v13
7135 + const-string v14, "/"
7137 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7139 + move-result-object v13
7141 + invoke-virtual {v13, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7143 + move-result-object v13
7145 + const-string v14, " . It is on SDCard!"
7147 + invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7149 + move-result-object v13
7151 + invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7153 + move-result-object v13
7155 + invoke-static {v12, v13}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
7157 + new-instance v12, Ljava/lang/StringBuilder;
7159 + invoke-direct {v12}, Ljava/lang/StringBuilder;-><init>()V
7161 + invoke-virtual {v12, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7163 + move-result-object v12
7165 + const-string v13, "/"
7167 + invoke-virtual {v12, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7169 + move-result-object v12
7171 + invoke-virtual {v12, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
7173 + move-result-object v12
7175 + invoke-virtual {v12}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
7176 + :try_end_1cb
7177 + .catch Ljava/lang/Exception; {:try_start_18a .. :try_end_1cb} :catch_1d7
7179 + move-result-object v12
7181 + goto/16 :goto_12c
7183 + :catch_1ce
7184 + move-exception v4
7186 + move-object v2, v3
7188 + move-object v5, v6
7190 + :goto_1d1
7191 + const/4 v12, 0x0
7193 + goto/16 :goto_12c
7195 + :catch_1d4
7196 + move-exception v4
7198 + move-object v2, v3
7200 + goto :goto_1d1
7202 + :catch_1d7
7203 + move-exception v4
7205 + goto :goto_1d1
7207 + :catchall_1d9
7208 + move-exception v12
7210 + move-object v5, v6
7212 + goto/16 :goto_12e
7214 + :catchall_1dd
7215 + move-exception v12
7217 + move-object v2, v3
7219 + move-object v5, v6
7221 + goto/16 :goto_12e
7223 + :catch_1e2
7224 + move-exception v12
7226 + move-object v5, v6
7228 + goto/16 :goto_135
7230 + :catch_1e6
7231 + move-exception v12
7233 + move-object v2, v3
7235 + move-object v5, v6
7237 + goto/16 :goto_135
7239 + :cond_1eb
7240 + move-object v3, v2
7242 + move-object v6, v5
7244 + goto/16 :goto_ce
7245 +.end method
7247 +.method private initiate()V
7248 + .registers 5
7250 + const/4 v1, 0x0
7252 + :try_start_1
7253 + iput-object v1, p0, Landroid/media/MediaRecorder;->context:Landroid/content/Context;
7255 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
7257 + iget-object v2, p0, Landroid/media/MediaRecorder;->context:Landroid/content/Context;
7259 + const-string/jumbo v3, "privacy"
7261 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
7263 + move-result-object v3
7265 + invoke-static {v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
7267 + move-result-object v3
7269 + invoke-direct {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
7271 + iput-object v1, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7273 + const-string/jumbo v1, "package"
7275 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
7277 + move-result-object v1
7279 -.method static synthetic access$000(Landroid/media/MediaRecorder;)I
7280 - .registers 2
7281 + invoke-static {v1}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
7283 - iget v0, p0, Landroid/media/MediaRecorder;->mNativeContext:I
7284 + move-result-object v1
7286 - return v0
7287 -.end method
7288 + iput-object v1, p0, Landroid/media/MediaRecorder;->mPm:Landroid/content/pm/IPackageManager;
7290 -.method static synthetic access$100(Landroid/media/MediaRecorder;)Landroid/media/MediaRecorder$OnErrorListener;
7291 - .registers 2
7292 + const/4 v1, 0x1
7294 - iget-object v0, p0, Landroid/media/MediaRecorder;->mOnErrorListener:Landroid/media/MediaRecorder$OnErrorListener;
7295 + iput-boolean v1, p0, Landroid/media/MediaRecorder;->privacyMode:Z
7296 + :try_end_27
7297 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
7299 - return-object v0
7300 -.end method
7301 + :goto_27
7302 + return-void
7304 -.method static synthetic access$200(Landroid/media/MediaRecorder;)Landroid/media/MediaRecorder$OnInfoListener;
7305 - .registers 2
7306 + :catch_28
7307 + move-exception v0
7309 - iget-object v0, p0, Landroid/media/MediaRecorder;->mOnInfoListener:Landroid/media/MediaRecorder$OnInfoListener;
7310 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
7312 - return-object v0
7313 -.end method
7314 + const-string v1, "PM,MediaRecorder"
7316 -.method public static final getAudioSourceMax()I
7317 - .registers 1
7318 + const-string v2, "Something went wrong with initalize variables"
7320 - const/4 v0, 0x7
7321 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7323 - return v0
7324 + const/4 v1, 0x0
7326 + iput-boolean v1, p0, Landroid/media/MediaRecorder;->privacyMode:Z
7328 + goto :goto_27
7329 .end method
7331 .method private final native native_finalize()V
7332 @@ -234,17 +2011,104 @@
7333 goto :goto_a
7334 .end method
7336 +.method private privacyStop()V
7337 + .registers 4
7339 + :try_start_0
7340 + invoke-virtual {p0}, Landroid/media/MediaRecorder;->stop()V
7341 + :try_end_3
7342 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_3} :catch_4
7344 + :goto_3
7345 + return-void
7347 + :catch_4
7348 + move-exception v0
7350 + const-string v1, "PM,MediaRecorder"
7352 + const-string v2, "Got exception while trying to call privacyStop()"
7354 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7356 + goto :goto_3
7357 +.end method
7359 .method private native setParameter(Ljava/lang/String;)V
7360 .end method
7363 # virtual methods
7364 .method protected finalize()V
7365 - .registers 1
7366 + .registers 4
7368 + const/4 v2, 0x1
7370 + iget-boolean v1, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7372 + if-nez v1, :cond_18
7374 + iget-object v1, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7376 + if-eqz v1, :cond_1c
7378 + new-instance v0, Ljava/io/File;
7380 + iget-object v1, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7382 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7384 + invoke-virtual {v0}, Ljava/io/File;->delete()Z
7386 + move-result v1
7388 + if-eqz v1, :cond_18
7390 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7392 + :cond_18
7393 + :goto_18
7394 invoke-direct {p0}, Landroid/media/MediaRecorder;->native_finalize()V
7396 return-void
7398 + :cond_1c
7399 + iget-object v1, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7401 + if-eqz v1, :cond_34
7403 + iget-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
7405 + if-eqz v1, :cond_34
7407 + new-instance v0, Ljava/io/File;
7409 + iget-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
7411 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7413 + invoke-virtual {v0}, Ljava/io/File;->delete()Z
7415 + move-result v1
7417 + if-eqz v1, :cond_18
7419 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7421 + goto :goto_18
7423 + :cond_34
7424 + const-string v1, "PM,MediaRecorder"
7426 + const-string v2, "Can\'t delete temporary File, because all is null?! It could be that we only want to record audio?!"
7428 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7430 + const/4 v1, 0x0
7432 + iput-boolean v1, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7434 + goto :goto_18
7435 .end method
7437 .method public native getMaxAmplitude()I
7438 @@ -256,7 +2120,7 @@
7439 .end method
7441 .method public prepare()V
7442 - .registers 8
7443 + .registers 16
7444 .annotation system Ldalvik/annotation/Throws;
7445 value = {
7446 Ljava/lang/IllegalStateException;,
7447 @@ -264,20 +2128,75 @@
7449 .end annotation
7451 - const-wide/16 v2, 0x0
7452 + const/4 v1, -0x2
7454 + const/4 v3, 0x1
7456 + const-wide/16 v13, 0x0
7458 + const/4 v5, 0x0
7460 + const/4 v2, 0x0
7462 + iget-boolean v0, p0, Landroid/media/MediaRecorder;->privacyMode:Z
7464 + if-nez v0, :cond_d
7466 + invoke-direct {p0}, Landroid/media/MediaRecorder;->initiate()V
7468 + :cond_d
7469 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7471 + const/4 v9, 0x0
7473 + iget v0, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7475 + packed-switch v0, :pswitch_data_f2
7477 + :cond_15
7478 + :goto_15
7479 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
7481 + move-result-object v8
7483 + if-nez v9, :cond_2f
7485 + iget v0, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7487 + if-ne v0, v3, :cond_c3
7489 + if-eqz v8, :cond_c3
7491 + array-length v0, v8
7493 + if-lez v0, :cond_c3
7495 + iget-object v0, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7497 + aget-object v1, v8, v2
7499 + const-string v4, "camera"
7501 + move v3, v2
7503 + move-object v6, v5
7505 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
7507 + :cond_2f
7508 + :goto_2f
7509 iget-object v0, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7511 - if-eqz v0, :cond_25
7512 + if-eqz v0, :cond_db
7514 - new-instance v6, Ljava/io/FileOutputStream;
7515 + new-instance v7, Ljava/io/FileOutputStream;
7517 iget-object v0, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7519 - invoke-direct {v6, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/lang/String;)V
7520 + invoke-direct {v7, v0}, Ljava/io/FileOutputStream;-><init>(Ljava/lang/String;)V
7522 - :try_start_d
7523 - invoke-virtual {v6}, Ljava/io/FileOutputStream;->getFD()Ljava/io/FileDescriptor;
7524 + :try_start_3a
7525 + invoke-virtual {v7}, Ljava/io/FileOutputStream;->getFD()Ljava/io/FileDescriptor;
7527 move-result-object v1
7529 @@ -288,39 +2207,189 @@
7530 move-object v0, p0
7532 invoke-direct/range {v0 .. v5}, Landroid/media/MediaRecorder;->_setOutputFile(Ljava/io/FileDescriptor;JJ)V
7533 - :try_end_19
7534 - .catchall {:try_start_d .. :try_end_19} :catchall_20
7535 + :try_end_46
7536 + .catchall {:try_start_3a .. :try_end_46} :catchall_d6
7538 - invoke-virtual {v6}, Ljava/io/FileOutputStream;->close()V
7539 + invoke-virtual {v7}, Ljava/io/FileOutputStream;->close()V
7541 - :goto_1c
7542 + :goto_49
7543 invoke-direct {p0}, Landroid/media/MediaRecorder;->_prepare()V
7545 return-void
7547 - :catchall_20
7548 + :pswitch_4d
7549 + const/4 v0, 0x2
7551 + invoke-direct {p0, v0}, Landroid/media/MediaRecorder;->checkIfPackagesAllowed(I)I
7553 + move-result v0
7555 + if-ne v0, v1, :cond_15
7557 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
7559 + move-result-object v10
7561 + if-eqz v10, :cond_68
7563 + array-length v0, v10
7565 + if-lez v0, :cond_68
7567 + iget-object v0, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7569 + aget-object v1, v10, v2
7571 + const-string/jumbo v4, "recordAudio"
7573 + move-object v6, v5
7575 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
7577 + :cond_68
7578 + new-instance v0, Landroid/media/MediaRecorder$PrivacyRunner;
7580 + invoke-direct {v0, p0}, Landroid/media/MediaRecorder$PrivacyRunner;-><init>(Landroid/media/MediaRecorder;)V
7582 + iput-object v0, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7584 + iget-object v0, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7586 + const-wide/16 v11, 0x32
7588 + invoke-virtual {v0, v11, v12}, Landroid/media/MediaRecorder$PrivacyRunner;->setDelay(J)V
7590 + iget-object v0, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7592 + invoke-virtual {v0}, Landroid/media/MediaRecorder$PrivacyRunner;->start()V
7594 + const/4 v9, 0x1
7596 + goto :goto_15
7598 + :pswitch_7d
7599 + const/4 v0, 0x3
7601 + invoke-direct {p0, v0}, Landroid/media/MediaRecorder;->checkIfPackagesAllowed(I)I
7603 + move-result v0
7605 + if-ne v0, v1, :cond_15
7607 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPackageName()[Ljava/lang/String;
7609 + move-result-object v10
7611 + if-eqz v10, :cond_97
7613 + array-length v0, v10
7615 + if-lez v0, :cond_97
7617 + iget-object v0, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7619 + aget-object v1, v10, v2
7621 + const-string v4, "camera"
7623 + move-object v6, v5
7625 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
7627 + :cond_97
7628 + iget-object v0, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7630 + if-eqz v0, :cond_b0
7632 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPrivacyPath()Ljava/lang/String;
7634 + move-result-object v0
7636 + iput-object v0, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7638 + :goto_a1
7639 + new-instance v0, Landroid/media/MediaRecorder$PrivacyRunner;
7641 + invoke-direct {v0, p0}, Landroid/media/MediaRecorder$PrivacyRunner;-><init>(Landroid/media/MediaRecorder;)V
7643 + iput-object v0, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7645 + iget-object v0, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7647 + invoke-virtual {v0}, Landroid/media/MediaRecorder$PrivacyRunner;->start()V
7649 + const/4 v9, 0x1
7651 + goto/16 :goto_15
7653 + :cond_b0
7654 + iget-object v0, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7656 + if-eqz v0, :cond_bb
7658 + invoke-direct {p0}, Landroid/media/MediaRecorder;->getPrivacyFileDescriptor()Ljava/io/FileDescriptor;
7660 + move-result-object v0
7662 + iput-object v0, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7664 + goto :goto_a1
7666 + :cond_bb
7667 + new-instance v0, Ljava/io/IOException;
7669 + const-string v1, "No valid output file"
7671 + invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
7673 + throw v0
7675 + :cond_c3
7676 + if-eqz v8, :cond_2f
7678 + array-length v0, v8
7680 + if-lez v0, :cond_2f
7682 + iget-object v0, p0, Landroid/media/MediaRecorder;->pSetMan:Landroid/privacy/PrivacySettingsManager;
7684 + aget-object v1, v8, v2
7686 + const-string/jumbo v4, "recordAudio"
7688 + move v3, v2
7690 + move-object v6, v5
7692 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
7694 + goto/16 :goto_2f
7696 + :catchall_d6
7697 move-exception v0
7699 - invoke-virtual {v6}, Ljava/io/FileOutputStream;->close()V
7700 + invoke-virtual {v7}, Ljava/io/FileOutputStream;->close()V
7702 throw v0
7704 - :cond_25
7705 + :cond_db
7706 iget-object v0, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7708 - if-eqz v0, :cond_31
7709 + if-eqz v0, :cond_e9
7711 iget-object v1, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7713 move-object v0, p0
7715 - move-wide v4, v2
7716 + move-wide v2, v13
7718 + move-wide v4, v13
7720 invoke-direct/range {v0 .. v5}, Landroid/media/MediaRecorder;->_setOutputFile(Ljava/io/FileDescriptor;JJ)V
7722 - goto :goto_1c
7723 + goto/16 :goto_49
7725 - :cond_31
7726 + :cond_e9
7727 new-instance v0, Ljava/io/IOException;
7729 const-string v1, "No valid output file"
7730 @@ -328,23 +2397,99 @@
7731 invoke-direct {v0, v1}, Ljava/io/IOException;-><init>(Ljava/lang/String;)V
7733 throw v0
7735 + nop
7737 + :pswitch_data_f2
7738 + .packed-switch 0x0
7739 + :pswitch_4d
7740 + :pswitch_7d
7741 + .end packed-switch
7742 .end method
7744 .method public native release()V
7745 .end method
7747 .method public reset()V
7748 - .registers 3
7749 + .registers 5
7751 + const/4 v3, 0x0
7753 + const/4 v2, 0x1
7755 invoke-direct {p0}, Landroid/media/MediaRecorder;->native_reset()V
7757 - iget-object v0, p0, Landroid/media/MediaRecorder;->mEventHandler:Landroid/media/MediaRecorder$EventHandler;
7758 + iget-boolean v1, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7760 - const/4 v1, 0x0
7761 + if-nez v1, :cond_1c
7763 + iget-object v1, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7765 + if-eqz v1, :cond_27
7767 + new-instance v0, Ljava/io/File;
7769 + iget-object v1, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7771 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7773 + invoke-virtual {v0}, Ljava/io/File;->delete()Z
7775 + move-result v1
7777 + if-eqz v1, :cond_1c
7779 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7781 - invoke-virtual {v0, v1}, Landroid/media/MediaRecorder$EventHandler;->removeCallbacksAndMessages(Ljava/lang/Object;)V
7782 + :cond_1c
7783 + :goto_1c
7784 + iput-object v3, p0, Landroid/media/MediaRecorder;->pRunner:Landroid/media/MediaRecorder$PrivacyRunner;
7786 + invoke-static {}, Ljava/lang/System;->gc()V
7788 + iget-object v1, p0, Landroid/media/MediaRecorder;->mEventHandler:Landroid/media/MediaRecorder$EventHandler;
7790 + invoke-virtual {v1, v3}, Landroid/media/MediaRecorder$EventHandler;->removeCallbacksAndMessages(Ljava/lang/Object;)V
7792 return-void
7794 + :cond_27
7795 + iget-object v1, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7797 + if-eqz v1, :cond_3f
7799 + iget-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
7801 + if-eqz v1, :cond_3f
7803 + new-instance v0, Ljava/io/File;
7805 + iget-object v1, p0, Landroid/media/MediaRecorder;->pFileDescriptorPath:Ljava/lang/String;
7807 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
7809 + invoke-virtual {v0}, Ljava/io/File;->delete()Z
7811 + move-result v1
7813 + if-eqz v1, :cond_1c
7815 + iput-boolean v2, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7817 + goto :goto_1c
7819 + :cond_3f
7820 + const-string v1, "PM,MediaRecorder"
7822 + const-string v2, "Can\'t delete temporary File, because all is null?! It could be that we only want to record audio?!"
7824 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
7826 + const/4 v1, 0x0
7828 + iput-boolean v1, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7830 + goto :goto_1c
7831 .end method
7833 .method public setAudioChannels(I)V
7834 @@ -504,8 +2649,12 @@
7835 .method public setCaptureRate(D)V
7836 .registers 10
7838 + const/4 v5, 0x1
7840 const/4 v6, 0x0
7842 + iput v5, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7844 const-string/jumbo v3, "time-lapse-enable=1"
7846 new-array v4, v6, [Ljava/lang/Object;
7847 @@ -528,9 +2677,7 @@
7849 const-string/jumbo v3, "time-between-time-lapse-frame-capture=%d"
7851 - const/4 v4, 0x1
7853 - new-array v4, v4, [Ljava/lang/Object;
7854 + new-array v4, v5, [Ljava/lang/Object;
7856 invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
7858 @@ -804,6 +2951,10 @@
7860 iput-object p1, p0, Landroid/media/MediaRecorder;->mFd:Ljava/io/FileDescriptor;
7862 + const/4 v0, 0x0
7864 + iput-boolean v0, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7866 return-void
7867 .end method
7869 @@ -821,6 +2972,10 @@
7871 iput-object p1, p0, Landroid/media/MediaRecorder;->mPath:Ljava/lang/String;
7873 + const/4 v0, 0x0
7875 + iput-boolean v0, p0, Landroid/media/MediaRecorder;->deletedFile:Z
7877 return-void
7878 .end method
7880 @@ -833,7 +2988,11 @@
7881 .end method
7883 .method public setPreviewDisplay(Landroid/view/Surface;)V
7884 - .registers 2
7885 + .registers 3
7887 + const/4 v0, 0x1
7889 + iput v0, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7891 iput-object p1, p0, Landroid/media/MediaRecorder;->mSurface:Landroid/view/Surface;
7893 @@ -843,6 +3002,10 @@
7894 .method public setProfile(Landroid/media/CamcorderProfile;)V
7895 .registers 4
7897 + const/4 v0, 0x1
7899 + iput v0, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7901 iget v0, p1, Landroid/media/CamcorderProfile;->fileFormat:I
7903 invoke-virtual {p0, v0}, Landroid/media/MediaRecorder;->setOutputFormat(I)V
7904 @@ -869,18 +3032,18 @@
7906 const/16 v1, 0x3e8
7908 - if-lt v0, v1, :cond_28
7909 + if-lt v0, v1, :cond_2b
7911 iget v0, p1, Landroid/media/CamcorderProfile;->quality:I
7913 const/16 v1, 0x3ef
7915 - if-gt v0, v1, :cond_28
7916 + if-gt v0, v1, :cond_2b
7918 - :goto_27
7919 + :goto_2a
7920 return-void
7922 - :cond_28
7923 + :cond_2b
7924 iget v0, p1, Landroid/media/CamcorderProfile;->audioBitRate:I
7926 invoke-virtual {p0, v0}, Landroid/media/MediaRecorder;->setAudioEncodingBitRate(I)V
7927 @@ -897,7 +3060,7 @@
7929 invoke-virtual {p0, v0}, Landroid/media/MediaRecorder;->setAudioEncoder(I)V
7931 - goto :goto_27
7932 + goto :goto_2a
7933 .end method
7935 .method public native setVideoEncoder(I)V
7936 @@ -911,7 +3074,11 @@
7937 .method public setVideoEncodingBitRate(I)V
7938 .registers 4
7940 - if-gtz p1, :cond_a
7941 + const/4 v0, 0x1
7943 + iput v0, p0, Landroid/media/MediaRecorder;->ACTUAL_STATE:I
7945 + if-gtz p1, :cond_d
7947 new-instance v0, Ljava/lang/IllegalArgumentException;
7949 @@ -921,7 +3088,7 @@
7951 throw v0
7953 - :cond_a
7954 + :cond_d
7955 new-instance v0, Ljava/lang/StringBuilder;
7957 invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
7958 diff -Npru stock-framework/smali/android/net/NetworkInfo.smali ext-framework/smali/android/net/NetworkInfo.smali
7959 --- stock-framework/smali/android/net/NetworkInfo.smali 2012-11-02 22:31:08.675975175 -0500
7960 +++ ext-framework/smali/android/net/NetworkInfo.smali 2012-11-02 22:30:48.503875140 -0500
7961 @@ -814,6 +814,14 @@
7962 throw v0
7963 .end method
7965 +.method public setState(Landroid/net/NetworkInfo$State;)V
7966 + .registers 2
7968 + iput-object p1, p0, Landroid/net/NetworkInfo;->mState:Landroid/net/NetworkInfo$State;
7970 + return-void
7971 +.end method
7973 .method setSubtype(ILjava/lang/String;)V
7974 .registers 4
7976 diff -Npru stock-framework/smali/android/net/wifi/WifiInfo.smali ext-framework/smali/android/net/wifi/WifiInfo.smali
7977 --- stock-framework/smali/android/net/wifi/WifiInfo.smali 2012-11-02 22:31:08.803975796 -0500
7978 +++ ext-framework/smali/android/net/wifi/WifiInfo.smali 2012-11-02 22:30:48.619875719 -0500
7979 @@ -263,6 +263,40 @@
7980 return-void
7981 .end method
7983 +.method public constructor <init>(Z)V
7984 + .registers 4
7986 + const/4 v1, -0x1
7988 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
7990 + const-string v0, ""
7992 + iput-object v0, p0, Landroid/net/wifi/WifiInfo;->mSSID:Ljava/lang/String;
7994 + const-string v0, ""
7996 + iput-object v0, p0, Landroid/net/wifi/WifiInfo;->mBSSID:Ljava/lang/String;
7998 + iput v1, p0, Landroid/net/wifi/WifiInfo;->mNetworkId:I
8000 + sget-object v0, Landroid/net/wifi/SupplicantState;->UNINITIALIZED:Landroid/net/wifi/SupplicantState;
8002 + iput-object v0, p0, Landroid/net/wifi/WifiInfo;->mSupplicantState:Landroid/net/wifi/SupplicantState;
8004 + const/16 v0, -0x270f
8006 + iput v0, p0, Landroid/net/wifi/WifiInfo;->mRssi:I
8008 + iput v1, p0, Landroid/net/wifi/WifiInfo;->mLinkSpeed:I
8010 + const/4 v0, 0x0
8012 + iput-boolean v0, p0, Landroid/net/wifi/WifiInfo;->mHiddenSSID:Z
8014 + return-void
8015 +.end method
8017 .method static synthetic access$002(Landroid/net/wifi/WifiInfo;Ljava/lang/String;)Ljava/lang/String;
8018 .registers 2
8020 diff -Npru stock-framework/smali/android/os/SystemProperties.smali ext-framework/smali/android/os/SystemProperties.smali
8021 --- stock-framework/smali/android/os/SystemProperties.smali 2012-11-02 22:31:09.091977238 -0500
8022 +++ ext-framework/smali/android/os/SystemProperties.smali 2012-11-02 22:30:48.879877005 -0500
8023 @@ -4,12 +4,28 @@
8026 # static fields
8027 +.field private static final GOT_ERROR:I = -0x3
8029 +.field private static final IS_ALLOWED:I = -0x1
8031 +.field private static final IS_NOT_ALLOWED:I = -0x2
8033 +.field private static final PRIVACY_TAG:Ljava/lang/String; = "SystemProperties"
8035 .field public static final PROP_NAME_MAX:I = 0x1f
8037 .field public static final PROP_VALUE_MAX:I = 0x5b
8039 .field public static final QCOM_HARDWARE:Z
8041 +.field private static context:Landroid/content/Context;
8043 +.field private static mPm:Landroid/content/pm/IPackageManager;
8045 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
8047 +.field private static privacyMode:Z
8049 .field private static final sChangeCallbacks:Ljava/util/ArrayList;
8050 .annotation system Ldalvik/annotation/Signature;
8051 value = {
8052 @@ -26,10 +42,10 @@
8053 .method static constructor <clinit>()V
8054 .registers 2
8056 - const-string v0, "com.qc.hardware"
8058 const/4 v1, 0x0
8060 + const-string v0, "com.qc.hardware"
8062 invoke-static {v0, v1}, Landroid/os/SystemProperties;->native_get_boolean(Ljava/lang/String;Z)Z
8064 move-result v0
8065 @@ -42,6 +58,8 @@
8067 sput-object v0, Landroid/os/SystemProperties;->sChangeCallbacks:Ljava/util/ArrayList;
8069 + sput-boolean v1, Landroid/os/SystemProperties;->privacyMode:Z
8071 return-void
8072 .end method
8074 @@ -154,6 +172,205 @@
8075 throw v2
8076 .end method
8078 +.method private static checkIfPackagesAllowed()I
8079 + .registers 8
8081 + const/4 v5, -0x3
8083 + :try_start_1
8084 + sget-object v6, Landroid/os/SystemProperties;->pSetMan:Landroid/privacy/PrivacySettingsManager;
8086 + if-eqz v6, :cond_41
8088 + const/4 v2, 0x0
8090 + invoke-static {}, Landroid/os/SystemProperties;->getPackageName()[Ljava/lang/String;
8092 + move-result-object v3
8094 + invoke-static {}, Landroid/os/Process;->myUid()I
8096 + move-result v4
8098 + if-eqz v3, :cond_2c
8100 + const/4 v1, 0x0
8102 + :goto_11
8103 + array-length v6, v3
8105 + if-ge v1, v6, :cond_2a
8107 + sget-object v6, Landroid/os/SystemProperties;->pSetMan:Landroid/privacy/PrivacySettingsManager;
8109 + aget-object v7, v3, v1
8111 + invoke-virtual {v6, v7, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
8113 + move-result-object v2
8115 + if-eqz v2, :cond_26
8117 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
8119 + move-result v6
8121 + if-eqz v6, :cond_26
8123 + const/4 v5, -0x2
8125 + :goto_25
8126 + return v5
8128 + :cond_26
8129 + const/4 v2, 0x0
8131 + add-int/lit8 v1, v1, 0x1
8133 + goto :goto_11
8135 + :cond_2a
8136 + const/4 v5, -0x1
8138 + goto :goto_25
8140 + :cond_2c
8141 + const-string v6, "SystemProperties"
8143 + const-string/jumbo v7, "return GOT_ERROR, because package_names are NULL"
8145 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8146 + :try_end_34
8147 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_34} :catch_35
8149 + goto :goto_25
8151 + :catch_35
8152 + move-exception v0
8154 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
8156 + const-string v6, "SystemProperties"
8158 + const-string v7, "Got exception in checkIfPackagesAllowed"
8160 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8162 + goto :goto_25
8164 + :cond_41
8165 + :try_start_41
8166 + const-string v6, "SystemProperties"
8168 + const-string/jumbo v7, "return GOT_ERROR, because pSetMan is NULL"
8170 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8171 + :try_end_49
8172 + .catch Ljava/lang/Exception; {:try_start_41 .. :try_end_49} :catch_35
8174 + goto :goto_25
8175 +.end method
8177 +.method private static dataAccess(Z)V
8178 + .registers 6
8180 + invoke-static {}, Landroid/os/SystemProperties;->getPackageName()[Ljava/lang/String;
8182 + move-result-object v1
8184 + if-eqz p0, :cond_2f
8186 + if-eqz v1, :cond_2f
8188 + const/4 v0, 0x0
8190 + :goto_9
8191 + array-length v2, v1
8193 + if-ge v0, v2, :cond_58
8195 + const-string v2, "SystemProperties"
8197 + new-instance v3, Ljava/lang/StringBuilder;
8199 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
8201 + const-string v4, "Allowed Package: -"
8203 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8205 + move-result-object v3
8207 + aget-object v4, v1, v0
8209 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8211 + move-result-object v3
8213 + const-string v4, "- accessing networkinfo."
8215 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8217 + move-result-object v3
8219 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8221 + move-result-object v3
8223 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
8225 + add-int/lit8 v0, v0, 0x1
8227 + goto :goto_9
8229 + :cond_2f
8230 + if-eqz v1, :cond_58
8232 + const/4 v0, 0x0
8234 + :goto_32
8235 + array-length v2, v1
8237 + if-ge v0, v2, :cond_58
8239 + const-string v2, "SystemProperties"
8241 + new-instance v3, Ljava/lang/StringBuilder;
8243 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
8245 + const-string v4, "Blocked Package: -"
8247 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8249 + move-result-object v3
8251 + aget-object v4, v1, v0
8253 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8255 + move-result-object v3
8257 + const-string v4, "- accessing networkinfo."
8259 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
8261 + move-result-object v3
8263 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
8265 + move-result-object v3
8267 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
8269 + add-int/lit8 v0, v0, 0x1
8271 + goto :goto_32
8273 + :cond_58
8274 + return-void
8275 +.end method
8277 .method public static get(Ljava/lang/String;)Ljava/lang/String;
8278 .registers 3
8280 @@ -174,11 +391,53 @@
8281 throw v0
8283 :cond_10
8284 + const-string v0, "gsm.operator.alpha"
8286 + invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
8288 + move-result v0
8290 + if-nez v0, :cond_20
8292 + const-string v0, "gsm.operator.numeric"
8294 + invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
8296 + move-result v0
8298 + if-eqz v0, :cond_35
8300 + :cond_20
8301 + invoke-static {}, Landroid/os/SystemProperties;->initiate()V
8303 + invoke-static {}, Landroid/os/SystemProperties;->checkIfPackagesAllowed()I
8305 + move-result v0
8307 + const/4 v1, -0x2
8309 + if-ne v0, v1, :cond_31
8311 + const/4 v0, 0x0
8313 + invoke-static {v0}, Landroid/os/SystemProperties;->dataAccess(Z)V
8315 + const-string v0, ""
8317 + :goto_30
8318 + return-object v0
8320 + :cond_31
8321 + const/4 v0, 0x1
8323 + invoke-static {v0}, Landroid/os/SystemProperties;->dataAccess(Z)V
8325 + :cond_35
8326 invoke-static {p0}, Landroid/os/SystemProperties;->native_get(Ljava/lang/String;)Ljava/lang/String;
8328 move-result-object v0
8330 - return-object v0
8331 + goto :goto_30
8332 .end method
8334 .method public static get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
8335 @@ -201,11 +460,53 @@
8336 throw v0
8338 :cond_10
8339 + const-string v0, "gsm.operator.alpha"
8341 + invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
8343 + move-result v0
8345 + if-nez v0, :cond_20
8347 + const-string v0, "gsm.operator.numeric"
8349 + invoke-virtual {p0, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
8351 + move-result v0
8353 + if-eqz v0, :cond_35
8355 + :cond_20
8356 + invoke-static {}, Landroid/os/SystemProperties;->initiate()V
8358 + invoke-static {}, Landroid/os/SystemProperties;->checkIfPackagesAllowed()I
8360 + move-result v0
8362 + const/4 v1, -0x2
8364 + if-ne v0, v1, :cond_31
8366 + const/4 v0, 0x0
8368 + invoke-static {v0}, Landroid/os/SystemProperties;->dataAccess(Z)V
8370 + const-string v0, ""
8372 + :goto_30
8373 + return-object v0
8375 + :cond_31
8376 + const/4 v0, 0x1
8378 + invoke-static {v0}, Landroid/os/SystemProperties;->dataAccess(Z)V
8380 + :cond_35
8381 invoke-static {p0, p1}, Landroid/os/SystemProperties;->native_get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
8383 move-result-object v0
8385 - return-object v0
8386 + goto :goto_30
8387 .end method
8389 .method public static getBoolean(Ljava/lang/String;Z)Z
8390 @@ -388,6 +689,135 @@
8391 goto :goto_2c
8392 .end method
8394 +.method private static getPackageName()[Ljava/lang/String;
8395 + .registers 5
8397 + :try_start_0
8398 + sget-object v3, Landroid/os/SystemProperties;->mPm:Landroid/content/pm/IPackageManager;
8400 + if-eqz v3, :cond_f
8402 + invoke-static {}, Landroid/os/Process;->myUid()I
8404 + move-result v2
8406 + sget-object v3, Landroid/os/SystemProperties;->mPm:Landroid/content/pm/IPackageManager;
8408 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
8410 + move-result-object v1
8412 + :goto_e
8413 + return-object v1
8415 + :cond_f
8416 + const-string/jumbo v3, "package"
8418 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
8420 + move-result-object v3
8422 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
8424 + move-result-object v3
8426 + sput-object v3, Landroid/os/SystemProperties;->mPm:Landroid/content/pm/IPackageManager;
8428 + invoke-static {}, Landroid/os/Process;->myUid()I
8430 + move-result v2
8432 + sget-object v3, Landroid/os/SystemProperties;->mPm:Landroid/content/pm/IPackageManager;
8434 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
8435 + :try_end_25
8436 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
8438 + move-result-object v1
8440 + goto :goto_e
8442 + :catch_27
8443 + move-exception v0
8445 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
8447 + const-string v3, "SystemProperties"
8449 + const-string/jumbo v4, "something went wrong with getting package name"
8451 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8453 + const/4 v1, 0x0
8455 + goto :goto_e
8456 +.end method
8458 +.method private static initiate()V
8459 + .registers 4
8461 + const/4 v1, 0x0
8463 + :try_start_1
8464 + sput-object v1, Landroid/os/SystemProperties;->context:Landroid/content/Context;
8466 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
8468 + sget-object v2, Landroid/os/SystemProperties;->context:Landroid/content/Context;
8470 + const-string/jumbo v3, "privacy"
8472 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
8474 + move-result-object v3
8476 + invoke-static {v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
8478 + move-result-object v3
8480 + invoke-direct {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
8482 + sput-object v1, Landroid/os/SystemProperties;->pSetMan:Landroid/privacy/PrivacySettingsManager;
8484 + const-string/jumbo v1, "package"
8486 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
8488 + move-result-object v1
8490 + invoke-static {v1}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
8492 + move-result-object v1
8494 + sput-object v1, Landroid/os/SystemProperties;->mPm:Landroid/content/pm/IPackageManager;
8496 + const/4 v1, 0x1
8498 + sput-boolean v1, Landroid/os/SystemProperties;->privacyMode:Z
8499 + :try_end_27
8500 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
8502 + :goto_27
8503 + return-void
8505 + :catch_28
8506 + move-exception v0
8508 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
8510 + const-string v1, "SystemProperties"
8512 + const-string v2, "Something went wrong with initalize variables"
8514 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
8516 + const/4 v1, 0x0
8518 + sput-boolean v1, Landroid/os/SystemProperties;->privacyMode:Z
8520 + goto :goto_27
8521 +.end method
8523 .method private static native native_add_change_callback()V
8524 .end method
8526 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager.smali ext-framework/smali/android/privacy/IPrivacySettingsManager.smali
8527 --- stock-framework/smali/android/privacy/IPrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
8528 +++ ext-framework/smali/android/privacy/IPrivacySettingsManager.smali 2012-11-02 22:30:48.939877310 -0500
8529 @@ -0,0 +1,104 @@
8530 +.class public interface abstract Landroid/privacy/IPrivacySettingsManager;
8531 +.super Ljava/lang/Object;
8532 +.source "IPrivacySettingsManager.java"
8534 +# interfaces
8535 +.implements Landroid/os/IInterface;
8538 +# annotations
8539 +.annotation system Ldalvik/annotation/MemberClasses;
8540 + value = {
8541 + Landroid/privacy/IPrivacySettingsManager$Stub;
8543 +.end annotation
8546 +# virtual methods
8547 +.method public abstract addObserver(Ljava/lang/String;)V
8548 + .annotation system Ldalvik/annotation/Throws;
8549 + value = {
8550 + Landroid/os/RemoteException;
8552 + .end annotation
8553 +.end method
8555 +.method public abstract deleteSettings(Ljava/lang/String;)Z
8556 + .annotation system Ldalvik/annotation/Throws;
8557 + value = {
8558 + Landroid/os/RemoteException;
8560 + .end annotation
8561 +.end method
8563 +.method public abstract getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
8564 + .annotation system Ldalvik/annotation/Throws;
8565 + value = {
8566 + Landroid/os/RemoteException;
8568 + .end annotation
8569 +.end method
8571 +.method public abstract getVersion()D
8572 + .annotation system Ldalvik/annotation/Throws;
8573 + value = {
8574 + Landroid/os/RemoteException;
8576 + .end annotation
8577 +.end method
8579 +.method public abstract notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
8580 + .annotation system Ldalvik/annotation/Throws;
8581 + value = {
8582 + Landroid/os/RemoteException;
8584 + .end annotation
8585 +.end method
8587 +.method public abstract purgeSettings()Z
8588 + .annotation system Ldalvik/annotation/Throws;
8589 + value = {
8590 + Landroid/os/RemoteException;
8592 + .end annotation
8593 +.end method
8595 +.method public abstract registerObservers()V
8596 + .annotation system Ldalvik/annotation/Throws;
8597 + value = {
8598 + Landroid/os/RemoteException;
8600 + .end annotation
8601 +.end method
8603 +.method public abstract saveSettings(Landroid/privacy/PrivacySettings;)Z
8604 + .annotation system Ldalvik/annotation/Throws;
8605 + value = {
8606 + Landroid/os/RemoteException;
8608 + .end annotation
8609 +.end method
8611 +.method public abstract setBootCompleted()V
8612 + .annotation system Ldalvik/annotation/Throws;
8613 + value = {
8614 + Landroid/os/RemoteException;
8616 + .end annotation
8617 +.end method
8619 +.method public abstract setEnabled(Z)Z
8620 + .annotation system Ldalvik/annotation/Throws;
8621 + value = {
8622 + Landroid/os/RemoteException;
8624 + .end annotation
8625 +.end method
8627 +.method public abstract setNotificationsEnabled(Z)Z
8628 + .annotation system Ldalvik/annotation/Throws;
8629 + value = {
8630 + Landroid/os/RemoteException;
8632 + .end annotation
8633 +.end method
8634 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali ext-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali
8635 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 1969-12-31 18:00:00.000000000 -0600
8636 +++ ext-framework/smali/android/privacy/IPrivacySettingsManager$Stub$Proxy.smali 2012-11-02 22:30:48.939877310 -0500
8637 @@ -0,0 +1,743 @@
8638 +.class Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
8639 +.super Ljava/lang/Object;
8640 +.source "IPrivacySettingsManager.java"
8642 +# interfaces
8643 +.implements Landroid/privacy/IPrivacySettingsManager;
8646 +# annotations
8647 +.annotation system Ldalvik/annotation/EnclosingClass;
8648 + value = Landroid/privacy/IPrivacySettingsManager$Stub;
8649 +.end annotation
8651 +.annotation system Ldalvik/annotation/InnerClass;
8652 + accessFlags = 0xa
8653 + name = "Proxy"
8654 +.end annotation
8657 +# instance fields
8658 +.field private mRemote:Landroid/os/IBinder;
8661 +# direct methods
8662 +.method constructor <init>(Landroid/os/IBinder;)V
8663 + .registers 2
8665 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
8667 + iput-object p1, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8669 + return-void
8670 +.end method
8673 +# virtual methods
8674 +.method public addObserver(Ljava/lang/String;)V
8675 + .registers 7
8676 + .annotation system Ldalvik/annotation/Throws;
8677 + value = {
8678 + Landroid/os/RemoteException;
8680 + .end annotation
8682 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8684 + move-result-object v0
8686 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8688 + move-result-object v1
8690 + :try_start_8
8691 + const-string v2, "android.privacy.IPrivacySettingsManager"
8693 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
8695 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8697 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8699 + const/4 v3, 0x6
8701 + const/4 v4, 0x0
8703 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
8705 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
8706 + :try_end_1a
8707 + .catchall {:try_start_8 .. :try_end_1a} :catchall_21
8709 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8711 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8713 + return-void
8715 + :catchall_21
8716 + move-exception v2
8718 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8720 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8722 + throw v2
8723 +.end method
8725 +.method public asBinder()Landroid/os/IBinder;
8726 + .registers 2
8728 + iget-object v0, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8730 + return-object v0
8731 +.end method
8733 +.method public deleteSettings(Ljava/lang/String;)Z
8734 + .registers 8
8735 + .annotation system Ldalvik/annotation/Throws;
8736 + value = {
8737 + Landroid/os/RemoteException;
8739 + .end annotation
8741 + const/4 v2, 0x0
8743 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8745 + move-result-object v0
8747 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8749 + move-result-object v1
8751 + :try_start_9
8752 + const-string v3, "android.privacy.IPrivacySettingsManager"
8754 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
8756 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8758 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8760 + const/4 v4, 0x3
8762 + const/4 v5, 0x0
8764 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
8766 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
8768 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
8769 + :try_end_1e
8770 + .catchall {:try_start_9 .. :try_end_1e} :catchall_29
8772 + move-result v3
8774 + if-eqz v3, :cond_22
8776 + const/4 v2, 0x1
8778 + :cond_22
8779 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8781 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8783 + return v2
8785 + :catchall_29
8786 + move-exception v3
8788 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8790 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8792 + throw v3
8793 +.end method
8795 +.method public getInterfaceDescriptor()Ljava/lang/String;
8796 + .registers 2
8798 + const-string v0, "android.privacy.IPrivacySettingsManager"
8800 + return-object v0
8801 +.end method
8803 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
8804 + .registers 8
8805 + .annotation system Ldalvik/annotation/Throws;
8806 + value = {
8807 + Landroid/os/RemoteException;
8809 + .end annotation
8811 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8813 + move-result-object v0
8815 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8817 + move-result-object v1
8819 + :try_start_8
8820 + const-string v3, "android.privacy.IPrivacySettingsManager"
8822 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
8824 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8826 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8828 + const/4 v4, 0x1
8830 + const/4 v5, 0x0
8832 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
8834 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
8836 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
8838 + move-result v3
8840 + if-eqz v3, :cond_2f
8842 + sget-object v3, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
8844 + invoke-interface {v3, v1}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
8846 + move-result-object v2
8848 + check-cast v2, Landroid/privacy/PrivacySettings;
8849 + :try_end_28
8850 + .catchall {:try_start_8 .. :try_end_28} :catchall_31
8852 + :goto_28
8853 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8855 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8857 + return-object v2
8859 + :cond_2f
8860 + const/4 v2, 0x0
8862 + goto :goto_28
8864 + :catchall_31
8865 + move-exception v3
8867 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8869 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8871 + throw v3
8872 +.end method
8874 +.method public getVersion()D
8875 + .registers 8
8876 + .annotation system Ldalvik/annotation/Throws;
8877 + value = {
8878 + Landroid/os/RemoteException;
8880 + .end annotation
8882 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8884 + move-result-object v0
8886 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8888 + move-result-object v1
8890 + :try_start_8
8891 + const-string v4, "android.privacy.IPrivacySettingsManager"
8893 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
8895 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8897 + const/16 v5, 0x8
8899 + const/4 v6, 0x0
8901 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
8903 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
8905 + invoke-virtual {v1}, Landroid/os/Parcel;->readDouble()D
8906 + :try_end_1b
8907 + .catchall {:try_start_8 .. :try_end_1b} :catchall_23
8909 + move-result-wide v2
8911 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8913 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8915 + return-wide v2
8917 + :catchall_23
8918 + move-exception v4
8920 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8922 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8924 + throw v4
8925 +.end method
8927 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
8928 + .registers 10
8929 + .annotation system Ldalvik/annotation/Throws;
8930 + value = {
8931 + Landroid/os/RemoteException;
8933 + .end annotation
8935 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8937 + move-result-object v0
8939 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8941 + move-result-object v1
8943 + :try_start_8
8944 + const-string v2, "android.privacy.IPrivacySettingsManager"
8946 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
8948 + invoke-virtual {v0, p1}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8950 + invoke-virtual {v0, p2}, Landroid/os/Parcel;->writeByte(B)V
8952 + invoke-virtual {v0, p3}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8954 + invoke-virtual {v0, p4}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
8956 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
8958 + const/4 v3, 0x4
8960 + const/4 v4, 0x0
8962 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
8964 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
8965 + :try_end_23
8966 + .catchall {:try_start_8 .. :try_end_23} :catchall_2a
8968 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8970 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8972 + return-void
8974 + :catchall_2a
8975 + move-exception v2
8977 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
8979 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
8981 + throw v2
8982 +.end method
8984 +.method public purgeSettings()Z
8985 + .registers 7
8986 + .annotation system Ldalvik/annotation/Throws;
8987 + value = {
8988 + Landroid/os/RemoteException;
8990 + .end annotation
8992 + const/4 v2, 0x0
8994 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
8996 + move-result-object v0
8998 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9000 + move-result-object v1
9002 + :try_start_9
9003 + const-string v3, "android.privacy.IPrivacySettingsManager"
9005 + invoke-virtual {v0, v3}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9007 + iget-object v3, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9009 + const/4 v4, 0x7
9011 + const/4 v5, 0x0
9013 + invoke-interface {v3, v4, v0, v1, v5}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9015 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9017 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
9018 + :try_end_1b
9019 + .catchall {:try_start_9 .. :try_end_1b} :catchall_26
9021 + move-result v3
9023 + if-eqz v3, :cond_1f
9025 + const/4 v2, 0x1
9027 + :cond_1f
9028 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9030 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9032 + return v2
9034 + :catchall_26
9035 + move-exception v3
9037 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9039 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9041 + throw v3
9042 +.end method
9044 +.method public registerObservers()V
9045 + .registers 6
9046 + .annotation system Ldalvik/annotation/Throws;
9047 + value = {
9048 + Landroid/os/RemoteException;
9050 + .end annotation
9052 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9054 + move-result-object v0
9056 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9058 + move-result-object v1
9060 + :try_start_8
9061 + const-string v2, "android.privacy.IPrivacySettingsManager"
9063 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9065 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9067 + const/4 v3, 0x5
9069 + const/4 v4, 0x0
9071 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9073 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9074 + :try_end_17
9075 + .catchall {:try_start_8 .. :try_end_17} :catchall_1e
9077 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9079 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9081 + return-void
9083 + :catchall_1e
9084 + move-exception v2
9086 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9088 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9090 + throw v2
9091 +.end method
9093 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
9094 + .registers 9
9095 + .annotation system Ldalvik/annotation/Throws;
9096 + value = {
9097 + Landroid/os/RemoteException;
9099 + .end annotation
9101 + const/4 v2, 0x1
9103 + const/4 v3, 0x0
9105 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9107 + move-result-object v0
9109 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9111 + move-result-object v1
9113 + :try_start_a
9114 + const-string v4, "android.privacy.IPrivacySettingsManager"
9116 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9118 + if-eqz p1, :cond_30
9120 + const/4 v4, 0x1
9122 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
9124 + const/4 v4, 0x0
9126 + invoke-virtual {p1, v0, v4}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
9128 + :goto_19
9129 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9131 + const/4 v5, 0x2
9133 + const/4 v6, 0x0
9135 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9137 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9139 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
9140 + :try_end_26
9141 + .catchall {:try_start_a .. :try_end_26} :catchall_35
9143 + move-result v4
9145 + if-eqz v4, :cond_3d
9147 + :goto_29
9148 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9150 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9152 + return v2
9154 + :cond_30
9155 + const/4 v4, 0x0
9157 + :try_start_31
9158 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
9159 + :try_end_34
9160 + .catchall {:try_start_31 .. :try_end_34} :catchall_35
9162 + goto :goto_19
9164 + :catchall_35
9165 + move-exception v3
9167 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9169 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9171 + throw v3
9173 + :cond_3d
9174 + move v2, v3
9176 + goto :goto_29
9177 +.end method
9179 +.method public setBootCompleted()V
9180 + .registers 6
9181 + .annotation system Ldalvik/annotation/Throws;
9182 + value = {
9183 + Landroid/os/RemoteException;
9185 + .end annotation
9187 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9189 + move-result-object v0
9191 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9193 + move-result-object v1
9195 + :try_start_8
9196 + const-string v2, "android.privacy.IPrivacySettingsManager"
9198 + invoke-virtual {v0, v2}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9200 + iget-object v2, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9202 + const/16 v3, 0xb
9204 + const/4 v4, 0x0
9206 + invoke-interface {v2, v3, v0, v1, v4}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9208 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9209 + :try_end_18
9210 + .catchall {:try_start_8 .. :try_end_18} :catchall_1f
9212 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9214 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9216 + return-void
9218 + :catchall_1f
9219 + move-exception v2
9221 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9223 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9225 + throw v2
9226 +.end method
9228 +.method public setEnabled(Z)Z
9229 + .registers 9
9230 + .annotation system Ldalvik/annotation/Throws;
9231 + value = {
9232 + Landroid/os/RemoteException;
9234 + .end annotation
9236 + const/4 v2, 0x1
9238 + const/4 v3, 0x0
9240 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9242 + move-result-object v0
9244 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9246 + move-result-object v1
9248 + :try_start_a
9249 + const-string v4, "android.privacy.IPrivacySettingsManager"
9251 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9253 + if-eqz p1, :cond_2d
9255 + move v4, v2
9257 + :goto_12
9258 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
9260 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9262 + const/16 v5, 0x9
9264 + const/4 v6, 0x0
9266 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9268 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9270 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
9271 + :try_end_23
9272 + .catchall {:try_start_a .. :try_end_23} :catchall_31
9274 + move-result v4
9276 + if-eqz v4, :cond_2f
9278 + :goto_26
9279 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9281 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9283 + return v2
9285 + :cond_2d
9286 + move v4, v3
9288 + goto :goto_12
9290 + :cond_2f
9291 + move v2, v3
9293 + goto :goto_26
9295 + :catchall_31
9296 + move-exception v3
9298 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9300 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9302 + throw v3
9303 +.end method
9305 +.method public setNotificationsEnabled(Z)Z
9306 + .registers 9
9307 + .annotation system Ldalvik/annotation/Throws;
9308 + value = {
9309 + Landroid/os/RemoteException;
9311 + .end annotation
9313 + const/4 v2, 0x1
9315 + const/4 v3, 0x0
9317 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9319 + move-result-object v0
9321 + invoke-static {}, Landroid/os/Parcel;->obtain()Landroid/os/Parcel;
9323 + move-result-object v1
9325 + :try_start_a
9326 + const-string v4, "android.privacy.IPrivacySettingsManager"
9328 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInterfaceToken(Ljava/lang/String;)V
9330 + if-eqz p1, :cond_2d
9332 + move v4, v2
9334 + :goto_12
9335 + invoke-virtual {v0, v4}, Landroid/os/Parcel;->writeInt(I)V
9337 + iget-object v4, p0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;->mRemote:Landroid/os/IBinder;
9339 + const/16 v5, 0xa
9341 + const/4 v6, 0x0
9343 + invoke-interface {v4, v5, v0, v1, v6}, Landroid/os/IBinder;->transact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9345 + invoke-virtual {v1}, Landroid/os/Parcel;->readException()V
9347 + invoke-virtual {v1}, Landroid/os/Parcel;->readInt()I
9348 + :try_end_23
9349 + .catchall {:try_start_a .. :try_end_23} :catchall_31
9351 + move-result v4
9353 + if-eqz v4, :cond_2f
9355 + :goto_26
9356 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9358 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9360 + return v2
9362 + :cond_2d
9363 + move v4, v3
9365 + goto :goto_12
9367 + :cond_2f
9368 + move v2, v3
9370 + goto :goto_26
9372 + :catchall_31
9373 + move-exception v3
9375 + invoke-virtual {v1}, Landroid/os/Parcel;->recycle()V
9377 + invoke-virtual {v0}, Landroid/os/Parcel;->recycle()V
9379 + throw v3
9380 +.end method
9381 diff -Npru stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali ext-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali
9382 --- stock-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 1969-12-31 18:00:00.000000000 -0600
9383 +++ ext-framework/smali/android/privacy/IPrivacySettingsManager$Stub.smali 2012-11-02 22:30:48.943877325 -0500
9384 @@ -0,0 +1,412 @@
9385 +.class public abstract Landroid/privacy/IPrivacySettingsManager$Stub;
9386 +.super Landroid/os/Binder;
9387 +.source "IPrivacySettingsManager.java"
9389 +# interfaces
9390 +.implements Landroid/privacy/IPrivacySettingsManager;
9393 +# annotations
9394 +.annotation system Ldalvik/annotation/EnclosingClass;
9395 + value = Landroid/privacy/IPrivacySettingsManager;
9396 +.end annotation
9398 +.annotation system Ldalvik/annotation/InnerClass;
9399 + accessFlags = 0x409
9400 + name = "Stub"
9401 +.end annotation
9403 +.annotation system Ldalvik/annotation/MemberClasses;
9404 + value = {
9405 + Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
9407 +.end annotation
9410 +# static fields
9411 +.field private static final DESCRIPTOR:Ljava/lang/String; = "android.privacy.IPrivacySettingsManager"
9413 +.field static final TRANSACTION_addObserver:I = 0x6
9415 +.field static final TRANSACTION_deleteSettings:I = 0x3
9417 +.field static final TRANSACTION_getSettings:I = 0x1
9419 +.field static final TRANSACTION_getVersion:I = 0x8
9421 +.field static final TRANSACTION_notification:I = 0x4
9423 +.field static final TRANSACTION_purgeSettings:I = 0x7
9425 +.field static final TRANSACTION_registerObservers:I = 0x5
9427 +.field static final TRANSACTION_saveSettings:I = 0x2
9429 +.field static final TRANSACTION_setBootCompleted:I = 0xb
9431 +.field static final TRANSACTION_setEnabled:I = 0x9
9433 +.field static final TRANSACTION_setNotificationsEnabled:I = 0xa
9436 +# direct methods
9437 +.method public constructor <init>()V
9438 + .registers 2
9440 + invoke-direct {p0}, Landroid/os/Binder;-><init>()V
9442 + const-string v0, "android.privacy.IPrivacySettingsManager"
9444 + invoke-virtual {p0, p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->attachInterface(Landroid/os/IInterface;Ljava/lang/String;)V
9446 + return-void
9447 +.end method
9449 +.method public static asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
9450 + .registers 3
9452 + if-nez p0, :cond_4
9454 + const/4 v0, 0x0
9456 + :goto_3
9457 + return-object v0
9459 + :cond_4
9460 + const-string v1, "android.privacy.IPrivacySettingsManager"
9462 + invoke-interface {p0, v1}, Landroid/os/IBinder;->queryLocalInterface(Ljava/lang/String;)Landroid/os/IInterface;
9464 + move-result-object v0
9466 + if-eqz v0, :cond_13
9468 + instance-of v1, v0, Landroid/privacy/IPrivacySettingsManager;
9470 + if-eqz v1, :cond_13
9472 + check-cast v0, Landroid/privacy/IPrivacySettingsManager;
9474 + goto :goto_3
9476 + :cond_13
9477 + new-instance v0, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;
9479 + invoke-direct {v0, p0}, Landroid/privacy/IPrivacySettingsManager$Stub$Proxy;-><init>(Landroid/os/IBinder;)V
9481 + goto :goto_3
9482 +.end method
9485 +# virtual methods
9486 +.method public asBinder()Landroid/os/IBinder;
9487 + .registers 1
9489 + return-object p0
9490 +.end method
9492 +.method public onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9493 + .registers 14
9494 + .annotation system Ldalvik/annotation/Throws;
9495 + value = {
9496 + Landroid/os/RemoteException;
9498 + .end annotation
9500 + const/4 v6, 0x0
9502 + const/4 v7, 0x1
9504 + sparse-switch p1, :sswitch_data_10e
9506 + invoke-super {p0, p1, p2, p3, p4}, Landroid/os/Binder;->onTransact(ILandroid/os/Parcel;Landroid/os/Parcel;I)Z
9508 + move-result v7
9510 + :goto_9
9511 + return v7
9513 + :sswitch_a
9514 + const-string v6, "android.privacy.IPrivacySettingsManager"
9516 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
9518 + goto :goto_9
9520 + :sswitch_10
9521 + const-string v8, "android.privacy.IPrivacySettingsManager"
9523 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9525 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9527 + move-result-object v0
9529 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
9531 + move-result-object v4
9533 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9535 + if-eqz v4, :cond_29
9537 + invoke-virtual {p3, v7}, Landroid/os/Parcel;->writeInt(I)V
9539 + invoke-virtual {v4, p3, v7}, Landroid/privacy/PrivacySettings;->writeToParcel(Landroid/os/Parcel;I)V
9541 + goto :goto_9
9543 + :cond_29
9544 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9546 + goto :goto_9
9548 + :sswitch_2d
9549 + const-string v8, "android.privacy.IPrivacySettingsManager"
9551 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9553 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
9555 + move-result v8
9557 + if-eqz v8, :cond_4e
9559 + sget-object v8, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
9561 + invoke-interface {v8, p2}, Landroid/os/Parcelable$Creator;->createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
9563 + move-result-object v0
9565 + check-cast v0, Landroid/privacy/PrivacySettings;
9567 + :goto_40
9568 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->saveSettings(Landroid/privacy/PrivacySettings;)Z
9570 + move-result v4
9572 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9574 + if-eqz v4, :cond_4a
9576 + move v6, v7
9578 + :cond_4a
9579 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9581 + goto :goto_9
9583 + :cond_4e
9584 + const/4 v0, 0x0
9586 + goto :goto_40
9588 + :sswitch_50
9589 + const-string v8, "android.privacy.IPrivacySettingsManager"
9591 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9593 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9595 + move-result-object v0
9597 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->deleteSettings(Ljava/lang/String;)Z
9599 + move-result v4
9601 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9603 + if-eqz v4, :cond_63
9605 + move v6, v7
9607 + :cond_63
9608 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9610 + goto :goto_9
9612 + :sswitch_67
9613 + const-string v6, "android.privacy.IPrivacySettingsManager"
9615 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9617 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9619 + move-result-object v0
9621 + invoke-virtual {p2}, Landroid/os/Parcel;->readByte()B
9623 + move-result v1
9625 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9627 + move-result-object v2
9629 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9631 + move-result-object v3
9633 + invoke-virtual {p0, v0, v1, v2, v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
9635 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9637 + goto :goto_9
9639 + :sswitch_83
9640 + const-string v6, "android.privacy.IPrivacySettingsManager"
9642 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9644 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->registerObservers()V
9646 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9648 + goto/16 :goto_9
9650 + :sswitch_90
9651 + const-string v6, "android.privacy.IPrivacySettingsManager"
9653 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9655 + invoke-virtual {p2}, Landroid/os/Parcel;->readString()Ljava/lang/String;
9657 + move-result-object v0
9659 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->addObserver(Ljava/lang/String;)V
9661 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9663 + goto/16 :goto_9
9665 + :sswitch_a1
9666 + const-string v8, "android.privacy.IPrivacySettingsManager"
9668 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9670 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->purgeSettings()Z
9672 + move-result v4
9674 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9676 + if-eqz v4, :cond_b0
9678 + move v6, v7
9680 + :cond_b0
9681 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9683 + goto/16 :goto_9
9685 + :sswitch_b5
9686 + const-string v6, "android.privacy.IPrivacySettingsManager"
9688 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9690 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->getVersion()D
9692 + move-result-wide v4
9694 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9696 + invoke-virtual {p3, v4, v5}, Landroid/os/Parcel;->writeDouble(D)V
9698 + goto/16 :goto_9
9700 + :sswitch_c6
9701 + const-string v8, "android.privacy.IPrivacySettingsManager"
9703 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9705 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
9707 + move-result v8
9709 + if-eqz v8, :cond_e1
9711 + move v0, v7
9713 + :goto_d2
9714 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setEnabled(Z)Z
9716 + move-result v4
9718 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9720 + if-eqz v4, :cond_dc
9722 + move v6, v7
9724 + :cond_dc
9725 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9727 + goto/16 :goto_9
9729 + :cond_e1
9730 + move v0, v6
9732 + goto :goto_d2
9734 + :sswitch_e3
9735 + const-string v8, "android.privacy.IPrivacySettingsManager"
9737 + invoke-virtual {p2, v8}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9739 + invoke-virtual {p2}, Landroid/os/Parcel;->readInt()I
9741 + move-result v8
9743 + if-eqz v8, :cond_fe
9745 + move v0, v7
9747 + :goto_ef
9748 + invoke-virtual {p0, v0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setNotificationsEnabled(Z)Z
9750 + move-result v4
9752 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9754 + if-eqz v4, :cond_f9
9756 + move v6, v7
9758 + :cond_f9
9759 + invoke-virtual {p3, v6}, Landroid/os/Parcel;->writeInt(I)V
9761 + goto/16 :goto_9
9763 + :cond_fe
9764 + move v0, v6
9766 + goto :goto_ef
9768 + :sswitch_100
9769 + const-string v6, "android.privacy.IPrivacySettingsManager"
9771 + invoke-virtual {p2, v6}, Landroid/os/Parcel;->enforceInterface(Ljava/lang/String;)V
9773 + invoke-virtual {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;->setBootCompleted()V
9775 + invoke-virtual {p3}, Landroid/os/Parcel;->writeNoException()V
9777 + goto/16 :goto_9
9779 + nop
9781 + :sswitch_data_10e
9782 + .sparse-switch
9783 + 0x1 -> :sswitch_10
9784 + 0x2 -> :sswitch_2d
9785 + 0x3 -> :sswitch_50
9786 + 0x4 -> :sswitch_67
9787 + 0x5 -> :sswitch_83
9788 + 0x6 -> :sswitch_90
9789 + 0x7 -> :sswitch_a1
9790 + 0x8 -> :sswitch_b5
9791 + 0x9 -> :sswitch_c6
9792 + 0xa -> :sswitch_e3
9793 + 0xb -> :sswitch_100
9794 + 0x5f4e5446 -> :sswitch_a
9795 + .end sparse-switch
9796 +.end method
9797 diff -Npru stock-framework/smali/android/privacy/PrivacyFileObserver.smali ext-framework/smali/android/privacy/PrivacyFileObserver.smali
9798 --- stock-framework/smali/android/privacy/PrivacyFileObserver.smali 1969-12-31 18:00:00.000000000 -0600
9799 +++ ext-framework/smali/android/privacy/PrivacyFileObserver.smali 2012-11-02 22:30:48.943877325 -0500
9800 @@ -0,0 +1,272 @@
9801 +.class public Landroid/privacy/PrivacyFileObserver;
9802 +.super Landroid/os/FileObserver;
9803 +.source "PrivacyFileObserver.java"
9806 +# static fields
9807 +.field public static final PACKAGE_PATH_INDEX:I = 0x3
9809 +.field public static final SETTINGS_TYPE_INDEX:I = 0x4
9811 +.field public static final TAG:Ljava/lang/String; = "PrivacyFileObserver"
9814 +# instance fields
9815 +.field public absolutePath:Ljava/lang/String;
9817 +.field public children:Ljava/util/HashMap;
9818 + .annotation system Ldalvik/annotation/Signature;
9819 + value = {
9820 + "Ljava/util/HashMap",
9821 + "<",
9822 + "Ljava/lang/String;",
9823 + "Landroid/privacy/PrivacyFileObserver;",
9824 + ">;"
9826 + .end annotation
9827 +.end field
9829 +.field private pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
9832 +# direct methods
9833 +.method public constructor <init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
9834 + .registers 12
9836 + const/16 v8, 0xfff
9838 + invoke-direct {p0, p1, v8}, Landroid/os/FileObserver;-><init>(Ljava/lang/String;I)V
9840 + iput-object p1, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
9842 + iput-object p2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
9844 + new-instance v8, Ljava/util/HashMap;
9846 + invoke-direct {v8}, Ljava/util/HashMap;-><init>()V
9848 + iput-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
9850 + new-instance v7, Ljava/io/File;
9852 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
9854 + invoke-direct {v7, v8}, Ljava/io/File;-><init>(Ljava/lang/String;)V
9856 + invoke-virtual {v7}, Ljava/io/File;->isDirectory()Z
9858 + move-result v8
9860 + if-eqz v8, :cond_42
9862 + invoke-virtual {v7}, Ljava/io/File;->listFiles()[Ljava/io/File;
9864 + move-result-object v6
9866 + move-object v0, v6
9868 + array-length v4, v0
9870 + const/4 v3, 0x0
9872 + :goto_24
9873 + if-ge v3, v4, :cond_42
9875 + aget-object v2, v0, v3
9877 + invoke-virtual {v2}, Ljava/io/File;->getAbsolutePath()Ljava/lang/String;
9879 + move-result-object v5
9881 + new-instance v1, Landroid/privacy/PrivacyFileObserver;
9883 + invoke-direct {v1, v5, p2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
9885 + iget-object v8, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
9887 + invoke-virtual {v8, v5, v1}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
9889 + invoke-virtual {v2}, Ljava/io/File;->isFile()Z
9891 + move-result v8
9893 + if-eqz v8, :cond_3f
9895 + invoke-virtual {v1}, Landroid/privacy/PrivacyFileObserver;->startWatching()V
9897 + :cond_3f
9898 + add-int/lit8 v3, v3, 0x1
9900 + goto :goto_24
9902 + :cond_42
9903 + return-void
9904 +.end method
9907 +# virtual methods
9908 +.method public addObserver(Ljava/lang/String;)V
9909 + .registers 6
9911 + new-instance v2, Ljava/lang/StringBuilder;
9913 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
9915 + iget-object v3, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
9917 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9919 + move-result-object v2
9921 + const-string v3, "/"
9923 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9925 + move-result-object v2
9927 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
9929 + move-result-object v2
9931 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
9933 + move-result-object v1
9935 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
9937 + invoke-virtual {v2, v1}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
9939 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
9941 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
9943 + invoke-direct {v0, v1, v2}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
9945 + iget-object v2, p0, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
9947 + invoke-virtual {v2, v1, v0}, Ljava/util/HashMap;->put(Ljava/lang/Object;Ljava/lang/Object;)Ljava/lang/Object;
9949 + return-void
9950 +.end method
9952 +.method public onEvent(ILjava/lang/String;)V
9953 + .registers 12
9955 + and-int/lit8 v5, p1, 0x1
9957 + if-eqz v5, :cond_48
9959 + new-instance v4, Ljava/util/StringTokenizer;
9961 + iget-object v5, p0, Landroid/privacy/PrivacyFileObserver;->absolutePath:Ljava/lang/String;
9963 + const-string v6, "/"
9965 + invoke-direct {v4, v5, v6}, Ljava/util/StringTokenizer;-><init>(Ljava/lang/String;Ljava/lang/String;)V
9967 + const/4 v0, 0x0
9969 + :goto_e
9970 + const/4 v5, 0x3
9972 + if-ge v0, v5, :cond_1d
9974 + invoke-virtual {v4}, Ljava/util/StringTokenizer;->hasMoreElements()Z
9976 + move-result v5
9978 + if-eqz v5, :cond_1d
9980 + invoke-virtual {v4}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
9982 + add-int/lit8 v0, v0, 0x1
9984 + goto :goto_e
9986 + :cond_1d
9987 + invoke-virtual {v4}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
9989 + move-result-object v2
9991 + const/4 v3, 0x0
9993 + invoke-virtual {v4}, Ljava/util/StringTokenizer;->hasMoreElements()Z
9995 + move-result v5
9997 + if-eqz v5, :cond_2c
9999 + invoke-virtual {v4}, Ljava/util/StringTokenizer;->nextToken()Ljava/lang/String;
10001 + move-result-object v3
10003 + :cond_2c
10004 + if-eqz v3, :cond_49
10006 + :try_start_2e
10007 + const-string v5, "ipTableProtectSetting"
10009 + invoke-virtual {v3, v5}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
10011 + move-result v5
10013 + if-eqz v5, :cond_49
10015 + iget-object v5, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
10017 + invoke-virtual {v5, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
10019 + move-result-object v1
10021 + iget-object v5, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
10023 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getIpTableProtectSetting()B
10025 + move-result v6
10027 + const-string v7, "iptables"
10029 + const/4 v8, 0x0
10031 + invoke-virtual {v5, v2, v6, v7, v8}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
10033 + :cond_48
10034 + :goto_48
10035 + return-void
10037 + :cond_49
10038 + iget-object v5, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
10040 + invoke-virtual {v5, v2}, Landroid/privacy/PrivacySettingsManagerService;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
10042 + move-result-object v1
10044 + iget-object v5, p0, Landroid/privacy/PrivacyFileObserver;->pSetManServ:Landroid/privacy/PrivacySettingsManagerService;
10046 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
10048 + move-result v6
10050 + const-string/jumbo v7, "systemLogs"
10052 + const/4 v8, 0x0
10054 + invoke-virtual {v5, v2, v6, v7, v8}, Landroid/privacy/PrivacySettingsManagerService;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
10055 + :try_end_5c
10056 + .catch Ljava/lang/Exception; {:try_start_2e .. :try_end_5c} :catch_5d
10058 + goto :goto_48
10060 + :catch_5d
10061 + move-exception v5
10063 + goto :goto_48
10064 +.end method
10066 +.method public startWatching()V
10067 + .registers 1
10069 + invoke-super {p0}, Landroid/os/FileObserver;->startWatching()V
10071 + return-void
10072 +.end method
10073 diff -Npru stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali ext-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali
10074 --- stock-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 1969-12-31 18:00:00.000000000 -0600
10075 +++ ext-framework/smali/android/privacy/PrivacyPersistenceAdapter.smali 2012-11-02 22:30:48.947877340 -0500
10076 @@ -0,0 +1,5092 @@
10077 +.class public Landroid/privacy/PrivacyPersistenceAdapter;
10078 +.super Ljava/lang/Object;
10079 +.source "PrivacyPersistenceAdapter.java"
10082 +# static fields
10083 +.field private static final CREATE_TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
10085 +.field private static final CREATE_TABLE_MAP:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
10087 +.field private static final CREATE_TABLE_SETTINGS:Ljava/lang/String; = "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER, smsSendSetting INTEGER, phoneCallSetting INTEGER, ipTableProtectSetting INTEGER, iccAccessSetting INTEGER, addOnManagementSetting INTEGER, androidIdSetting INTEGER, androidId TEXT, wifiInfoSetting INTEGER, switchConnectivitySetting INTEGER, sendMmsSetting INTEGER, forceOnlineState INTEGER, switchWifiStateSetting INTEGER);"
10089 +.field private static final DATABASE_FIELDS:[Ljava/lang/String; = null
10091 +.field private static final DATABASE_FILE:Ljava/lang/String; = "/data/system/privacy.db"
10093 +.field private static final DATABASE_VERSION:I = 0x4
10095 +.field public static final DUMMY_UID:I = -0x1
10097 +.field private static final INSERT_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
10099 +.field private static final INSERT_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
10101 +.field private static final INSERT_VERSION:Ljava/lang/String; = "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 4);"
10103 +.field private static final RETRY_QUERY_COUNT:I = 0x5
10105 +.field public static final SETTINGS_DIRECTORY:Ljava/lang/String; = "/data/system/privacy"
10107 +.field public static final SETTING_DB_VERSION:Ljava/lang/String; = "db_version"
10109 +.field public static final SETTING_ENABLED:Ljava/lang/String; = "enabled"
10111 +.field public static final SETTING_NOTIFICATIONS_ENABLED:Ljava/lang/String; = "notifications_enabled"
10113 +.field private static final TABLE_ALLOWED_CONTACTS:Ljava/lang/String; = "allowed_contacts"
10115 +.field private static final TABLE_MAP:Ljava/lang/String; = "map"
10117 +.field private static final TABLE_SETTINGS:Ljava/lang/String; = "settings"
10119 +.field private static final TABLE_VERSION:Ljava/lang/String; = "version"
10121 +.field private static final TAG:Ljava/lang/String; = "PrivacyPersistenceAdapter"
10123 +.field public static final VALUE_FALSE:Ljava/lang/String; = "0"
10125 +.field public static final VALUE_TRUE:Ljava/lang/String; = "1"
10127 +.field public static readingThreads:Ljava/lang/Integer;
10130 +# instance fields
10131 +.field private context:Landroid/content/Context;
10133 +.field private db:Landroid/database/sqlite/SQLiteDatabase;
10136 +# direct methods
10137 +.method static constructor <clinit>()V
10138 + .registers 3
10140 + const/4 v2, 0x0
10142 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10144 + move-result-object v0
10146 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10148 + const/16 v0, 0x2f
10150 + new-array v0, v0, [Ljava/lang/String;
10152 + const-string v1, "_id"
10154 + aput-object v1, v0, v2
10156 + const/4 v1, 0x1
10158 + const-string/jumbo v2, "packageName"
10160 + aput-object v2, v0, v1
10162 + const/4 v1, 0x2
10164 + const-string/jumbo v2, "uid"
10166 + aput-object v2, v0, v1
10168 + const/4 v1, 0x3
10170 + const-string v2, "deviceIdSetting"
10172 + aput-object v2, v0, v1
10174 + const/4 v1, 0x4
10176 + const-string v2, "deviceId"
10178 + aput-object v2, v0, v1
10180 + const/4 v1, 0x5
10182 + const-string v2, "line1NumberSetting"
10184 + aput-object v2, v0, v1
10186 + const/4 v1, 0x6
10188 + const-string v2, "line1Number"
10190 + aput-object v2, v0, v1
10192 + const/4 v1, 0x7
10194 + const-string v2, "locationGpsSetting"
10196 + aput-object v2, v0, v1
10198 + const/16 v1, 0x8
10200 + const-string v2, "locationGpsLat"
10202 + aput-object v2, v0, v1
10204 + const/16 v1, 0x9
10206 + const-string v2, "locationGpsLon"
10208 + aput-object v2, v0, v1
10210 + const/16 v1, 0xa
10212 + const-string v2, "locationNetworkSetting"
10214 + aput-object v2, v0, v1
10216 + const/16 v1, 0xb
10218 + const-string v2, "locationNetworkLat"
10220 + aput-object v2, v0, v1
10222 + const/16 v1, 0xc
10224 + const-string v2, "locationNetworkLon"
10226 + aput-object v2, v0, v1
10228 + const/16 v1, 0xd
10230 + const-string/jumbo v2, "networkInfoSetting"
10232 + aput-object v2, v0, v1
10234 + const/16 v1, 0xe
10236 + const-string/jumbo v2, "simInfoSetting"
10238 + aput-object v2, v0, v1
10240 + const/16 v1, 0xf
10242 + const-string/jumbo v2, "simSerialNumberSetting"
10244 + aput-object v2, v0, v1
10246 + const/16 v1, 0x10
10248 + const-string/jumbo v2, "simSerialNumber"
10250 + aput-object v2, v0, v1
10252 + const/16 v1, 0x11
10254 + const-string/jumbo v2, "subscriberIdSetting"
10256 + aput-object v2, v0, v1
10258 + const/16 v1, 0x12
10260 + const-string/jumbo v2, "subscriberId"
10262 + aput-object v2, v0, v1
10264 + const/16 v1, 0x13
10266 + const-string v2, "accountsSetting"
10268 + aput-object v2, v0, v1
10270 + const/16 v1, 0x14
10272 + const-string v2, "accountsAuthTokensSetting"
10274 + aput-object v2, v0, v1
10276 + const/16 v1, 0x15
10278 + const-string/jumbo v2, "outgoingCallsSetting"
10280 + aput-object v2, v0, v1
10282 + const/16 v1, 0x16
10284 + const-string v2, "incomingCallsSetting"
10286 + aput-object v2, v0, v1
10288 + const/16 v1, 0x17
10290 + const-string v2, "contactsSetting"
10292 + aput-object v2, v0, v1
10294 + const/16 v1, 0x18
10296 + const-string v2, "calendarSetting"
10298 + aput-object v2, v0, v1
10300 + const/16 v1, 0x19
10302 + const-string/jumbo v2, "mmsSetting"
10304 + aput-object v2, v0, v1
10306 + const/16 v1, 0x1a
10308 + const-string/jumbo v2, "smsSetting"
10310 + aput-object v2, v0, v1
10312 + const/16 v1, 0x1b
10314 + const-string v2, "callLogSetting"
10316 + aput-object v2, v0, v1
10318 + const/16 v1, 0x1c
10320 + const-string v2, "bookmarksSetting"
10322 + aput-object v2, v0, v1
10324 + const/16 v1, 0x1d
10326 + const-string/jumbo v2, "systemLogsSetting"
10328 + aput-object v2, v0, v1
10330 + const/16 v1, 0x1e
10332 + const-string v2, "externalStorageSetting"
10334 + aput-object v2, v0, v1
10336 + const/16 v1, 0x1f
10338 + const-string v2, "cameraSetting"
10340 + aput-object v2, v0, v1
10342 + const/16 v1, 0x20
10344 + const-string/jumbo v2, "recordAudioSetting"
10346 + aput-object v2, v0, v1
10348 + const/16 v1, 0x21
10350 + const-string/jumbo v2, "notificationSetting"
10352 + aput-object v2, v0, v1
10354 + const/16 v1, 0x22
10356 + const-string v2, "intentBootCompletedSetting"
10358 + aput-object v2, v0, v1
10360 + const/16 v1, 0x23
10362 + const-string/jumbo v2, "smsSendSetting"
10364 + aput-object v2, v0, v1
10366 + const/16 v1, 0x24
10368 + const-string/jumbo v2, "phoneCallSetting"
10370 + aput-object v2, v0, v1
10372 + const/16 v1, 0x25
10374 + const-string v2, "ipTableProtectSetting"
10376 + aput-object v2, v0, v1
10378 + const/16 v1, 0x26
10380 + const-string v2, "iccAccessSetting"
10382 + aput-object v2, v0, v1
10384 + const/16 v1, 0x27
10386 + const-string v2, "addOnManagementSetting"
10388 + aput-object v2, v0, v1
10390 + const/16 v1, 0x28
10392 + const-string v2, "androidIdSetting"
10394 + aput-object v2, v0, v1
10396 + const/16 v1, 0x29
10398 + const-string v2, "androidId"
10400 + aput-object v2, v0, v1
10402 + const/16 v1, 0x2a
10404 + const-string/jumbo v2, "wifiInfoSetting"
10406 + aput-object v2, v0, v1
10408 + const/16 v1, 0x2b
10410 + const-string/jumbo v2, "switchConnectivitySetting"
10412 + aput-object v2, v0, v1
10414 + const/16 v1, 0x2c
10416 + const-string/jumbo v2, "sendMmsSetting"
10418 + aput-object v2, v0, v1
10420 + const/16 v1, 0x2d
10422 + const-string v2, "forceOnlineState"
10424 + aput-object v2, v0, v1
10426 + const/16 v1, 0x2e
10428 + const-string/jumbo v2, "switchWifiStateSetting"
10430 + aput-object v2, v0, v1
10432 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
10434 + return-void
10435 +.end method
10437 +.method public constructor <init>(Landroid/content/Context;)V
10438 + .registers 6
10440 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
10442 + iput-object p1, p0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
10444 + new-instance v2, Ljava/io/File;
10446 + const-string v3, "/data/system/"
10448 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10450 + invoke-virtual {v2}, Ljava/io/File;->canWrite()Z
10452 + move-result v0
10454 + if-eqz v0, :cond_3c
10456 + new-instance v2, Ljava/io/File;
10458 + const-string v3, "/data/system/privacy.db"
10460 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10462 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
10464 + move-result v2
10466 + if-nez v2, :cond_22
10468 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
10470 + :cond_22
10471 + new-instance v2, Ljava/io/File;
10473 + const-string v3, "/data/system/privacy"
10475 + invoke-direct {v2, v3}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10477 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
10479 + move-result v2
10481 + if-nez v2, :cond_32
10483 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createSettingsDir()V
10485 + :cond_32
10486 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getDbVersion()I
10488 + move-result v1
10490 + const/4 v2, 0x4
10492 + if-ge v1, v2, :cond_3c
10494 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->upgradeDatabase(I)V
10496 + :cond_3c
10497 + return-void
10498 +.end method
10500 +.method private declared-synchronized createDatabase()V
10501 + .registers 6
10503 + monitor-enter p0
10505 + :try_start_1
10506 + const-string v2, "PrivacyPersistenceAdapter"
10508 + const-string v3, "createDatabase - creating privacy database file"
10510 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
10511 + :try_end_8
10512 + .catchall {:try_start_1 .. :try_end_8} :catchall_4c
10514 + :try_start_8
10515 + const-string v2, "/data/system/privacy.db"
10517 + const/4 v3, 0x0
10519 + const/high16 v4, 0x1000
10521 + invoke-static {v2, v3, v4}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
10523 + move-result-object v0
10525 + const-string v2, "PrivacyPersistenceAdapter"
10527 + const-string v3, "createDatabase - creating privacy database"
10529 + invoke-static {v2, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
10531 + const-string v2, "CREATE TABLE IF NOT EXISTS settings ( _id INTEGER PRIMARY KEY AUTOINCREMENT, packageName TEXT, uid INTEGER, deviceIdSetting INTEGER, deviceId TEXT, line1NumberSetting INTEGER, line1Number TEXT, locationGpsSetting INTEGER, locationGpsLat TEXT, locationGpsLon TEXT, locationNetworkSetting INTEGER, locationNetworkLat TEXT, locationNetworkLon TEXT, networkInfoSetting INTEGER, simInfoSetting INTEGER, simSerialNumberSetting INTEGER, simSerialNumber TEXT, subscriberIdSetting INTEGER, subscriberId TEXT, accountsSetting INTEGER, accountsAuthTokensSetting INTEGER, outgoingCallsSetting INTEGER, incomingCallsSetting INTEGER, contactsSetting INTEGER, calendarSetting INTEGER, mmsSetting INTEGER, smsSetting INTEGER, callLogSetting INTEGER, bookmarksSetting INTEGER, systemLogsSetting INTEGER, externalStorageSetting INTEGER, cameraSetting INTEGER, recordAudioSetting INTEGER, notificationSetting INTEGER, intentBootCompletedSetting INTEGER, smsSendSetting INTEGER, phoneCallSetting INTEGER, ipTableProtectSetting INTEGER, iccAccessSetting INTEGER, addOnManagementSetting INTEGER, androidIdSetting INTEGER, androidId TEXT, wifiInfoSetting INTEGER, switchConnectivitySetting INTEGER, sendMmsSetting INTEGER, forceOnlineState INTEGER, switchWifiStateSetting INTEGER);"
10533 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10535 + const-string v2, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
10537 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10539 + const-string v2, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
10541 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10543 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 4);"
10545 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10547 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
10549 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10551 + const-string v2, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
10553 + invoke-virtual {v0, v2}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
10555 + if-eqz v0, :cond_41
10557 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10559 + move-result v2
10561 + if-eqz v2, :cond_41
10563 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10564 + :try_end_41
10565 + .catchall {:try_start_8 .. :try_end_41} :catchall_4c
10566 + .catch Landroid/database/SQLException; {:try_start_8 .. :try_end_41} :catch_43
10568 + :cond_41
10569 + :goto_41
10570 + monitor-exit p0
10572 + return-void
10574 + :catch_43
10575 + move-exception v1
10577 + :try_start_44
10578 + const-string v2, "PrivacyPersistenceAdapter"
10580 + const-string v3, "createDatabase - failed to create privacy database"
10582 + invoke-static {v2, v3, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
10583 + :try_end_4b
10584 + .catchall {:try_start_44 .. :try_end_4b} :catchall_4c
10586 + goto :goto_41
10588 + :catchall_4c
10589 + move-exception v2
10591 + monitor-exit p0
10593 + throw v2
10594 +.end method
10596 +.method private declared-synchronized createSettingsDir()V
10597 + .registers 4
10599 + monitor-enter p0
10601 + :try_start_1
10602 + new-instance v0, Ljava/io/File;
10604 + const-string v1, "/data/system/privacy/"
10606 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10608 + invoke-virtual {v0}, Ljava/io/File;->mkdirs()Z
10610 + const/4 v1, 0x1
10612 + const/4 v2, 0x0
10614 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setReadable(ZZ)Z
10616 + const/4 v1, 0x1
10618 + const/4 v2, 0x0
10620 + invoke-virtual {v0, v1, v2}, Ljava/io/File;->setExecutable(ZZ)Z
10621 + :try_end_15
10622 + .catchall {:try_start_1 .. :try_end_15} :catchall_17
10624 + monitor-exit p0
10626 + return-void
10628 + :catchall_17
10629 + move-exception v1
10631 + monitor-exit p0
10633 + throw v1
10634 +.end method
10636 +.method private deleteRecursive(Ljava/io/File;)V
10637 + .registers 7
10639 + invoke-virtual {p1}, Ljava/io/File;->isDirectory()Z
10641 + move-result v4
10643 + if-eqz v4, :cond_16
10645 + invoke-virtual {p1}, Ljava/io/File;->listFiles()[Ljava/io/File;
10647 + move-result-object v0
10649 + array-length v3, v0
10651 + const/4 v2, 0x0
10653 + :goto_c
10654 + if-ge v2, v3, :cond_16
10656 + aget-object v1, v0, v2
10658 + invoke-direct {p0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
10660 + add-int/lit8 v2, v2, 0x1
10662 + goto :goto_c
10664 + :cond_16
10665 + invoke-virtual {p1}, Ljava/io/File;->delete()Z
10667 + return-void
10668 +.end method
10670 +.method private getDbVersion()I
10671 + .registers 9
10673 + const/4 v4, 0x1
10675 + const/4 v3, -0x1
10677 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10679 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10681 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
10683 + move-result v6
10685 + add-int/lit8 v6, v6, 0x1
10687 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10689 + move-result-object v6
10691 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10693 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10695 + move-result-object v1
10697 + :try_start_16
10698 + const-string v6, "SELECT name FROM sqlite_master WHERE type=\'table\' AND name=\'map\';"
10700 + invoke-direct {p0, v1, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
10702 + move-result-object v0
10704 + if-eqz v0, :cond_5e
10706 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
10708 + move-result v6
10710 + if-nez v6, :cond_25
10712 + const/4 v3, 0x1
10714 + :cond_25
10715 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
10717 + sget-object v7, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10719 + monitor-enter v7
10720 + :try_end_2b
10721 + .catch Ljava/lang/Exception; {:try_start_16 .. :try_end_2b} :catch_55
10723 + :try_start_2b
10724 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10726 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10728 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
10730 + move-result v6
10732 + add-int/lit8 v6, v6, -0x1
10734 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
10736 + move-result-object v6
10738 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10740 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
10742 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
10744 + move-result v6
10746 + if-nez v6, :cond_4e
10748 + if-eqz v1, :cond_4e
10750 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10752 + move-result v6
10754 + if-eqz v6, :cond_4e
10756 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
10758 + :cond_4e
10759 + monitor-exit v7
10761 + :goto_4f
10762 + if-ne v3, v4, :cond_66
10764 + :goto_51
10765 + return v3
10767 + :catchall_52
10768 + move-exception v6
10770 + monitor-exit v7
10771 + :try_end_54
10772 + .catchall {:try_start_2b .. :try_end_54} :catchall_52
10774 + :try_start_54
10775 + throw v6
10776 + :try_end_55
10777 + .catch Ljava/lang/Exception; {:try_start_54 .. :try_end_55} :catch_55
10779 + :catch_55
10780 + move-exception v2
10782 + const-string v6, "PrivacyPersistenceAdapter"
10784 + const-string v7, "getDbVersion - failed to check if table map exists (exception)"
10786 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
10788 + goto :goto_4f
10790 + :cond_5e
10791 + :try_start_5e
10792 + const-string v6, "PrivacyPersistenceAdapter"
10794 + const-string v7, "getDbVersion - failed to check if table map exists (cursor is null)"
10796 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
10797 + :try_end_65
10798 + .catch Ljava/lang/Exception; {:try_start_5e .. :try_end_65} :catch_55
10800 + goto :goto_4f
10802 + :cond_66
10803 + const-string v6, "db_version"
10805 + invoke-virtual {p0, v6}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
10807 + move-result-object v5
10809 + if-nez v5, :cond_70
10811 + move v3, v4
10813 + goto :goto_51
10815 + :cond_70
10816 + :try_start_70
10817 + invoke-static {v5}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
10818 + :try_end_73
10819 + .catch Ljava/lang/Exception; {:try_start_70 .. :try_end_73} :catch_76
10821 + move-result v4
10823 + move v3, v4
10825 + goto :goto_51
10827 + :catch_76
10828 + move-exception v2
10830 + const-string v6, "PrivacyPersistenceAdapter"
10832 + const-string v7, "getDbVersion - failed to parse database version; returning 1"
10834 + invoke-static {v6, v7}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
10836 + move v3, v4
10838 + goto :goto_51
10839 +.end method
10841 +.method private declared-synchronized getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10842 + .registers 4
10844 + monitor-enter p0
10846 + :try_start_1
10847 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10849 + if-eqz v0, :cond_11
10851 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10853 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10855 + move-result v0
10857 + if-eqz v0, :cond_11
10859 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10860 + :try_end_f
10861 + .catchall {:try_start_1 .. :try_end_f} :catchall_1e
10863 + :goto_f
10864 + monitor-exit p0
10866 + return-object v0
10868 + :cond_11
10869 + :try_start_11
10870 + const-string v0, "/data/system/privacy.db"
10872 + const/4 v1, 0x0
10874 + const/4 v2, 0x1
10876 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
10878 + move-result-object v0
10880 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10882 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10883 + :try_end_1d
10884 + .catchall {:try_start_11 .. :try_end_1d} :catchall_1e
10886 + goto :goto_f
10888 + :catchall_1e
10889 + move-exception v0
10891 + monitor-exit p0
10893 + throw v0
10894 +.end method
10896 +.method private declared-synchronized getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
10897 + .registers 4
10899 + monitor-enter p0
10901 + :try_start_1
10902 + new-instance v0, Ljava/io/File;
10904 + const-string v1, "/data/system/privacy.db"
10906 + invoke-direct {v0, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
10908 + invoke-virtual {v0}, Ljava/io/File;->exists()Z
10910 + move-result v0
10912 + if-nez v0, :cond_11
10914 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->createDatabase()V
10916 + :cond_11
10917 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10919 + if-eqz v0, :cond_29
10921 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10923 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
10925 + move-result v0
10927 + if-eqz v0, :cond_29
10929 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10931 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isReadOnly()Z
10933 + move-result v0
10935 + if-nez v0, :cond_29
10937 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10938 + :try_end_27
10939 + .catchall {:try_start_1 .. :try_end_27} :catchall_36
10941 + :goto_27
10942 + monitor-exit p0
10944 + return-object v0
10946 + :cond_29
10947 + :try_start_29
10948 + const-string v0, "/data/system/privacy.db"
10950 + const/4 v1, 0x0
10952 + const/4 v2, 0x0
10954 + invoke-static {v0, v1, v2}, Landroid/database/sqlite/SQLiteDatabase;->openDatabase(Ljava/lang/String;Landroid/database/sqlite/SQLiteDatabase$CursorFactory;I)Landroid/database/sqlite/SQLiteDatabase;
10956 + move-result-object v0
10958 + iput-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10960 + iget-object v0, p0, Landroid/privacy/PrivacyPersistenceAdapter;->db:Landroid/database/sqlite/SQLiteDatabase;
10961 + :try_end_35
10962 + .catchall {:try_start_29 .. :try_end_35} :catchall_36
10964 + goto :goto_27
10966 + :catchall_36
10967 + move-exception v0
10969 + monitor-exit p0
10971 + throw v0
10972 +.end method
10974 +.method private query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
10975 + .registers 16
10976 + .annotation system Ldalvik/annotation/Throws;
10977 + value = {
10978 + Ljava/lang/Exception;
10980 + .end annotation
10982 + const/4 v0, 0x0
10984 + const/4 v3, 0x0
10986 + const/4 v2, 0x0
10988 + :goto_3
10989 + if-nez v3, :cond_27
10991 + const/4 v4, 0x5
10993 + if-ge v2, v4, :cond_27
10995 + if-eqz v0, :cond_d
10997 + :try_start_a
10998 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
11000 + :cond_d
11001 + invoke-virtual/range {p1 .. p9}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
11002 + :try_end_10
11003 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_10} :catch_15
11005 + move-result-object v0
11007 + const/4 v3, 0x1
11009 + :goto_12
11010 + add-int/lit8 v2, v2, 0x1
11012 + goto :goto_3
11014 + :catch_15
11015 + move-exception v1
11017 + const/4 v3, 0x0
11019 + if-eqz p1, :cond_22
11021 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11023 + move-result v4
11025 + if-eqz v4, :cond_22
11027 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11029 + :cond_22
11030 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11032 + move-result-object p1
11034 + goto :goto_12
11036 + :cond_27
11037 + if-nez v3, :cond_32
11039 + new-instance v4, Ljava/lang/Exception;
11041 + const-string/jumbo v5, "query - failed to execute query on the DB"
11043 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11045 + throw v4
11047 + :cond_32
11048 + return-object v0
11049 +.end method
11051 +.method private rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
11052 + .registers 9
11053 + .annotation system Ldalvik/annotation/Throws;
11054 + value = {
11055 + Ljava/lang/Exception;
11057 + .end annotation
11059 + const/4 v0, 0x0
11061 + const/4 v3, 0x0
11063 + const/4 v2, 0x0
11065 + :goto_3
11066 + if-nez v3, :cond_28
11068 + const/4 v4, 0x5
11070 + if-ge v2, v4, :cond_28
11072 + if-eqz v0, :cond_d
11074 + :try_start_a
11075 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
11077 + :cond_d
11078 + const/4 v4, 0x0
11080 + invoke-virtual {p1, p2, v4}, Landroid/database/sqlite/SQLiteDatabase;->rawQuery(Ljava/lang/String;[Ljava/lang/String;)Landroid/database/Cursor;
11081 + :try_end_11
11082 + .catch Ljava/lang/IllegalStateException; {:try_start_a .. :try_end_11} :catch_16
11084 + move-result-object v0
11086 + const/4 v3, 0x1
11088 + :goto_13
11089 + add-int/lit8 v2, v2, 0x1
11091 + goto :goto_3
11093 + :catch_16
11094 + move-exception v1
11096 + const/4 v3, 0x0
11098 + if-eqz p1, :cond_23
11100 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11102 + move-result v4
11104 + if-eqz v4, :cond_23
11106 + invoke-virtual {p1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11108 + :cond_23
11109 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11111 + move-result-object p1
11113 + goto :goto_13
11115 + :cond_28
11116 + if-nez v3, :cond_33
11118 + new-instance v4, Ljava/lang/Exception;
11120 + const-string/jumbo v5, "query - failed to execute query on the DB"
11122 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
11124 + throw v4
11126 + :cond_33
11127 + return-object v0
11128 +.end method
11130 +.method private declared-synchronized upgradeDatabase(I)V
11131 + .registers 23
11133 + monitor-enter p0
11135 + :try_start_1
11136 + const-string v17, "PrivacyPersistenceAdapter"
11138 + new-instance v18, Ljava/lang/StringBuilder;
11140 + invoke-direct/range {v18 .. v18}, Ljava/lang/StringBuilder;-><init>()V
11142 + const-string/jumbo v19, "upgradeDatabase - upgrading DB from version "
11144 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11146 + move-result-object v18
11148 + move-object/from16 v0, v18
11150 + move/from16 v1, p1
11152 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11154 + move-result-object v18
11156 + const-string v19, " to "
11158 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11160 + move-result-object v18
11162 + const/16 v19, 0x4
11164 + invoke-virtual/range {v18 .. v19}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11166 + move-result-object v18
11168 + invoke-virtual/range {v18 .. v18}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11170 + move-result-object v18
11172 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
11174 + new-instance v6, Ljava/io/File;
11176 + const-string v17, "/data/system/privacy.db"
11178 + move-object/from16 v0, v17
11180 + invoke-direct {v6, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11182 + new-instance v5, Ljava/io/File;
11184 + const-string v17, "/data/system/privacy.db.bak"
11186 + move-object/from16 v0, v17
11188 + invoke-direct {v5, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11189 + :try_end_3c
11190 + .catchall {:try_start_1 .. :try_end_3c} :catchall_66
11192 + :try_start_3c
11193 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
11194 + :try_end_3f
11195 + .catchall {:try_start_3c .. :try_end_3f} :catchall_66
11196 + .catch Ljava/lang/SecurityException; {:try_start_3c .. :try_end_3f} :catch_5c
11198 + :goto_3f
11199 + :try_start_3f
11200 + invoke-static {v6, v5}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
11202 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
11204 + move-result-wide v17
11206 + invoke-virtual {v5}, Ljava/io/File;->lastModified()J
11208 + move-result-wide v19
11210 + sub-long v17, v17, v19
11212 + const-wide/16 v19, 0x7d0
11214 + cmp-long v17, v17, v19
11216 + if-lez v17, :cond_69
11218 + const-string v17, "PrivacyPersistenceAdapter"
11220 + const-string/jumbo v18, "upgradeDatabase - could not create a database backup, aborting..."
11222 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11223 + :try_end_5a
11224 + .catchall {:try_start_3f .. :try_end_5a} :catchall_66
11226 + :goto_5a
11227 + monitor-exit p0
11229 + return-void
11231 + :catch_5c
11232 + move-exception v7
11234 + :try_start_5d
11235 + const-string v17, "PrivacyPersistenceAdapter"
11237 + const-string/jumbo v18, "upgradeDatabase - could not remove old backup"
11239 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
11240 + :try_end_65
11241 + .catchall {:try_start_5d .. :try_end_65} :catchall_66
11243 + goto :goto_3f
11245 + :catchall_66
11246 + move-exception v17
11248 + monitor-exit p0
11250 + throw v17
11252 + :cond_69
11253 + :try_start_69
11254 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11256 + move-result-object v4
11258 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
11260 + packed-switch p1, :pswitch_data_164
11262 + :cond_73
11263 + :goto_73
11264 + if-eqz v4, :cond_159
11266 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11268 + move-result v17
11270 + if-eqz v17, :cond_159
11272 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11274 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11276 + :goto_81
11277 + invoke-virtual/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
11278 + :try_end_84
11279 + .catchall {:try_start_69 .. :try_end_84} :catchall_66
11281 + goto :goto_5a
11283 + :pswitch_85
11284 + if-eqz v4, :cond_73
11286 + :try_start_87
11287 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11289 + move-result v17
11291 + if-eqz v17, :cond_73
11293 + const-string v17, "DROP TABLE IF EXISTS version;"
11295 + move-object/from16 v0, v17
11297 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11299 + const-string v17, "CREATE TABLE IF NOT EXISTS allowed_contacts ( settings_id, contact_id, PRIMARY KEY(settings_id, contact_id) );"
11301 + move-object/from16 v0, v17
11303 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11305 + const-string v17, "CREATE TABLE IF NOT EXISTS map ( name TEXT PRIMARY KEY, value TEXT );"
11307 + move-object/from16 v0, v17
11309 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11311 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"db_version\", 4);"
11313 + move-object/from16 v0, v17
11315 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11317 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"enabled\", \"1\");"
11319 + move-object/from16 v0, v17
11321 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11323 + const-string v17, "INSERT OR REPLACE INTO map (name, value) VALUES (\"notifications_enabled\", \"1\");"
11325 + move-object/from16 v0, v17
11327 + invoke-virtual {v4, v0}, Landroid/database/sqlite/SQLiteDatabase;->execSQL(Ljava/lang/String;)V
11329 + new-instance v14, Ljava/io/File;
11331 + const-string v17, "/data/system/privacy"
11333 + move-object/from16 v0, v17
11335 + invoke-direct {v14, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11337 + invoke-virtual {v14}, Ljava/io/File;->listFiles()[Ljava/io/File;
11339 + move-result-object v2
11341 + array-length v10, v2
11343 + const/4 v8, 0x0
11345 + move v9, v8
11347 + :goto_c7
11348 + if-ge v9, v10, :cond_127
11350 + aget-object v13, v2, v9
11352 + invoke-virtual {v13}, Ljava/io/File;->listFiles()[Ljava/io/File;
11354 + move-result-object v3
11356 + array-length v11, v3
11358 + const/4 v8, 0x0
11360 + :goto_d1
11361 + if-ge v8, v11, :cond_123
11363 + aget-object v16, v3, v8
11365 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->isDirectory()Z
11367 + move-result v17
11369 + if-eqz v17, :cond_120
11371 + invoke-virtual/range {v16 .. v16}, Ljava/io/File;->listFiles()[Ljava/io/File;
11373 + move-result-object v15
11375 + const/16 v17, 0x0
11377 + aget-object v17, v15, v17
11379 + if-eqz v17, :cond_120
11381 + new-instance v12, Ljava/io/File;
11383 + new-instance v17, Ljava/lang/StringBuilder;
11385 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
11387 + move-object/from16 v0, v17
11389 + invoke-virtual {v0, v13}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
11391 + move-result-object v17
11393 + const-string v18, "/"
11395 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11397 + move-result-object v17
11399 + const/16 v18, 0x0
11401 + aget-object v18, v15, v18
11403 + invoke-virtual/range {v18 .. v18}, Ljava/io/File;->getName()Ljava/lang/String;
11405 + move-result-object v18
11407 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11409 + move-result-object v17
11411 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11413 + move-result-object v17
11415 + move-object/from16 v0, v17
11417 + invoke-direct {v12, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11419 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
11421 + const/16 v17, 0x0
11423 + aget-object v17, v15, v17
11425 + move-object/from16 v0, v17
11427 + invoke-virtual {v0, v12}, Ljava/io/File;->renameTo(Ljava/io/File;)Z
11429 + move-object/from16 v0, p0
11431 + move-object/from16 v1, v16
11433 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
11435 + :cond_120
11436 + add-int/lit8 v8, v8, 0x1
11438 + goto :goto_d1
11440 + :cond_123
11441 + add-int/lit8 v8, v9, 0x1
11443 + move v9, v8
11445 + goto :goto_c7
11447 + :cond_127
11448 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11449 + :try_end_12a
11450 + .catchall {:try_start_87 .. :try_end_12a} :catchall_66
11451 + .catch Ljava/lang/Exception; {:try_start_87 .. :try_end_12a} :catch_12c
11453 + goto/16 :goto_73
11455 + :catch_12c
11456 + move-exception v7
11458 + if-eqz v4, :cond_13b
11460 + :try_start_12f
11461 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11463 + move-result v17
11465 + if-eqz v17, :cond_13b
11467 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11469 + invoke-virtual {v4}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11471 + :cond_13b
11472 + const-string v17, "PrivacyPersistenceAdapter"
11474 + const-string/jumbo v18, "upgradeDatabase - could not upgrade DB; will restore backup"
11476 + move-object/from16 v0, v17
11478 + move-object/from16 v1, v18
11480 + invoke-static {v0, v1, v7}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11482 + invoke-static {v5, v6}, Landroid/os/FileUtils;->copyFile(Ljava/io/File;Ljava/io/File;)Z
11484 + invoke-virtual {v5}, Ljava/io/File;->delete()Z
11486 + goto/16 :goto_73
11488 + :pswitch_14f
11489 + const-string v17, "PrivacyPersistenceAdapter"
11491 + const-string/jumbo v18, "upgradeDatabase - trying to upgrade most current DB version"
11493 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
11495 + goto/16 :goto_73
11497 + :cond_159
11498 + const-string v17, "PrivacyPersistenceAdapter"
11500 + const-string/jumbo v18, "upgradeDatabase - database is null or closed; cant call endTransaction()"
11502 + invoke-static/range {v17 .. v18}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11503 + :try_end_161
11504 + .catchall {:try_start_12f .. :try_end_161} :catchall_66
11506 + goto/16 :goto_81
11508 + nop
11510 + :pswitch_data_164
11511 + .packed-switch 0x1
11512 + :pswitch_85
11513 + :pswitch_85
11514 + :pswitch_85
11515 + :pswitch_14f
11516 + .end packed-switch
11517 +.end method
11519 +.method private writeExternalSettings(Ljava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)Z
11520 + .registers 11
11521 + .annotation system Ldalvik/annotation/Throws;
11522 + value = {
11523 + Ljava/lang/Exception;
11525 + .end annotation
11527 + const/4 v6, 0x1
11529 + new-instance v1, Ljava/io/File;
11531 + new-instance v4, Ljava/lang/StringBuilder;
11533 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11535 + const-string v5, "/data/system/privacy/"
11537 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11539 + move-result-object v4
11541 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11543 + move-result-object v4
11545 + const-string v5, "/"
11547 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11549 + move-result-object v4
11551 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11553 + move-result-object v4
11555 + invoke-direct {v1, v4}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11557 + new-instance v2, Ljava/io/File;
11559 + new-instance v4, Ljava/lang/StringBuilder;
11561 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11563 + const-string v5, "/data/system/privacy/"
11565 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11567 + move-result-object v4
11569 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11571 + move-result-object v4
11573 + const-string v5, "/"
11575 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11577 + move-result-object v4
11579 + const-string v5, "/"
11581 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11583 + move-result-object v4
11585 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11587 + move-result-object v4
11589 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11591 + move-result-object v4
11593 + invoke-direct {v2, v4}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11595 + :try_start_47
11596 + invoke-virtual {v1}, Ljava/io/File;->mkdirs()Z
11598 + const/4 v4, 0x1
11600 + const/4 v5, 0x0
11602 + invoke-virtual {v1, v4, v5}, Ljava/io/File;->setReadable(ZZ)Z
11604 + const/4 v4, 0x1
11606 + const/4 v5, 0x0
11608 + invoke-virtual {v1, v4, v5}, Ljava/io/File;->setExecutable(ZZ)Z
11610 + invoke-virtual {v2}, Ljava/io/File;->createNewFile()Z
11612 + const/4 v4, 0x1
11614 + const/4 v5, 0x0
11616 + invoke-virtual {v2, v4, v5}, Ljava/io/File;->setReadable(ZZ)Z
11618 + new-instance v3, Ljava/io/OutputStreamWriter;
11620 + new-instance v4, Ljava/io/FileOutputStream;
11622 + invoke-direct {v4, v2}, Ljava/io/FileOutputStream;-><init>(Ljava/io/File;)V
11624 + invoke-direct {v3, v4}, Ljava/io/OutputStreamWriter;-><init>(Ljava/io/OutputStream;)V
11626 + const-string/jumbo v4, "systemLogsSetting"
11628 + invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11630 + move-result v4
11632 + if-eqz v4, :cond_90
11634 + new-instance v4, Ljava/lang/StringBuilder;
11636 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11638 + invoke-virtual {p3}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
11640 + move-result v5
11642 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11644 + move-result-object v4
11646 + const-string v5, ""
11648 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11650 + move-result-object v4
11652 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11654 + move-result-object v4
11656 + invoke-virtual {v3, v4}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
11658 + :cond_89
11659 + :goto_89
11660 + invoke-virtual {v3}, Ljava/io/OutputStreamWriter;->flush()V
11662 + invoke-virtual {v3}, Ljava/io/OutputStreamWriter;->close()V
11664 + return v6
11666 + :cond_90
11667 + const-string v4, "ipTableProtectSetting"
11669 + invoke-virtual {p1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
11671 + move-result v4
11673 + if-eqz v4, :cond_89
11675 + new-instance v4, Ljava/lang/StringBuilder;
11677 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
11679 + invoke-virtual {p3}, Landroid/privacy/PrivacySettings;->getIpTableProtectSetting()B
11681 + move-result v5
11683 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
11685 + move-result-object v4
11687 + const-string v5, ""
11689 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11691 + move-result-object v4
11693 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11695 + move-result-object v4
11697 + invoke-virtual {v3, v4}, Ljava/io/OutputStreamWriter;->append(Ljava/lang/CharSequence;)Ljava/io/Writer;
11698 + :try_end_b2
11699 + .catch Ljava/io/IOException; {:try_start_47 .. :try_end_b2} :catch_b3
11701 + goto :goto_89
11703 + :catch_b3
11704 + move-exception v0
11706 + new-instance v4, Ljava/lang/Exception;
11708 + const-string/jumbo v5, "saveSettings - could not write settings to file"
11710 + invoke-direct {v4, v5, v0}, Ljava/lang/Exception;-><init>(Ljava/lang/String;Ljava/lang/Throwable;)V
11712 + throw v4
11713 +.end method
11716 +# virtual methods
11717 +.method public declared-synchronized deleteSettings(Ljava/lang/String;)Z
11718 + .registers 16
11720 + monitor-enter p0
11722 + const/4 v11, 0x1
11724 + :try_start_2
11725 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
11727 + move-result-object v0
11729 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
11730 + :try_end_9
11731 + .catchall {:try_start_2 .. :try_end_9} :catchall_107
11733 + :try_start_9
11734 + const-string/jumbo v1, "settings"
11736 + const/4 v2, 0x1
11738 + new-array v2, v2, [Ljava/lang/String;
11740 + const/4 v3, 0x0
11742 + const-string v4, "_id"
11744 + aput-object v4, v2, v3
11746 + const-string/jumbo v3, "packageName=?"
11748 + const/4 v4, 0x1
11750 + new-array v4, v4, [Ljava/lang/String;
11752 + const/4 v5, 0x0
11754 + aput-object p1, v4, v5
11756 + const/4 v5, 0x0
11758 + const/4 v6, 0x0
11760 + const/4 v7, 0x0
11762 + invoke-virtual/range {v0 .. v7}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
11764 + move-result-object v8
11766 + if-eqz v8, :cond_4c
11768 + invoke-interface {v8}, Landroid/database/Cursor;->getCount()I
11770 + move-result v1
11772 + if-lez v1, :cond_4c
11774 + invoke-interface {v8}, Landroid/database/Cursor;->moveToFirst()Z
11776 + move-result v1
11778 + if-eqz v1, :cond_4c
11780 + const/4 v1, 0x0
11782 + invoke-interface {v8, v1}, Landroid/database/Cursor;->getInt(I)I
11784 + move-result v10
11786 + const-string v1, "allowed_contacts"
11788 + const-string/jumbo v2, "settings_id=?"
11790 + const/4 v3, 0x1
11792 + new-array v3, v3, [Ljava/lang/String;
11794 + const/4 v4, 0x0
11796 + invoke-static {v10}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
11798 + move-result-object v5
11800 + aput-object v5, v3, v4
11802 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
11804 + invoke-interface {v8}, Landroid/database/Cursor;->close()V
11806 + :cond_4c
11807 + const-string/jumbo v1, "settings"
11809 + const-string/jumbo v2, "packageName=?"
11811 + const/4 v3, 0x1
11813 + new-array v3, v3, [Ljava/lang/String;
11815 + const/4 v4, 0x0
11817 + aput-object p1, v3, v4
11819 + invoke-virtual {v0, v1, v2, v3}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
11821 + move-result v1
11823 + if-nez v1, :cond_8d
11825 + const-string v1, "PrivacyPersistenceAdapter"
11827 + new-instance v2, Ljava/lang/StringBuilder;
11829 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
11831 + const-string v3, "deleteSettings - database entry for "
11833 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11835 + move-result-object v2
11837 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11839 + move-result-object v2
11841 + const-string v3, " not found"
11843 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11845 + move-result-object v2
11847 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11849 + move-result-object v2
11851 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
11852 + :try_end_7c
11853 + .catchall {:try_start_9 .. :try_end_7c} :catchall_10a
11854 + .catch Ljava/lang/Exception; {:try_start_9 .. :try_end_7c} :catch_ef
11856 + const/4 v1, 0x0
11858 + :try_start_7d
11859 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11861 + if-eqz v0, :cond_8b
11863 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11865 + move-result v2
11867 + if-eqz v2, :cond_8b
11869 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11870 + :try_end_8b
11871 + .catchall {:try_start_7d .. :try_end_8b} :catchall_107
11873 + :cond_8b
11874 + :goto_8b
11875 + monitor-exit p0
11877 + return v1
11879 + :cond_8d
11880 + :try_start_8d
11881 + new-instance v12, Ljava/io/File;
11883 + new-instance v1, Ljava/lang/StringBuilder;
11885 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11887 + const-string v2, "/data/system/privacy/"
11889 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11891 + move-result-object v1
11893 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11895 + move-result-object v1
11897 + const-string v2, "/"
11899 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11901 + move-result-object v1
11903 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11905 + move-result-object v1
11907 + invoke-direct {v12, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11909 + new-instance v13, Ljava/io/File;
11911 + new-instance v1, Ljava/lang/StringBuilder;
11913 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
11915 + const-string v2, "/data/system/privacy/"
11917 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11919 + move-result-object v1
11921 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11923 + move-result-object v1
11925 + const-string v2, "/systemLogsSetting"
11927 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
11929 + move-result-object v1
11931 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
11933 + move-result-object v1
11935 + invoke-direct {v13, v1}, Ljava/io/File;-><init>(Ljava/lang/String;)V
11937 + invoke-virtual {v13}, Ljava/io/File;->delete()Z
11939 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
11941 + move-result-object v1
11943 + if-eqz v1, :cond_d9
11945 + invoke-virtual {v12}, Ljava/io/File;->list()[Ljava/lang/String;
11947 + move-result-object v1
11949 + array-length v1, v1
11951 + if-nez v1, :cond_dc
11953 + :cond_d9
11954 + invoke-virtual {v12}, Ljava/io/File;->delete()Z
11956 + :cond_dc
11957 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
11958 + :try_end_df
11959 + .catchall {:try_start_8d .. :try_end_df} :catchall_10a
11960 + .catch Ljava/lang/Exception; {:try_start_8d .. :try_end_df} :catch_ef
11962 + :try_start_df
11963 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
11965 + if-eqz v0, :cond_ed
11967 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
11969 + move-result v1
11971 + if-eqz v1, :cond_ed
11973 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
11974 + :try_end_ed
11975 + .catchall {:try_start_df .. :try_end_ed} :catchall_107
11977 + :cond_ed
11978 + :goto_ed
11979 + move v1, v11
11981 + goto :goto_8b
11983 + :catch_ef
11984 + move-exception v9
11986 + const/4 v11, 0x0
11988 + :try_start_f1
11989 + const-string v1, "PrivacyPersistenceAdapter"
11991 + const-string v2, "deleteSettings - could not delete settings"
11993 + invoke-static {v1, v2, v9}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
11994 + :try_end_f8
11995 + .catchall {:try_start_f1 .. :try_end_f8} :catchall_10a
11997 + :try_start_f8
11998 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
12000 + if-eqz v0, :cond_ed
12002 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
12004 + move-result v1
12006 + if-eqz v1, :cond_ed
12008 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
12009 + :try_end_106
12010 + .catchall {:try_start_f8 .. :try_end_106} :catchall_107
12012 + goto :goto_ed
12014 + :catchall_107
12015 + move-exception v1
12017 + monitor-exit p0
12019 + throw v1
12021 + :catchall_10a
12022 + move-exception v1
12024 + :try_start_10b
12025 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
12027 + if-eqz v0, :cond_119
12029 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
12031 + move-result v2
12033 + if-eqz v2, :cond_119
12035 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
12037 + :cond_119
12038 + throw v1
12039 + :try_end_11a
12040 + .catchall {:try_start_10b .. :try_end_11a} :catchall_107
12041 +.end method
12043 +.method public declared-synchronized getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
12044 + .registers 59
12046 + monitor-enter p0
12048 + const/16 v55, 0x0
12050 + if-nez p1, :cond_10
12052 + :try_start_5
12053 + const-string v1, "PrivacyPersistenceAdapter"
12055 + const-string v4, "getSettings - insufficient application identifier - package name is required"
12057 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
12058 + :try_end_c
12059 + .catchall {:try_start_5 .. :try_end_c} :catchall_359
12061 + move-object/from16 v3, v55
12063 + :goto_e
12064 + monitor-exit p0
12066 + return-object v55
12068 + :cond_10
12069 + :try_start_10
12070 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12072 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12074 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12076 + move-result v1
12078 + add-int/lit8 v1, v1, 0x1
12080 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12082 + move-result-object v1
12084 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12085 + :try_end_20
12086 + .catchall {:try_start_10 .. :try_end_20} :catchall_359
12088 + :try_start_20
12089 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
12090 + :try_end_23
12091 + .catchall {:try_start_20 .. :try_end_23} :catchall_359
12092 + .catch Landroid/database/sqlite/SQLiteException; {:try_start_20 .. :try_end_23} :catch_2c6
12094 + move-result-object v2
12096 + const/16 v53, 0x0
12098 + :try_start_26
12099 + const-string/jumbo v3, "settings"
12101 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->DATABASE_FIELDS:[Ljava/lang/String;
12103 + const-string/jumbo v5, "packageName=?"
12105 + const/4 v1, 0x1
12107 + new-array v6, v1, [Ljava/lang/String;
12109 + const/4 v1, 0x0
12111 + aput-object p1, v6, v1
12113 + const/4 v7, 0x0
12115 + const/4 v8, 0x0
12117 + const/4 v9, 0x0
12119 + const/4 v10, 0x0
12121 + move-object/from16 v1, p0
12123 + invoke-direct/range {v1 .. v10}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
12125 + move-result-object v53
12127 + if-eqz v53, :cond_35d
12129 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->moveToFirst()Z
12131 + move-result v1
12133 + if-eqz v1, :cond_35d
12135 + new-instance v3, Landroid/privacy/PrivacySettings;
12137 + const/4 v1, 0x0
12139 + move-object/from16 v0, v53
12141 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
12143 + move-result v1
12145 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12147 + move-result-object v4
12149 + const/4 v1, 0x1
12151 + move-object/from16 v0, v53
12153 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12155 + move-result-object v5
12157 + const/4 v1, 0x2
12159 + move-object/from16 v0, v53
12161 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getInt(I)I
12163 + move-result v6
12165 + const/4 v1, 0x3
12167 + move-object/from16 v0, v53
12169 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12171 + move-result v1
12173 + int-to-byte v7, v1
12175 + const/4 v1, 0x4
12177 + move-object/from16 v0, v53
12179 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12181 + move-result-object v8
12183 + const/4 v1, 0x5
12185 + move-object/from16 v0, v53
12187 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12189 + move-result v1
12191 + int-to-byte v9, v1
12193 + const/4 v1, 0x6
12195 + move-object/from16 v0, v53
12197 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12199 + move-result-object v10
12201 + const/4 v1, 0x7
12203 + move-object/from16 v0, v53
12205 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12207 + move-result v1
12209 + int-to-byte v11, v1
12211 + const/16 v1, 0x8
12213 + move-object/from16 v0, v53
12215 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12217 + move-result-object v12
12219 + const/16 v1, 0x9
12221 + move-object/from16 v0, v53
12223 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12225 + move-result-object v13
12227 + const/16 v1, 0xa
12229 + move-object/from16 v0, v53
12231 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12233 + move-result v1
12235 + int-to-byte v14, v1
12237 + const/16 v1, 0xb
12239 + move-object/from16 v0, v53
12241 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12243 + move-result-object v15
12245 + const/16 v1, 0xc
12247 + move-object/from16 v0, v53
12249 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12251 + move-result-object v16
12253 + const/16 v1, 0xd
12255 + move-object/from16 v0, v53
12257 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12259 + move-result v1
12261 + int-to-byte v0, v1
12263 + move/from16 v17, v0
12265 + const/16 v1, 0xe
12267 + move-object/from16 v0, v53
12269 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12271 + move-result v1
12273 + int-to-byte v0, v1
12275 + move/from16 v18, v0
12277 + const/16 v1, 0xf
12279 + move-object/from16 v0, v53
12281 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12283 + move-result v1
12285 + int-to-byte v0, v1
12287 + move/from16 v19, v0
12289 + const/16 v1, 0x10
12291 + move-object/from16 v0, v53
12293 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12295 + move-result-object v20
12297 + const/16 v1, 0x11
12299 + move-object/from16 v0, v53
12301 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12303 + move-result v1
12305 + int-to-byte v0, v1
12307 + move/from16 v21, v0
12309 + const/16 v1, 0x12
12311 + move-object/from16 v0, v53
12313 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12315 + move-result-object v22
12317 + const/16 v1, 0x13
12319 + move-object/from16 v0, v53
12321 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12323 + move-result v1
12325 + int-to-byte v0, v1
12327 + move/from16 v23, v0
12329 + const/16 v1, 0x14
12331 + move-object/from16 v0, v53
12333 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12335 + move-result v1
12337 + int-to-byte v0, v1
12339 + move/from16 v24, v0
12341 + const/16 v1, 0x15
12343 + move-object/from16 v0, v53
12345 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12347 + move-result v1
12349 + int-to-byte v0, v1
12351 + move/from16 v25, v0
12353 + const/16 v1, 0x16
12355 + move-object/from16 v0, v53
12357 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12359 + move-result v1
12361 + int-to-byte v0, v1
12363 + move/from16 v26, v0
12365 + const/16 v1, 0x17
12367 + move-object/from16 v0, v53
12369 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12371 + move-result v1
12373 + int-to-byte v0, v1
12375 + move/from16 v27, v0
12377 + const/16 v1, 0x18
12379 + move-object/from16 v0, v53
12381 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12383 + move-result v1
12385 + int-to-byte v0, v1
12387 + move/from16 v28, v0
12389 + const/16 v1, 0x19
12391 + move-object/from16 v0, v53
12393 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12395 + move-result v1
12397 + int-to-byte v0, v1
12399 + move/from16 v29, v0
12401 + const/16 v1, 0x1a
12403 + move-object/from16 v0, v53
12405 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12407 + move-result v1
12409 + int-to-byte v0, v1
12411 + move/from16 v30, v0
12413 + const/16 v1, 0x1b
12415 + move-object/from16 v0, v53
12417 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12419 + move-result v1
12421 + int-to-byte v0, v1
12423 + move/from16 v31, v0
12425 + const/16 v1, 0x1c
12427 + move-object/from16 v0, v53
12429 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12431 + move-result v1
12433 + int-to-byte v0, v1
12435 + move/from16 v32, v0
12437 + const/16 v1, 0x1d
12439 + move-object/from16 v0, v53
12441 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12443 + move-result v1
12445 + int-to-byte v0, v1
12447 + move/from16 v33, v0
12449 + const/16 v1, 0x1e
12451 + move-object/from16 v0, v53
12453 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12455 + move-result v1
12457 + int-to-byte v0, v1
12459 + move/from16 v34, v0
12461 + const/16 v1, 0x1f
12463 + move-object/from16 v0, v53
12465 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12467 + move-result v1
12469 + int-to-byte v0, v1
12471 + move/from16 v35, v0
12473 + const/16 v1, 0x20
12475 + move-object/from16 v0, v53
12477 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12479 + move-result v1
12481 + int-to-byte v0, v1
12483 + move/from16 v36, v0
12485 + const/16 v1, 0x21
12487 + move-object/from16 v0, v53
12489 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12491 + move-result v1
12493 + int-to-byte v0, v1
12495 + move/from16 v37, v0
12497 + const/16 v1, 0x22
12499 + move-object/from16 v0, v53
12501 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12503 + move-result v1
12505 + int-to-byte v0, v1
12507 + move/from16 v38, v0
12509 + const/16 v39, 0x0
12511 + const/16 v1, 0x23
12513 + move-object/from16 v0, v53
12515 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12517 + move-result v1
12519 + int-to-byte v0, v1
12521 + move/from16 v40, v0
12523 + const/16 v1, 0x24
12525 + move-object/from16 v0, v53
12527 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12529 + move-result v1
12531 + int-to-byte v0, v1
12533 + move/from16 v41, v0
12535 + const/16 v1, 0x25
12537 + move-object/from16 v0, v53
12539 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12541 + move-result v1
12543 + int-to-byte v0, v1
12545 + move/from16 v42, v0
12547 + const/16 v1, 0x26
12549 + move-object/from16 v0, v53
12551 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12553 + move-result v1
12555 + int-to-byte v0, v1
12557 + move/from16 v43, v0
12559 + const/16 v1, 0x27
12561 + move-object/from16 v0, v53
12563 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12565 + move-result v1
12567 + int-to-byte v0, v1
12569 + move/from16 v44, v0
12571 + const/16 v1, 0x28
12573 + move-object/from16 v0, v53
12575 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12577 + move-result v1
12579 + int-to-byte v0, v1
12581 + move/from16 v45, v0
12583 + const/16 v1, 0x29
12585 + move-object/from16 v0, v53
12587 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
12589 + move-result-object v46
12591 + const/16 v1, 0x2a
12593 + move-object/from16 v0, v53
12595 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12597 + move-result v1
12599 + int-to-byte v0, v1
12601 + move/from16 v47, v0
12603 + const/16 v1, 0x2b
12605 + move-object/from16 v0, v53
12607 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12609 + move-result v1
12611 + int-to-byte v0, v1
12613 + move/from16 v48, v0
12615 + const/16 v1, 0x2c
12617 + move-object/from16 v0, v53
12619 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12621 + move-result v1
12623 + int-to-byte v0, v1
12625 + move/from16 v49, v0
12627 + const/16 v1, 0x2d
12629 + move-object/from16 v0, v53
12631 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12633 + move-result v1
12635 + int-to-byte v0, v1
12637 + move/from16 v50, v0
12639 + const/16 v1, 0x2e
12641 + move-object/from16 v0, v53
12643 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getShort(I)S
12645 + move-result v1
12647 + int-to-byte v0, v1
12649 + move/from16 v51, v0
12651 + invoke-direct/range {v3 .. v51}, Landroid/privacy/PrivacySettings;-><init>(Ljava/lang/Integer;Ljava/lang/String;IBLjava/lang/String;BLjava/lang/String;BLjava/lang/String;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;BBBLjava/lang/String;BLjava/lang/String;BBBBBBBBBBBBBBBB[IBBBBBBLjava/lang/String;BBBBB)V
12652 + :try_end_222
12653 + .catchall {:try_start_26 .. :try_end_222} :catchall_31c
12654 + .catch Ljava/lang/Exception; {:try_start_26 .. :try_end_222} :catch_354
12656 + :try_start_222
12657 + new-instance v1, Ljava/lang/StringBuilder;
12659 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
12661 + const-string v4, "SELECT * FROM allowed_contacts WHERE settings_id="
12663 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12665 + move-result-object v1
12667 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
12669 + move-result-object v4
12671 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
12673 + move-result v4
12675 + invoke-static {v4}, Ljava/lang/Integer;->toString(I)Ljava/lang/String;
12677 + move-result-object v4
12679 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12681 + move-result-object v1
12683 + const-string v4, ";"
12685 + invoke-virtual {v1, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12687 + move-result-object v1
12689 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12691 + move-result-object v1
12693 + move-object/from16 v0, p0
12695 + invoke-direct {v0, v2, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->rawQuery(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;)Landroid/database/Cursor;
12697 + move-result-object v53
12699 + if-eqz v53, :cond_2e9
12701 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->getCount()I
12703 + move-result v1
12705 + if-lez v1, :cond_2e9
12707 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->getCount()I
12709 + move-result v1
12711 + new-array v0, v1, [I
12713 + move-object/from16 v52, v0
12715 + :goto_25d
12716 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->moveToNext()Z
12718 + move-result v1
12720 + if-eqz v1, :cond_2e4
12722 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->getPosition()I
12724 + move-result v1
12726 + const/4 v4, 0x1
12728 + move-object/from16 v0, v53
12730 + invoke-interface {v0, v4}, Landroid/database/Cursor;->getInt(I)I
12732 + move-result v4
12734 + aput v4, v52, v1
12735 + :try_end_270
12736 + .catchall {:try_start_222 .. :try_end_270} :catchall_352
12737 + .catch Ljava/lang/Exception; {:try_start_222 .. :try_end_270} :catch_271
12739 + goto :goto_25d
12741 + :catch_271
12742 + move-exception v54
12744 + :goto_272
12745 + :try_start_272
12746 + const-string v1, "PrivacyPersistenceAdapter"
12748 + new-instance v4, Ljava/lang/StringBuilder;
12750 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
12752 + const-string v5, "getSettings - failed to get settings for package: "
12754 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12756 + move-result-object v4
12758 + move-object/from16 v0, p1
12760 + invoke-virtual {v4, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
12762 + move-result-object v4
12764 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
12766 + move-result-object v4
12768 + move-object/from16 v0, v54
12770 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12772 + invoke-virtual/range {v54 .. v54}, Ljava/lang/Exception;->printStackTrace()V
12774 + if-eqz v53, :cond_296
12776 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->close()V
12777 + :try_end_296
12778 + .catchall {:try_start_272 .. :try_end_296} :catchall_352
12780 + :cond_296
12781 + if-eqz v53, :cond_29b
12783 + :try_start_298
12784 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->close()V
12786 + :cond_29b
12787 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12789 + monitor-enter v4
12790 + :try_end_29e
12791 + .catchall {:try_start_298 .. :try_end_29e} :catchall_319
12793 + :try_start_29e
12794 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12796 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12798 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12800 + move-result v1
12802 + add-int/lit8 v1, v1, -0x1
12804 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12806 + move-result-object v1
12808 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12810 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12812 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12814 + move-result v1
12816 + if-nez v1, :cond_2c1
12818 + if-eqz v2, :cond_2c1
12820 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
12822 + move-result v1
12824 + if-eqz v1, :cond_2c1
12826 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
12828 + :cond_2c1
12829 + monitor-exit v4
12830 + :try_end_2c2
12831 + .catchall {:try_start_29e .. :try_end_2c2} :catchall_34f
12833 + :goto_2c2
12834 + move-object/from16 v55, v3
12836 + goto/16 :goto_e
12838 + :catch_2c6
12839 + move-exception v54
12841 + :try_start_2c7
12842 + const-string v1, "PrivacyPersistenceAdapter"
12844 + const-string v4, "getSettings - database could not be opened"
12846 + move-object/from16 v0, v54
12848 + invoke-static {v1, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
12850 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12852 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12854 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12856 + move-result v1
12858 + add-int/lit8 v1, v1, -0x1
12860 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12862 + move-result-object v1
12864 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12865 + :try_end_2e0
12866 + .catchall {:try_start_2c7 .. :try_end_2e0} :catchall_359
12868 + move-object/from16 v3, v55
12870 + goto/16 :goto_e
12872 + :cond_2e4
12873 + :try_start_2e4
12874 + move-object/from16 v0, v52
12876 + invoke-virtual {v3, v0}, Landroid/privacy/PrivacySettings;->setAllowedContacts([I)V
12877 + :try_end_2e9
12878 + .catchall {:try_start_2e4 .. :try_end_2e9} :catchall_352
12879 + .catch Ljava/lang/Exception; {:try_start_2e4 .. :try_end_2e9} :catch_271
12881 + :cond_2e9
12882 + :goto_2e9
12883 + if-eqz v53, :cond_2ee
12885 + :try_start_2eb
12886 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->close()V
12888 + :cond_2ee
12889 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12891 + monitor-enter v4
12892 + :try_end_2f1
12893 + .catchall {:try_start_2eb .. :try_end_2f1} :catchall_319
12895 + :try_start_2f1
12896 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12898 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12900 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12902 + move-result v1
12904 + add-int/lit8 v1, v1, -0x1
12906 + invoke-static {v1}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12908 + move-result-object v1
12910 + sput-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12912 + sget-object v1, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12914 + invoke-virtual {v1}, Ljava/lang/Integer;->intValue()I
12916 + move-result v1
12918 + if-nez v1, :cond_314
12920 + if-eqz v2, :cond_314
12922 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
12924 + move-result v1
12926 + if-eqz v1, :cond_314
12928 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
12930 + :cond_314
12931 + monitor-exit v4
12933 + goto :goto_2c2
12935 + :catchall_316
12936 + move-exception v1
12938 + monitor-exit v4
12939 + :try_end_318
12940 + .catchall {:try_start_2f1 .. :try_end_318} :catchall_316
12942 + :try_start_318
12943 + throw v1
12944 + :try_end_319
12945 + .catchall {:try_start_318 .. :try_end_319} :catchall_319
12947 + :catchall_319
12948 + move-exception v1
12950 + :goto_31a
12951 + monitor-exit p0
12953 + throw v1
12955 + :catchall_31c
12956 + move-exception v1
12958 + move-object/from16 v3, v55
12960 + :goto_31f
12961 + if-eqz v53, :cond_324
12963 + :try_start_321
12964 + invoke-interface/range {v53 .. v53}, Landroid/database/Cursor;->close()V
12966 + :cond_324
12967 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12969 + monitor-enter v4
12970 + :try_end_327
12971 + .catchall {:try_start_321 .. :try_end_327} :catchall_319
12973 + :try_start_327
12974 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12976 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12978 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
12980 + move-result v5
12982 + add-int/lit8 v5, v5, -0x1
12984 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
12986 + move-result-object v5
12988 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12990 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
12992 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
12994 + move-result v5
12996 + if-nez v5, :cond_34a
12998 + if-eqz v2, :cond_34a
13000 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
13002 + move-result v5
13004 + if-eqz v5, :cond_34a
13006 + invoke-virtual {v2}, Landroid/database/sqlite/SQLiteDatabase;->close()V
13008 + :cond_34a
13009 + monitor-exit v4
13010 + :try_end_34b
13011 + .catchall {:try_start_327 .. :try_end_34b} :catchall_34c
13013 + :try_start_34b
13014 + throw v1
13015 + :try_end_34c
13016 + .catchall {:try_start_34b .. :try_end_34c} :catchall_319
13018 + :catchall_34c
13019 + move-exception v1
13021 + :try_start_34d
13022 + monitor-exit v4
13023 + :try_end_34e
13024 + .catchall {:try_start_34d .. :try_end_34e} :catchall_34c
13026 + :try_start_34e
13027 + throw v1
13028 + :try_end_34f
13029 + .catchall {:try_start_34e .. :try_end_34f} :catchall_319
13031 + :catchall_34f
13032 + move-exception v1
13034 + :try_start_350
13035 + monitor-exit v4
13036 + :try_end_351
13037 + .catchall {:try_start_350 .. :try_end_351} :catchall_34f
13039 + :try_start_351
13040 + throw v1
13041 + :try_end_352
13042 + .catchall {:try_start_351 .. :try_end_352} :catchall_319
13044 + :catchall_352
13045 + move-exception v1
13047 + goto :goto_31f
13049 + :catch_354
13050 + move-exception v54
13052 + move-object/from16 v3, v55
13054 + goto/16 :goto_272
13056 + :catchall_359
13057 + move-exception v1
13059 + move-object/from16 v3, v55
13061 + goto :goto_31a
13063 + :cond_35d
13064 + move-object/from16 v3, v55
13066 + goto :goto_2e9
13067 +.end method
13069 +.method public getValue(Ljava/lang/String;)Ljava/lang/String;
13070 + .registers 15
13072 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13074 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13076 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
13078 + move-result v0
13080 + add-int/lit8 v0, v0, 0x1
13082 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13084 + move-result-object v0
13086 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13088 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
13090 + move-result-object v1
13092 + const/4 v12, 0x0
13094 + :try_start_15
13095 + const-string/jumbo v2, "map"
13097 + const/4 v0, 0x1
13099 + new-array v3, v0, [Ljava/lang/String;
13101 + const/4 v0, 0x0
13103 + const-string/jumbo v4, "value"
13105 + aput-object v4, v3, v0
13107 + const-string/jumbo v4, "name=?"
13109 + const/4 v0, 0x1
13111 + new-array v5, v0, [Ljava/lang/String;
13113 + const/4 v0, 0x0
13115 + aput-object p1, v5, v0
13117 + const/4 v6, 0x0
13119 + const/4 v7, 0x0
13121 + const/4 v8, 0x0
13123 + const/4 v9, 0x0
13125 + move-object v0, p0
13127 + invoke-direct/range {v0 .. v9}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
13129 + move-result-object v10
13131 + if-eqz v10, :cond_77
13133 + invoke-interface {v10}, Landroid/database/Cursor;->getCount()I
13135 + move-result v0
13137 + if-lez v0, :cond_77
13139 + invoke-interface {v10}, Landroid/database/Cursor;->moveToFirst()Z
13141 + move-result v0
13143 + if-eqz v0, :cond_77
13145 + const-string/jumbo v0, "value"
13147 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
13149 + move-result v0
13151 + invoke-interface {v10, v0}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
13153 + move-result-object v12
13155 + invoke-interface {v10}, Landroid/database/Cursor;->close()V
13156 + :try_end_4f
13157 + .catch Ljava/lang/Exception; {:try_start_15 .. :try_end_4f} :catch_90
13159 + :goto_4f
13160 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13162 + monitor-enter v2
13164 + :try_start_52
13165 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13167 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13169 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
13171 + move-result v0
13173 + add-int/lit8 v0, v0, -0x1
13175 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13177 + move-result-object v0
13179 + sput-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13181 + sget-object v0, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13183 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
13185 + move-result v0
13187 + if-nez v0, :cond_75
13189 + if-eqz v1, :cond_75
13191 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
13193 + move-result v0
13195 + if-eqz v0, :cond_75
13197 + invoke-virtual {v1}, Landroid/database/sqlite/SQLiteDatabase;->close()V
13199 + :cond_75
13200 + monitor-exit v2
13201 + :try_end_76
13202 + .catchall {:try_start_52 .. :try_end_76} :catchall_aa
13204 + return-object v12
13206 + :cond_77
13207 + :try_start_77
13208 + const-string v0, "PrivacyPersistenceAdapter"
13210 + new-instance v2, Ljava/lang/StringBuilder;
13212 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13214 + const-string v3, "getValue - could not get value for name: "
13216 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13218 + move-result-object v2
13220 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13222 + move-result-object v2
13224 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13226 + move-result-object v2
13228 + invoke-static {v0, v2}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
13229 + :try_end_8f
13230 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_8f} :catch_90
13232 + goto :goto_4f
13234 + :catch_90
13235 + move-exception v11
13237 + const-string v0, "PrivacyPersistenceAdapter"
13239 + new-instance v2, Ljava/lang/StringBuilder;
13241 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
13243 + const-string v3, "getValue - could not get value for name: "
13245 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13247 + move-result-object v2
13249 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
13251 + move-result-object v2
13253 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
13255 + move-result-object v2
13257 + invoke-static {v0, v2, v11}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
13259 + goto :goto_4f
13261 + :catchall_aa
13262 + move-exception v0
13264 + :try_start_ab
13265 + monitor-exit v2
13266 + :try_end_ac
13267 + .catchall {:try_start_ab .. :try_end_ac} :catchall_aa
13269 + throw v0
13270 +.end method
13272 +.method public purgeSettings()Z
13273 + .registers 28
13275 + const/16 v25, 0x1
13277 + new-instance v13, Ljava/util/ArrayList;
13279 + invoke-direct {v13}, Ljava/util/ArrayList;-><init>()V
13281 + move-object/from16 v0, p0
13283 + iget-object v2, v0, Landroid/privacy/PrivacyPersistenceAdapter;->context:Landroid/content/Context;
13285 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
13287 + move-result-object v21
13289 + const/16 v2, 0x80
13291 + move-object/from16 v0, v21
13293 + invoke-virtual {v0, v2}, Landroid/content/pm/PackageManager;->getInstalledApplications(I)Ljava/util/List;
13295 + move-result-object v19
13297 + invoke-interface/range {v19 .. v19}, Ljava/util/List;->iterator()Ljava/util/Iterator;
13299 + move-result-object v18
13301 + :goto_1b
13302 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->hasNext()Z
13304 + move-result v2
13306 + if-eqz v2, :cond_2d
13308 + invoke-interface/range {v18 .. v18}, Ljava/util/Iterator;->next()Ljava/lang/Object;
13310 + move-result-object v12
13312 + check-cast v12, Landroid/content/pm/ApplicationInfo;
13314 + iget-object v2, v12, Landroid/content/pm/ApplicationInfo;->packageName:Ljava/lang/String;
13316 + invoke-interface {v13, v2}, Ljava/util/List;->add(Ljava/lang/Object;)Z
13318 + goto :goto_1b
13320 + :cond_2d
13321 + new-instance v26, Ljava/io/File;
13323 + const-string v2, "/data/system/privacy"
13325 + move-object/from16 v0, v26
13327 + invoke-direct {v0, v2}, Ljava/io/File;-><init>(Ljava/lang/String;)V
13329 + invoke-virtual/range {v26 .. v26}, Ljava/io/File;->listFiles()[Ljava/io/File;
13331 + move-result-object v15
13333 + array-length v0, v15
13335 + move/from16 v20, v0
13337 + const/16 v18, 0x0
13339 + :goto_3f
13340 + move/from16 v0, v18
13342 + move/from16 v1, v20
13344 + if-ge v0, v1, :cond_5d
13346 + aget-object v23, v15, v18
13348 + invoke-virtual/range {v23 .. v23}, Ljava/io/File;->getName()Ljava/lang/String;
13350 + move-result-object v24
13352 + move-object/from16 v0, v24
13354 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
13356 + move-result v2
13358 + if-nez v2, :cond_5a
13360 + move-object/from16 v0, p0
13362 + move-object/from16 v1, v23
13364 + invoke-direct {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteRecursive(Ljava/io/File;)V
13366 + :cond_5a
13367 + add-int/lit8 v18, v18, 0x1
13369 + goto :goto_3f
13371 + :cond_5d
13372 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13374 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13376 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
13378 + move-result v2
13380 + add-int/lit8 v2, v2, 0x1
13382 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13384 + move-result-object v2
13386 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13388 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getReadableDatabase()Landroid/database/sqlite/SQLiteDatabase;
13390 + move-result-object v3
13392 + const/16 v16, 0x0
13394 + :try_start_73
13395 + const-string/jumbo v4, "settings"
13397 + const/4 v2, 0x1
13399 + new-array v5, v2, [Ljava/lang/String;
13401 + const/4 v2, 0x0
13403 + const-string/jumbo v6, "packageName"
13405 + aput-object v6, v5, v2
13407 + const/4 v6, 0x0
13409 + const/4 v7, 0x0
13411 + const/4 v8, 0x0
13413 + const/4 v9, 0x0
13415 + const/4 v10, 0x0
13417 + const/4 v11, 0x0
13419 + move-object/from16 v2, p0
13421 + invoke-direct/range {v2 .. v11}, Landroid/privacy/PrivacyPersistenceAdapter;->query(Landroid/database/sqlite/SQLiteDatabase;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
13423 + move-result-object v16
13425 + new-instance v14, Ljava/util/ArrayList;
13427 + invoke-direct {v14}, Ljava/util/ArrayList;-><init>()V
13429 + :goto_90
13430 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->moveToNext()Z
13432 + move-result v2
13434 + if-eqz v2, :cond_142
13436 + const/4 v2, 0x0
13438 + move-object/from16 v0, v16
13440 + invoke-interface {v0, v2}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
13442 + move-result-object v24
13444 + move-object/from16 v0, v24
13446 + invoke-interface {v13, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
13448 + move-result v2
13450 + if-nez v2, :cond_e7
13452 + move-object/from16 v0, p0
13454 + move-object/from16 v1, v24
13456 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
13457 + :try_end_ac
13458 + .catchall {:try_start_73 .. :try_end_ac} :catchall_107
13459 + .catch Ljava/lang/Exception; {:try_start_73 .. :try_end_ac} :catch_ad
13461 + goto :goto_90
13463 + :catch_ad
13464 + move-exception v17
13466 + :try_start_ae
13467 + const-string v2, "PrivacyPersistenceAdapter"
13469 + const-string/jumbo v4, "purgeSettings - purging DB failed"
13471 + move-object/from16 v0, v17
13473 + invoke-static {v2, v4, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
13474 + :try_end_b8
13475 + .catchall {:try_start_ae .. :try_end_b8} :catchall_107
13477 + const/16 v25, 0x0
13479 + if-eqz v16, :cond_bf
13481 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
13483 + :cond_bf
13484 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13486 + monitor-enter v4
13488 + :try_start_c2
13489 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13491 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13493 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
13495 + move-result v2
13497 + add-int/lit8 v2, v2, -0x1
13499 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13501 + move-result-object v2
13503 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13505 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13507 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
13509 + move-result v2
13511 + if-nez v2, :cond_e5
13513 + if-eqz v3, :cond_e5
13515 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
13517 + move-result v2
13519 + if-eqz v2, :cond_e5
13521 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
13523 + :cond_e5
13524 + monitor-exit v4
13525 + :try_end_e6
13526 + .catchall {:try_start_c2 .. :try_end_e6} :catchall_13f
13528 + :goto_e6
13529 + return v25
13531 + :cond_e7
13532 + :try_start_e7
13533 + move-object/from16 v0, v24
13535 + invoke-interface {v14, v0}, Ljava/util/List;->contains(Ljava/lang/Object;)Z
13537 + move-result v2
13539 + if-eqz v2, :cond_135
13541 + const/4 v2, 0x0
13543 + move-object/from16 v0, p0
13545 + move-object/from16 v1, v24
13547 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
13549 + move-result-object v22
13551 + move-object/from16 v0, p0
13553 + move-object/from16 v1, v24
13555 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
13557 + move-object/from16 v0, p0
13559 + move-object/from16 v1, v22
13561 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
13562 + :try_end_106
13563 + .catchall {:try_start_e7 .. :try_end_106} :catchall_107
13564 + .catch Ljava/lang/Exception; {:try_start_e7 .. :try_end_106} :catch_ad
13566 + goto :goto_90
13568 + :catchall_107
13569 + move-exception v2
13571 + if-eqz v16, :cond_10d
13573 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
13575 + :cond_10d
13576 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13578 + monitor-enter v4
13580 + :try_start_110
13581 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13583 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13585 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
13587 + move-result v5
13589 + add-int/lit8 v5, v5, -0x1
13591 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13593 + move-result-object v5
13595 + sput-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13597 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13599 + invoke-virtual {v5}, Ljava/lang/Integer;->intValue()I
13601 + move-result v5
13603 + if-nez v5, :cond_133
13605 + if-eqz v3, :cond_133
13607 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
13609 + move-result v5
13611 + if-eqz v5, :cond_133
13613 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
13615 + :cond_133
13616 + monitor-exit v4
13617 + :try_end_134
13618 + .catchall {:try_start_110 .. :try_end_134} :catchall_13c
13620 + throw v2
13622 + :cond_135
13623 + :try_start_135
13624 + move-object/from16 v0, v24
13626 + invoke-interface {v14, v0}, Ljava/util/List;->add(Ljava/lang/Object;)Z
13627 + :try_end_13a
13628 + .catchall {:try_start_135 .. :try_end_13a} :catchall_107
13629 + .catch Ljava/lang/Exception; {:try_start_135 .. :try_end_13a} :catch_ad
13631 + goto/16 :goto_90
13633 + :catchall_13c
13634 + move-exception v2
13636 + :try_start_13d
13637 + monitor-exit v4
13638 + :try_end_13e
13639 + .catchall {:try_start_13d .. :try_end_13e} :catchall_13c
13641 + throw v2
13643 + :catchall_13f
13644 + move-exception v2
13646 + :try_start_140
13647 + monitor-exit v4
13648 + :try_end_141
13649 + .catchall {:try_start_140 .. :try_end_141} :catchall_13f
13651 + throw v2
13653 + :cond_142
13654 + if-eqz v16, :cond_147
13656 + invoke-interface/range {v16 .. v16}, Landroid/database/Cursor;->close()V
13658 + :cond_147
13659 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13661 + monitor-enter v4
13663 + :try_start_14a
13664 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13666 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13668 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
13670 + move-result v2
13672 + add-int/lit8 v2, v2, -0x1
13674 + invoke-static {v2}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13676 + move-result-object v2
13678 + sput-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13680 + sget-object v2, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
13682 + invoke-virtual {v2}, Ljava/lang/Integer;->intValue()I
13684 + move-result v2
13686 + if-nez v2, :cond_16d
13688 + if-eqz v3, :cond_16d
13690 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
13692 + move-result v2
13694 + if-eqz v2, :cond_16d
13696 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
13698 + :cond_16d
13699 + monitor-exit v4
13701 + goto/16 :goto_e6
13703 + :catchall_170
13704 + move-exception v2
13706 + monitor-exit v4
13707 + :try_end_172
13708 + .catchall {:try_start_14a .. :try_end_172} :catchall_170
13710 + throw v2
13711 +.end method
13713 +.method public declared-synchronized saveSettings(Landroid/privacy/PrivacySettings;)Z
13714 + .registers 25
13716 + monitor-enter p0
13718 + const/16 v19, 0x1
13720 + :try_start_3
13721 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
13723 + move-result-object v18
13725 + if-eqz v18, :cond_f
13727 + invoke-virtual/range {v18 .. v18}, Ljava/lang/String;->isEmpty()Z
13729 + move-result v4
13731 + if-eqz v4, :cond_1a
13733 + :cond_f
13734 + const-string v4, "PrivacyPersistenceAdapter"
13736 + const-string/jumbo v5, "saveSettings - either package name, UID or both is missing"
13738 + invoke-static {v4, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
13739 + :try_end_17
13740 + .catchall {:try_start_3 .. :try_end_17} :catchall_399
13742 + const/4 v4, 0x0
13744 + :goto_18
13745 + monitor-exit p0
13747 + return v4
13749 + :cond_1a
13750 + :try_start_1a
13751 + new-instance v22, Landroid/content/ContentValues;
13753 + invoke-direct/range {v22 .. v22}, Landroid/content/ContentValues;-><init>()V
13755 + const-string/jumbo v4, "packageName"
13757 + move-object/from16 v0, v22
13759 + move-object/from16 v1, v18
13761 + invoke-virtual {v0, v4, v1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13763 + const-string/jumbo v4, "uid"
13765 + const/4 v5, -0x1
13767 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
13769 + move-result-object v5
13771 + move-object/from16 v0, v22
13773 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
13775 + const-string v4, "deviceIdSetting"
13777 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
13779 + move-result v5
13781 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13783 + move-result-object v5
13785 + move-object/from16 v0, v22
13787 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13789 + const-string v4, "deviceId"
13791 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
13793 + move-result-object v5
13795 + move-object/from16 v0, v22
13797 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13799 + const-string v4, "line1NumberSetting"
13801 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
13803 + move-result v5
13805 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13807 + move-result-object v5
13809 + move-object/from16 v0, v22
13811 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13813 + const-string v4, "line1Number"
13815 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
13817 + move-result-object v5
13819 + move-object/from16 v0, v22
13821 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13823 + const-string v4, "locationGpsSetting"
13825 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
13827 + move-result v5
13829 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13831 + move-result-object v5
13833 + move-object/from16 v0, v22
13835 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13837 + const-string v4, "locationGpsLat"
13839 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
13841 + move-result-object v5
13843 + move-object/from16 v0, v22
13845 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13847 + const-string v4, "locationGpsLon"
13849 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
13851 + move-result-object v5
13853 + move-object/from16 v0, v22
13855 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13857 + const-string v4, "locationNetworkSetting"
13859 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
13861 + move-result v5
13863 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13865 + move-result-object v5
13867 + move-object/from16 v0, v22
13869 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13871 + const-string v4, "locationNetworkLat"
13873 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
13875 + move-result-object v5
13877 + move-object/from16 v0, v22
13879 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13881 + const-string v4, "locationNetworkLon"
13883 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
13885 + move-result-object v5
13887 + move-object/from16 v0, v22
13889 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13891 + const-string/jumbo v4, "networkInfoSetting"
13893 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
13895 + move-result v5
13897 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13899 + move-result-object v5
13901 + move-object/from16 v0, v22
13903 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13905 + const-string/jumbo v4, "simInfoSetting"
13907 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
13909 + move-result v5
13911 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13913 + move-result-object v5
13915 + move-object/from16 v0, v22
13917 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13919 + const-string/jumbo v4, "simSerialNumberSetting"
13921 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
13923 + move-result v5
13925 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13927 + move-result-object v5
13929 + move-object/from16 v0, v22
13931 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13933 + const-string/jumbo v4, "simSerialNumber"
13935 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
13937 + move-result-object v5
13939 + move-object/from16 v0, v22
13941 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13943 + const-string/jumbo v4, "subscriberIdSetting"
13945 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
13947 + move-result v5
13949 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13951 + move-result-object v5
13953 + move-object/from16 v0, v22
13955 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13957 + const-string/jumbo v4, "subscriberId"
13959 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
13961 + move-result-object v5
13963 + move-object/from16 v0, v22
13965 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
13967 + const-string v4, "accountsSetting"
13969 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
13971 + move-result v5
13973 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13975 + move-result-object v5
13977 + move-object/from16 v0, v22
13979 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13981 + const-string v4, "accountsAuthTokensSetting"
13983 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
13985 + move-result v5
13987 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
13989 + move-result-object v5
13991 + move-object/from16 v0, v22
13993 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
13995 + const-string/jumbo v4, "outgoingCallsSetting"
13997 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
13999 + move-result v5
14001 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14003 + move-result-object v5
14005 + move-object/from16 v0, v22
14007 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14009 + const-string v4, "incomingCallsSetting"
14011 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
14013 + move-result v5
14015 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14017 + move-result-object v5
14019 + move-object/from16 v0, v22
14021 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14023 + const-string v4, "contactsSetting"
14025 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
14027 + move-result v5
14029 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14031 + move-result-object v5
14033 + move-object/from16 v0, v22
14035 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14037 + const-string v4, "calendarSetting"
14039 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
14041 + move-result v5
14043 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14045 + move-result-object v5
14047 + move-object/from16 v0, v22
14049 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14051 + const-string/jumbo v4, "mmsSetting"
14053 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
14055 + move-result v5
14057 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14059 + move-result-object v5
14061 + move-object/from16 v0, v22
14063 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14065 + const-string/jumbo v4, "smsSetting"
14067 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
14069 + move-result v5
14071 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14073 + move-result-object v5
14075 + move-object/from16 v0, v22
14077 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14079 + const-string v4, "callLogSetting"
14081 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
14083 + move-result v5
14085 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14087 + move-result-object v5
14089 + move-object/from16 v0, v22
14091 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14093 + const-string v4, "bookmarksSetting"
14095 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
14097 + move-result v5
14099 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14101 + move-result-object v5
14103 + move-object/from16 v0, v22
14105 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14107 + const-string/jumbo v4, "systemLogsSetting"
14109 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSystemLogsSetting()B
14111 + move-result v5
14113 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14115 + move-result-object v5
14117 + move-object/from16 v0, v22
14119 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14121 + const-string/jumbo v4, "notificationSetting"
14123 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getNotificationSetting()B
14125 + move-result v5
14127 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14129 + move-result-object v5
14131 + move-object/from16 v0, v22
14133 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14135 + const-string v4, "intentBootCompletedSetting"
14137 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
14139 + move-result v5
14141 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14143 + move-result-object v5
14145 + move-object/from16 v0, v22
14147 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14149 + const-string v4, "cameraSetting"
14151 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getCameraSetting()B
14153 + move-result v5
14155 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14157 + move-result-object v5
14159 + move-object/from16 v0, v22
14161 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14163 + const-string/jumbo v4, "recordAudioSetting"
14165 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getRecordAudioSetting()B
14167 + move-result v5
14169 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14171 + move-result-object v5
14173 + move-object/from16 v0, v22
14175 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14177 + const-string/jumbo v4, "smsSendSetting"
14179 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSmsSendSetting()B
14181 + move-result v5
14183 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14185 + move-result-object v5
14187 + move-object/from16 v0, v22
14189 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14191 + const-string/jumbo v4, "phoneCallSetting"
14193 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
14195 + move-result v5
14197 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14199 + move-result-object v5
14201 + move-object/from16 v0, v22
14203 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14205 + const-string v4, "ipTableProtectSetting"
14207 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIpTableProtectSetting()B
14209 + move-result v5
14211 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14213 + move-result-object v5
14215 + move-object/from16 v0, v22
14217 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14219 + const-string v4, "iccAccessSetting"
14221 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getIccAccessSetting()B
14223 + move-result v5
14225 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14227 + move-result-object v5
14229 + move-object/from16 v0, v22
14231 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14233 + const-string v4, "addOnManagementSetting"
14235 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAddOnManagementSetting()B
14237 + move-result v5
14239 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14241 + move-result-object v5
14243 + move-object/from16 v0, v22
14245 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14247 + const-string v4, "androidIdSetting"
14249 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAndroidIdSetting()B
14251 + move-result v5
14253 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14255 + move-result-object v5
14257 + move-object/from16 v0, v22
14259 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14261 + const-string v4, "androidId"
14263 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAndroidID()Ljava/lang/String;
14265 + move-result-object v5
14267 + move-object/from16 v0, v22
14269 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
14271 + const-string/jumbo v4, "wifiInfoSetting"
14273 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
14275 + move-result v5
14277 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14279 + move-result-object v5
14281 + move-object/from16 v0, v22
14283 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14285 + const-string/jumbo v4, "switchConnectivitySetting"
14287 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSwitchConnectivitySetting()B
14289 + move-result v5
14291 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14293 + move-result-object v5
14295 + move-object/from16 v0, v22
14297 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14299 + const-string/jumbo v4, "sendMmsSetting"
14301 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSendMmsSetting()B
14303 + move-result v5
14305 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14307 + move-result-object v5
14309 + move-object/from16 v0, v22
14311 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14313 + const-string v4, "forceOnlineState"
14315 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
14317 + move-result v5
14319 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14321 + move-result-object v5
14323 + move-object/from16 v0, v22
14325 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14327 + const-string/jumbo v4, "switchWifiStateSetting"
14329 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getSwitchWifiStateSetting()B
14331 + move-result v5
14333 + invoke-static {v5}, Ljava/lang/Byte;->valueOf(B)Ljava/lang/Byte;
14335 + move-result-object v5
14337 + move-object/from16 v0, v22
14339 + invoke-virtual {v0, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Byte;)V
14341 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14343 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14345 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
14347 + move-result v4
14349 + add-int/lit8 v4, v4, 0x1
14351 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14353 + move-result-object v4
14355 + sput-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14357 + invoke-direct/range {p0 .. p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
14359 + move-result-object v3
14361 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->beginTransaction()V
14362 + :try_end_2c0
14363 + .catchall {:try_start_1a .. :try_end_2c0} :catchall_399
14365 + const/4 v12, 0x0
14367 + :try_start_2c1
14368 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->get_id()Ljava/lang/Integer;
14370 + move-result-object v16
14372 + if-eqz v16, :cond_39f
14374 + const-string/jumbo v4, "settings"
14376 + const-string v5, "_id=?"
14378 + const/4 v6, 0x1
14380 + new-array v6, v6, [Ljava/lang/String;
14382 + const/4 v7, 0x0
14384 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
14386 + move-result-object v8
14388 + aput-object v8, v6, v7
14390 + move-object/from16 v0, v22
14392 + invoke-virtual {v3, v4, v0, v5, v6}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
14394 + move-result v4
14396 + const/4 v5, 0x1
14398 + if-ge v4, v5, :cond_31e
14400 + new-instance v4, Ljava/lang/Exception;
14402 + const-string/jumbo v5, "saveSettings - failed to update database entry"
14404 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14406 + throw v4
14407 + :try_end_2e8
14408 + .catchall {:try_start_2c1 .. :try_end_2e8} :catchall_368
14409 + .catch Ljava/lang/Exception; {:try_start_2c1 .. :try_end_2e8} :catch_2e8
14411 + :catch_2e8
14412 + move-exception v14
14414 + const/16 v19, 0x0
14416 + :try_start_2eb
14417 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
14419 + if-eqz v12, :cond_2f3
14421 + invoke-interface {v12}, Landroid/database/Cursor;->close()V
14423 + :cond_2f3
14424 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14426 + monitor-enter v5
14427 + :try_end_2f6
14428 + .catchall {:try_start_2eb .. :try_end_2f6} :catchall_399
14430 + :try_start_2f6
14431 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14433 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14435 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
14437 + move-result v4
14439 + add-int/lit8 v4, v4, -0x1
14441 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14443 + move-result-object v4
14445 + sput-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14447 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14449 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
14451 + move-result v4
14453 + if-nez v4, :cond_319
14455 + if-eqz v3, :cond_319
14457 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
14459 + move-result v4
14461 + if-eqz v4, :cond_319
14463 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
14465 + :cond_319
14466 + monitor-exit v5
14467 + :try_end_31a
14468 + .catchall {:try_start_2f6 .. :try_end_31a} :catchall_519
14470 + :goto_31a
14471 + move/from16 v4, v19
14473 + goto/16 :goto_18
14475 + :cond_31e
14476 + :try_start_31e
14477 + const-string v4, "allowed_contacts"
14479 + const-string/jumbo v5, "settings_id=?"
14481 + const/4 v6, 0x1
14483 + new-array v6, v6, [Ljava/lang/String;
14485 + const/4 v7, 0x0
14487 + invoke-virtual/range {v16 .. v16}, Ljava/lang/Integer;->toString()Ljava/lang/String;
14489 + move-result-object v8
14491 + aput-object v8, v6, v7
14493 + invoke-virtual {v3, v4, v5, v6}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
14495 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
14497 + move-result-object v11
14499 + if-eqz v11, :cond_4c9
14501 + new-instance v13, Landroid/content/ContentValues;
14503 + invoke-direct {v13}, Landroid/content/ContentValues;-><init>()V
14505 + const/4 v15, 0x0
14507 + :goto_33c
14508 + array-length v4, v11
14510 + if-ge v15, v4, :cond_4c9
14512 + const-string/jumbo v4, "settings_id"
14514 + move-object/from16 v0, v16
14516 + invoke-virtual {v13, v4, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
14518 + const-string v4, "contact_id"
14520 + aget v5, v11, v15
14522 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14524 + move-result-object v5
14526 + invoke-virtual {v13, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
14528 + const-string v4, "allowed_contacts"
14530 + const/4 v5, 0x0
14532 + invoke-virtual {v3, v4, v5, v13}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
14534 + move-result-wide v4
14536 + const-wide/16 v6, -0x1
14538 + cmp-long v4, v4, v6
14540 + if-nez v4, :cond_39c
14542 + new-instance v4, Ljava/lang/Exception;
14544 + const-string/jumbo v5, "saveSettings - failed to update database entry (contacts)"
14546 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14548 + throw v4
14549 + :try_end_368
14550 + .catchall {:try_start_31e .. :try_end_368} :catchall_368
14551 + .catch Ljava/lang/Exception; {:try_start_31e .. :try_end_368} :catch_2e8
14553 + :catchall_368
14554 + move-exception v4
14556 + :try_start_369
14557 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
14559 + if-eqz v12, :cond_371
14561 + invoke-interface {v12}, Landroid/database/Cursor;->close()V
14563 + :cond_371
14564 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14566 + monitor-enter v5
14567 + :try_end_374
14568 + .catchall {:try_start_369 .. :try_end_374} :catchall_399
14570 + :try_start_374
14571 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14573 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14575 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
14577 + move-result v6
14579 + add-int/lit8 v6, v6, -0x1
14581 + invoke-static {v6}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14583 + move-result-object v6
14585 + sput-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14587 + sget-object v6, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14589 + invoke-virtual {v6}, Ljava/lang/Integer;->intValue()I
14591 + move-result v6
14593 + if-nez v6, :cond_397
14595 + if-eqz v3, :cond_397
14597 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
14599 + move-result v6
14601 + if-eqz v6, :cond_397
14603 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
14605 + :cond_397
14606 + monitor-exit v5
14607 + :try_end_398
14608 + .catchall {:try_start_374 .. :try_end_398} :catchall_51c
14610 + :try_start_398
14611 + throw v4
14612 + :try_end_399
14613 + .catchall {:try_start_398 .. :try_end_399} :catchall_399
14615 + :catchall_399
14616 + move-exception v4
14618 + monitor-exit p0
14620 + throw v4
14622 + :cond_39c
14623 + add-int/lit8 v15, v15, 0x1
14625 + goto :goto_33c
14627 + :cond_39f
14628 + :try_start_39f
14629 + const-string/jumbo v4, "settings"
14631 + const/4 v5, 0x1
14633 + new-array v5, v5, [Ljava/lang/String;
14635 + const/4 v6, 0x0
14637 + const-string v7, "_id"
14639 + aput-object v7, v5, v6
14641 + const-string/jumbo v6, "packageName=?"
14643 + const/4 v7, 0x1
14645 + new-array v7, v7, [Ljava/lang/String;
14647 + const/4 v8, 0x0
14649 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
14651 + move-result-object v9
14653 + aput-object v9, v7, v8
14655 + const/4 v8, 0x0
14657 + const/4 v9, 0x0
14659 + const/4 v10, 0x0
14661 + invoke-virtual/range {v3 .. v10}, Landroid/database/sqlite/SQLiteDatabase;->query(Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)Landroid/database/Cursor;
14663 + move-result-object v12
14665 + if-eqz v12, :cond_4be
14667 + invoke-interface {v12}, Landroid/database/Cursor;->getCount()I
14669 + move-result v4
14671 + const/4 v5, 0x1
14673 + if-ne v4, v5, :cond_445
14675 + const-string/jumbo v4, "settings"
14677 + const-string/jumbo v5, "packageName=?"
14679 + const/4 v6, 0x1
14681 + new-array v6, v6, [Ljava/lang/String;
14683 + const/4 v7, 0x0
14685 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
14687 + move-result-object v8
14689 + aput-object v8, v6, v7
14691 + move-object/from16 v0, v22
14693 + invoke-virtual {v3, v4, v0, v5, v6}, Landroid/database/sqlite/SQLiteDatabase;->update(Ljava/lang/String;Landroid/content/ContentValues;Ljava/lang/String;[Ljava/lang/String;)I
14695 + move-result v4
14697 + const/4 v5, 0x1
14699 + if-ge v4, v5, :cond_3e9
14701 + new-instance v4, Ljava/lang/Exception;
14703 + const-string/jumbo v5, "saveSettings - failed to update database entry"
14705 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14707 + throw v4
14709 + :cond_3e9
14710 + invoke-interface {v12}, Landroid/database/Cursor;->moveToFirst()Z
14712 + move-result v4
14714 + if-eqz v4, :cond_4c9
14716 + const/4 v4, 0x0
14718 + invoke-interface {v12, v4}, Landroid/database/Cursor;->getInt(I)I
14720 + move-result v4
14722 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14724 + move-result-object v17
14726 + const-string v4, "allowed_contacts"
14728 + const-string/jumbo v5, "settings_id=?"
14730 + const/4 v6, 0x1
14732 + new-array v6, v6, [Ljava/lang/String;
14734 + const/4 v7, 0x0
14736 + invoke-virtual/range {v17 .. v17}, Ljava/lang/Integer;->toString()Ljava/lang/String;
14738 + move-result-object v8
14740 + aput-object v8, v6, v7
14742 + invoke-virtual {v3, v4, v5, v6}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
14744 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
14746 + move-result-object v11
14748 + if-eqz v11, :cond_4c9
14750 + new-instance v13, Landroid/content/ContentValues;
14752 + invoke-direct {v13}, Landroid/content/ContentValues;-><init>()V
14754 + const/4 v15, 0x0
14756 + :goto_416
14757 + array-length v4, v11
14759 + if-ge v15, v4, :cond_4c9
14761 + const-string/jumbo v4, "settings_id"
14763 + move-object/from16 v0, v17
14765 + invoke-virtual {v13, v4, v0}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
14767 + const-string v4, "contact_id"
14769 + aget v5, v11, v15
14771 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14773 + move-result-object v5
14775 + invoke-virtual {v13, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
14777 + const-string v4, "allowed_contacts"
14779 + const/4 v5, 0x0
14781 + invoke-virtual {v3, v4, v5, v13}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
14783 + move-result-wide v4
14785 + const-wide/16 v6, -0x1
14787 + cmp-long v4, v4, v6
14789 + if-nez v4, :cond_442
14791 + new-instance v4, Ljava/lang/Exception;
14793 + const-string/jumbo v5, "saveSettings - failed to update database entry (contacts)"
14795 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14797 + throw v4
14799 + :cond_442
14800 + add-int/lit8 v15, v15, 0x1
14802 + goto :goto_416
14804 + :cond_445
14805 + invoke-interface {v12}, Landroid/database/Cursor;->getCount()I
14807 + move-result v4
14809 + if-nez v4, :cond_4b3
14811 + const-string/jumbo v4, "settings"
14813 + const/4 v5, 0x0
14815 + move-object/from16 v0, v22
14817 + invoke-virtual {v3, v4, v5, v0}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
14819 + move-result-wide v20
14821 + const-wide/16 v4, -0x1
14823 + cmp-long v4, v20, v4
14825 + if-nez v4, :cond_464
14827 + new-instance v4, Ljava/lang/Exception;
14829 + const-string/jumbo v5, "saveSettings - failed to insert new record into DB"
14831 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14833 + throw v4
14835 + :cond_464
14836 + const-string v4, "allowed_contacts"
14838 + const-string/jumbo v5, "settings_id=?"
14840 + const/4 v6, 0x1
14842 + new-array v6, v6, [Ljava/lang/String;
14844 + const/4 v7, 0x0
14846 + invoke-static/range {v20 .. v21}, Ljava/lang/Long;->toString(J)Ljava/lang/String;
14848 + move-result-object v8
14850 + aput-object v8, v6, v7
14852 + invoke-virtual {v3, v4, v5, v6}, Landroid/database/sqlite/SQLiteDatabase;->delete(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;)I
14854 + invoke-virtual/range {p1 .. p1}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
14856 + move-result-object v11
14858 + if-eqz v11, :cond_4c9
14860 + new-instance v13, Landroid/content/ContentValues;
14862 + invoke-direct {v13}, Landroid/content/ContentValues;-><init>()V
14864 + const/4 v15, 0x0
14866 + :goto_482
14867 + array-length v4, v11
14869 + if-ge v15, v4, :cond_4c9
14871 + const-string/jumbo v4, "settings_id"
14873 + invoke-static/range {v20 .. v21}, Ljava/lang/Long;->valueOf(J)Ljava/lang/Long;
14875 + move-result-object v5
14877 + invoke-virtual {v13, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Long;)V
14879 + const-string v4, "contact_id"
14881 + aget v5, v11, v15
14883 + invoke-static {v5}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14885 + move-result-object v5
14887 + invoke-virtual {v13, v4, v5}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/Integer;)V
14889 + const-string v4, "allowed_contacts"
14891 + const/4 v5, 0x0
14893 + invoke-virtual {v3, v4, v5, v13}, Landroid/database/sqlite/SQLiteDatabase;->insert(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
14895 + move-result-wide v4
14897 + const-wide/16 v6, -0x1
14899 + cmp-long v4, v4, v6
14901 + if-nez v4, :cond_4b0
14903 + new-instance v4, Ljava/lang/Exception;
14905 + const-string/jumbo v5, "saveSettings - failed to update database entry (contacts)"
14907 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14909 + throw v4
14911 + :cond_4b0
14912 + add-int/lit8 v15, v15, 0x1
14914 + goto :goto_482
14916 + :cond_4b3
14917 + const/16 v19, 0x0
14919 + new-instance v4, Ljava/lang/Exception;
14921 + const-string/jumbo v5, "saveSettings - duplicate entries in the privacy.db"
14923 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14925 + throw v4
14927 + :cond_4be
14928 + const/16 v19, 0x0
14930 + new-instance v4, Ljava/lang/Exception;
14932 + const-string/jumbo v5, "saveSettings - cursor is null, database access failed"
14934 + invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
14936 + throw v4
14938 + :cond_4c9
14939 + const-string/jumbo v4, "systemLogsSetting"
14941 + move-object/from16 v0, p0
14943 + move-object/from16 v1, v18
14945 + move-object/from16 v2, p1
14947 + invoke-direct {v0, v4, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->writeExternalSettings(Ljava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)Z
14949 + move-result v19
14951 + const-string v4, "ipTableProtectSetting"
14953 + move-object/from16 v0, p0
14955 + move-object/from16 v1, v18
14957 + move-object/from16 v2, p1
14959 + invoke-direct {v0, v4, v1, v2}, Landroid/privacy/PrivacyPersistenceAdapter;->writeExternalSettings(Ljava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)Z
14961 + move-result v19
14963 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->setTransactionSuccessful()V
14964 + :try_end_4e5
14965 + .catchall {:try_start_39f .. :try_end_4e5} :catchall_368
14966 + .catch Ljava/lang/Exception; {:try_start_39f .. :try_end_4e5} :catch_2e8
14968 + :try_start_4e5
14969 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->endTransaction()V
14971 + if-eqz v12, :cond_4ed
14973 + invoke-interface {v12}, Landroid/database/Cursor;->close()V
14975 + :cond_4ed
14976 + sget-object v5, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14978 + monitor-enter v5
14979 + :try_end_4f0
14980 + .catchall {:try_start_4e5 .. :try_end_4f0} :catchall_399
14982 + :try_start_4f0
14983 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14985 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14987 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
14989 + move-result v4
14991 + add-int/lit8 v4, v4, -0x1
14993 + invoke-static {v4}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
14995 + move-result-object v4
14997 + sput-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
14999 + sget-object v4, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
15001 + invoke-virtual {v4}, Ljava/lang/Integer;->intValue()I
15003 + move-result v4
15005 + if-nez v4, :cond_513
15007 + if-eqz v3, :cond_513
15009 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
15011 + move-result v4
15013 + if-eqz v4, :cond_513
15015 + invoke-virtual {v3}, Landroid/database/sqlite/SQLiteDatabase;->close()V
15017 + :cond_513
15018 + monitor-exit v5
15020 + goto/16 :goto_31a
15022 + :catchall_516
15023 + move-exception v4
15025 + monitor-exit v5
15026 + :try_end_518
15027 + .catchall {:try_start_4f0 .. :try_end_518} :catchall_516
15029 + :try_start_518
15030 + throw v4
15031 + :try_end_519
15032 + .catchall {:try_start_518 .. :try_end_519} :catchall_399
15034 + :catchall_519
15035 + move-exception v4
15037 + :try_start_51a
15038 + monitor-exit v5
15039 + :try_end_51b
15040 + .catchall {:try_start_51a .. :try_end_51b} :catchall_519
15042 + :try_start_51b
15043 + throw v4
15044 + :try_end_51c
15045 + .catchall {:try_start_51b .. :try_end_51c} :catchall_399
15047 + :catchall_51c
15048 + move-exception v4
15050 + :try_start_51d
15051 + monitor-exit v5
15052 + :try_end_51e
15053 + .catchall {:try_start_51d .. :try_end_51e} :catchall_51c
15055 + :try_start_51e
15056 + throw v4
15057 + :try_end_51f
15058 + .catchall {:try_start_51e .. :try_end_51f} :catchall_399
15059 +.end method
15061 +.method public declared-synchronized setValue(Ljava/lang/String;Ljava/lang/String;)Z
15062 + .registers 10
15064 + monitor-enter p0
15066 + :try_start_1
15067 + const-string v3, "PrivacyPersistenceAdapter"
15069 + new-instance v4, Ljava/lang/StringBuilder;
15071 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
15073 + const-string/jumbo v5, "setValue - name "
15075 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15077 + move-result-object v4
15079 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15081 + move-result-object v4
15083 + const-string v5, " value "
15085 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15087 + move-result-object v4
15089 + invoke-virtual {v4, p2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15091 + move-result-object v4
15093 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
15095 + move-result-object v4
15097 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
15099 + new-instance v2, Landroid/content/ContentValues;
15101 + invoke-direct {v2}, Landroid/content/ContentValues;-><init>()V
15103 + const-string/jumbo v3, "name"
15105 + invoke-virtual {v2, v3, p1}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
15107 + const-string/jumbo v3, "value"
15109 + invoke-virtual {v2, v3, p2}, Landroid/content/ContentValues;->put(Ljava/lang/String;Ljava/lang/String;)V
15111 + invoke-direct {p0}, Landroid/privacy/PrivacyPersistenceAdapter;->getWritableDatabase()Landroid/database/sqlite/SQLiteDatabase;
15113 + move-result-object v0
15115 + const-string/jumbo v3, "map"
15117 + const/4 v4, 0x0
15119 + invoke-virtual {v0, v3, v4, v2}, Landroid/database/sqlite/SQLiteDatabase;->replace(Ljava/lang/String;Ljava/lang/String;Landroid/content/ContentValues;)J
15121 + move-result-wide v3
15123 + const-wide/16 v5, -0x1
15125 + cmp-long v3, v3, v5
15127 + if-eqz v3, :cond_5d
15129 + const/4 v1, 0x1
15131 + :goto_48
15132 + sget-object v3, Landroid/privacy/PrivacyPersistenceAdapter;->readingThreads:Ljava/lang/Integer;
15134 + invoke-virtual {v3}, Ljava/lang/Integer;->intValue()I
15136 + move-result v3
15138 + if-nez v3, :cond_5b
15140 + if-eqz v0, :cond_5b
15142 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->isOpen()Z
15144 + move-result v3
15146 + if-eqz v3, :cond_5b
15148 + invoke-virtual {v0}, Landroid/database/sqlite/SQLiteDatabase;->close()V
15149 + :try_end_5b
15150 + .catchall {:try_start_1 .. :try_end_5b} :catchall_5f
15152 + :cond_5b
15153 + monitor-exit p0
15155 + return v1
15157 + :cond_5d
15158 + const/4 v1, 0x0
15160 + goto :goto_48
15162 + :catchall_5f
15163 + move-exception v3
15165 + monitor-exit p0
15167 + throw v3
15168 +.end method
15169 diff -Npru stock-framework/smali/android/privacy/PrivacySettings$1.smali ext-framework/smali/android/privacy/PrivacySettings$1.smali
15170 --- stock-framework/smali/android/privacy/PrivacySettings$1.smali 1969-12-31 18:00:00.000000000 -0600
15171 +++ ext-framework/smali/android/privacy/PrivacySettings$1.smali 2012-11-02 22:30:48.947877340 -0500
15172 @@ -0,0 +1,77 @@
15173 +.class final Landroid/privacy/PrivacySettings$1;
15174 +.super Ljava/lang/Object;
15175 +.source "PrivacySettings.java"
15177 +# interfaces
15178 +.implements Landroid/os/Parcelable$Creator;
15181 +# annotations
15182 +.annotation system Ldalvik/annotation/EnclosingClass;
15183 + value = Landroid/privacy/PrivacySettings;
15184 +.end annotation
15186 +.annotation system Ldalvik/annotation/InnerClass;
15187 + accessFlags = 0x8
15188 + name = null
15189 +.end annotation
15191 +.annotation system Ldalvik/annotation/Signature;
15192 + value = {
15193 + "Ljava/lang/Object;",
15194 + "Landroid/os/Parcelable$Creator",
15195 + "<",
15196 + "Landroid/privacy/PrivacySettings;",
15197 + ">;"
15199 +.end annotation
15202 +# direct methods
15203 +.method constructor <init>()V
15204 + .registers 1
15206 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15208 + return-void
15209 +.end method
15212 +# virtual methods
15213 +.method public createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
15214 + .registers 3
15216 + new-instance v0, Landroid/privacy/PrivacySettings;
15218 + invoke-direct {v0, p1}, Landroid/privacy/PrivacySettings;-><init>(Landroid/os/Parcel;)V
15220 + return-object v0
15221 +.end method
15223 +.method public bridge synthetic createFromParcel(Landroid/os/Parcel;)Ljava/lang/Object;
15224 + .registers 3
15226 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->createFromParcel(Landroid/os/Parcel;)Landroid/privacy/PrivacySettings;
15228 + move-result-object v0
15230 + return-object v0
15231 +.end method
15233 +.method public newArray(I)[Landroid/privacy/PrivacySettings;
15234 + .registers 3
15236 + new-array v0, p1, [Landroid/privacy/PrivacySettings;
15238 + return-object v0
15239 +.end method
15241 +.method public bridge synthetic newArray(I)[Ljava/lang/Object;
15242 + .registers 3
15244 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettings$1;->newArray(I)[Landroid/privacy/PrivacySettings;
15246 + move-result-object v0
15248 + return-object v0
15249 +.end method
15250 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali ext-framework/smali/android/privacy/PrivacySettingsManagerService.smali
15251 --- stock-framework/smali/android/privacy/PrivacySettingsManagerService.smali 1969-12-31 18:00:00.000000000 -0600
15252 +++ ext-framework/smali/android/privacy/PrivacySettingsManagerService.smali 2012-11-02 22:30:48.955877388 -0500
15253 @@ -0,0 +1,549 @@
15254 +.class public Landroid/privacy/PrivacySettingsManagerService;
15255 +.super Landroid/privacy/IPrivacySettingsManager$Stub;
15256 +.source "PrivacySettingsManagerService.java"
15259 +# static fields
15260 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManagerService"
15262 +.field private static final VERSION:D = 1.48
15264 +.field private static final WRITE_PRIVACY_SETTINGS:Ljava/lang/String; = "android.privacy.WRITE_PRIVACY_SETTINGS"
15266 +.field public static obs:Landroid/privacy/PrivacyFileObserver;
15269 +# instance fields
15270 +.field private bootCompleted:Z
15272 +.field private context:Landroid/content/Context;
15274 +.field private enabled:Z
15276 +.field private notificationsEnabled:Z
15278 +.field private persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15281 +# direct methods
15282 +.method public constructor <init>(Landroid/content/Context;)V
15283 + .registers 5
15285 + invoke-direct {p0}, Landroid/privacy/IPrivacySettingsManager$Stub;-><init>()V
15287 + const-string v0, "PrivacySettingsManagerService"
15289 + new-instance v1, Ljava/lang/StringBuilder;
15291 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
15293 + const-string v2, "PrivacySettingsManagerService - initializing for package: "
15295 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15297 + move-result-object v1
15299 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15301 + move-result-object v2
15303 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15305 + move-result-object v1
15307 + const-string v2, " UID: "
15309 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15311 + move-result-object v1
15313 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15315 + move-result v2
15317 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
15319 + move-result-object v1
15321 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
15323 + move-result-object v1
15325 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
15327 + iput-object p1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15329 + new-instance v0, Landroid/privacy/PrivacyPersistenceAdapter;
15331 + invoke-direct {v0, p1}, Landroid/privacy/PrivacyPersistenceAdapter;-><init>(Landroid/content/Context;)V
15333 + iput-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15335 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
15337 + const-string v1, "/data/system/privacy"
15339 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
15341 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15343 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15345 + const-string v1, "enabled"
15347 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
15349 + move-result-object v0
15351 + const-string v1, "1"
15353 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15355 + move-result v0
15357 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
15359 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15361 + const-string/jumbo v1, "notifications_enabled"
15363 + invoke-virtual {v0, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getValue(Ljava/lang/String;)Ljava/lang/String;
15365 + move-result-object v0
15367 + const-string v1, "1"
15369 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15371 + move-result v0
15373 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
15375 + const/4 v0, 0x0
15377 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
15379 + return-void
15380 +.end method
15383 +# virtual methods
15384 +.method public addObserver(Ljava/lang/String;)V
15385 + .registers 5
15387 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15389 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
15391 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
15393 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
15395 + sget-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15397 + invoke-virtual {v0, p1}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
15399 + return-void
15400 +.end method
15402 +.method public deleteSettings(Ljava/lang/String;)Z
15403 + .registers 8
15405 + const/4 v5, 0x1
15407 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15409 + move-result v2
15411 + const/16 v3, 0x3e8
15413 + if-eq v2, v3, :cond_12
15415 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15417 + const-string v3, "android.privacy.WRITE_PRIVACY_SETTINGS"
15419 + const-string v4, "Requires WRITE_PRIVACY_SETTINGS"
15421 + invoke-virtual {v2, v3, v4}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
15423 + :cond_12
15424 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15426 + invoke-virtual {v2, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->deleteSettings(Ljava/lang/String;)Z
15428 + move-result v1
15430 + new-instance v2, Ljava/lang/StringBuilder;
15432 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
15434 + const-string v3, "/data/system/privacy/"
15436 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15438 + move-result-object v2
15440 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15442 + move-result-object v2
15444 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
15446 + move-result-object v0
15448 + new-instance v2, Ljava/io/File;
15450 + invoke-direct {v2, v0}, Ljava/io/File;-><init>(Ljava/lang/String;)V
15452 + invoke-virtual {v2}, Ljava/io/File;->exists()Z
15454 + move-result v2
15456 + if-eqz v2, :cond_3e
15458 + if-ne v1, v5, :cond_3e
15460 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15462 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
15464 + :cond_3d
15465 + :goto_3d
15466 + return v1
15468 + :cond_3e
15469 + if-ne v1, v5, :cond_3d
15471 + sget-object v2, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15473 + iget-object v2, v2, Landroid/privacy/PrivacyFileObserver;->children:Ljava/util/HashMap;
15475 + invoke-virtual {v2, v0}, Ljava/util/HashMap;->remove(Ljava/lang/Object;)Ljava/lang/Object;
15477 + goto :goto_3d
15478 +.end method
15480 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
15481 + .registers 4
15483 + iget-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
15485 + if-nez v0, :cond_20
15487 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15489 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15491 + move-result-object v0
15493 + const-string v1, "com.privacy.pdroid"
15495 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15497 + move-result v0
15499 + if-nez v0, :cond_20
15501 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15503 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
15505 + move-result-object v0
15507 + const-string v1, "com.privacy.pdroid.Addon"
15509 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
15511 + move-result v0
15513 + if-eqz v0, :cond_28
15515 + :cond_20
15516 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15518 + const/4 v1, 0x0
15520 + invoke-virtual {v0, p1, v1}, Landroid/privacy/PrivacyPersistenceAdapter;->getSettings(Ljava/lang/String;Z)Landroid/privacy/PrivacySettings;
15522 + move-result-object v0
15524 + :goto_27
15525 + return-object v0
15527 + :cond_28
15528 + const/4 v0, 0x0
15530 + goto :goto_27
15531 +.end method
15533 +.method public getVersion()D
15534 + .registers 3
15536 + const-wide v0, 0x3ff7ae147ae147aeL
15538 + return-wide v0
15539 +.end method
15541 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
15542 + .registers 8
15544 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
15546 + if-eqz v1, :cond_34
15548 + iget-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
15550 + if-eqz v1, :cond_34
15552 + new-instance v0, Landroid/content/Intent;
15554 + invoke-direct {v0}, Landroid/content/Intent;-><init>()V
15556 + const-string v1, "com.privacy.pdroid.PRIVACY_NOTIFICATION"
15558 + invoke-virtual {v0, v1}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
15560 + const-string/jumbo v1, "packageName"
15562 + invoke-virtual {v0, v1, p1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15564 + const-string/jumbo v1, "uid"
15566 + const/4 v2, -0x1
15568 + invoke-virtual {v0, v1, v2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;I)Landroid/content/Intent;
15570 + const-string v1, "accessMode"
15572 + invoke-virtual {v0, v1, p2}, Landroid/content/Intent;->putExtra(Ljava/lang/String;B)Landroid/content/Intent;
15574 + const-string v1, "dataType"
15576 + invoke-virtual {v0, v1, p3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15578 + const-string/jumbo v1, "output"
15580 + invoke-virtual {v0, v1, p4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
15582 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15584 + invoke-virtual {v1, v0}, Landroid/content/Context;->sendBroadcast(Landroid/content/Intent;)V
15586 + :cond_34
15587 + return-void
15588 +.end method
15590 +.method public purgeSettings()Z
15591 + .registers 2
15593 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15595 + invoke-virtual {v0}, Landroid/privacy/PrivacyPersistenceAdapter;->purgeSettings()Z
15597 + move-result v0
15599 + return v0
15600 +.end method
15602 +.method public registerObservers()V
15603 + .registers 4
15605 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15607 + const-string v1, "android.privacy.WRITE_PRIVACY_SETTINGS"
15609 + const-string v2, "Requires WRITE_PRIVACY_SETTINGS"
15611 + invoke-virtual {v0, v1, v2}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
15613 + new-instance v0, Landroid/privacy/PrivacyFileObserver;
15615 + const-string v1, "/data/system/privacy"
15617 + invoke-direct {v0, v1, p0}, Landroid/privacy/PrivacyFileObserver;-><init>(Ljava/lang/String;Landroid/privacy/PrivacySettingsManagerService;)V
15619 + sput-object v0, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15621 + return-void
15622 +.end method
15624 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
15625 + .registers 6
15627 + const-string v1, "PrivacySettingsManagerService"
15629 + new-instance v2, Ljava/lang/StringBuilder;
15631 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
15633 + const-string/jumbo v3, "saveSettings - checking if caller (UID: "
15635 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15637 + move-result-object v2
15639 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15641 + move-result v3
15643 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
15645 + move-result-object v2
15647 + const-string v3, ") has sufficient permissions"
15649 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15651 + move-result-object v2
15653 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
15655 + move-result-object v2
15657 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
15659 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
15661 + move-result v1
15663 + const/16 v2, 0x3e8
15665 + if-eq v1, v2, :cond_34
15667 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->context:Landroid/content/Context;
15669 + const-string v2, "android.privacy.WRITE_PRIVACY_SETTINGS"
15671 + const-string v3, "Requires WRITE_PRIVACY_SETTINGS"
15673 + invoke-virtual {v1, v2, v3}, Landroid/content/Context;->enforceCallingPermission(Ljava/lang/String;Ljava/lang/String;)V
15675 + :cond_34
15676 + const-string v1, "PrivacySettingsManagerService"
15678 + new-instance v2, Ljava/lang/StringBuilder;
15680 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
15682 + const-string/jumbo v3, "saveSettings - "
15684 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
15686 + move-result-object v2
15688 + invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
15690 + move-result-object v2
15692 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
15694 + move-result-object v2
15696 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
15698 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15700 + invoke-virtual {v1, p1}, Landroid/privacy/PrivacyPersistenceAdapter;->saveSettings(Landroid/privacy/PrivacySettings;)Z
15702 + move-result v0
15704 + const/4 v1, 0x1
15706 + if-ne v0, v1, :cond_5f
15708 + sget-object v1, Landroid/privacy/PrivacySettingsManagerService;->obs:Landroid/privacy/PrivacyFileObserver;
15710 + invoke-virtual {p1}, Landroid/privacy/PrivacySettings;->getPackageName()Ljava/lang/String;
15712 + move-result-object v2
15714 + invoke-virtual {v1, v2}, Landroid/privacy/PrivacyFileObserver;->addObserver(Ljava/lang/String;)V
15716 + :cond_5f
15717 + return v0
15718 +.end method
15720 +.method public setBootCompleted()V
15721 + .registers 2
15723 + const/4 v0, 0x1
15725 + iput-boolean v0, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
15727 + return-void
15728 +.end method
15730 +.method public setEnabled(Z)Z
15731 + .registers 6
15733 + const/4 v1, 0x1
15735 + if-eqz p1, :cond_12
15737 + const-string v0, "1"
15739 + :goto_5
15740 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15742 + const-string v3, "enabled"
15744 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
15746 + move-result v2
15748 + if-eqz v2, :cond_15
15750 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->enabled:Z
15752 + :goto_11
15753 + return v1
15755 + :cond_12
15756 + const-string v0, "0"
15758 + goto :goto_5
15760 + :cond_15
15761 + const/4 v1, 0x0
15763 + goto :goto_11
15764 +.end method
15766 +.method public setNotificationsEnabled(Z)Z
15767 + .registers 6
15769 + const/4 v1, 0x1
15771 + if-eqz p1, :cond_15
15773 + const-string v0, "1"
15775 + :goto_5
15776 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManagerService;->persistenceAdapter:Landroid/privacy/PrivacyPersistenceAdapter;
15778 + const-string/jumbo v3, "notifications_enabled"
15780 + invoke-virtual {v2, v3, v0}, Landroid/privacy/PrivacyPersistenceAdapter;->setValue(Ljava/lang/String;Ljava/lang/String;)Z
15782 + move-result v2
15784 + if-eqz v2, :cond_18
15786 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->notificationsEnabled:Z
15788 + iput-boolean v1, p0, Landroid/privacy/PrivacySettingsManagerService;->bootCompleted:Z
15790 + :goto_14
15791 + return v1
15793 + :cond_15
15794 + const-string v0, "0"
15796 + goto :goto_5
15798 + :cond_18
15799 + const/4 v1, 0x0
15801 + goto :goto_14
15802 +.end method
15803 diff -Npru stock-framework/smali/android/privacy/PrivacySettingsManager.smali ext-framework/smali/android/privacy/PrivacySettingsManager.smali
15804 --- stock-framework/smali/android/privacy/PrivacySettingsManager.smali 1969-12-31 18:00:00.000000000 -0600
15805 +++ ext-framework/smali/android/privacy/PrivacySettingsManager.smali 2012-11-02 22:30:48.951877360 -0500
15806 @@ -0,0 +1,533 @@
15807 +.class public Landroid/privacy/PrivacySettingsManager;
15808 +.super Ljava/lang/Object;
15809 +.source "PrivacySettingsManager.java"
15812 +# static fields
15813 +.field public static final ACTION_PRIVACY_NOTIFICATION:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION"
15815 +.field public static final ACTION_PRIVACY_NOTIFICATION_ADDON:Ljava/lang/String; = "com.privacy.pdroid.PRIVACY_NOTIFICATION_ADDON"
15817 +.field private static final TAG:Ljava/lang/String; = "PrivacySettingsManager"
15820 +# instance fields
15821 +.field private service:Landroid/privacy/IPrivacySettingsManager;
15824 +# direct methods
15825 +.method public constructor <init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
15826 + .registers 3
15828 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
15830 + iput-object p2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15832 + return-void
15833 +.end method
15836 +# virtual methods
15837 +.method public addObserver(Ljava/lang/String;)V
15838 + .registers 5
15840 + :try_start_0
15841 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15843 + if-eqz v1, :cond_a
15845 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15847 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->addObserver(Ljava/lang/String;)V
15849 + :goto_9
15850 + return-void
15852 + :cond_a
15853 + const-string v1, "PrivacySettingsManager"
15855 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
15857 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
15858 + :try_end_11
15859 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
15861 + goto :goto_9
15863 + :catch_12
15864 + move-exception v0
15866 + const-string v1, "PrivacySettingsManager"
15868 + const-string v2, "RemoteException in addObserver: "
15870 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15872 + goto :goto_9
15873 +.end method
15875 +.method public deleteSettings(Ljava/lang/String;)Z
15876 + .registers 3
15878 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
15880 + move-result v0
15882 + return v0
15883 +.end method
15885 +.method public deleteSettings(Ljava/lang/String;I)Z
15886 + .registers 7
15888 + const/4 v1, 0x0
15890 + :try_start_1
15891 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15893 + if-eqz v2, :cond_c
15895 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15897 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->deleteSettings(Ljava/lang/String;)Z
15899 + move-result v1
15901 + :goto_b
15902 + return v1
15904 + :cond_c
15905 + const-string v2, "PrivacySettingsManager"
15907 + const-string v3, "deleteSettings - PrivacySettingsManagerService is null"
15909 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
15910 + :try_end_13
15911 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
15913 + goto :goto_b
15915 + :catch_14
15916 + move-exception v0
15918 + const-string v2, "PrivacySettingsManager"
15920 + const-string v3, "RemoteException in deleteSettings: "
15922 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
15924 + goto :goto_b
15925 +.end method
15927 +.method public getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
15928 + .registers 6
15930 + const/4 v1, 0x0
15932 + :try_start_1
15933 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15935 + if-eqz v2, :cond_c
15937 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15939 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
15941 + move-result-object v1
15943 + :goto_b
15944 + return-object v1
15946 + :cond_c
15947 + const-string v2, "PrivacySettingsManager"
15949 + const-string v3, "getSettings - PrivacySettingsManagerService is null"
15951 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
15952 + :try_end_13
15953 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_13} :catch_14
15955 + goto :goto_b
15957 + :catch_14
15958 + move-exception v0
15960 + invoke-virtual {v0}, Landroid/os/RemoteException;->printStackTrace()V
15962 + goto :goto_b
15963 +.end method
15965 +.method public getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
15966 + .registers 4
15968 + invoke-virtual {p0, p1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
15970 + move-result-object v0
15972 + return-object v0
15973 +.end method
15975 +.method public getVersion()D
15976 + .registers 4
15978 + :try_start_0
15979 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15981 + if-eqz v1, :cond_b
15983 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
15985 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->getVersion()D
15987 + move-result-wide v1
15989 + :goto_a
15990 + return-wide v1
15992 + :cond_b
15993 + const-string v1, "PrivacySettingsManager"
15995 + const-string v2, "getVersion - PrivacySettingsManagerService is null"
15997 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
15998 + :try_end_12
15999 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_15
16001 + :goto_12
16002 + const-wide/16 v1, 0x0
16004 + goto :goto_a
16006 + :catch_15
16007 + move-exception v0
16009 + const-string v1, "PrivacySettingsManager"
16011 + const-string v2, "RemoteException in getVersion: "
16013 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16015 + goto :goto_12
16016 +.end method
16018 +.method public isServiceAvailable()Z
16019 + .registers 2
16021 + iget-object v0, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16023 + if-eqz v0, :cond_6
16025 + const/4 v0, 0x1
16027 + :goto_5
16028 + return v0
16030 + :cond_6
16031 + const/4 v0, 0x0
16033 + goto :goto_5
16034 +.end method
16036 +.method public notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16037 + .registers 9
16039 + :try_start_0
16040 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16042 + if-eqz v1, :cond_a
16044 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16046 + invoke-interface {v1, p1, p2, p3, p4}, Landroid/privacy/IPrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;)V
16048 + :goto_9
16049 + return-void
16051 + :cond_a
16052 + const-string v1, "PrivacySettingsManager"
16054 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
16056 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16057 + :try_end_11
16058 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
16060 + goto :goto_9
16062 + :catch_12
16063 + move-exception v0
16065 + const-string v1, "PrivacySettingsManager"
16067 + const-string v2, "RemoteException in notification: "
16069 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16071 + goto :goto_9
16072 +.end method
16074 +.method public notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16075 + .registers 13
16077 + move-object v0, p0
16079 + move-object v1, p1
16081 + move v2, p3
16083 + move-object v3, p4
16085 + move-object v4, p5
16087 + move-object v5, p6
16089 + invoke-virtual/range {v0 .. v5}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
16091 + return-void
16092 +.end method
16094 +.method public purgeSettings()Z
16095 + .registers 4
16097 + :try_start_0
16098 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16100 + if-eqz v1, :cond_b
16102 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16104 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->purgeSettings()Z
16106 + move-result v1
16108 + :goto_a
16109 + return v1
16111 + :cond_b
16112 + const-string v1, "PrivacySettingsManager"
16114 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
16116 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16117 + :try_end_12
16118 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_14
16120 + :goto_12
16121 + const/4 v1, 0x0
16123 + goto :goto_a
16125 + :catch_14
16126 + move-exception v0
16128 + const-string v1, "PrivacySettingsManager"
16130 + const-string v2, "RemoteException in purgeSettings: "
16132 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16134 + goto :goto_12
16135 +.end method
16137 +.method public registerObservers()V
16138 + .registers 4
16140 + :try_start_0
16141 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16143 + if-eqz v1, :cond_a
16145 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16147 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->registerObservers()V
16149 + :goto_9
16150 + return-void
16152 + :cond_a
16153 + const-string v1, "PrivacySettingsManager"
16155 + const-string v2, "deleteSettings - PrivacySettingsManagerService is null"
16157 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16158 + :try_end_11
16159 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_11} :catch_12
16161 + goto :goto_9
16163 + :catch_12
16164 + move-exception v0
16166 + const-string v1, "PrivacySettingsManager"
16168 + const-string v2, "RemoteException in registerObservers: "
16170 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16172 + goto :goto_9
16173 +.end method
16175 +.method public saveSettings(Landroid/privacy/PrivacySettings;)Z
16176 + .registers 6
16178 + const/4 v1, 0x0
16180 + :try_start_1
16181 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16183 + if-eqz v2, :cond_c
16185 + iget-object v2, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16187 + invoke-interface {v2, p1}, Landroid/privacy/IPrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
16189 + move-result v1
16191 + :goto_b
16192 + return v1
16194 + :cond_c
16195 + const-string v2, "PrivacySettingsManager"
16197 + const-string/jumbo v3, "saveSettings - PrivacySettingsManagerService is null"
16199 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16200 + :try_end_14
16201 + .catch Landroid/os/RemoteException; {:try_start_1 .. :try_end_14} :catch_15
16203 + goto :goto_b
16205 + :catch_15
16206 + move-exception v0
16208 + const-string v2, "PrivacySettingsManager"
16210 + const-string v3, "RemoteException in saveSettings: "
16212 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16214 + goto :goto_b
16215 +.end method
16217 +.method public setBootCompleted()V
16218 + .registers 4
16220 + :try_start_0
16221 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16223 + if-eqz v1, :cond_a
16225 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16227 + invoke-interface {v1}, Landroid/privacy/IPrivacySettingsManager;->setBootCompleted()V
16229 + :goto_9
16230 + return-void
16232 + :cond_a
16233 + const-string v1, "PrivacySettingsManager"
16235 + const-string/jumbo v2, "setBootCompleted - PrivacySettingsManagerService is null"
16237 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16238 + :try_end_12
16239 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_12} :catch_13
16241 + goto :goto_9
16243 + :catch_13
16244 + move-exception v0
16246 + const-string v1, "PrivacySettingsManager"
16248 + const-string v2, "RemoteException in setBootCompleted: "
16250 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16252 + goto :goto_9
16253 +.end method
16255 +.method public setEnabled(Z)Z
16256 + .registers 5
16258 + :try_start_0
16259 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16261 + if-eqz v1, :cond_b
16263 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16265 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setEnabled(Z)Z
16267 + move-result v1
16269 + :goto_a
16270 + return v1
16272 + :cond_b
16273 + const-string v1, "PrivacySettingsManager"
16275 + const-string/jumbo v2, "setEnabled - PrivacySettingsManagerService is null"
16277 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16278 + :try_end_13
16279 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
16281 + :goto_13
16282 + const/4 v1, 0x0
16284 + goto :goto_a
16286 + :catch_15
16287 + move-exception v0
16289 + const-string v1, "PrivacySettingsManager"
16291 + const-string v2, "RemoteException in setEnabled: "
16293 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16295 + goto :goto_13
16296 +.end method
16298 +.method public setNotificationsEnabled(Z)Z
16299 + .registers 5
16301 + :try_start_0
16302 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16304 + if-eqz v1, :cond_b
16306 + iget-object v1, p0, Landroid/privacy/PrivacySettingsManager;->service:Landroid/privacy/IPrivacySettingsManager;
16308 + invoke-interface {v1, p1}, Landroid/privacy/IPrivacySettingsManager;->setNotificationsEnabled(Z)Z
16310 + move-result v1
16312 + :goto_a
16313 + return v1
16315 + :cond_b
16316 + const-string v1, "PrivacySettingsManager"
16318 + const-string/jumbo v2, "setNotificationsEnabled - PrivacySettingsManagerService is null"
16320 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
16321 + :try_end_13
16322 + .catch Landroid/os/RemoteException; {:try_start_0 .. :try_end_13} :catch_15
16324 + :goto_13
16325 + const/4 v1, 0x0
16327 + goto :goto_a
16329 + :catch_15
16330 + move-exception v0
16332 + const-string v1, "PrivacySettingsManager"
16334 + const-string v2, "RemoteException in setNotificationsEnabled: "
16336 + invoke-static {v1, v2, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
16338 + goto :goto_13
16339 +.end method
16340 diff -Npru stock-framework/smali/android/privacy/PrivacySettings.smali ext-framework/smali/android/privacy/PrivacySettings.smali
16341 --- stock-framework/smali/android/privacy/PrivacySettings.smali 1969-12-31 18:00:00.000000000 -0600
16342 +++ ext-framework/smali/android/privacy/PrivacySettings.smali 2012-11-02 22:30:48.951877360 -0500
16343 @@ -0,0 +1,3295 @@
16344 +.class public final Landroid/privacy/PrivacySettings;
16345 +.super Ljava/lang/Object;
16346 +.source "PrivacySettings.java"
16348 +# interfaces
16349 +.implements Landroid/os/Parcelable;
16352 +# static fields
16353 +.field public static final CREATOR:Landroid/os/Parcelable$Creator; = null
16354 + .annotation system Ldalvik/annotation/Signature;
16355 + value = {
16356 + "Landroid/os/Parcelable$Creator",
16357 + "<",
16358 + "Landroid/privacy/PrivacySettings;",
16359 + ">;"
16361 + .end annotation
16362 +.end field
16364 +.field public static final CUSTOM:B = 0x2t
16366 +.field public static final DATA_ACCOUNTS_LIST:Ljava/lang/String; = "accountsList"
16368 +.field public static final DATA_ANDROID_ID:Ljava/lang/String; = "android_id"
16370 +.field public static final DATA_AUTH_TOKENS:Ljava/lang/String; = "authTokens"
16372 +.field public static final DATA_BOOKMARKS:Ljava/lang/String; = "bookmarks"
16374 +.field public static final DATA_CALENDAR:Ljava/lang/String; = "calendar"
16376 +.field public static final DATA_CALL_LOG:Ljava/lang/String; = "callLog"
16378 +.field public static final DATA_CAMERA:Ljava/lang/String; = "camera"
16380 +.field public static final DATA_CONTACTS:Ljava/lang/String; = "contacts"
16382 +.field public static final DATA_DEVICE_ID:Ljava/lang/String; = "deviceID"
16384 +.field public static final DATA_ICC_ACCESS:Ljava/lang/String; = "iccAccess"
16386 +.field public static final DATA_INCOMING_CALL:Ljava/lang/String; = "incomingCall"
16388 +.field public static final DATA_INTENT_BOOT_COMPLETED:Ljava/lang/String; = "intentBootCompleted"
16390 +.field public static final DATA_IP_TABLES:Ljava/lang/String; = "iptables"
16392 +.field public static final DATA_LINE_1_NUMBER:Ljava/lang/String; = "line1Number"
16394 +.field public static final DATA_LOCATION_GPS:Ljava/lang/String; = "locationGPS"
16396 +.field public static final DATA_LOCATION_NETWORK:Ljava/lang/String; = "locationNetwork"
16398 +.field public static final DATA_MMS:Ljava/lang/String; = "mms"
16400 +.field public static final DATA_MMS_SMS:Ljava/lang/String; = "mmsSms"
16402 +.field public static final DATA_NETWORK_INFO_CURRENT:Ljava/lang/String; = "networkInfoCurrent"
16404 +.field public static final DATA_NETWORK_INFO_SIM:Ljava/lang/String; = "networkInfoSIM"
16406 +.field public static final DATA_OUTGOING_CALL:Ljava/lang/String; = "outgoingCall"
16408 +.field public static final DATA_PHONE_CALL:Ljava/lang/String; = "phoneCall"
16410 +.field public static final DATA_RECORD_AUDIO:Ljava/lang/String; = "recordAudio"
16412 +.field public static final DATA_SEND_MMS:Ljava/lang/String; = "sendMms"
16414 +.field public static final DATA_SIM_SERIAL:Ljava/lang/String; = "simSerial"
16416 +.field public static final DATA_SMS:Ljava/lang/String; = "sms"
16418 +.field public static final DATA_SMS_SEND:Ljava/lang/String; = "SmsSend"
16420 +.field public static final DATA_SUBSCRIBER_ID:Ljava/lang/String; = "subscriberID"
16422 +.field public static final DATA_SWITCH_CONNECTIVITY:Ljava/lang/String; = "switchconnectivity"
16424 +.field public static final DATA_SWITCH_WIFI_STATE:Ljava/lang/String; = "switchWifiState"
16426 +.field public static final DATA_SYSTEM_LOGS:Ljava/lang/String; = "systemLogs"
16428 +.field public static final DATA_WIFI_INFO:Ljava/lang/String; = "wifiInfo"
16430 +.field public static final EMPTY:B = 0x1t
16432 +.field public static final ID_PATTERN:[Ljava/lang/String; = null
16434 +.field public static final RANDOM:B = 0x3t
16436 +.field public static final REAL:B = 0x0t
16438 +.field public static final SETTING_NOTIFY_OFF:B = 0x0t
16440 +.field public static final SETTING_NOTIFY_ON:B = 0x1t
16443 +# instance fields
16444 +.field private final _id:Ljava/lang/Integer;
16446 +.field private accountsAuthTokensSetting:B
16448 +.field private accountsSetting:B
16450 +.field private addOnManagementSetting:B
16452 +.field private allowedContacts:[I
16454 +.field private androidID:Ljava/lang/String;
16456 +.field private androidIdSetting:B
16458 +.field private bookmarksSetting:B
16460 +.field private calendarSetting:B
16462 +.field private callLogSetting:B
16464 +.field private cameraSetting:B
16466 +.field private contactsSetting:B
16468 +.field private deviceId:Ljava/lang/String;
16470 +.field private deviceIdSetting:B
16472 +.field private forceOnlineState:B
16474 +.field private iccAccessSetting:B
16476 +.field private incomingCallsSetting:B
16478 +.field private intentBootCompletedSetting:B
16480 +.field private ipTableProtectSetting:B
16482 +.field private line1Number:Ljava/lang/String;
16484 +.field private line1NumberSetting:B
16486 +.field private locationGpsLat:Ljava/lang/String;
16488 +.field private locationGpsLon:Ljava/lang/String;
16490 +.field private locationGpsSetting:B
16492 +.field private locationNetworkLat:Ljava/lang/String;
16494 +.field private locationNetworkLon:Ljava/lang/String;
16496 +.field private locationNetworkSetting:B
16498 +.field private mmsSetting:B
16500 +.field private networkInfoSetting:B
16502 +.field private notificationSetting:B
16504 +.field private outgoingCallsSetting:B
16506 +.field private packageName:Ljava/lang/String;
16508 +.field private phoneCallSetting:B
16510 +.field private recordAudioSetting:B
16512 +.field private sendMmsSetting:B
16514 +.field private simInfoSetting:B
16516 +.field private simSerialNumber:Ljava/lang/String;
16518 +.field private simSerialNumberSetting:B
16520 +.field private smsSendSetting:B
16522 +.field private smsSetting:B
16524 +.field private subscriberId:Ljava/lang/String;
16526 +.field private subscriberIdSetting:B
16528 +.field private switchConnectivitySetting:B
16530 +.field private switchWifiStateSetting:B
16532 +.field private systemLogsSetting:B
16534 +.field private uid:I
16536 +.field private wifiInfoSetting:B
16539 +# direct methods
16540 +.method static constructor <clinit>()V
16541 + .registers 3
16543 + const/16 v0, 0x10
16545 + new-array v0, v0, [Ljava/lang/String;
16547 + const/4 v1, 0x0
16549 + const-string v2, "0"
16551 + aput-object v2, v0, v1
16553 + const/4 v1, 0x1
16555 + const-string v2, "1"
16557 + aput-object v2, v0, v1
16559 + const/4 v1, 0x2
16561 + const-string v2, "2"
16563 + aput-object v2, v0, v1
16565 + const/4 v1, 0x3
16567 + const-string v2, "3"
16569 + aput-object v2, v0, v1
16571 + const/4 v1, 0x4
16573 + const-string v2, "4"
16575 + aput-object v2, v0, v1
16577 + const/4 v1, 0x5
16579 + const-string v2, "5"
16581 + aput-object v2, v0, v1
16583 + const/4 v1, 0x6
16585 + const-string v2, "6"
16587 + aput-object v2, v0, v1
16589 + const/4 v1, 0x7
16591 + const-string v2, "7"
16593 + aput-object v2, v0, v1
16595 + const/16 v1, 0x8
16597 + const-string v2, "8"
16599 + aput-object v2, v0, v1
16601 + const/16 v1, 0x9
16603 + const-string v2, "9"
16605 + aput-object v2, v0, v1
16607 + const/16 v1, 0xa
16609 + const-string v2, "a"
16611 + aput-object v2, v0, v1
16613 + const/16 v1, 0xb
16615 + const-string v2, "b"
16617 + aput-object v2, v0, v1
16619 + const/16 v1, 0xc
16621 + const-string v2, "c"
16623 + aput-object v2, v0, v1
16625 + const/16 v1, 0xd
16627 + const-string v2, "d"
16629 + aput-object v2, v0, v1
16631 + const/16 v1, 0xe
16633 + const-string v2, "e"
16635 + aput-object v2, v0, v1
16637 + const/16 v1, 0xf
16639 + const-string v2, "f"
16641 + aput-object v2, v0, v1
16643 + sput-object v0, Landroid/privacy/PrivacySettings;->ID_PATTERN:[Ljava/lang/String;
16645 + new-instance v0, Landroid/privacy/PrivacySettings$1;
16647 + invoke-direct {v0}, Landroid/privacy/PrivacySettings$1;-><init>()V
16649 + sput-object v0, Landroid/privacy/PrivacySettings;->CREATOR:Landroid/os/Parcelable$Creator;
16651 + return-void
16652 +.end method
16654 +.method public constructor <init>(Landroid/os/Parcel;)V
16655 + .registers 4
16657 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16659 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
16661 + move-result v0
16663 + const/4 v1, -0x1
16665 + if-ne v0, v1, :cond_122
16667 + const/4 v1, 0x0
16669 + :goto_b
16670 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
16672 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16674 + move-result-object v1
16676 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
16678 + invoke-virtual {p1}, Landroid/os/Parcel;->readInt()I
16680 + move-result v1
16682 + iput v1, p0, Landroid/privacy/PrivacySettings;->uid:I
16684 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16686 + move-result v1
16688 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
16690 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16692 + move-result-object v1
16694 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
16696 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16698 + move-result v1
16700 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
16702 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16704 + move-result-object v1
16706 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
16708 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16710 + move-result v1
16712 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
16714 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16716 + move-result-object v1
16718 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
16720 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16722 + move-result-object v1
16724 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
16726 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16728 + move-result v1
16730 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
16732 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16734 + move-result-object v1
16736 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
16738 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16740 + move-result-object v1
16742 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
16744 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16746 + move-result v1
16748 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
16750 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16752 + move-result v1
16754 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
16756 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16758 + move-result v1
16760 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
16762 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16764 + move-result-object v1
16766 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
16768 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16770 + move-result v1
16772 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
16774 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16776 + move-result-object v1
16778 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
16780 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16782 + move-result v1
16784 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
16786 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16788 + move-result v1
16790 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
16792 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16794 + move-result v1
16796 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
16798 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16800 + move-result v1
16802 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
16804 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16806 + move-result v1
16808 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
16810 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16812 + move-result v1
16814 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
16816 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16818 + move-result v1
16820 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
16822 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16824 + move-result v1
16826 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
16828 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16830 + move-result v1
16832 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
16834 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16836 + move-result v1
16838 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
16840 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16842 + move-result v1
16844 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
16846 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16848 + move-result v1
16850 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
16852 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16854 + move-result v1
16856 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
16858 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16860 + move-result v1
16862 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
16864 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16866 + move-result v1
16868 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
16870 + invoke-virtual {p1}, Landroid/os/Parcel;->createIntArray()[I
16872 + move-result-object v1
16874 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
16876 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16878 + move-result v1
16880 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
16882 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16884 + move-result v1
16886 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
16888 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16890 + move-result v1
16892 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
16894 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16896 + move-result v1
16898 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
16900 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16902 + move-result v1
16904 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
16906 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16908 + move-result v1
16910 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
16912 + invoke-virtual {p1}, Landroid/os/Parcel;->readString()Ljava/lang/String;
16914 + move-result-object v1
16916 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
16918 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16920 + move-result v1
16922 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
16924 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16926 + move-result v1
16928 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
16930 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16932 + move-result v1
16934 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
16936 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16938 + move-result v1
16940 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
16942 + invoke-virtual {p1}, Landroid/os/Parcel;->readByte()B
16944 + move-result v1
16946 + iput-byte v1, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
16948 + return-void
16950 + :cond_122
16951 + invoke-static {v0}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
16953 + move-result-object v1
16955 + goto/16 :goto_b
16956 +.end method
16958 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;I)V
16959 + .registers 7
16961 + const/4 v2, 0x1
16963 + const/4 v1, 0x0
16965 + const/4 v0, 0x0
16967 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
16969 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
16971 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
16973 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
16975 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
16977 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
16979 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
16981 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
16983 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
16985 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
16987 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
16989 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
16991 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
16993 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
16995 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
16997 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
16999 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
17001 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
17003 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
17005 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
17007 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
17009 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
17011 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
17013 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
17015 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
17017 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
17019 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
17021 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
17023 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
17025 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
17027 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
17029 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
17031 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
17033 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
17035 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
17037 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
17039 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
17041 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
17043 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
17045 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
17047 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
17049 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17051 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
17053 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
17055 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
17057 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
17059 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
17061 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
17063 + return-void
17064 +.end method
17066 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;IBLjava/lang/String;BLjava/lang/String;BLjava/lang/String;Ljava/lang/String;BLjava/lang/String;Ljava/lang/String;BBBLjava/lang/String;BLjava/lang/String;BBBBBBBBBBBBBBBB[IBBBBBBLjava/lang/String;BBBBB)V
17067 + .registers 50
17069 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17071 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
17073 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
17075 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
17077 + iput-byte p4, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17079 + iput-object p5, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
17081 + iput-byte p6, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
17083 + iput-object p7, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
17085 + iput-byte p8, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
17087 + iput-object p9, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
17089 + iput-object p10, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
17091 + iput-byte p11, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
17093 + iput-object p12, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
17095 + iput-object p13, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
17097 + iput-byte p14, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
17099 + move/from16 v0, p15
17101 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
17103 + move/from16 v0, p16
17105 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
17107 + move-object/from16 v0, p17
17109 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
17111 + move/from16 v0, p18
17113 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
17115 + move-object/from16 v0, p19
17117 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
17119 + move/from16 v0, p20
17121 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
17123 + move/from16 v0, p21
17125 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
17127 + move/from16 v0, p22
17129 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
17131 + move/from16 v0, p23
17133 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
17135 + move/from16 v0, p24
17137 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
17139 + move/from16 v0, p25
17141 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
17143 + move/from16 v0, p26
17145 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
17147 + move/from16 v0, p27
17149 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
17151 + move/from16 v0, p28
17153 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
17155 + move/from16 v0, p29
17157 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
17159 + move/from16 v0, p30
17161 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
17163 + move/from16 v0, p34
17165 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
17167 + move/from16 v0, p35
17169 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
17171 + move/from16 v0, p32
17173 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
17175 + move/from16 v0, p33
17177 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
17179 + move-object/from16 v0, p36
17181 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
17183 + move/from16 v0, p37
17185 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
17187 + move/from16 v0, p38
17189 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
17191 + move/from16 v0, p39
17193 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
17195 + move/from16 v0, p40
17197 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
17199 + move/from16 v0, p41
17201 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
17203 + move/from16 v0, p42
17205 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17207 + move-object/from16 v0, p43
17209 + iput-object v0, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
17211 + move/from16 v0, p44
17213 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
17215 + move/from16 v0, p45
17217 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
17219 + move/from16 v0, p46
17221 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
17223 + move/from16 v0, p47
17225 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
17227 + move/from16 v0, p48
17229 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
17231 + return-void
17232 +.end method
17234 +.method public constructor <init>(Ljava/lang/Integer;Ljava/lang/String;IZ)V
17235 + .registers 9
17237 + const/4 v3, 0x0
17239 + const/4 v2, 0x3
17241 + const/4 v1, 0x0
17243 + const/4 v0, 0x1
17245 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
17247 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
17249 + iput-object p2, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
17251 + iput p3, p0, Landroid/privacy/PrivacySettings;->uid:I
17253 + if-eqz p4, :cond_68
17255 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17257 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
17259 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
17261 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
17263 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
17265 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
17267 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
17269 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
17271 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
17273 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
17275 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
17277 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
17279 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
17281 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
17283 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
17285 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
17287 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
17289 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
17291 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
17293 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
17295 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
17297 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
17299 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
17301 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
17303 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
17305 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
17307 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
17309 + iput-byte v3, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
17311 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
17313 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
17315 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
17317 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
17319 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
17321 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
17323 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
17325 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
17327 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
17329 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17331 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
17333 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
17335 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
17337 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
17339 + iput-byte v3, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
17341 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
17343 + :goto_67
17344 + return-void
17346 + :cond_68
17347 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17349 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
17351 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
17353 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
17355 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
17357 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
17359 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
17361 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
17363 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
17365 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
17367 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
17369 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
17371 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
17373 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
17375 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
17377 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
17379 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
17381 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
17383 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
17385 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
17387 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
17389 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
17391 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
17393 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
17395 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
17397 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
17399 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
17401 + iput-byte v3, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
17403 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
17405 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
17407 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
17409 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
17411 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
17413 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
17415 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
17417 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
17419 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
17421 + iput-byte v2, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17423 + iput-object v1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
17425 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
17427 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
17429 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
17431 + iput-byte v3, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
17433 + iput-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
17435 + goto :goto_67
17436 +.end method
17438 +.method private getRandomLat()Ljava/lang/String;
17439 + .registers 10
17441 + const-wide v7, 0x4056800000000000L
17443 + invoke-static {}, Ljava/lang/Math;->random()D
17445 + move-result-wide v3
17447 + const-wide v5, 0x4066800000000000L
17449 + mul-double v0, v3, v5
17451 + cmpl-double v3, v0, v7
17453 + if-lez v3, :cond_35
17455 + new-instance v2, Ljava/math/BigDecimal;
17457 + sub-double v3, v0, v7
17459 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
17461 + :goto_1b
17462 + new-instance v3, Ljava/lang/StringBuilder;
17464 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17466 + const/4 v4, 0x6
17468 + const/4 v5, 0x4
17470 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
17472 + move-result-object v4
17474 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
17476 + move-result-object v3
17478 + const-string v4, ""
17480 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17482 + move-result-object v3
17484 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17486 + move-result-object v3
17488 + return-object v3
17490 + :cond_35
17491 + new-instance v2, Ljava/math/BigDecimal;
17493 + neg-double v3, v0
17495 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
17497 + goto :goto_1b
17498 +.end method
17500 +.method private getRandomLon()Ljava/lang/String;
17501 + .registers 10
17503 + const-wide v7, 0x4066800000000000L
17505 + invoke-static {}, Ljava/lang/Math;->random()D
17507 + move-result-wide v3
17509 + const-wide v5, 0x4076800000000000L
17511 + mul-double v0, v3, v5
17513 + cmpl-double v3, v0, v7
17515 + if-lez v3, :cond_35
17517 + new-instance v2, Ljava/math/BigDecimal;
17519 + sub-double v3, v0, v7
17521 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
17523 + :goto_1b
17524 + new-instance v3, Ljava/lang/StringBuilder;
17526 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17528 + const/4 v4, 0x6
17530 + const/4 v5, 0x4
17532 + invoke-virtual {v2, v4, v5}, Ljava/math/BigDecimal;->setScale(II)Ljava/math/BigDecimal;
17534 + move-result-object v4
17536 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
17538 + move-result-object v3
17540 + const-string v4, ""
17542 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17544 + move-result-object v3
17546 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17548 + move-result-object v3
17550 + return-object v3
17552 + :cond_35
17553 + new-instance v2, Ljava/math/BigDecimal;
17555 + neg-double v3, v0
17557 + invoke-direct {v2, v3, v4}, Ljava/math/BigDecimal;-><init>(D)V
17559 + goto :goto_1b
17560 +.end method
17563 +# virtual methods
17564 +.method public describeContents()I
17565 + .registers 2
17567 + const/4 v0, 0x0
17569 + return v0
17570 +.end method
17572 +.method public getAccountsAuthTokensSetting()B
17573 + .registers 2
17575 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
17577 + return v0
17578 +.end method
17580 +.method public getAccountsSetting()B
17581 + .registers 2
17583 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
17585 + return v0
17586 +.end method
17588 +.method public getAddOnManagementSetting()B
17589 + .registers 2
17591 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
17593 + return v0
17594 +.end method
17596 +.method public getAllowedContacts()[I
17597 + .registers 2
17599 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
17601 + return-object v0
17602 +.end method
17604 +.method public getAndroidID()Ljava/lang/String;
17605 + .registers 6
17607 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17609 + const/4 v4, 0x1
17611 + if-ne v3, v4, :cond_9
17613 + const-string/jumbo v3, "q4a5w896ay21dr46"
17615 + :goto_8
17616 + return-object v3
17618 + :cond_9
17619 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17621 + const/4 v4, 0x3
17623 + if-ne v3, v4, :cond_36
17625 + new-instance v2, Ljava/util/Random;
17627 + invoke-direct {v2}, Ljava/util/Random;-><init>()V
17629 + new-instance v1, Ljava/lang/StringBuilder;
17631 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
17633 + const/4 v0, 0x0
17635 + :goto_19
17636 + sget-object v3, Landroid/privacy/PrivacySettings;->ID_PATTERN:[Ljava/lang/String;
17638 + array-length v3, v3
17640 + if-ge v0, v3, :cond_31
17642 + sget-object v3, Landroid/privacy/PrivacySettings;->ID_PATTERN:[Ljava/lang/String;
17644 + sget-object v4, Landroid/privacy/PrivacySettings;->ID_PATTERN:[Ljava/lang/String;
17646 + array-length v4, v4
17648 + add-int/lit8 v4, v4, -0x1
17650 + invoke-virtual {v2, v4}, Ljava/util/Random;->nextInt(I)I
17652 + move-result v4
17654 + aget-object v3, v3, v4
17656 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17658 + add-int/lit8 v0, v0, 0x1
17660 + goto :goto_19
17662 + :cond_31
17663 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17665 + move-result-object v3
17667 + goto :goto_8
17669 + :cond_36
17670 + iget-object v3, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
17672 + goto :goto_8
17673 +.end method
17675 +.method public getAndroidIdSetting()B
17676 + .registers 2
17678 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
17680 + return v0
17681 +.end method
17683 +.method public getBookmarksSetting()B
17684 + .registers 2
17686 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
17688 + return v0
17689 +.end method
17691 +.method public getCalendarSetting()B
17692 + .registers 2
17694 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
17696 + return v0
17697 +.end method
17699 +.method public getCallLogSetting()B
17700 + .registers 2
17702 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
17704 + return v0
17705 +.end method
17707 +.method public getCameraSetting()B
17708 + .registers 2
17710 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
17712 + return v0
17713 +.end method
17715 +.method public getContactsSetting()B
17716 + .registers 2
17718 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
17720 + return v0
17721 +.end method
17723 +.method public getDeviceId()Ljava/lang/String;
17724 + .registers 9
17726 + const/4 v7, 0x0
17728 + const/16 v6, 0xf
17730 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17732 + const/4 v4, 0x1
17734 + if-ne v3, v4, :cond_b
17736 + const-string v3, ""
17738 + :goto_a
17739 + return-object v3
17741 + :cond_b
17742 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17744 + const/4 v4, 0x3
17746 + if-ne v3, v4, :cond_62
17748 + new-instance v1, Ljava/util/Random;
17750 + invoke-direct {v1}, Ljava/util/Random;-><init>()V
17752 + new-instance v3, Ljava/lang/StringBuilder;
17754 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17756 + invoke-virtual {v1}, Ljava/util/Random;->nextLong()J
17758 + move-result-wide v4
17760 + invoke-static {v4, v5}, Ljava/lang/Math;->abs(J)J
17762 + move-result-wide v4
17764 + invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
17766 + move-result-object v3
17768 + const-string v4, ""
17770 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17772 + move-result-object v3
17774 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17776 + move-result-object v2
17778 + invoke-virtual {v2}, Ljava/lang/String;->length()I
17780 + move-result v3
17782 + if-le v3, v6, :cond_3b
17784 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
17786 + move-result-object v3
17788 + goto :goto_a
17790 + :cond_3b
17791 + invoke-virtual {v2}, Ljava/lang/String;->length()I
17793 + move-result v0
17795 + :goto_3f
17796 + const/16 v3, 0x10
17798 + if-gt v0, v3, :cond_5d
17800 + new-instance v3, Ljava/lang/StringBuilder;
17802 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17804 + invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17806 + move-result-object v3
17808 + const/16 v4, 0x9
17810 + invoke-virtual {v1, v4}, Ljava/util/Random;->nextInt(I)I
17812 + move-result v4
17814 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17816 + move-result-object v3
17818 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17820 + move-result-object v2
17822 + add-int/lit8 v0, v0, 0x1
17824 + goto :goto_3f
17826 + :cond_5d
17827 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
17829 + move-result-object v3
17831 + goto :goto_a
17833 + :cond_62
17834 + iget-object v3, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
17836 + goto :goto_a
17837 +.end method
17839 +.method public getDeviceIdSetting()B
17840 + .registers 2
17842 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
17844 + return v0
17845 +.end method
17847 +.method public getForceOnlineState()B
17848 + .registers 2
17850 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
17852 + return v0
17853 +.end method
17855 +.method public getIccAccessSetting()B
17856 + .registers 2
17858 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
17860 + return v0
17861 +.end method
17863 +.method public getIncomingCallsSetting()B
17864 + .registers 2
17866 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
17868 + return v0
17869 +.end method
17871 +.method public getIntentBootCompletedSetting()B
17872 + .registers 2
17874 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
17876 + return v0
17877 +.end method
17879 +.method public getIpTableProtectSetting()B
17880 + .registers 2
17882 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
17884 + return v0
17885 +.end method
17887 +.method public getLine1Number()Ljava/lang/String;
17888 + .registers 9
17890 + const/4 v7, 0x0
17892 + const/16 v6, 0xd
17894 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
17896 + const/4 v4, 0x1
17898 + if-ne v3, v4, :cond_b
17900 + const-string v3, ""
17902 + :goto_a
17903 + return-object v3
17905 + :cond_b
17906 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
17908 + const/4 v4, 0x3
17910 + if-ne v3, v4, :cond_68
17912 + new-instance v1, Ljava/util/Random;
17914 + invoke-direct {v1}, Ljava/util/Random;-><init>()V
17916 + new-instance v3, Ljava/lang/StringBuilder;
17918 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17920 + const-string v4, "+"
17922 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17924 + move-result-object v3
17926 + invoke-virtual {v1}, Ljava/util/Random;->nextLong()J
17928 + move-result-wide v4
17930 + invoke-static {v4, v5}, Ljava/lang/Math;->abs(J)J
17932 + move-result-wide v4
17934 + invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
17936 + move-result-object v3
17938 + const-string v4, ""
17940 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17942 + move-result-object v3
17944 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17946 + move-result-object v2
17948 + invoke-virtual {v2}, Ljava/lang/String;->length()I
17950 + move-result v3
17952 + if-le v3, v6, :cond_41
17954 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
17956 + move-result-object v3
17958 + goto :goto_a
17960 + :cond_41
17961 + invoke-virtual {v2}, Ljava/lang/String;->length()I
17963 + move-result v0
17965 + :goto_45
17966 + const/16 v3, 0xe
17968 + if-gt v0, v3, :cond_63
17970 + new-instance v3, Ljava/lang/StringBuilder;
17972 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
17974 + invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
17976 + move-result-object v3
17978 + const/16 v4, 0x9
17980 + invoke-virtual {v1, v4}, Ljava/util/Random;->nextInt(I)I
17982 + move-result v4
17984 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
17986 + move-result-object v3
17988 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
17990 + move-result-object v2
17992 + add-int/lit8 v0, v0, 0x1
17994 + goto :goto_45
17996 + :cond_63
17997 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
17999 + move-result-object v3
18001 + goto :goto_a
18003 + :cond_68
18004 + iget-object v3, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
18006 + goto :goto_a
18007 +.end method
18009 +.method public getLine1NumberSetting()B
18010 + .registers 2
18012 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
18014 + return v0
18015 +.end method
18017 +.method public getLocationGpsLat()Ljava/lang/String;
18018 + .registers 3
18020 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18022 + const/4 v1, 0x1
18024 + if-ne v0, v1, :cond_8
18026 + const-string v0, ""
18028 + :goto_7
18029 + return-object v0
18031 + :cond_8
18032 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18034 + const/4 v1, 0x3
18036 + if-ne v0, v1, :cond_12
18038 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
18040 + move-result-object v0
18042 + goto :goto_7
18044 + :cond_12
18045 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
18047 + goto :goto_7
18048 +.end method
18050 +.method public getLocationGpsLon()Ljava/lang/String;
18051 + .registers 3
18053 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18055 + const/4 v1, 0x1
18057 + if-ne v0, v1, :cond_8
18059 + const-string v0, ""
18061 + :goto_7
18062 + return-object v0
18064 + :cond_8
18065 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18067 + const/4 v1, 0x3
18069 + if-ne v0, v1, :cond_12
18071 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
18073 + move-result-object v0
18075 + goto :goto_7
18077 + :cond_12
18078 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
18080 + goto :goto_7
18081 +.end method
18083 +.method public getLocationGpsSetting()B
18084 + .registers 2
18086 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18088 + return v0
18089 +.end method
18091 +.method public getLocationNetworkLat()Ljava/lang/String;
18092 + .registers 3
18094 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18096 + const/4 v1, 0x1
18098 + if-ne v0, v1, :cond_8
18100 + const-string v0, ""
18102 + :goto_7
18103 + return-object v0
18105 + :cond_8
18106 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18108 + const/4 v1, 0x3
18110 + if-ne v0, v1, :cond_12
18112 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLat()Ljava/lang/String;
18114 + move-result-object v0
18116 + goto :goto_7
18118 + :cond_12
18119 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
18121 + goto :goto_7
18122 +.end method
18124 +.method public getLocationNetworkLon()Ljava/lang/String;
18125 + .registers 3
18127 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18129 + const/4 v1, 0x1
18131 + if-ne v0, v1, :cond_8
18133 + const-string v0, ""
18135 + :goto_7
18136 + return-object v0
18138 + :cond_8
18139 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18141 + const/4 v1, 0x3
18143 + if-ne v0, v1, :cond_12
18145 + invoke-direct {p0}, Landroid/privacy/PrivacySettings;->getRandomLon()Ljava/lang/String;
18147 + move-result-object v0
18149 + goto :goto_7
18151 + :cond_12
18152 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
18154 + goto :goto_7
18155 +.end method
18157 +.method public getLocationNetworkSetting()B
18158 + .registers 2
18160 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18162 + return v0
18163 +.end method
18165 +.method public getMmsSetting()B
18166 + .registers 2
18168 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
18170 + return v0
18171 +.end method
18173 +.method public getNetworkInfoSetting()B
18174 + .registers 2
18176 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
18178 + return v0
18179 +.end method
18181 +.method public getNotificationSetting()B
18182 + .registers 2
18184 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
18186 + return v0
18187 +.end method
18189 +.method public getOutgoingCallsSetting()B
18190 + .registers 2
18192 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
18194 + return v0
18195 +.end method
18197 +.method public getPackageName()Ljava/lang/String;
18198 + .registers 2
18200 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
18202 + return-object v0
18203 +.end method
18205 +.method public getPhoneCallSetting()B
18206 + .registers 2
18208 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
18210 + return v0
18211 +.end method
18213 +.method public getRecordAudioSetting()B
18214 + .registers 2
18216 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
18218 + return v0
18219 +.end method
18221 +.method public getSendMmsSetting()B
18222 + .registers 2
18224 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
18226 + return v0
18227 +.end method
18229 +.method public getSimInfoSetting()B
18230 + .registers 2
18232 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
18234 + return v0
18235 +.end method
18237 +.method public getSimSerialNumber()Ljava/lang/String;
18238 + .registers 5
18240 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
18242 + const/4 v2, 0x1
18244 + if-ne v1, v2, :cond_8
18246 + const-string v1, ""
18248 + :goto_7
18249 + return-object v1
18251 + :cond_8
18252 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
18254 + const/4 v2, 0x3
18256 + if-ne v1, v2, :cond_2e
18258 + new-instance v0, Ljava/util/Random;
18260 + invoke-direct {v0}, Ljava/util/Random;-><init>()V
18262 + new-instance v1, Ljava/lang/StringBuilder;
18264 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
18266 + invoke-virtual {v0}, Ljava/util/Random;->nextLong()J
18268 + move-result-wide v2
18270 + invoke-static {v2, v3}, Ljava/lang/Math;->abs(J)J
18272 + move-result-wide v2
18274 + invoke-virtual {v1, v2, v3}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
18276 + move-result-object v1
18278 + const-string v2, ""
18280 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18282 + move-result-object v1
18284 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18286 + move-result-object v1
18288 + goto :goto_7
18290 + :cond_2e
18291 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
18293 + goto :goto_7
18294 +.end method
18296 +.method public getSimSerialNumberSetting()B
18297 + .registers 2
18299 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
18301 + return v0
18302 +.end method
18304 +.method public getSmsSendSetting()B
18305 + .registers 2
18307 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
18309 + return v0
18310 +.end method
18312 +.method public getSmsSetting()B
18313 + .registers 2
18315 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
18317 + return v0
18318 +.end method
18320 +.method public getSubscriberId()Ljava/lang/String;
18321 + .registers 9
18323 + const/4 v7, 0x0
18325 + const/16 v6, 0xf
18327 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
18329 + const/4 v4, 0x1
18331 + if-ne v3, v4, :cond_b
18333 + const-string v3, ""
18335 + :goto_a
18336 + return-object v3
18338 + :cond_b
18339 + iget-byte v3, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
18341 + const/4 v4, 0x3
18343 + if-ne v3, v4, :cond_62
18345 + new-instance v1, Ljava/util/Random;
18347 + invoke-direct {v1}, Ljava/util/Random;-><init>()V
18349 + new-instance v3, Ljava/lang/StringBuilder;
18351 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
18353 + invoke-virtual {v1}, Ljava/util/Random;->nextLong()J
18355 + move-result-wide v4
18357 + invoke-static {v4, v5}, Ljava/lang/Math;->abs(J)J
18359 + move-result-wide v4
18361 + invoke-virtual {v3, v4, v5}, Ljava/lang/StringBuilder;->append(J)Ljava/lang/StringBuilder;
18363 + move-result-object v3
18365 + const-string v4, ""
18367 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18369 + move-result-object v3
18371 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18373 + move-result-object v2
18375 + invoke-virtual {v2}, Ljava/lang/String;->length()I
18377 + move-result v3
18379 + if-le v3, v6, :cond_3b
18381 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
18383 + move-result-object v3
18385 + goto :goto_a
18387 + :cond_3b
18388 + invoke-virtual {v2}, Ljava/lang/String;->length()I
18390 + move-result v0
18392 + :goto_3f
18393 + const/16 v3, 0x10
18395 + if-gt v0, v3, :cond_5d
18397 + new-instance v3, Ljava/lang/StringBuilder;
18399 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
18401 + invoke-virtual {v3, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18403 + move-result-object v3
18405 + const/16 v4, 0x9
18407 + invoke-virtual {v1, v4}, Ljava/util/Random;->nextInt(I)I
18409 + move-result v4
18411 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18413 + move-result-object v3
18415 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
18417 + move-result-object v2
18419 + add-int/lit8 v0, v0, 0x1
18421 + goto :goto_3f
18423 + :cond_5d
18424 + invoke-virtual {v2, v7, v6}, Ljava/lang/String;->substring(II)Ljava/lang/String;
18426 + move-result-object v3
18428 + goto :goto_a
18430 + :cond_62
18431 + iget-object v3, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
18433 + goto :goto_a
18434 +.end method
18436 +.method public getSubscriberIdSetting()B
18437 + .registers 2
18439 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
18441 + return v0
18442 +.end method
18444 +.method public getSwitchConnectivitySetting()B
18445 + .registers 2
18447 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
18449 + return v0
18450 +.end method
18452 +.method public getSwitchWifiStateSetting()B
18453 + .registers 2
18455 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
18457 + return v0
18458 +.end method
18460 +.method public getSystemLogsSetting()B
18461 + .registers 2
18463 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
18465 + return v0
18466 +.end method
18468 +.method public getUid()I
18469 + .registers 2
18471 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
18473 + return v0
18474 +.end method
18476 +.method public getWifiInfoSetting()B
18477 + .registers 2
18479 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
18481 + return v0
18482 +.end method
18484 +.method public get_id()Ljava/lang/Integer;
18485 + .registers 2
18487 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
18489 + return-object v0
18490 +.end method
18492 +.method public setAccountsAuthTokensSetting(B)V
18493 + .registers 2
18495 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
18497 + return-void
18498 +.end method
18500 +.method public setAccountsSetting(B)V
18501 + .registers 2
18503 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
18505 + return-void
18506 +.end method
18508 +.method public setAddOnManagementSetting(B)V
18509 + .registers 2
18511 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
18513 + return-void
18514 +.end method
18516 +.method public setAllowedContacts([I)V
18517 + .registers 2
18519 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
18521 + return-void
18522 +.end method
18524 +.method public setAndroidID(Ljava/lang/String;)V
18525 + .registers 2
18527 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
18529 + return-void
18530 +.end method
18532 +.method public setAndroidIdSetting(B)V
18533 + .registers 2
18535 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
18537 + return-void
18538 +.end method
18540 +.method public setBookmarksSetting(B)V
18541 + .registers 2
18543 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
18545 + return-void
18546 +.end method
18548 +.method public setCalendarSetting(B)V
18549 + .registers 2
18551 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
18553 + return-void
18554 +.end method
18556 +.method public setCallLogSetting(B)V
18557 + .registers 2
18559 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
18561 + return-void
18562 +.end method
18564 +.method public setCameraSetting(B)V
18565 + .registers 2
18567 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
18569 + return-void
18570 +.end method
18572 +.method public setContactsSetting(B)V
18573 + .registers 2
18575 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
18577 + return-void
18578 +.end method
18580 +.method public setDeviceId(Ljava/lang/String;)V
18581 + .registers 2
18583 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
18585 + return-void
18586 +.end method
18588 +.method public setDeviceIdSetting(B)V
18589 + .registers 2
18591 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
18593 + return-void
18594 +.end method
18596 +.method public setForceOnlineState(B)V
18597 + .registers 2
18599 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
18601 + return-void
18602 +.end method
18604 +.method public setIccAccessSetting(B)V
18605 + .registers 2
18607 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
18609 + return-void
18610 +.end method
18612 +.method public setIncomingCallsSetting(B)V
18613 + .registers 2
18615 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
18617 + return-void
18618 +.end method
18620 +.method public setIntentBootCompletedSetting(B)V
18621 + .registers 2
18623 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
18625 + return-void
18626 +.end method
18628 +.method public setIpTableProtectSetting(B)V
18629 + .registers 2
18631 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
18633 + return-void
18634 +.end method
18636 +.method public setLine1Number(Ljava/lang/String;)V
18637 + .registers 2
18639 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
18641 + return-void
18642 +.end method
18644 +.method public setLine1NumberSetting(B)V
18645 + .registers 2
18647 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
18649 + return-void
18650 +.end method
18652 +.method public setLocationGpsLat(Ljava/lang/String;)V
18653 + .registers 2
18655 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
18657 + return-void
18658 +.end method
18660 +.method public setLocationGpsLon(Ljava/lang/String;)V
18661 + .registers 2
18663 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
18665 + return-void
18666 +.end method
18668 +.method public setLocationGpsSetting(B)V
18669 + .registers 2
18671 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
18673 + return-void
18674 +.end method
18676 +.method public setLocationNetworkLat(Ljava/lang/String;)V
18677 + .registers 2
18679 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
18681 + return-void
18682 +.end method
18684 +.method public setLocationNetworkLon(Ljava/lang/String;)V
18685 + .registers 2
18687 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
18689 + return-void
18690 +.end method
18692 +.method public setLocationNetworkSetting(B)V
18693 + .registers 2
18695 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
18697 + return-void
18698 +.end method
18700 +.method public setMmsSetting(B)V
18701 + .registers 2
18703 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
18705 + return-void
18706 +.end method
18708 +.method public setNetworkInfoSetting(B)V
18709 + .registers 2
18711 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
18713 + return-void
18714 +.end method
18716 +.method public setNotificationSetting(B)V
18717 + .registers 2
18719 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
18721 + return-void
18722 +.end method
18724 +.method public setOutgoingCallsSetting(B)V
18725 + .registers 2
18727 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
18729 + return-void
18730 +.end method
18732 +.method public setPackageName(Ljava/lang/String;)V
18733 + .registers 2
18735 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
18737 + return-void
18738 +.end method
18740 +.method public setPhoneCallSetting(B)V
18741 + .registers 2
18743 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
18745 + return-void
18746 +.end method
18748 +.method public setRecordAudioSetting(B)V
18749 + .registers 2
18751 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
18753 + return-void
18754 +.end method
18756 +.method public setSendMmsSetting(B)V
18757 + .registers 2
18759 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
18761 + return-void
18762 +.end method
18764 +.method public setSimInfoSetting(B)V
18765 + .registers 2
18767 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
18769 + return-void
18770 +.end method
18772 +.method public setSimSerialNumber(Ljava/lang/String;)V
18773 + .registers 2
18775 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
18777 + return-void
18778 +.end method
18780 +.method public setSimSerialNumberSetting(B)V
18781 + .registers 2
18783 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
18785 + return-void
18786 +.end method
18788 +.method public setSmsSendSetting(B)V
18789 + .registers 2
18791 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
18793 + return-void
18794 +.end method
18796 +.method public setSmsSetting(B)V
18797 + .registers 2
18799 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
18801 + return-void
18802 +.end method
18804 +.method public setSubscriberId(Ljava/lang/String;)V
18805 + .registers 2
18807 + iput-object p1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
18809 + return-void
18810 +.end method
18812 +.method public setSubscriberIdSetting(B)V
18813 + .registers 2
18815 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
18817 + return-void
18818 +.end method
18820 +.method public setSwitchConnectivitySetting(B)V
18821 + .registers 2
18823 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
18825 + return-void
18826 +.end method
18828 +.method public setSwitchWifiStateSetting(B)V
18829 + .registers 2
18831 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
18833 + return-void
18834 +.end method
18836 +.method public setSystemLogsSetting(B)V
18837 + .registers 2
18839 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
18841 + return-void
18842 +.end method
18844 +.method public setUid(I)V
18845 + .registers 2
18847 + iput p1, p0, Landroid/privacy/PrivacySettings;->uid:I
18849 + return-void
18850 +.end method
18852 +.method public setWifiInfoSetting(B)V
18853 + .registers 2
18855 + iput-byte p1, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
18857 + return-void
18858 +.end method
18860 +.method public toString()Ljava/lang/String;
18861 + .registers 3
18863 + new-instance v0, Ljava/lang/StringBuilder;
18865 + invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
18867 + const-string v1, "PrivacySettings [_id="
18869 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18871 + move-result-object v0
18873 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
18875 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
18877 + move-result-object v0
18879 + const-string v1, ", accountsAuthTokensSetting="
18881 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18883 + move-result-object v0
18885 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
18887 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18889 + move-result-object v0
18891 + const-string v1, ", accountsSetting="
18893 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18895 + move-result-object v0
18897 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
18899 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18901 + move-result-object v0
18903 + const-string v1, ", bookmarksSetting="
18905 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18907 + move-result-object v0
18909 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
18911 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18913 + move-result-object v0
18915 + const-string v1, ", calendarSetting="
18917 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18919 + move-result-object v0
18921 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
18923 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18925 + move-result-object v0
18927 + const-string v1, ", callLogSetting="
18929 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18931 + move-result-object v0
18933 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
18935 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18937 + move-result-object v0
18939 + const-string v1, ", contactsSetting="
18941 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18943 + move-result-object v0
18945 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
18947 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18949 + move-result-object v0
18951 + const-string v1, ", deviceId="
18953 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18955 + move-result-object v0
18957 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
18959 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18961 + move-result-object v0
18963 + const-string v1, ", deviceIdSetting="
18965 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18967 + move-result-object v0
18969 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
18971 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18973 + move-result-object v0
18975 + const-string v1, ", incomingCallsSetting="
18977 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18979 + move-result-object v0
18981 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
18983 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18985 + move-result-object v0
18987 + const-string v1, ", intentBootCompletedSetting="
18989 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
18991 + move-result-object v0
18993 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
18995 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
18997 + move-result-object v0
18999 + const-string v1, ", line1Number="
19001 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19003 + move-result-object v0
19005 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
19007 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19009 + move-result-object v0
19011 + const-string v1, ", line1NumberSetting="
19013 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19015 + move-result-object v0
19017 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
19019 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19021 + move-result-object v0
19023 + const-string v1, ", locationGpsLat="
19025 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19027 + move-result-object v0
19029 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
19031 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19033 + move-result-object v0
19035 + const-string v1, ", locationGpsLon="
19037 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19039 + move-result-object v0
19041 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
19043 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19045 + move-result-object v0
19047 + const-string v1, ", locationGpsSetting="
19049 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19051 + move-result-object v0
19053 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
19055 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19057 + move-result-object v0
19059 + const-string v1, ", locationNetworkLat="
19061 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19063 + move-result-object v0
19065 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
19067 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19069 + move-result-object v0
19071 + const-string v1, ", locationNetworkLon="
19073 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19075 + move-result-object v0
19077 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
19079 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19081 + move-result-object v0
19083 + const-string v1, ", locationNetworkSetting="
19085 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19087 + move-result-object v0
19089 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
19091 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19093 + move-result-object v0
19095 + const-string v1, ", mmsSetting="
19097 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19099 + move-result-object v0
19101 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
19103 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19105 + move-result-object v0
19107 + const-string v1, ", networkInfoSetting="
19109 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19111 + move-result-object v0
19113 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
19115 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19117 + move-result-object v0
19119 + const-string v1, ", notificationSetting="
19121 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19123 + move-result-object v0
19125 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
19127 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19129 + move-result-object v0
19131 + const-string v1, ", outgoingCallsSetting="
19133 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19135 + move-result-object v0
19137 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
19139 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19141 + move-result-object v0
19143 + const-string v1, ", packageName="
19145 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19147 + move-result-object v0
19149 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
19151 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19153 + move-result-object v0
19155 + const-string v1, ", simInfoSetting="
19157 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19159 + move-result-object v0
19161 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
19163 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19165 + move-result-object v0
19167 + const-string v1, ", simSerialNumber="
19169 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19171 + move-result-object v0
19173 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
19175 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19177 + move-result-object v0
19179 + const-string v1, ", simSerialNumberSetting="
19181 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19183 + move-result-object v0
19185 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
19187 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19189 + move-result-object v0
19191 + const-string v1, ", smsSetting="
19193 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19195 + move-result-object v0
19197 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
19199 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19201 + move-result-object v0
19203 + const-string v1, ", subscriberId="
19205 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19207 + move-result-object v0
19209 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
19211 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19213 + move-result-object v0
19215 + const-string v1, ", subscriberIdSetting="
19217 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19219 + move-result-object v0
19221 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
19223 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19225 + move-result-object v0
19227 + const-string v1, ", systemLogsSetting="
19229 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19231 + move-result-object v0
19233 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
19235 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19237 + move-result-object v0
19239 + const-string v1, ", uid="
19241 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19243 + move-result-object v0
19245 + iget v1, p0, Landroid/privacy/PrivacySettings;->uid:I
19247 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19249 + move-result-object v0
19251 + const-string v1, ", phoneCallSetting="
19253 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19255 + move-result-object v0
19257 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
19259 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19261 + move-result-object v0
19263 + const-string v1, ", smsSendSetting="
19265 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19267 + move-result-object v0
19269 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
19271 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19273 + move-result-object v0
19275 + const-string v1, ", recordAudioSetting="
19277 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19279 + move-result-object v0
19281 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
19283 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19285 + move-result-object v0
19287 + const-string v1, ", cameraSetting="
19289 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19291 + move-result-object v0
19293 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
19295 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19297 + move-result-object v0
19299 + const-string v1, ", ipTableProtectSetting="
19301 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19303 + move-result-object v0
19305 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
19307 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19309 + move-result-object v0
19311 + const-string v1, ", iccAccessSetting="
19313 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19315 + move-result-object v0
19317 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
19319 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19321 + move-result-object v0
19323 + const-string v1, ", addOnManagementSetting="
19325 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19327 + move-result-object v0
19329 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
19331 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19333 + move-result-object v0
19335 + const-string v1, ", android ID="
19337 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19339 + move-result-object v0
19341 + iget-object v1, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
19343 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19345 + move-result-object v0
19347 + const-string v1, ", androidIdSetting="
19349 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19351 + move-result-object v0
19353 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
19355 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19357 + move-result-object v0
19359 + const-string v1, ", wifiInfoSetting="
19361 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19363 + move-result-object v0
19365 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
19367 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19369 + move-result-object v0
19371 + const-string v1, ", switchConnectivitySetting="
19373 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19375 + move-result-object v0
19377 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
19379 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19381 + move-result-object v0
19383 + const-string v1, ", sendMmsSetting="
19385 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19387 + move-result-object v0
19389 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
19391 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19393 + move-result-object v0
19395 + const-string v1, ", forceOnlineState="
19397 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19399 + move-result-object v0
19401 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
19403 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19405 + move-result-object v0
19407 + const-string v1, ", switchWifiStateSetting="
19409 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19411 + move-result-object v0
19413 + iget-byte v1, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
19415 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
19417 + move-result-object v0
19419 + const-string v1, "]"
19421 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
19423 + move-result-object v0
19425 + invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
19427 + move-result-object v0
19429 + return-object v0
19430 +.end method
19432 +.method public writeToParcel(Landroid/os/Parcel;I)V
19433 + .registers 4
19435 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
19437 + if-nez v0, :cond_ef
19439 + const/4 v0, -0x1
19441 + :goto_5
19442 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
19444 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->packageName:Ljava/lang/String;
19446 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19448 + iget v0, p0, Landroid/privacy/PrivacySettings;->uid:I
19450 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeInt(I)V
19452 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->deviceIdSetting:B
19454 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19456 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->deviceId:Ljava/lang/String;
19458 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19460 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->line1NumberSetting:B
19462 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19464 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->line1Number:Ljava/lang/String;
19466 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19468 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationGpsSetting:B
19470 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19472 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLat:Ljava/lang/String;
19474 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19476 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationGpsLon:Ljava/lang/String;
19478 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19480 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkSetting:B
19482 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19484 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLat:Ljava/lang/String;
19486 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19488 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->locationNetworkLon:Ljava/lang/String;
19490 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19492 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->networkInfoSetting:B
19494 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19496 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simInfoSetting:B
19498 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19500 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumberSetting:B
19502 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19504 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->simSerialNumber:Ljava/lang/String;
19506 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19508 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->subscriberIdSetting:B
19510 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19512 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->subscriberId:Ljava/lang/String;
19514 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19516 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsSetting:B
19518 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19520 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->accountsAuthTokensSetting:B
19522 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19524 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->outgoingCallsSetting:B
19526 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19528 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->incomingCallsSetting:B
19530 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19532 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->contactsSetting:B
19534 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19536 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->calendarSetting:B
19538 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19540 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->mmsSetting:B
19542 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19544 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSetting:B
19546 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19548 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->callLogSetting:B
19550 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19552 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->bookmarksSetting:B
19554 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19556 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->systemLogsSetting:B
19558 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19560 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->notificationSetting:B
19562 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19564 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->intentBootCompletedSetting:B
19566 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19568 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->cameraSetting:B
19570 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19572 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->recordAudioSetting:B
19574 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19576 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->allowedContacts:[I
19578 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeIntArray([I)V
19580 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->smsSendSetting:B
19582 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19584 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->phoneCallSetting:B
19586 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19588 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->ipTableProtectSetting:B
19590 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19592 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->iccAccessSetting:B
19594 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19596 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->addOnManagementSetting:B
19598 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19600 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->androidIdSetting:B
19602 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19604 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->androidID:Ljava/lang/String;
19606 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeString(Ljava/lang/String;)V
19608 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->wifiInfoSetting:B
19610 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19612 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->switchConnectivitySetting:B
19614 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19616 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->sendMmsSetting:B
19618 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19620 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->forceOnlineState:B
19622 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19624 + iget-byte v0, p0, Landroid/privacy/PrivacySettings;->switchWifiStateSetting:B
19626 + invoke-virtual {p1, v0}, Landroid/os/Parcel;->writeByte(B)V
19628 + return-void
19630 + :cond_ef
19631 + iget-object v0, p0, Landroid/privacy/PrivacySettings;->_id:Ljava/lang/Integer;
19633 + invoke-virtual {v0}, Ljava/lang/Integer;->intValue()I
19635 + move-result v0
19637 + goto/16 :goto_5
19638 +.end method
19639 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali ext-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali
19640 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 1969-12-31 18:00:00.000000000 -0600
19641 +++ ext-framework/smali/android/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture.smali 2012-11-02 22:30:48.955877388 -0500
19642 @@ -0,0 +1,129 @@
19643 +.class Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
19644 +.super Ljava/lang/Object;
19645 +.source "PrivacyAccountManager.java"
19647 +# interfaces
19648 +.implements Landroid/accounts/AccountManagerFuture;
19651 +# annotations
19652 +.annotation system Ldalvik/annotation/EnclosingClass;
19653 + value = Landroid/privacy/surrogate/PrivacyAccountManager;
19654 +.end annotation
19656 +.annotation system Ldalvik/annotation/InnerClass;
19657 + accessFlags = 0x2
19658 + name = "PrivacyAccountManagerFuture"
19659 +.end annotation
19661 +.annotation system Ldalvik/annotation/Signature;
19662 + value = {
19663 + "<V:",
19664 + "Ljava/lang/Object;",
19665 + ">",
19666 + "Ljava/lang/Object;",
19667 + "Landroid/accounts/AccountManagerFuture",
19668 + "<TV;>;"
19670 +.end annotation
19673 +# instance fields
19674 +.field private result:Ljava/lang/Object;
19675 + .annotation system Ldalvik/annotation/Signature;
19676 + value = {
19677 + "TV;"
19679 + .end annotation
19680 +.end field
19682 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
19685 +# direct methods
19686 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
19687 + .registers 3
19688 + .annotation system Ldalvik/annotation/Signature;
19689 + value = {
19690 + "(TV;)V"
19692 + .end annotation
19694 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->this$0:Landroid/privacy/surrogate/PrivacyAccountManager;
19696 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
19698 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
19700 + return-void
19701 +.end method
19704 +# virtual methods
19705 +.method public cancel(Z)Z
19706 + .registers 3
19708 + const/4 v0, 0x0
19710 + return v0
19711 +.end method
19713 +.method public getResult()Ljava/lang/Object;
19714 + .registers 2
19715 + .annotation system Ldalvik/annotation/Signature;
19716 + value = {
19717 + "()TV;"
19719 + .end annotation
19721 + .annotation system Ldalvik/annotation/Throws;
19722 + value = {
19723 + Landroid/accounts/OperationCanceledException;,
19724 + Ljava/io/IOException;,
19725 + Landroid/accounts/AuthenticatorException;
19727 + .end annotation
19729 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
19731 + return-object v0
19732 +.end method
19734 +.method public getResult(JLjava/util/concurrent/TimeUnit;)Ljava/lang/Object;
19735 + .registers 5
19736 + .annotation system Ldalvik/annotation/Signature;
19737 + value = {
19738 + "(J",
19739 + "Ljava/util/concurrent/TimeUnit;",
19740 + ")TV;"
19742 + .end annotation
19744 + .annotation system Ldalvik/annotation/Throws;
19745 + value = {
19746 + Landroid/accounts/OperationCanceledException;,
19747 + Ljava/io/IOException;,
19748 + Landroid/accounts/AuthenticatorException;
19750 + .end annotation
19752 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;->result:Ljava/lang/Object;
19754 + return-object v0
19755 +.end method
19757 +.method public isCancelled()Z
19758 + .registers 2
19760 + const/4 v0, 0x0
19762 + return v0
19763 +.end method
19765 +.method public isDone()Z
19766 + .registers 2
19768 + const/4 v0, 0x1
19770 + return v0
19771 +.end method
19772 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali ext-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali
19773 --- stock-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 1969-12-31 18:00:00.000000000 -0600
19774 +++ ext-framework/smali/android/privacy/surrogate/PrivacyAccountManager.smali 2012-11-02 22:30:48.955877388 -0500
19775 @@ -0,0 +1,701 @@
19776 +.class public final Landroid/privacy/surrogate/PrivacyAccountManager;
19777 +.super Landroid/accounts/AccountManager;
19778 +.source "PrivacyAccountManager.java"
19781 +# annotations
19782 +.annotation system Ldalvik/annotation/MemberClasses;
19783 + value = {
19784 + Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
19786 +.end annotation
19789 +# static fields
19790 +.field private static final TAG:Ljava/lang/String; = "PrivacyAccountManager"
19793 +# instance fields
19794 +.field private context:Landroid/content/Context;
19796 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
19799 +# direct methods
19800 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
19801 + .registers 5
19803 + invoke-direct {p0, p1, p2}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;)V
19805 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
19807 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
19809 + const-string/jumbo v1, "privacy"
19811 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
19813 + move-result-object v1
19815 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
19817 + move-result-object v1
19819 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
19821 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19823 + return-void
19824 +.end method
19826 +.method public constructor <init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
19827 + .registers 6
19829 + invoke-direct {p0, p1, p2, p3}, Landroid/accounts/AccountManager;-><init>(Landroid/content/Context;Landroid/accounts/IAccountManager;Landroid/os/Handler;)V
19831 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
19833 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
19835 + const-string/jumbo v1, "privacy"
19837 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
19839 + move-result-object v1
19841 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
19843 + move-result-object v1
19845 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
19847 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19849 + return-void
19850 +.end method
19853 +# virtual methods
19854 +.method public blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
19855 + .registers 12
19856 + .annotation system Ldalvik/annotation/Throws;
19857 + value = {
19858 + Landroid/accounts/OperationCanceledException;,
19859 + Ljava/io/IOException;,
19860 + Landroid/accounts/AuthenticatorException;
19862 + .end annotation
19864 + const/4 v5, 0x0
19866 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
19868 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19870 + move-result-object v1
19872 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19874 + move-result v2
19876 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19878 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19880 + move-result-object v6
19882 + if-eqz v6, :cond_23
19884 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
19886 + move-result v0
19888 + if-eqz v0, :cond_23
19890 + const/4 v7, 0x0
19892 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19894 + const/4 v3, 0x1
19896 + const-string v4, "authTokens"
19898 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19900 + :goto_22
19901 + return-object v7
19903 + :cond_23
19904 + invoke-super {p0, p1, p2, p3}, Landroid/accounts/AccountManager;->blockingGetAuthToken(Landroid/accounts/Account;Ljava/lang/String;Z)Ljava/lang/String;
19906 + move-result-object v7
19908 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19910 + const/4 v3, 0x0
19912 + const-string v4, "authTokens"
19914 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19916 + goto :goto_22
19917 +.end method
19919 +.method public getAccounts()[Landroid/accounts/Account;
19920 + .registers 10
19922 + const/4 v5, 0x0
19924 + const/4 v3, 0x0
19926 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
19928 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19930 + move-result-object v1
19932 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19934 + move-result v2
19936 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19938 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
19940 + move-result-object v6
19942 + if-eqz v6, :cond_27
19944 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
19946 + move-result v0
19948 + if-eqz v0, :cond_27
19950 + const-string v8, "[empty accounts list]"
19952 + new-array v7, v3, [Landroid/accounts/Account;
19954 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19956 + const/4 v3, 0x1
19958 + const-string v4, "accountsList"
19960 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19962 + :goto_26
19963 + return-object v7
19965 + :cond_27
19966 + const-string v8, "[real value]"
19968 + invoke-super {p0}, Landroid/accounts/AccountManager;->getAccounts()[Landroid/accounts/Account;
19970 + move-result-object v7
19972 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
19974 + const-string v4, "accountsList"
19976 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
19978 + goto :goto_26
19979 +.end method
19981 +.method public getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
19982 + .registers 11
19984 + const/4 v5, 0x0
19986 + const/4 v3, 0x0
19988 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
19990 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
19992 + move-result-object v1
19994 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
19996 + move-result v2
19998 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20000 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20002 + move-result-object v6
20004 + if-eqz v6, :cond_27
20006 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
20008 + move-result v0
20010 + if-eqz v0, :cond_27
20012 + const-string v8, "[empty accounts list]"
20014 + new-array v7, v3, [Landroid/accounts/Account;
20016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20018 + const/4 v3, 0x1
20020 + const-string v4, "accountsList"
20022 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20024 + :goto_26
20025 + return-object v7
20027 + :cond_27
20028 + const-string v8, "[real value]"
20030 + invoke-super {p0, p1}, Landroid/accounts/AccountManager;->getAccountsByType(Ljava/lang/String;)[Landroid/accounts/Account;
20032 + move-result-object v7
20034 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20036 + const-string v4, "accountsList"
20038 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20040 + goto :goto_26
20041 +.end method
20043 +.method public getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20044 + .registers 14
20045 + .annotation system Ldalvik/annotation/Signature;
20046 + value = {
20047 + "(",
20048 + "Ljava/lang/String;",
20049 + "[",
20050 + "Ljava/lang/String;",
20051 + "Landroid/accounts/AccountManagerCallback",
20052 + "<[",
20053 + "Landroid/accounts/Account;",
20054 + ">;",
20055 + "Landroid/os/Handler;",
20056 + ")",
20057 + "Landroid/accounts/AccountManagerFuture",
20058 + "<[",
20059 + "Landroid/accounts/Account;",
20060 + ">;"
20062 + .end annotation
20064 + const/4 v5, 0x0
20066 + const/4 v3, 0x0
20068 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
20070 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20072 + move-result-object v1
20074 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20076 + move-result v2
20078 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20080 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20082 + move-result-object v6
20084 + if-eqz v6, :cond_2c
20086 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
20088 + move-result v0
20090 + if-eqz v0, :cond_2c
20092 + const-string v8, "[false]"
20094 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
20096 + new-array v0, v3, [Landroid/accounts/Account;
20098 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
20100 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20102 + const/4 v3, 0x1
20104 + const-string v4, "accountsList"
20106 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20108 + :goto_2b
20109 + return-object v7
20111 + :cond_2c
20112 + const-string v8, "[real value]"
20114 + invoke-super {p0, p1, p2, p3, p4}, Landroid/accounts/AccountManager;->getAccountsByTypeAndFeatures(Ljava/lang/String;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20116 + move-result-object v7
20118 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20120 + const-string v4, "accountsList"
20122 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20124 + goto :goto_2b
20125 +.end method
20127 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20128 + .registers 16
20129 + .annotation system Ldalvik/annotation/Signature;
20130 + value = {
20131 + "(",
20132 + "Landroid/accounts/Account;",
20133 + "Ljava/lang/String;",
20134 + "Landroid/os/Bundle;",
20135 + "Landroid/app/Activity;",
20136 + "Landroid/accounts/AccountManagerCallback",
20137 + "<",
20138 + "Landroid/os/Bundle;",
20139 + ">;",
20140 + "Landroid/os/Handler;",
20141 + ")",
20142 + "Landroid/accounts/AccountManagerFuture",
20143 + "<",
20144 + "Landroid/os/Bundle;",
20145 + ">;"
20147 + .end annotation
20149 + const/4 v5, 0x0
20151 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
20153 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20155 + move-result-object v1
20157 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20159 + move-result v2
20161 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20163 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20165 + move-result-object v6
20167 + if-eqz v6, :cond_2e
20169 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
20171 + move-result v0
20173 + if-eqz v0, :cond_2e
20175 + const-string v8, "[empty]"
20177 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
20179 + new-instance v0, Landroid/os/Bundle;
20181 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
20183 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
20185 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20187 + const/4 v3, 0x1
20189 + const-string v4, "authTokens"
20191 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20193 + :goto_2d
20194 + return-object v7
20196 + :cond_2e
20197 + const-string v8, "[real value]"
20199 + invoke-super/range {p0 .. p6}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;Landroid/os/Bundle;Landroid/app/Activity;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20201 + move-result-object v7
20203 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20205 + const/4 v3, 0x0
20207 + const-string v4, "authTokens"
20209 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20211 + goto :goto_2d
20212 +.end method
20214 +.method public getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20215 + .registers 15
20216 + .annotation system Ldalvik/annotation/Signature;
20217 + value = {
20218 + "(",
20219 + "Landroid/accounts/Account;",
20220 + "Ljava/lang/String;",
20221 + "Z",
20222 + "Landroid/accounts/AccountManagerCallback",
20223 + "<",
20224 + "Landroid/os/Bundle;",
20225 + ">;",
20226 + "Landroid/os/Handler;",
20227 + ")",
20228 + "Landroid/accounts/AccountManagerFuture",
20229 + "<",
20230 + "Landroid/os/Bundle;",
20231 + ">;"
20233 + .end annotation
20235 + const/4 v5, 0x0
20237 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
20239 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20241 + move-result-object v1
20243 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20245 + move-result v2
20247 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20249 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20251 + move-result-object v6
20253 + if-eqz v6, :cond_2e
20255 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
20257 + move-result v0
20259 + if-eqz v0, :cond_2e
20261 + const-string v8, "[empty]"
20263 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
20265 + new-instance v0, Landroid/os/Bundle;
20267 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
20269 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
20271 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20273 + const/4 v3, 0x1
20275 + const-string v4, "authTokens"
20277 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20279 + :goto_2d
20280 + return-object v7
20282 + :cond_2e
20283 + const-string v8, "[real value]"
20285 + invoke-super/range {p0 .. p5}, Landroid/accounts/AccountManager;->getAuthToken(Landroid/accounts/Account;Ljava/lang/String;ZLandroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20287 + move-result-object v7
20289 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20291 + const/4 v3, 0x0
20293 + const-string v4, "authTokens"
20295 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20297 + goto :goto_2d
20298 +.end method
20300 +.method public getAuthTokenByFeatures(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Landroid/app/Activity;Landroid/os/Bundle;Landroid/os/Bundle;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20301 + .registers 18
20302 + .annotation system Ldalvik/annotation/Signature;
20303 + value = {
20304 + "(",
20305 + "Ljava/lang/String;",
20306 + "Ljava/lang/String;",
20307 + "[",
20308 + "Ljava/lang/String;",
20309 + "Landroid/app/Activity;",
20310 + "Landroid/os/Bundle;",
20311 + "Landroid/os/Bundle;",
20312 + "Landroid/accounts/AccountManagerCallback",
20313 + "<",
20314 + "Landroid/os/Bundle;",
20315 + ">;",
20316 + "Landroid/os/Handler;",
20317 + ")",
20318 + "Landroid/accounts/AccountManagerFuture",
20319 + "<",
20320 + "Landroid/os/Bundle;",
20321 + ">;"
20323 + .end annotation
20325 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
20327 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20329 + move-result-object v1
20331 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20333 + move-result v2
20335 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20337 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20339 + move-result-object v6
20341 + if-eqz v6, :cond_2e
20343 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsAuthTokensSetting()B
20345 + move-result v0
20347 + if-eqz v0, :cond_2e
20349 + const-string v8, "[empty]"
20351 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
20353 + new-instance v0, Landroid/os/Bundle;
20355 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
20357 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
20359 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20361 + const/4 v3, 0x1
20363 + const-string v4, "authTokens"
20365 + const/4 v5, 0x0
20367 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20369 + :goto_2d
20370 + return-object v7
20372 + :cond_2e
20373 + const-string v8, "[real value]"
20375 + invoke-super/range {p0 .. p8}, Landroid/accounts/AccountManager;->getAuthTokenByFeatures(Ljava/lang/String;Ljava/lang/String;[Ljava/lang/String;Landroid/app/Activity;Landroid/os/Bundle;Landroid/os/Bundle;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20377 + move-result-object v7
20379 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20381 + const/4 v3, 0x0
20383 + const-string v4, "authTokens"
20385 + const/4 v5, 0x0
20387 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20389 + goto :goto_2d
20390 +.end method
20392 +.method public hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20393 + .registers 14
20394 + .annotation system Ldalvik/annotation/Signature;
20395 + value = {
20396 + "(",
20397 + "Landroid/accounts/Account;",
20398 + "[",
20399 + "Ljava/lang/String;",
20400 + "Landroid/accounts/AccountManagerCallback",
20401 + "<",
20402 + "Ljava/lang/Boolean;",
20403 + ">;",
20404 + "Landroid/os/Handler;",
20405 + ")",
20406 + "Landroid/accounts/AccountManagerFuture",
20407 + "<",
20408 + "Ljava/lang/Boolean;",
20409 + ">;"
20411 + .end annotation
20413 + const/4 v5, 0x0
20415 + const/4 v3, 0x0
20417 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->context:Landroid/content/Context;
20419 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
20421 + move-result-object v1
20423 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
20425 + move-result v2
20427 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20429 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20431 + move-result-object v6
20433 + if-eqz v6, :cond_2e
20435 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getAccountsSetting()B
20437 + move-result v0
20439 + if-eqz v0, :cond_2e
20441 + const-string v8, "[false]"
20443 + new-instance v7, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;
20445 + invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
20447 + move-result-object v0
20449 + invoke-direct {v7, p0, v0}, Landroid/privacy/surrogate/PrivacyAccountManager$PrivacyAccountManagerFuture;-><init>(Landroid/privacy/surrogate/PrivacyAccountManager;Ljava/lang/Object;)V
20451 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20453 + const/4 v3, 0x1
20455 + const-string v4, "accountsList"
20457 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20459 + :goto_2d
20460 + return-object v7
20462 + :cond_2e
20463 + const-string v8, "[real value]"
20465 + invoke-super {p0, p1, p2, p3, p4}, Landroid/accounts/AccountManager;->hasFeatures(Landroid/accounts/Account;[Ljava/lang/String;Landroid/accounts/AccountManagerCallback;Landroid/os/Handler;)Landroid/accounts/AccountManagerFuture;
20467 + move-result-object v7
20469 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyAccountManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20471 + const-string v4, "accountsList"
20473 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20475 + goto :goto_2d
20476 +.end method
20477 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali ext-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali
20478 --- stock-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 1969-12-31 18:00:00.000000000 -0600
20479 +++ ext-framework/smali/android/privacy/surrogate/PrivacyActivityManagerService.smali 2012-11-02 22:30:49.051877859 -0500
20480 @@ -0,0 +1,1217 @@
20481 +.class public final Landroid/privacy/surrogate/PrivacyActivityManagerService;
20482 +.super Ljava/lang/Object;
20483 +.source "PrivacyActivityManagerService.java"
20486 +# static fields
20487 +.field private static final TAG:Ljava/lang/String; = "PrivacyActivityManagerService"
20489 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
20491 +.field private static tmpIn:Landroid/content/Intent;
20493 +.field private static tmpInHash:J
20495 +.field private static tmpInReceivers:I
20497 +.field private static tmpMms:Landroid/content/Intent;
20499 +.field private static tmpMmsHash:J
20501 +.field private static tmpMmsReceivers:I
20503 +.field private static tmpOut:Landroid/content/Intent;
20505 +.field private static tmpOutHash:J
20507 +.field private static tmpOutReceivers:I
20509 +.field private static tmpPackageAddedHash:J
20511 +.field private static tmpSms:Landroid/content/Intent;
20513 +.field private static tmpSmsHash:J
20515 +.field private static tmpSmsReceivers:I
20518 +# direct methods
20519 +.method static constructor <clinit>()V
20520 + .registers 3
20522 + const/4 v2, 0x0
20524 + const-wide/16 v0, 0x0
20526 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
20528 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
20530 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
20532 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
20534 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
20536 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
20538 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
20540 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
20542 + sput-wide v0, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
20544 + return-void
20545 +.end method
20547 +.method public constructor <init>()V
20548 + .registers 1
20550 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
20552 + return-void
20553 +.end method
20555 +.method public static enforcePrivacyPermission(Ljava/lang/String;ILandroid/content/Intent;Landroid/content/Context;I)V
20556 + .registers 29
20558 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20560 + if-nez v2, :cond_13
20562 + if-eqz p3, :cond_13
20564 + const-string/jumbo v2, "privacy"
20566 + move-object/from16 v0, p3
20568 + invoke-virtual {v0, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
20570 + move-result-object v2
20572 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
20574 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20576 + :cond_13
20577 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20579 + if-nez v2, :cond_2c
20581 + if-nez p3, :cond_2c
20583 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
20585 + const/4 v3, 0x0
20587 + const-string/jumbo v4, "privacy"
20589 + invoke-static {v4}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
20591 + move-result-object v4
20593 + invoke-static {v4}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
20595 + move-result-object v4
20597 + invoke-direct {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
20599 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20601 + :cond_2c
20602 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getAction()Ljava/lang/String;
20604 + move-result-object v16
20606 + const-string v2, "android.intent.action.NEW_OUTGOING_CALL"
20608 + move-object/from16 v0, v16
20610 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20612 + move-result v2
20614 + if-eqz v2, :cond_cc
20616 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20618 + move-object/from16 v0, p0
20620 + move/from16 v1, p1
20622 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20624 + move-result-object v8
20626 + const-string v2, "android.intent.extra.PHONE_NUMBER"
20628 + move-object/from16 v0, p2
20630 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
20632 + move-result-object v23
20634 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
20636 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20638 + move-result-wide v4
20640 + cmp-long v2, v2, v4
20642 + if-eqz v2, :cond_66
20644 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
20646 + move-result-object v2
20648 + check-cast v2, Landroid/content/Intent;
20650 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
20652 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20654 + move-result-wide v2
20656 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
20658 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
20660 + :cond_66
20661 + if-eqz v8, :cond_93
20663 + :try_start_68
20664 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getOutgoingCallsSetting()B
20666 + move-result v2
20668 + if-eqz v2, :cond_93
20670 + const-string v23, ""
20672 + const-string v2, "android.intent.extra.PHONE_NUMBER"
20674 + move-object/from16 v0, p2
20676 + move-object/from16 v1, v23
20678 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
20680 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20682 + const/4 v5, 0x1
20684 + const-string/jumbo v6, "outgoingCall"
20686 + const/4 v7, 0x0
20688 + move-object/from16 v3, p0
20690 + move/from16 v4, p1
20692 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20693 + :try_end_87
20694 + .catch Ljava/lang/Exception; {:try_start_68 .. :try_end_87} :catch_bd
20696 + :cond_87
20697 + :goto_87
20698 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
20700 + const/4 v3, 0x1
20702 + if-le v2, v3, :cond_c8
20704 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
20706 + add-int/lit8 v2, v2, -0x1
20708 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutReceivers:I
20710 + :cond_92
20711 + :goto_92
20712 + return-void
20714 + :cond_93
20715 + :try_start_93
20716 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOutHash:J
20718 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20720 + move-result-wide v4
20722 + cmp-long v2, v2, v4
20724 + if-nez v2, :cond_87
20726 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
20728 + const-string v3, "android.intent.extra.PHONE_NUMBER"
20730 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
20732 + move-result-object v23
20734 + const-string v2, "android.intent.extra.PHONE_NUMBER"
20736 + move-object/from16 v0, p2
20738 + move-object/from16 v1, v23
20740 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
20742 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20744 + const/4 v5, 0x0
20746 + const-string/jumbo v6, "outgoingCall"
20748 + const/4 v7, 0x0
20750 + move-object/from16 v3, p0
20752 + move/from16 v4, p1
20754 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20755 + :try_end_bc
20756 + .catch Ljava/lang/Exception; {:try_start_93 .. :try_end_bc} :catch_bd
20758 + goto :goto_87
20760 + :catch_bd
20761 + move-exception v20
20763 + const-string v2, "PrivacyActivityManagerService"
20765 + const-string v3, "failed to enforce intent broadcast permission"
20767 + move-object/from16 v0, v20
20769 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
20771 + goto :goto_87
20773 + :cond_c8
20774 + const/4 v2, 0x0
20776 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpOut:Landroid/content/Intent;
20778 + goto :goto_92
20780 + :cond_cc
20781 + const-string v2, "android.intent.action.PHONE_STATE"
20783 + move-object/from16 v0, v16
20785 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20787 + move-result v2
20789 + if-eqz v2, :cond_170
20791 + const-string v2, "incoming_number"
20793 + move-object/from16 v0, p2
20795 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
20797 + move-result-object v23
20799 + if-eqz v23, :cond_92
20801 + invoke-virtual/range {v23 .. v23}, Ljava/lang/String;->isEmpty()Z
20803 + move-result v2
20805 + if-nez v2, :cond_92
20807 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20809 + move-object/from16 v0, p0
20811 + move/from16 v1, p1
20813 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20815 + move-result-object v8
20817 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
20819 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20821 + move-result-wide v4
20823 + cmp-long v2, v2, v4
20825 + if-eqz v2, :cond_10a
20827 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
20829 + move-result-object v2
20831 + check-cast v2, Landroid/content/Intent;
20833 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
20835 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20837 + move-result-wide v2
20839 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
20841 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
20843 + :cond_10a
20844 + if-eqz v8, :cond_137
20846 + :try_start_10c
20847 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
20849 + move-result v2
20851 + if-eqz v2, :cond_137
20853 + const-string v23, ""
20855 + const-string v2, "incoming_number"
20857 + move-object/from16 v0, p2
20859 + move-object/from16 v1, v23
20861 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
20863 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20865 + const/4 v5, 0x1
20867 + const-string v6, "incomingCall"
20869 + const/4 v7, 0x0
20871 + move-object/from16 v3, p0
20873 + move/from16 v4, p1
20875 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20876 + :try_end_12a
20877 + .catch Ljava/lang/Exception; {:try_start_10c .. :try_end_12a} :catch_160
20879 + :cond_12a
20880 + :goto_12a
20881 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
20883 + const/4 v3, 0x1
20885 + if-le v2, v3, :cond_16b
20887 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
20889 + add-int/lit8 v2, v2, -0x1
20891 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInReceivers:I
20893 + goto/16 :goto_92
20895 + :cond_137
20896 + :try_start_137
20897 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpInHash:J
20899 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
20901 + move-result-wide v4
20903 + cmp-long v2, v2, v4
20905 + if-nez v2, :cond_12a
20907 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
20909 + const-string v3, "incoming_number"
20911 + invoke-virtual {v2, v3}, Landroid/content/Intent;->getStringExtra(Ljava/lang/String;)Ljava/lang/String;
20913 + move-result-object v23
20915 + const-string v2, "incoming_number"
20917 + move-object/from16 v0, p2
20919 + move-object/from16 v1, v23
20921 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
20923 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20925 + const/4 v5, 0x0
20927 + const-string v6, "incomingCall"
20929 + const/4 v7, 0x0
20931 + move-object/from16 v3, p0
20933 + move/from16 v4, p1
20935 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
20936 + :try_end_15f
20937 + .catch Ljava/lang/Exception; {:try_start_137 .. :try_end_15f} :catch_160
20939 + goto :goto_12a
20941 + :catch_160
20942 + move-exception v20
20944 + const-string v2, "PrivacyActivityManagerService"
20946 + const-string v3, "failed to enforce intent broadcast permission"
20948 + move-object/from16 v0, v20
20950 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
20952 + goto :goto_12a
20954 + :cond_16b
20955 + const/4 v2, 0x0
20957 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpIn:Landroid/content/Intent;
20959 + goto/16 :goto_92
20961 + :cond_170
20962 + const-string v2, "android.provider.Telephony.SMS_RECEIVED"
20964 + move-object/from16 v0, v16
20966 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
20968 + move-result v2
20970 + if-eqz v2, :cond_253
20972 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
20974 + move-object/from16 v0, p0
20976 + move/from16 v1, p1
20978 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
20980 + move-result-object v8
20982 + const-string v23, "[real]"
20984 + const-string/jumbo v2, "pdus"
20986 + move-object/from16 v0, p2
20988 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
20990 + move-result-object v2
20992 + check-cast v2, [Ljava/lang/Object;
20994 + move-object/from16 v22, v2
20996 + check-cast v22, [Ljava/lang/Object;
20998 + if-eqz v22, :cond_1f8
21000 + const/4 v2, 0x0
21002 + aget-object v2, v22, v2
21004 + check-cast v2, [B
21006 + check-cast v2, [B
21008 + move-object/from16 v19, v2
21010 + :goto_1a0
21011 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
21013 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21015 + move-result-wide v4
21017 + cmp-long v2, v2, v4
21019 + if-eqz v2, :cond_1ba
21021 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
21023 + move-result-object v2
21025 + check-cast v2, Landroid/content/Intent;
21027 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
21029 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21031 + move-result-wide v2
21033 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
21035 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
21037 + :cond_1ba
21038 + if-eqz v8, :cond_1fb
21040 + :try_start_1bc
21041 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
21043 + move-result v2
21045 + if-eqz v2, :cond_1fb
21047 + const-string v23, "[empty]"
21049 + const/4 v2, 0x1
21051 + new-array v0, v2, [Ljava/lang/Object;
21053 + move-object/from16 v21, v0
21055 + const/4 v2, 0x0
21057 + const/16 v3, 0x10
21059 + new-array v3, v3, [B
21061 + fill-array-data v3, :array_3da
21063 + aput-object v3, v21, v2
21065 + const-string/jumbo v2, "pdus"
21067 + move-object/from16 v0, p2
21069 + move-object/from16 v1, v21
21071 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
21073 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21075 + const/4 v5, 0x1
21077 + const-string/jumbo v6, "sms"
21079 + const/4 v7, 0x0
21081 + move-object/from16 v3, p0
21083 + move/from16 v4, p1
21085 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21086 + :try_end_1eb
21087 + .catch Ljava/lang/Exception; {:try_start_1bc .. :try_end_1eb} :catch_240
21089 + :cond_1eb
21090 + :goto_1eb
21091 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
21093 + const/4 v3, 0x1
21095 + if-le v2, v3, :cond_24e
21097 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
21099 + add-int/lit8 v2, v2, -0x1
21101 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsReceivers:I
21103 + goto/16 :goto_92
21105 + :cond_1f8
21106 + const/16 v19, 0x0
21108 + goto :goto_1a0
21110 + :cond_1fb
21111 + :try_start_1fb
21112 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSmsHash:J
21114 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21116 + move-result-wide v4
21118 + cmp-long v2, v2, v4
21120 + if-nez v2, :cond_1eb
21122 + const-string/jumbo v2, "pdus"
21124 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
21126 + const-string/jumbo v4, "pdus"
21128 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
21130 + move-result-object v3
21132 + move-object/from16 v0, p2
21134 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
21136 + const-string/jumbo v2, "pdus"
21138 + move-object/from16 v0, p2
21140 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
21142 + move-result-object v2
21144 + check-cast v2, [Ljava/lang/Object;
21146 + move-object v0, v2
21148 + check-cast v0, [Ljava/lang/Object;
21150 + move-object/from16 v22, v0
21152 + if-eqz v22, :cond_24b
21154 + const/4 v2, 0x0
21156 + aget-object v2, v22, v2
21158 + check-cast v2, [B
21160 + check-cast v2, [B
21162 + move-object/from16 v19, v2
21164 + :goto_231
21165 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21167 + const/4 v5, 0x0
21169 + const-string/jumbo v6, "sms"
21171 + const/4 v7, 0x0
21173 + move-object/from16 v3, p0
21175 + move/from16 v4, p1
21177 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21178 + :try_end_23f
21179 + .catch Ljava/lang/Exception; {:try_start_1fb .. :try_end_23f} :catch_240
21181 + goto :goto_1eb
21183 + :catch_240
21184 + move-exception v20
21186 + const-string v2, "PrivacyActivityManagerService"
21188 + const-string v3, "failed to enforce intent broadcast permission"
21190 + move-object/from16 v0, v20
21192 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
21194 + goto :goto_1eb
21196 + :cond_24b
21197 + const/16 v19, 0x0
21199 + goto :goto_231
21201 + :cond_24e
21202 + const/4 v2, 0x0
21204 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpSms:Landroid/content/Intent;
21206 + goto/16 :goto_92
21208 + :cond_253
21209 + const-string v2, "android.provider.Telephony.WAP_PUSH_RECEIVED"
21211 + move-object/from16 v0, v16
21213 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
21215 + move-result v2
21217 + if-nez v2, :cond_267
21219 + const-string v2, "android.intent.action.DATA_SMS_RECEIVED"
21221 + move-object/from16 v0, v16
21223 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
21225 + move-result v2
21227 + if-eqz v2, :cond_340
21229 + :cond_267
21230 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21232 + move-object/from16 v0, p0
21234 + move/from16 v1, p1
21236 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21238 + move-result-object v8
21240 + const-string v23, "[real]"
21242 + const-string/jumbo v2, "pdus"
21244 + move-object/from16 v0, p2
21246 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
21248 + move-result-object v2
21250 + check-cast v2, [Ljava/lang/Object;
21252 + move-object/from16 v22, v2
21254 + check-cast v22, [Ljava/lang/Object;
21256 + if-eqz v22, :cond_2e5
21258 + const/4 v2, 0x0
21260 + aget-object v2, v22, v2
21262 + check-cast v2, [B
21264 + check-cast v2, [B
21266 + move-object/from16 v19, v2
21268 + :goto_28d
21269 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
21271 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21273 + move-result-wide v4
21275 + cmp-long v2, v2, v4
21277 + if-eqz v2, :cond_2a7
21279 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->clone()Ljava/lang/Object;
21281 + move-result-object v2
21283 + check-cast v2, Landroid/content/Intent;
21285 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
21287 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21289 + move-result-wide v2
21291 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
21293 + sput p4, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
21295 + :cond_2a7
21296 + if-eqz v8, :cond_2e8
21298 + :try_start_2a9
21299 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
21301 + move-result v2
21303 + if-eqz v2, :cond_2e8
21305 + const-string v23, "[empty]"
21307 + const/4 v2, 0x1
21309 + new-array v0, v2, [Ljava/lang/Object;
21311 + move-object/from16 v21, v0
21313 + const/4 v2, 0x0
21315 + const/16 v3, 0x10
21317 + new-array v3, v3, [B
21319 + fill-array-data v3, :array_3e6
21321 + aput-object v3, v21, v2
21323 + const-string/jumbo v2, "pdus"
21325 + move-object/from16 v0, p2
21327 + move-object/from16 v1, v21
21329 + invoke-virtual {v0, v2, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
21331 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21333 + const/4 v5, 0x1
21335 + const-string/jumbo v6, "mms"
21337 + const/4 v7, 0x0
21339 + move-object/from16 v3, p0
21341 + move/from16 v4, p1
21343 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21344 + :try_end_2d8
21345 + .catch Ljava/lang/Exception; {:try_start_2a9 .. :try_end_2d8} :catch_32d
21347 + :cond_2d8
21348 + :goto_2d8
21349 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
21351 + const/4 v3, 0x1
21353 + if-le v2, v3, :cond_33b
21355 + sget v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
21357 + add-int/lit8 v2, v2, -0x1
21359 + sput v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsReceivers:I
21361 + goto/16 :goto_92
21363 + :cond_2e5
21364 + const/16 v19, 0x0
21366 + goto :goto_28d
21368 + :cond_2e8
21369 + :try_start_2e8
21370 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMmsHash:J
21372 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21374 + move-result-wide v4
21376 + cmp-long v2, v2, v4
21378 + if-nez v2, :cond_2d8
21380 + const-string/jumbo v2, "pdus"
21382 + sget-object v3, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
21384 + const-string/jumbo v4, "pdus"
21386 + invoke-virtual {v3, v4}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
21388 + move-result-object v3
21390 + move-object/from16 v0, p2
21392 + invoke-virtual {v0, v2, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/io/Serializable;)Landroid/content/Intent;
21394 + const-string/jumbo v2, "pdus"
21396 + move-object/from16 v0, p2
21398 + invoke-virtual {v0, v2}, Landroid/content/Intent;->getSerializableExtra(Ljava/lang/String;)Ljava/io/Serializable;
21400 + move-result-object v2
21402 + check-cast v2, [Ljava/lang/Object;
21404 + move-object v0, v2
21406 + check-cast v0, [Ljava/lang/Object;
21408 + move-object/from16 v22, v0
21410 + if-eqz v22, :cond_338
21412 + const/4 v2, 0x0
21414 + aget-object v2, v22, v2
21416 + check-cast v2, [B
21418 + check-cast v2, [B
21420 + move-object/from16 v19, v2
21422 + :goto_31e
21423 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21425 + const/4 v5, 0x0
21427 + const-string/jumbo v6, "mms"
21429 + const/4 v7, 0x0
21431 + move-object/from16 v3, p0
21433 + move/from16 v4, p1
21435 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21436 + :try_end_32c
21437 + .catch Ljava/lang/Exception; {:try_start_2e8 .. :try_end_32c} :catch_32d
21439 + goto :goto_2d8
21441 + :catch_32d
21442 + move-exception v20
21444 + const-string v2, "PrivacyActivityManagerService"
21446 + const-string v3, "failed to enforce intent broadcast permission"
21448 + move-object/from16 v0, v20
21450 + invoke-static {v2, v3, v0}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;Ljava/lang/Throwable;)I
21452 + goto :goto_2d8
21454 + :cond_338
21455 + const/16 v19, 0x0
21457 + goto :goto_31e
21459 + :cond_33b
21460 + const/4 v2, 0x0
21462 + sput-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpMms:Landroid/content/Intent;
21464 + goto/16 :goto_92
21466 + :cond_340
21467 + const-string v2, "android.intent.action.BOOT_COMPLETED"
21469 + move-object/from16 v0, v16
21471 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
21473 + move-result v2
21475 + if-eqz v2, :cond_38d
21477 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21479 + invoke-virtual {v2}, Landroid/privacy/PrivacySettingsManager;->setBootCompleted()V
21481 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21483 + move-object/from16 v0, p0
21485 + invoke-virtual {v2, v0}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
21487 + move-result-object v8
21489 + if-eqz v8, :cond_37d
21491 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIntentBootCompletedSetting()B
21493 + move-result v2
21495 + if-eqz v2, :cond_37d
21497 + const-string v2, "empty"
21499 + move-object/from16 v0, p2
21501 + invoke-virtual {v0, v2}, Landroid/content/Intent;->setAction(Ljava/lang/String;)Landroid/content/Intent;
21503 + const-string v2, "com.android.privacy.pdroid.extension"
21505 + move-object/from16 v0, p2
21507 + invoke-virtual {v0, v2}, Landroid/content/Intent;->setPackage(Ljava/lang/String;)Landroid/content/Intent;
21509 + sget-object v9, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21511 + const/4 v12, 0x1
21513 + const-string v13, "intentBootCompleted"
21515 + const/4 v14, 0x0
21517 + const/4 v15, 0x0
21519 + move-object/from16 v10, p0
21521 + move/from16 v11, p1
21523 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21525 + goto/16 :goto_92
21527 + :cond_37d
21528 + sget-object v9, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21530 + const/4 v12, 0x0
21532 + const-string v13, "intentBootCompleted"
21534 + const/4 v14, 0x0
21536 + const/4 v15, 0x0
21538 + move-object/from16 v10, p0
21540 + move/from16 v11, p1
21542 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21544 + goto/16 :goto_92
21546 + :cond_38d
21547 + const-string v2, "android.intent.action.PACKAGE_ADDED"
21549 + move-object/from16 v0, v16
21551 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
21553 + move-result v2
21555 + if-eqz v2, :cond_92
21557 + sget-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
21559 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21561 + move-result-wide v4
21563 + cmp-long v2, v2, v4
21565 + if-eqz v2, :cond_92
21567 + invoke-static/range {p2 .. p2}, Landroid/privacy/surrogate/PrivacyActivityManagerService;->hashCode(Landroid/content/Intent;)J
21569 + move-result-wide v2
21571 + sput-wide v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->tmpPackageAddedHash:J
21573 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getData()Landroid/net/Uri;
21575 + move-result-object v2
21577 + invoke-virtual {v2}, Landroid/net/Uri;->getSchemeSpecificPart()Ljava/lang/String;
21579 + move-result-object v17
21581 + invoke-virtual/range {p2 .. p2}, Landroid/content/Intent;->getExtras()Landroid/os/Bundle;
21583 + move-result-object v2
21585 + const-string v3, "android.intent.extra.UID"
21587 + invoke-virtual {v2, v3}, Landroid/os/Bundle;->getInt(Ljava/lang/String;)I
21589 + move-result v18
21591 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21593 + move-object/from16 v0, v17
21595 + move/from16 v1, v18
21597 + invoke-virtual {v2, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21599 + move-result-object v8
21601 + if-eqz v8, :cond_92
21603 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getUid()I
21605 + move-result v2
21607 + move/from16 v0, v18
21609 + if-eq v2, v0, :cond_92
21611 + move/from16 v0, v18
21613 + invoke-virtual {v8, v0}, Landroid/privacy/PrivacySettings;->setUid(I)V
21615 + sget-object v2, Landroid/privacy/surrogate/PrivacyActivityManagerService;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21617 + invoke-virtual {v2, v8}, Landroid/privacy/PrivacySettingsManager;->saveSettings(Landroid/privacy/PrivacySettings;)Z
21619 + goto/16 :goto_92
21621 + nop
21623 + :array_3da
21624 + .array-data 0x1
21625 + 0x0t
21626 + 0x20t
21627 + 0x1t
21628 + 0x81t
21629 + 0xf0t
21630 + 0x0t
21631 + 0x0t
21632 + 0x11t
21633 + 0x90t
21634 + 0x1t
21635 + 0x30t
21636 + 0x22t
21637 + 0x22t
21638 + 0x80t
21639 + 0x1t
21640 + 0x20t
21641 + .end array-data
21643 + :array_3e6
21644 + .array-data 0x1
21645 + 0x0t
21646 + 0x20t
21647 + 0x1t
21648 + 0x81t
21649 + 0xf0t
21650 + 0x0t
21651 + 0x0t
21652 + 0x11t
21653 + 0x90t
21654 + 0x1t
21655 + 0x30t
21656 + 0x22t
21657 + 0x22t
21658 + 0x80t
21659 + 0x1t
21660 + 0x20t
21661 + .end array-data
21662 +.end method
21664 +.method private static hashCode(Landroid/content/Intent;)J
21665 + .registers 7
21667 + const-wide/16 v3, 0x0
21669 + const-string/jumbo v2, "privacy_hash"
21671 + invoke-virtual {p0, v2, v3, v4}, Landroid/content/Intent;->getLongExtra(Ljava/lang/String;J)J
21673 + move-result-wide v0
21675 + cmp-long v2, v0, v3
21677 + if-nez v2, :cond_1e
21679 + invoke-virtual {p0}, Landroid/content/Intent;->filterHashCode()I
21681 + move-result v2
21683 + int-to-long v2, v2
21685 + invoke-static {}, Ljava/lang/System;->currentTimeMillis()J
21687 + move-result-wide v4
21689 + add-long v0, v2, v4
21691 + const-string/jumbo v2, "privacy_hash"
21693 + invoke-virtual {p0, v2, v0, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;J)Landroid/content/Intent;
21695 + :cond_1e
21696 + return-wide v0
21697 +.end method
21698 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCDMALTEPhone.smali ext-framework/smali/android/privacy/surrogate/PrivacyCDMALTEPhone.smali
21699 --- stock-framework/smali/android/privacy/surrogate/PrivacyCDMALTEPhone.smali 1969-12-31 18:00:00.000000000 -0600
21700 +++ ext-framework/smali/android/privacy/surrogate/PrivacyCDMALTEPhone.smali 2012-11-02 22:30:49.075877983 -0500
21701 @@ -0,0 +1,1696 @@
21702 +.class public Landroid/privacy/surrogate/PrivacyCDMALTEPhone;
21703 +.super Lcom/android/internal/telephony/cdma/CDMALTEPhone;
21704 +.source "PrivacyCDMALTEPhone.java"
21707 +# static fields
21708 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyCDMALTEPhone"
21711 +# instance fields
21712 +.field private context:Landroid/content/Context;
21714 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
21717 +# direct methods
21718 +.method public constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
21719 + .registers 7
21721 + invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
21723 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21725 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
21727 + const-string/jumbo v1, "privacy"
21729 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
21731 + move-result-object v1
21733 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
21735 + move-result-object v1
21737 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
21739 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21741 + const-string v0, "PrivacyCDMALTEPhone"
21743 + new-instance v1, Ljava/lang/StringBuilder;
21745 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
21747 + const-string v2, "Constructor ready for package: "
21749 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21751 + move-result-object v1
21753 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21755 + move-result-object v2
21757 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21759 + move-result-object v1
21761 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
21763 + move-result-object v1
21765 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
21767 + return-void
21768 +.end method
21771 +# virtual methods
21772 +.method public dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
21773 + .registers 10
21774 + .annotation system Ldalvik/annotation/Throws;
21775 + value = {
21776 + Lcom/android/internal/telephony/CallStateException;
21778 + .end annotation
21780 + const/4 v2, 0x0
21782 + const/4 v5, 0x0
21784 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21786 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21788 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21790 + move-result-object v1
21792 + const/4 v3, -0x1
21794 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21796 + move-result-object v7
21798 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21800 + if-eqz v0, :cond_31
21802 + if-eqz v7, :cond_31
21804 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
21806 + move-result v0
21808 + if-eqz v0, :cond_31
21810 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21812 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21814 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21816 + move-result-object v1
21818 + const/4 v3, 0x1
21820 + const-string/jumbo v4, "phoneCall"
21822 + move-object v6, v5
21824 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21826 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
21828 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
21830 + throw v0
21832 + :cond_31
21833 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21835 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21837 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21839 + move-result-object v1
21841 + const-string/jumbo v4, "phoneCall"
21843 + move v3, v2
21845 + move-object v6, v5
21847 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21849 + invoke-super {p0, p1}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
21851 + move-result-object v0
21853 + return-object v0
21854 +.end method
21856 +.method public dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
21857 + .registers 11
21858 + .annotation system Ldalvik/annotation/Throws;
21859 + value = {
21860 + Lcom/android/internal/telephony/CallStateException;
21862 + .end annotation
21864 + const/4 v2, 0x0
21866 + const/4 v5, 0x0
21868 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21870 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21872 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21874 + move-result-object v1
21876 + const/4 v3, -0x1
21878 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21880 + move-result-object v7
21882 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21884 + if-eqz v0, :cond_31
21886 + if-eqz v7, :cond_31
21888 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
21890 + move-result v0
21892 + if-eqz v0, :cond_31
21894 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21896 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21898 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21900 + move-result-object v1
21902 + const/4 v3, 0x1
21904 + const-string/jumbo v4, "phoneCall"
21906 + move-object v6, v5
21908 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21910 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
21912 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
21914 + throw v0
21916 + :cond_31
21917 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21919 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21921 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21923 + move-result-object v1
21925 + const-string/jumbo v4, "phoneCall"
21927 + move v3, v2
21929 + move-object v6, v5
21931 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
21933 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
21935 + move-result-object v0
21937 + return-object v0
21938 +.end method
21940 +.method public getCellLocation()Landroid/telephony/CellLocation;
21941 + .registers 8
21943 + const/4 v5, 0x0
21945 + const/4 v2, 0x0
21947 + const-string v0, "PrivacyCDMALTEPhone"
21949 + new-instance v1, Ljava/lang/StringBuilder;
21951 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
21953 + const-string v3, "Package: "
21955 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21957 + move-result-object v1
21959 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21961 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21963 + move-result-object v3
21965 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21967 + move-result-object v1
21969 + const-string v3, " asked for getCellLocation()"
21971 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
21973 + move-result-object v1
21975 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
21977 + move-result-object v1
21979 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
21981 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21983 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
21985 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
21987 + move-result-object v1
21989 + invoke-static {}, Landroid/os/Process;->myUid()I
21991 + move-result v3
21993 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
21995 + move-result-object v6
21997 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
21999 + if-eqz v0, :cond_5f
22001 + if-eqz v6, :cond_5f
22003 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
22005 + move-result v0
22007 + if-nez v0, :cond_48
22009 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22011 + move-result v0
22013 + if-eqz v0, :cond_5f
22015 + :cond_48
22016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22018 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22020 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22022 + move-result-object v1
22024 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22026 + move-result v3
22028 + const-string v4, "locationNetwork"
22030 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22032 + new-instance v0, Landroid/telephony/cdma/CdmaCellLocation;
22034 + invoke-direct {v0}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
22036 + :goto_5e
22037 + return-object v0
22039 + :cond_5f
22040 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22042 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22044 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22046 + move-result-object v1
22048 + const-string v4, "locationNetwork"
22050 + move v3, v2
22052 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22054 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getCellLocation()Landroid/telephony/CellLocation;
22056 + move-result-object v0
22058 + goto :goto_5e
22059 +.end method
22061 +.method public getDeviceId()Ljava/lang/String;
22062 + .registers 8
22064 + const-string v0, "PrivacyCDMALTEPhone"
22066 + new-instance v3, Ljava/lang/StringBuilder;
22068 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22070 + const-string v4, "Package: "
22072 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22074 + move-result-object v3
22076 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22078 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22080 + move-result-object v4
22082 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22084 + move-result-object v3
22086 + const-string v4, " asked for getDeviceId()"
22088 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22090 + move-result-object v3
22092 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22094 + move-result-object v3
22096 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22098 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22100 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22102 + move-result-object v1
22104 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22106 + move-result v2
22108 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22110 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22112 + move-result-object v6
22114 + if-eqz v6, :cond_4c
22116 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22118 + move-result v0
22120 + if-eqz v0, :cond_4c
22122 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22124 + move-result-object v5
22126 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22128 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22130 + move-result v3
22132 + const-string v4, "deviceID"
22134 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22136 + :goto_4b
22137 + return-object v5
22139 + :cond_4c
22140 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22142 + move-result-object v5
22144 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22146 + const/4 v3, 0x0
22148 + const-string v4, "deviceID"
22150 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22152 + goto :goto_4b
22153 +.end method
22155 +.method public getDeviceSvn()Ljava/lang/String;
22156 + .registers 8
22158 + const-string v0, "PrivacyCDMALTEPhone"
22160 + new-instance v3, Ljava/lang/StringBuilder;
22162 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22164 + const-string v4, "Package: "
22166 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22168 + move-result-object v3
22170 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22172 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22174 + move-result-object v4
22176 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22178 + move-result-object v3
22180 + const-string v4, " asked for getDeviceSvn()"
22182 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22184 + move-result-object v3
22186 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22188 + move-result-object v3
22190 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22194 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22196 + move-result-object v1
22198 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22200 + move-result v2
22202 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22204 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22206 + move-result-object v6
22208 + if-eqz v6, :cond_4c
22210 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22212 + move-result v0
22214 + if-eqz v0, :cond_4c
22216 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22218 + move-result-object v5
22220 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22222 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22224 + move-result v3
22226 + const-string v4, "deviceID"
22228 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22230 + :goto_4b
22231 + return-object v5
22233 + :cond_4c
22234 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22236 + move-result-object v5
22238 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22240 + const/4 v3, 0x0
22242 + const-string v4, "deviceID"
22244 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22246 + goto :goto_4b
22247 +.end method
22249 +.method public getEsn()Ljava/lang/String;
22250 + .registers 8
22252 + const-string v0, "PrivacyCDMALTEPhone"
22254 + new-instance v3, Ljava/lang/StringBuilder;
22256 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22258 + const-string v4, "Package: "
22260 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22262 + move-result-object v3
22264 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22266 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22268 + move-result-object v4
22270 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22272 + move-result-object v3
22274 + const-string v4, " asked for getEsn()"
22276 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22278 + move-result-object v3
22280 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22282 + move-result-object v3
22284 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22286 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22288 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22290 + move-result-object v1
22292 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22294 + move-result v2
22296 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22298 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22300 + move-result-object v6
22302 + if-eqz v6, :cond_4c
22304 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22306 + move-result v0
22308 + if-eqz v0, :cond_4c
22310 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22312 + move-result-object v5
22314 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22316 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22318 + move-result v3
22320 + const-string v4, "deviceID"
22322 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22324 + :goto_4b
22325 + return-object v5
22327 + :cond_4c
22328 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22330 + move-result-object v5
22332 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22334 + const/4 v3, 0x0
22336 + const-string v4, "deviceID"
22338 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22340 + goto :goto_4b
22341 +.end method
22343 +.method public getImei()Ljava/lang/String;
22344 + .registers 8
22346 + const-string v0, "PrivacyCDMALTEPhone"
22348 + new-instance v3, Ljava/lang/StringBuilder;
22350 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22352 + const-string v4, "Package: "
22354 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22356 + move-result-object v3
22358 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22360 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22362 + move-result-object v4
22364 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22366 + move-result-object v3
22368 + const-string v4, " asked for getImei"
22370 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22372 + move-result-object v3
22374 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22376 + move-result-object v3
22378 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22380 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22382 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22384 + move-result-object v1
22386 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22388 + move-result v2
22390 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22392 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22394 + move-result-object v6
22396 + if-eqz v6, :cond_4c
22398 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22400 + move-result v0
22402 + if-eqz v0, :cond_4c
22404 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22406 + move-result-object v5
22408 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22410 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22412 + move-result v3
22414 + const-string v4, "deviceID"
22416 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22418 + :goto_4b
22419 + return-object v5
22421 + :cond_4c
22422 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22424 + move-result-object v5
22426 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22428 + const/4 v3, 0x0
22430 + const-string v4, "deviceID"
22432 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22434 + goto :goto_4b
22435 +.end method
22437 +.method public getLine1AlphaTag()Ljava/lang/String;
22438 + .registers 8
22440 + const/4 v2, 0x0
22442 + const-string v0, "PrivacyCDMALTEPhone"
22444 + new-instance v1, Ljava/lang/StringBuilder;
22446 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
22448 + const-string v3, "Package: "
22450 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22452 + move-result-object v1
22454 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22456 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22458 + move-result-object v3
22460 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22462 + move-result-object v1
22464 + const-string v3, " asked for getLine1AlphaTag()"
22466 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22468 + move-result-object v1
22470 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22472 + move-result-object v1
22474 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22476 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22478 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22480 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22482 + move-result-object v1
22484 + invoke-static {}, Landroid/os/Process;->myUid()I
22486 + move-result v3
22488 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22490 + move-result-object v6
22492 + const-string v5, ""
22494 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22496 + if-eqz v0, :cond_59
22498 + if-eqz v6, :cond_59
22500 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
22502 + move-result v0
22504 + if-eqz v0, :cond_59
22506 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
22508 + move-result-object v5
22510 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22512 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22514 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22516 + move-result-object v1
22518 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
22520 + move-result v3
22522 + const-string v4, "line1Number"
22524 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22526 + :goto_58
22527 + return-object v5
22529 + :cond_59
22530 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22532 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22534 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22536 + move-result-object v1
22538 + const-string v4, "line1Number"
22540 + move v3, v2
22542 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22544 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getLine1AlphaTag()Ljava/lang/String;
22546 + move-result-object v5
22548 + goto :goto_58
22549 +.end method
22551 +.method public getLine1Number()Ljava/lang/String;
22552 + .registers 8
22554 + const/4 v2, 0x0
22556 + const-string v0, "PrivacyCDMALTEPhone"
22558 + new-instance v1, Ljava/lang/StringBuilder;
22560 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
22562 + const-string v3, "Package: "
22564 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22566 + move-result-object v1
22568 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22570 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22572 + move-result-object v3
22574 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22576 + move-result-object v1
22578 + const-string v3, " asked for getLine1Number()"
22580 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22582 + move-result-object v1
22584 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22586 + move-result-object v1
22588 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22590 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22592 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22594 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22596 + move-result-object v1
22598 + invoke-static {}, Landroid/os/Process;->myUid()I
22600 + move-result v3
22602 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22604 + move-result-object v6
22606 + const-string v5, ""
22608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22610 + if-eqz v0, :cond_59
22612 + if-eqz v6, :cond_59
22614 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
22616 + move-result v0
22618 + if-eqz v0, :cond_59
22620 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
22622 + move-result-object v5
22624 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22626 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22628 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22630 + move-result-object v1
22632 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
22634 + move-result v3
22636 + const-string v4, "line1Number"
22638 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22640 + :goto_58
22641 + return-object v5
22643 + :cond_59
22644 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22646 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22648 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22650 + move-result-object v1
22652 + const-string v4, "line1Number"
22654 + move v3, v2
22656 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22658 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getLine1AlphaTag()Ljava/lang/String;
22660 + move-result-object v5
22662 + goto :goto_58
22663 +.end method
22665 +.method public getMeid()Ljava/lang/String;
22666 + .registers 8
22668 + const-string v0, "PrivacyCDMALTEPhone"
22670 + new-instance v3, Ljava/lang/StringBuilder;
22672 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22674 + const-string v4, "Package: "
22676 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22678 + move-result-object v3
22680 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22682 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22684 + move-result-object v4
22686 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22688 + move-result-object v3
22690 + const-string v4, " asked for getMeid()"
22692 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22694 + move-result-object v3
22696 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22698 + move-result-object v3
22700 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22702 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22704 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22706 + move-result-object v1
22708 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22710 + move-result v2
22712 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22714 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22716 + move-result-object v6
22718 + if-eqz v6, :cond_4c
22720 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22722 + move-result v0
22724 + if-eqz v0, :cond_4c
22726 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22728 + move-result-object v5
22730 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22732 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22734 + move-result v3
22736 + const-string v4, "deviceID"
22738 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22740 + :goto_4b
22741 + return-object v5
22743 + :cond_4c
22744 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22746 + move-result-object v5
22748 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22750 + const/4 v3, 0x0
22752 + const-string v4, "deviceID"
22754 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22756 + goto :goto_4b
22757 +.end method
22759 +.method public getMsisdn()Ljava/lang/String;
22760 + .registers 8
22762 + const-string v0, "PrivacyCDMALTEPhone"
22764 + new-instance v3, Ljava/lang/StringBuilder;
22766 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
22768 + const-string v4, "Package: "
22770 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22772 + move-result-object v3
22774 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22776 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22778 + move-result-object v4
22780 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22782 + move-result-object v3
22784 + const-string v4, " asked for getMsisdn()"
22786 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22788 + move-result-object v3
22790 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22792 + move-result-object v3
22794 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22796 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22798 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22800 + move-result-object v1
22802 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
22804 + move-result v2
22806 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22808 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22810 + move-result-object v6
22812 + if-eqz v6, :cond_4c
22814 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22816 + move-result v0
22818 + if-eqz v0, :cond_4c
22820 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
22822 + move-result-object v5
22824 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22826 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
22828 + move-result v3
22830 + const-string v4, "deviceID"
22832 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22834 + :goto_4b
22835 + return-object v5
22837 + :cond_4c
22838 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getDeviceId()Ljava/lang/String;
22840 + move-result-object v5
22842 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22844 + const/4 v3, 0x0
22846 + const-string v4, "deviceID"
22848 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22850 + goto :goto_4b
22851 +.end method
22853 +.method public getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
22854 + .registers 8
22856 + const/4 v5, 0x0
22858 + const/4 v2, 0x0
22860 + const-string v0, "PrivacyCDMALTEPhone"
22862 + new-instance v1, Ljava/lang/StringBuilder;
22864 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
22866 + const-string v3, "Package: "
22868 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22870 + move-result-object v1
22872 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22874 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22876 + move-result-object v3
22878 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22880 + move-result-object v1
22882 + const-string v3, " asked for getPhoneSubInfo()"
22884 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22886 + move-result-object v1
22888 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22890 + move-result-object v1
22892 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
22894 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22896 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22898 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22900 + move-result-object v1
22902 + invoke-static {}, Landroid/os/Process;->myUid()I
22904 + move-result v3
22906 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
22908 + move-result-object v6
22910 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22912 + if-eqz v0, :cond_54
22914 + if-eqz v6, :cond_54
22916 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
22918 + move-result v0
22920 + if-eqz v0, :cond_54
22922 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22924 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22926 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22928 + move-result-object v1
22930 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
22932 + move-result v3
22934 + const-string v4, "locationNetwork"
22936 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22938 + :goto_53
22939 + return-object v5
22941 + :cond_54
22942 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
22944 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22946 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22948 + move-result-object v1
22950 + const-string v4, "locationNetwork"
22952 + move v3, v2
22954 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
22956 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
22958 + move-result-object v5
22960 + goto :goto_53
22961 +.end method
22963 +.method public getServiceState()Landroid/telephony/ServiceState;
22964 + .registers 10
22966 + :try_start_0
22967 + const-string v0, "PrivacyCDMALTEPhone"
22969 + new-instance v1, Ljava/lang/StringBuilder;
22971 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
22973 + const-string v2, "Package: "
22975 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22977 + move-result-object v1
22979 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
22981 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
22983 + move-result-object v2
22985 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22987 + move-result-object v1
22989 + const-string v2, " asked for getServiceState()"
22991 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
22993 + move-result-object v1
22995 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
22997 + move-result-object v1
22999 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23001 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23003 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23005 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23007 + move-result-object v1
23009 + invoke-static {}, Landroid/os/Process;->myUid()I
23011 + move-result v2
23013 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23015 + move-result-object v6
23017 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23019 + if-eqz v0, :cond_61
23021 + if-eqz v6, :cond_61
23023 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
23025 + move-result v0
23027 + if-eqz v0, :cond_61
23029 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23031 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23033 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23035 + move-result-object v1
23037 + const/4 v2, 0x0
23039 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
23041 + move-result v3
23043 + const-string v4, "locationNetwork"
23045 + const/4 v5, 0x0
23047 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23049 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getServiceState()Landroid/telephony/ServiceState;
23051 + move-result-object v8
23053 + const-string v0, ""
23055 + const-string v1, ""
23057 + const-string v2, ""
23059 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
23061 + :goto_60
23062 + return-object v8
23064 + :cond_61
23065 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23067 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23069 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23071 + move-result-object v1
23073 + const/4 v2, 0x0
23075 + const/4 v3, 0x0
23077 + const-string v4, "locationNetwork"
23079 + const/4 v5, 0x0
23081 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23083 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getServiceState()Landroid/telephony/ServiceState;
23084 + :try_end_74
23085 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_74} :catch_76
23087 + move-result-object v8
23089 + goto :goto_60
23091 + :catch_76
23092 + move-exception v7
23094 + invoke-virtual {v7}, Ljava/lang/Exception;->printStackTrace()V
23096 + const-string v0, "PrivacyCDMALTEPhone"
23098 + const-string v1, "We got exception in getServiceState()-> give fake state"
23100 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
23102 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getServiceState()Landroid/telephony/ServiceState;
23104 + move-result-object v8
23106 + const-string v0, ""
23108 + const-string v1, ""
23110 + const-string v2, ""
23112 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
23114 + goto :goto_60
23115 +.end method
23117 +.method public getSubscriberId()Ljava/lang/String;
23118 + .registers 8
23120 + const-string v0, "PrivacyCDMALTEPhone"
23122 + new-instance v3, Ljava/lang/StringBuilder;
23124 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23126 + const-string v4, "Package: "
23128 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23130 + move-result-object v3
23132 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23134 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23136 + move-result-object v4
23138 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23140 + move-result-object v3
23142 + const-string v4, " asked for getSubscriberId()"
23144 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23146 + move-result-object v3
23148 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23150 + move-result-object v3
23152 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23154 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23156 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23158 + move-result-object v1
23160 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23162 + move-result v2
23164 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23166 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23168 + move-result-object v6
23170 + if-eqz v6, :cond_4d
23172 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
23174 + move-result v0
23176 + if-eqz v0, :cond_4d
23178 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
23180 + move-result-object v5
23182 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23184 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
23186 + move-result v3
23188 + const-string/jumbo v4, "subscriberID"
23190 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23192 + :goto_4c
23193 + return-object v5
23195 + :cond_4d
23196 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getSubscriberId()Ljava/lang/String;
23198 + move-result-object v5
23200 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23202 + const/4 v3, 0x0
23204 + const-string/jumbo v4, "subscriberID"
23206 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23208 + goto :goto_4c
23209 +.end method
23211 +.method public getVoiceMailAlphaTag()Ljava/lang/String;
23212 + .registers 8
23214 + const-string v0, "PrivacyCDMALTEPhone"
23216 + new-instance v3, Ljava/lang/StringBuilder;
23218 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23220 + const-string v4, "Package: "
23222 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23224 + move-result-object v3
23226 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23228 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23230 + move-result-object v4
23232 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23234 + move-result-object v3
23236 + const-string v4, " asked for getVoiceMailAlphaTag()"
23238 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23240 + move-result-object v3
23242 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23244 + move-result-object v3
23246 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23248 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23250 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23252 + move-result-object v1
23254 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23256 + move-result v2
23258 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23260 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23262 + move-result-object v6
23264 + if-eqz v6, :cond_4c
23266 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
23268 + move-result v0
23270 + if-eqz v0, :cond_4c
23272 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
23274 + move-result-object v5
23276 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23278 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
23280 + move-result v3
23282 + const-string v4, "line1Number"
23284 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23286 + :goto_4b
23287 + return-object v5
23289 + :cond_4c
23290 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getVoiceMailNumber()Ljava/lang/String;
23292 + move-result-object v5
23294 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23296 + const/4 v3, 0x0
23298 + const-string v4, "line1Number"
23300 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23302 + goto :goto_4b
23303 +.end method
23305 +.method public getVoiceMailNumber()Ljava/lang/String;
23306 + .registers 8
23308 + const-string v0, "PrivacyCDMALTEPhone"
23310 + new-instance v3, Ljava/lang/StringBuilder;
23312 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23314 + const-string v4, "Package: "
23316 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23318 + move-result-object v3
23320 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23322 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23324 + move-result-object v4
23326 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23328 + move-result-object v3
23330 + const-string v4, " asked for getVoiceMailNumber()"
23332 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23334 + move-result-object v3
23336 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23338 + move-result-object v3
23340 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23342 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->context:Landroid/content/Context;
23344 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23346 + move-result-object v1
23348 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23350 + move-result v2
23352 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23354 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23356 + move-result-object v6
23358 + if-eqz v6, :cond_4c
23360 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
23362 + move-result v0
23364 + if-eqz v0, :cond_4c
23366 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
23368 + move-result-object v5
23370 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23372 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
23374 + move-result v3
23376 + const-string v4, "line1Number"
23378 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23380 + :goto_4b
23381 + return-object v5
23383 + :cond_4c
23384 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;->getVoiceMailNumber()Ljava/lang/String;
23386 + move-result-object v5
23388 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23390 + const/4 v3, 0x0
23392 + const-string v4, "line1Number"
23394 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23396 + goto :goto_4b
23397 +.end method
23398 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCDMAPhone.smali ext-framework/smali/android/privacy/surrogate/PrivacyCDMAPhone.smali
23399 --- stock-framework/smali/android/privacy/surrogate/PrivacyCDMAPhone.smali 1969-12-31 18:00:00.000000000 -0600
23400 +++ ext-framework/smali/android/privacy/surrogate/PrivacyCDMAPhone.smali 2012-11-02 22:30:49.079877996 -0500
23401 @@ -0,0 +1,1602 @@
23402 +.class public Landroid/privacy/surrogate/PrivacyCDMAPhone;
23403 +.super Lcom/android/internal/telephony/cdma/CDMAPhone;
23404 +.source "PrivacyCDMAPhone.java"
23407 +# static fields
23408 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyCDMAPhone"
23411 +# instance fields
23412 +.field private context:Landroid/content/Context;
23414 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
23417 +# direct methods
23418 +.method public constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
23419 + .registers 7
23421 + invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/cdma/CDMAPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
23423 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23425 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
23427 + const-string/jumbo v1, "privacy"
23429 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
23431 + move-result-object v1
23433 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
23435 + move-result-object v1
23437 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
23439 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23441 + const-string v0, "PrivacyCDMAPhone"
23443 + new-instance v1, Ljava/lang/StringBuilder;
23445 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
23447 + const-string v2, "Constructor ready for package: "
23449 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23451 + move-result-object v1
23453 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23455 + move-result-object v2
23457 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23459 + move-result-object v1
23461 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23463 + move-result-object v1
23465 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23467 + return-void
23468 +.end method
23471 +# virtual methods
23472 +.method public dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
23473 + .registers 10
23474 + .annotation system Ldalvik/annotation/Throws;
23475 + value = {
23476 + Lcom/android/internal/telephony/CallStateException;
23478 + .end annotation
23480 + const/4 v2, 0x0
23482 + const/4 v5, 0x0
23484 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23486 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23488 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23490 + move-result-object v1
23492 + const/4 v3, -0x1
23494 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23496 + move-result-object v7
23498 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23500 + if-eqz v0, :cond_31
23502 + if-eqz v7, :cond_31
23504 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
23506 + move-result v0
23508 + if-eqz v0, :cond_31
23510 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23512 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23514 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23516 + move-result-object v1
23518 + const/4 v3, 0x1
23520 + const-string/jumbo v4, "phoneCall"
23522 + move-object v6, v5
23524 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23526 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
23528 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
23530 + throw v0
23532 + :cond_31
23533 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23535 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23537 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23539 + move-result-object v1
23541 + const-string/jumbo v4, "phoneCall"
23543 + move v3, v2
23545 + move-object v6, v5
23547 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23549 + invoke-super {p0, p1}, Lcom/android/internal/telephony/cdma/CDMAPhone;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
23551 + move-result-object v0
23553 + return-object v0
23554 +.end method
23556 +.method public dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
23557 + .registers 11
23558 + .annotation system Ldalvik/annotation/Throws;
23559 + value = {
23560 + Lcom/android/internal/telephony/CallStateException;
23562 + .end annotation
23564 + const/4 v2, 0x0
23566 + const/4 v5, 0x0
23568 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23570 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23572 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23574 + move-result-object v1
23576 + const/4 v3, -0x1
23578 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23580 + move-result-object v7
23582 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23584 + if-eqz v0, :cond_31
23586 + if-eqz v7, :cond_31
23588 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
23590 + move-result v0
23592 + if-eqz v0, :cond_31
23594 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23596 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23598 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23600 + move-result-object v1
23602 + const/4 v3, 0x1
23604 + const-string/jumbo v4, "phoneCall"
23606 + move-object v6, v5
23608 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23610 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
23612 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
23614 + throw v0
23616 + :cond_31
23617 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23619 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23621 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23623 + move-result-object v1
23625 + const-string/jumbo v4, "phoneCall"
23627 + move v3, v2
23629 + move-object v6, v5
23631 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23633 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/cdma/CDMAPhone;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
23635 + move-result-object v0
23637 + return-object v0
23638 +.end method
23640 +.method public getCellLocation()Landroid/telephony/CellLocation;
23641 + .registers 8
23643 + const/4 v5, 0x0
23645 + const/4 v2, 0x0
23647 + const-string v0, "PrivacyCDMAPhone"
23649 + new-instance v1, Ljava/lang/StringBuilder;
23651 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
23653 + const-string v3, "Package: "
23655 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23657 + move-result-object v1
23659 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23661 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23663 + move-result-object v3
23665 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23667 + move-result-object v1
23669 + const-string v3, " asked for getCellLocation()"
23671 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23673 + move-result-object v1
23675 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23677 + move-result-object v1
23679 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23681 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23683 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23685 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23687 + move-result-object v1
23689 + invoke-static {}, Landroid/os/Process;->myUid()I
23691 + move-result v3
23693 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23695 + move-result-object v6
23697 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23699 + if-eqz v0, :cond_5f
23701 + if-eqz v6, :cond_5f
23703 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
23705 + move-result v0
23707 + if-nez v0, :cond_48
23709 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
23711 + move-result v0
23713 + if-eqz v0, :cond_5f
23715 + :cond_48
23716 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23718 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23720 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23722 + move-result-object v1
23724 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
23726 + move-result v3
23728 + const-string v4, "locationNetwork"
23730 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23732 + new-instance v0, Landroid/telephony/cdma/CdmaCellLocation;
23734 + invoke-direct {v0}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
23736 + :goto_5e
23737 + return-object v0
23739 + :cond_5f
23740 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23742 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23744 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23746 + move-result-object v1
23748 + const-string v4, "locationNetwork"
23750 + move v3, v2
23752 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23754 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getCellLocation()Landroid/telephony/CellLocation;
23756 + move-result-object v0
23758 + goto :goto_5e
23759 +.end method
23761 +.method public getDeviceId()Ljava/lang/String;
23762 + .registers 8
23764 + const-string v0, "PrivacyCDMAPhone"
23766 + new-instance v3, Ljava/lang/StringBuilder;
23768 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23770 + const-string v4, "Package: "
23772 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23774 + move-result-object v3
23776 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23778 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23780 + move-result-object v4
23782 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23784 + move-result-object v3
23786 + const-string v4, " asked for getDeviceId()"
23788 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23790 + move-result-object v3
23792 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23794 + move-result-object v3
23796 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23798 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23800 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23802 + move-result-object v1
23804 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23806 + move-result v2
23808 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23810 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23812 + move-result-object v6
23814 + if-eqz v6, :cond_4c
23816 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
23818 + move-result v0
23820 + if-eqz v0, :cond_4c
23822 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
23824 + move-result-object v5
23826 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23828 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
23830 + move-result v3
23832 + const-string v4, "deviceID"
23834 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23836 + :goto_4b
23837 + return-object v5
23839 + :cond_4c
23840 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getDeviceId()Ljava/lang/String;
23842 + move-result-object v5
23844 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23846 + const/4 v3, 0x0
23848 + const-string v4, "deviceID"
23850 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23852 + goto :goto_4b
23853 +.end method
23855 +.method public getDeviceSvn()Ljava/lang/String;
23856 + .registers 8
23858 + const-string v0, "PrivacyCDMAPhone"
23860 + new-instance v3, Ljava/lang/StringBuilder;
23862 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23864 + const-string v4, "Package: "
23866 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23868 + move-result-object v3
23870 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23872 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23874 + move-result-object v4
23876 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23878 + move-result-object v3
23880 + const-string v4, " asked for getDeviceSvn()"
23882 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23884 + move-result-object v3
23886 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23888 + move-result-object v3
23890 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23892 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23894 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23896 + move-result-object v1
23898 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23900 + move-result v2
23902 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23904 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
23906 + move-result-object v6
23908 + if-eqz v6, :cond_4c
23910 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
23912 + move-result v0
23914 + if-eqz v0, :cond_4c
23916 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
23918 + move-result-object v5
23920 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23922 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
23924 + move-result v3
23926 + const-string v4, "deviceID"
23928 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23930 + :goto_4b
23931 + return-object v5
23933 + :cond_4c
23934 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getDeviceId()Ljava/lang/String;
23936 + move-result-object v5
23938 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23940 + const/4 v3, 0x0
23942 + const-string v4, "deviceID"
23944 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
23946 + goto :goto_4b
23947 +.end method
23949 +.method public getEsn()Ljava/lang/String;
23950 + .registers 8
23952 + const-string v0, "PrivacyCDMAPhone"
23954 + new-instance v3, Ljava/lang/StringBuilder;
23956 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
23958 + const-string v4, "Package: "
23960 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23962 + move-result-object v3
23964 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23966 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23968 + move-result-object v4
23970 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23972 + move-result-object v3
23974 + const-string v4, " asked for getEsn()"
23976 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
23978 + move-result-object v3
23980 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
23982 + move-result-object v3
23984 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
23986 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
23988 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
23990 + move-result-object v1
23992 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
23994 + move-result v2
23996 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
23998 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24000 + move-result-object v6
24002 + if-eqz v6, :cond_4c
24004 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24006 + move-result v0
24008 + if-eqz v0, :cond_4c
24010 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
24012 + move-result-object v5
24014 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24016 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24018 + move-result v3
24020 + const-string v4, "deviceID"
24022 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24024 + :goto_4b
24025 + return-object v5
24027 + :cond_4c
24028 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getDeviceId()Ljava/lang/String;
24030 + move-result-object v5
24032 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24034 + const/4 v3, 0x0
24036 + const-string v4, "deviceID"
24038 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24040 + goto :goto_4b
24041 +.end method
24043 +.method public getImei()Ljava/lang/String;
24044 + .registers 8
24046 + const-string v0, "PrivacyCDMAPhone"
24048 + new-instance v3, Ljava/lang/StringBuilder;
24050 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
24052 + const-string v4, "Package: "
24054 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24056 + move-result-object v3
24058 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24060 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24062 + move-result-object v4
24064 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24066 + move-result-object v3
24068 + const-string v4, " asked for getImei"
24070 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24072 + move-result-object v3
24074 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24076 + move-result-object v3
24078 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24080 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24082 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24084 + move-result-object v1
24086 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
24088 + move-result v2
24090 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24092 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24094 + move-result-object v6
24096 + if-eqz v6, :cond_4c
24098 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24100 + move-result v0
24102 + if-eqz v0, :cond_4c
24104 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
24106 + move-result-object v5
24108 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24110 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24112 + move-result v3
24114 + const-string v4, "deviceID"
24116 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24118 + :goto_4b
24119 + return-object v5
24121 + :cond_4c
24122 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getDeviceId()Ljava/lang/String;
24124 + move-result-object v5
24126 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24128 + const/4 v3, 0x0
24130 + const-string v4, "deviceID"
24132 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24134 + goto :goto_4b
24135 +.end method
24137 +.method public getLine1AlphaTag()Ljava/lang/String;
24138 + .registers 8
24140 + const/4 v2, 0x0
24142 + const-string v0, "PrivacyCDMAPhone"
24144 + new-instance v1, Ljava/lang/StringBuilder;
24146 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
24148 + const-string v3, "Package: "
24150 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24152 + move-result-object v1
24154 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24156 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24158 + move-result-object v3
24160 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24162 + move-result-object v1
24164 + const-string v3, " asked for getLine1AlphaTag()"
24166 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24168 + move-result-object v1
24170 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24172 + move-result-object v1
24174 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24176 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24178 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24180 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24182 + move-result-object v1
24184 + invoke-static {}, Landroid/os/Process;->myUid()I
24186 + move-result v3
24188 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24190 + move-result-object v6
24192 + const-string v5, ""
24194 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24196 + if-eqz v0, :cond_59
24198 + if-eqz v6, :cond_59
24200 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24202 + move-result v0
24204 + if-eqz v0, :cond_59
24206 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
24208 + move-result-object v5
24210 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24212 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24214 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24216 + move-result-object v1
24218 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24220 + move-result v3
24222 + const-string v4, "line1Number"
24224 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24226 + :goto_58
24227 + return-object v5
24229 + :cond_59
24230 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24232 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24234 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24236 + move-result-object v1
24238 + const-string v4, "line1Number"
24240 + move v3, v2
24242 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24244 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getLine1AlphaTag()Ljava/lang/String;
24246 + move-result-object v5
24248 + goto :goto_58
24249 +.end method
24251 +.method public getLine1Number()Ljava/lang/String;
24252 + .registers 8
24254 + const/4 v2, 0x0
24256 + const-string v0, "PrivacyCDMAPhone"
24258 + new-instance v1, Ljava/lang/StringBuilder;
24260 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
24262 + const-string v3, "Package: "
24264 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24266 + move-result-object v1
24268 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24270 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24272 + move-result-object v3
24274 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24276 + move-result-object v1
24278 + const-string v3, " asked for getLine1Number()"
24280 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24282 + move-result-object v1
24284 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24286 + move-result-object v1
24288 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24290 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24292 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24294 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24296 + move-result-object v1
24298 + invoke-static {}, Landroid/os/Process;->myUid()I
24300 + move-result v3
24302 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24304 + move-result-object v6
24306 + const-string v5, ""
24308 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24310 + if-eqz v0, :cond_59
24312 + if-eqz v6, :cond_59
24314 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24316 + move-result v0
24318 + if-eqz v0, :cond_59
24320 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
24322 + move-result-object v5
24324 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24326 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24328 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24330 + move-result-object v1
24332 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24334 + move-result v3
24336 + const-string v4, "line1Number"
24338 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24340 + :goto_58
24341 + return-object v5
24343 + :cond_59
24344 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24346 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24348 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24350 + move-result-object v1
24352 + const-string v4, "line1Number"
24354 + move v3, v2
24356 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24358 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getLine1AlphaTag()Ljava/lang/String;
24360 + move-result-object v5
24362 + goto :goto_58
24363 +.end method
24365 +.method public getMeid()Ljava/lang/String;
24366 + .registers 8
24368 + const-string v0, "PrivacyCDMAPhone"
24370 + new-instance v3, Ljava/lang/StringBuilder;
24372 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
24374 + const-string v4, "Package: "
24376 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24378 + move-result-object v3
24380 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24382 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24384 + move-result-object v4
24386 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24388 + move-result-object v3
24390 + const-string v4, " asked for getMeid()"
24392 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24394 + move-result-object v3
24396 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24398 + move-result-object v3
24400 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24402 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24404 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24406 + move-result-object v1
24408 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
24410 + move-result v2
24412 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24414 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24416 + move-result-object v6
24418 + if-eqz v6, :cond_4c
24420 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24422 + move-result v0
24424 + if-eqz v0, :cond_4c
24426 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
24428 + move-result-object v5
24430 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24432 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
24434 + move-result v3
24436 + const-string v4, "deviceID"
24438 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24440 + :goto_4b
24441 + return-object v5
24443 + :cond_4c
24444 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getDeviceId()Ljava/lang/String;
24446 + move-result-object v5
24448 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24450 + const/4 v3, 0x0
24452 + const-string v4, "deviceID"
24454 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24456 + goto :goto_4b
24457 +.end method
24459 +.method public getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
24460 + .registers 8
24462 + const/4 v5, 0x0
24464 + const/4 v2, 0x0
24466 + const-string v0, "PrivacyCDMAPhone"
24468 + new-instance v1, Ljava/lang/StringBuilder;
24470 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
24472 + const-string v3, "Package: "
24474 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24476 + move-result-object v1
24478 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24480 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24482 + move-result-object v3
24484 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24486 + move-result-object v1
24488 + const-string v3, " asked for getPhoneSubInfo()"
24490 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24492 + move-result-object v1
24494 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24496 + move-result-object v1
24498 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24500 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24502 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24504 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24506 + move-result-object v1
24508 + invoke-static {}, Landroid/os/Process;->myUid()I
24510 + move-result v3
24512 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24514 + move-result-object v6
24516 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24518 + if-eqz v0, :cond_54
24520 + if-eqz v6, :cond_54
24522 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
24524 + move-result v0
24526 + if-eqz v0, :cond_54
24528 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24530 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24532 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24534 + move-result-object v1
24536 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
24538 + move-result v3
24540 + const-string v4, "locationNetwork"
24542 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24544 + :goto_53
24545 + return-object v5
24547 + :cond_54
24548 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24550 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24552 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24554 + move-result-object v1
24556 + const-string v4, "locationNetwork"
24558 + move v3, v2
24560 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24562 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
24564 + move-result-object v5
24566 + goto :goto_53
24567 +.end method
24569 +.method public getServiceState()Landroid/telephony/ServiceState;
24570 + .registers 10
24572 + :try_start_0
24573 + const-string v0, "PrivacyCDMAPhone"
24575 + new-instance v1, Ljava/lang/StringBuilder;
24577 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
24579 + const-string v2, "Package: "
24581 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24583 + move-result-object v1
24585 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24587 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24589 + move-result-object v2
24591 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24593 + move-result-object v1
24595 + const-string v2, " asked for getServiceState()"
24597 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24599 + move-result-object v1
24601 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24603 + move-result-object v1
24605 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24607 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24609 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24611 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24613 + move-result-object v1
24615 + invoke-static {}, Landroid/os/Process;->myUid()I
24617 + move-result v2
24619 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24621 + move-result-object v6
24623 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24625 + if-eqz v0, :cond_61
24627 + if-eqz v6, :cond_61
24629 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
24631 + move-result v0
24633 + if-eqz v0, :cond_61
24635 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24637 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24639 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24641 + move-result-object v1
24643 + const/4 v2, 0x0
24645 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
24647 + move-result v3
24649 + const-string v4, "locationNetwork"
24651 + const/4 v5, 0x0
24653 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24655 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getServiceState()Landroid/telephony/ServiceState;
24657 + move-result-object v8
24659 + const-string v0, ""
24661 + const-string v1, ""
24663 + const-string v2, ""
24665 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
24667 + :goto_60
24668 + return-object v8
24670 + :cond_61
24671 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24673 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24675 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24677 + move-result-object v1
24679 + const/4 v2, 0x0
24681 + const/4 v3, 0x0
24683 + const-string v4, "locationNetwork"
24685 + const/4 v5, 0x0
24687 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24689 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getServiceState()Landroid/telephony/ServiceState;
24690 + :try_end_74
24691 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_74} :catch_76
24693 + move-result-object v8
24695 + goto :goto_60
24697 + :catch_76
24698 + move-exception v7
24700 + invoke-virtual {v7}, Ljava/lang/Exception;->printStackTrace()V
24702 + const-string v0, "PrivacyCDMAPhone"
24704 + const-string v1, "We got exception in getServiceState()-> give fake state"
24706 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
24708 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getServiceState()Landroid/telephony/ServiceState;
24710 + move-result-object v8
24712 + const-string v0, ""
24714 + const-string v1, ""
24716 + const-string v2, ""
24718 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
24720 + goto :goto_60
24721 +.end method
24723 +.method public getSubscriberId()Ljava/lang/String;
24724 + .registers 8
24726 + const-string v0, "PrivacyCDMAPhone"
24728 + new-instance v3, Ljava/lang/StringBuilder;
24730 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
24732 + const-string v4, "Package: "
24734 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24736 + move-result-object v3
24738 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24740 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24742 + move-result-object v4
24744 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24746 + move-result-object v3
24748 + const-string v4, " asked for getSubscriberId()"
24750 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24752 + move-result-object v3
24754 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24756 + move-result-object v3
24758 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24760 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24762 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24764 + move-result-object v1
24766 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
24768 + move-result v2
24770 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24772 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24774 + move-result-object v6
24776 + if-eqz v6, :cond_4d
24778 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
24780 + move-result v0
24782 + if-eqz v0, :cond_4d
24784 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
24786 + move-result-object v5
24788 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24790 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
24792 + move-result v3
24794 + const-string/jumbo v4, "subscriberID"
24796 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24798 + :goto_4c
24799 + return-object v5
24801 + :cond_4d
24802 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getSubscriberId()Ljava/lang/String;
24804 + move-result-object v5
24806 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24808 + const/4 v3, 0x0
24810 + const-string/jumbo v4, "subscriberID"
24812 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24814 + goto :goto_4c
24815 +.end method
24817 +.method public getVoiceMailAlphaTag()Ljava/lang/String;
24818 + .registers 8
24820 + const-string v0, "PrivacyCDMAPhone"
24822 + new-instance v3, Ljava/lang/StringBuilder;
24824 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
24826 + const-string v4, "Package: "
24828 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24830 + move-result-object v3
24832 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24834 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24836 + move-result-object v4
24838 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24840 + move-result-object v3
24842 + const-string v4, " asked for getVoiceMailAlphaTag()"
24844 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24846 + move-result-object v3
24848 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24850 + move-result-object v3
24852 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24854 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24856 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24858 + move-result-object v1
24860 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
24862 + move-result v2
24864 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24866 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24868 + move-result-object v6
24870 + if-eqz v6, :cond_4c
24872 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24874 + move-result v0
24876 + if-eqz v0, :cond_4c
24878 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
24880 + move-result-object v5
24882 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24884 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24886 + move-result v3
24888 + const-string v4, "line1Number"
24890 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24892 + :goto_4b
24893 + return-object v5
24895 + :cond_4c
24896 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getVoiceMailNumber()Ljava/lang/String;
24898 + move-result-object v5
24900 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24902 + const/4 v3, 0x0
24904 + const-string v4, "line1Number"
24906 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24908 + goto :goto_4b
24909 +.end method
24911 +.method public getVoiceMailNumber()Ljava/lang/String;
24912 + .registers 8
24914 + const-string v0, "PrivacyCDMAPhone"
24916 + new-instance v3, Ljava/lang/StringBuilder;
24918 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
24920 + const-string v4, "Package: "
24922 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24924 + move-result-object v3
24926 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24928 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24930 + move-result-object v4
24932 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24934 + move-result-object v3
24936 + const-string v4, " asked for getVoiceMailNumber()"
24938 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
24940 + move-result-object v3
24942 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
24944 + move-result-object v3
24946 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
24948 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->context:Landroid/content/Context;
24950 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
24952 + move-result-object v1
24954 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
24956 + move-result v2
24958 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24960 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
24962 + move-result-object v6
24964 + if-eqz v6, :cond_4c
24966 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24968 + move-result v0
24970 + if-eqz v0, :cond_4c
24972 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
24974 + move-result-object v5
24976 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24978 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
24980 + move-result v3
24982 + const-string v4, "line1Number"
24984 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
24986 + :goto_4b
24987 + return-object v5
24989 + :cond_4c
24990 + invoke-super {p0}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getVoiceMailNumber()Ljava/lang/String;
24992 + move-result-object v5
24994 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCDMAPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
24996 + const/4 v3, 0x0
24998 + const-string v4, "line1Number"
25000 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25002 + goto :goto_4b
25003 +.end method
25004 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyConnectivityManager.smali ext-framework/smali/android/privacy/surrogate/PrivacyConnectivityManager.smali
25005 --- stock-framework/smali/android/privacy/surrogate/PrivacyConnectivityManager.smali 1969-12-31 18:00:00.000000000 -0600
25006 +++ ext-framework/smali/android/privacy/surrogate/PrivacyConnectivityManager.smali 2012-11-02 22:30:49.079877996 -0500
25007 @@ -0,0 +1,1045 @@
25008 +.class public Landroid/privacy/surrogate/PrivacyConnectivityManager;
25009 +.super Landroid/net/ConnectivityManager;
25010 +.source "PrivacyConnectivityManager.java"
25013 +# static fields
25014 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyConnectivityManager"
25017 +# instance fields
25018 +.field private context:Landroid/content/Context;
25020 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
25023 +# direct methods
25024 +.method public constructor <init>(Landroid/net/IConnectivityManager;Landroid/content/Context;)V
25025 + .registers 6
25027 + invoke-direct {p0, p1}, Landroid/net/ConnectivityManager;-><init>(Landroid/net/IConnectivityManager;)V
25029 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25031 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
25033 + const-string/jumbo v1, "privacy"
25035 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
25037 + move-result-object v1
25039 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
25041 + move-result-object v1
25043 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
25045 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25047 + const-string v0, "PrivacyConnectivityManager"
25049 + new-instance v1, Ljava/lang/StringBuilder;
25051 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
25053 + const-string/jumbo v2, "now in constructor for package: "
25055 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
25057 + move-result-object v1
25059 + invoke-virtual {p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25061 + move-result-object v2
25063 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
25065 + move-result-object v1
25067 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
25069 + move-result-object v1
25071 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
25073 + return-void
25074 +.end method
25077 +# virtual methods
25078 +.method public getActiveLinkProperties()Landroid/net/LinkProperties;
25079 + .registers 10
25081 + const/4 v2, -0x1
25083 + const/4 v5, 0x0
25085 + new-instance v7, Landroid/net/LinkProperties;
25087 + invoke-direct {v7}, Landroid/net/LinkProperties;-><init>()V
25089 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25091 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25093 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25095 + move-result-object v1
25097 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25099 + move-result v3
25101 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25103 + move-result-object v8
25105 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25107 + if-eqz v0, :cond_34
25109 + if-eqz v8, :cond_34
25111 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25113 + move-result v0
25115 + if-eqz v0, :cond_34
25117 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25119 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25121 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25123 + move-result-object v1
25125 + const/4 v3, 0x1
25127 + const-string/jumbo v4, "networkInfoCurrent"
25129 + move-object v6, v5
25131 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25133 + :goto_33
25134 + return-object v7
25136 + :cond_34
25137 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25139 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25141 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25143 + move-result-object v1
25145 + const/4 v3, 0x0
25147 + const-string/jumbo v4, "networkInfoCurrent"
25149 + move-object v6, v5
25151 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25153 + invoke-super {p0}, Landroid/net/ConnectivityManager;->getActiveLinkProperties()Landroid/net/LinkProperties;
25155 + move-result-object v7
25157 + goto :goto_33
25158 +.end method
25160 +.method public getActiveNetworkInfo()Landroid/net/NetworkInfo;
25161 + .registers 10
25163 + const/4 v3, 0x1
25165 + const/4 v2, -0x1
25167 + const/4 v6, 0x0
25169 + const/4 v5, 0x0
25171 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25173 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25175 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25177 + move-result-object v1
25179 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25181 + move-result v4
25183 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25185 + move-result-object v8
25187 + new-instance v7, Landroid/net/NetworkInfo;
25189 + const-string v0, "MOBILE"
25191 + const-string v1, "UNKNOWN"
25193 + invoke-direct {v7, v6, v6, v0, v1}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
25195 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25197 + if-eqz v0, :cond_31
25199 + if-eqz v8, :cond_31
25201 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25203 + move-result v0
25205 + if-nez v0, :cond_31
25207 + invoke-virtual {v7, v3}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
25209 + sget-object v0, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
25211 + invoke-virtual {v7, v0}, Landroid/net/NetworkInfo;->setState(Landroid/net/NetworkInfo$State;)V
25213 + :cond_31
25214 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25216 + if-eqz v0, :cond_4d
25218 + if-eqz v8, :cond_4d
25220 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25222 + move-result v0
25224 + if-eqz v0, :cond_4d
25226 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25228 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25230 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25232 + move-result-object v1
25234 + const-string/jumbo v4, "networkInfoCurrent"
25236 + move-object v6, v5
25238 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25240 + :goto_4c
25241 + return-object v7
25243 + :cond_4d
25244 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25246 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25248 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25250 + move-result-object v1
25252 + const-string/jumbo v4, "networkInfoCurrent"
25254 + move v3, v6
25256 + move-object v6, v5
25258 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25260 + invoke-super {p0}, Landroid/net/ConnectivityManager;->getActiveNetworkInfo()Landroid/net/NetworkInfo;
25262 + move-result-object v7
25264 + goto :goto_4c
25265 +.end method
25267 +.method public getActiveNetworkInfoForUid(I)Landroid/net/NetworkInfo;
25268 + .registers 11
25270 + const/4 v3, 0x1
25272 + const/4 v2, -0x1
25274 + const/4 v6, 0x0
25276 + const/4 v5, 0x0
25278 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25280 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25282 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25284 + move-result-object v1
25286 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25288 + move-result v4
25290 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25292 + move-result-object v8
25294 + new-instance v7, Landroid/net/NetworkInfo;
25296 + const-string v0, "MOBILE"
25298 + const-string v1, "UNKNOWN"
25300 + invoke-direct {v7, v6, v6, v0, v1}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
25302 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25304 + if-eqz v0, :cond_31
25306 + if-eqz v8, :cond_31
25308 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25310 + move-result v0
25312 + if-nez v0, :cond_31
25314 + invoke-virtual {v7, v3}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
25316 + sget-object v0, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
25318 + invoke-virtual {v7, v0}, Landroid/net/NetworkInfo;->setState(Landroid/net/NetworkInfo$State;)V
25320 + :cond_31
25321 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25323 + if-eqz v0, :cond_4d
25325 + if-eqz v8, :cond_4d
25327 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25329 + move-result v0
25331 + if-eqz v0, :cond_4d
25333 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25335 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25337 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25339 + move-result-object v1
25341 + const-string/jumbo v4, "networkInfoCurrent"
25343 + move-object v6, v5
25345 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25347 + :goto_4c
25348 + return-object v7
25350 + :cond_4d
25351 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25353 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25355 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25357 + move-result-object v1
25359 + const-string/jumbo v4, "networkInfoCurrent"
25361 + move v3, v6
25363 + move-object v6, v5
25365 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25367 + invoke-super {p0, p1}, Landroid/net/ConnectivityManager;->getActiveNetworkInfoForUid(I)Landroid/net/NetworkInfo;
25369 + move-result-object v7
25371 + goto :goto_4c
25372 +.end method
25374 +.method public getAllNetworkInfo()[Landroid/net/NetworkInfo;
25375 + .registers 10
25377 + const/4 v2, -0x1
25379 + const/4 v3, 0x1
25381 + const/4 v5, 0x0
25383 + const/4 v6, 0x0
25385 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25387 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25389 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25391 + move-result-object v1
25393 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25395 + move-result v4
25397 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25399 + move-result-object v8
25401 + new-array v7, v3, [Landroid/net/NetworkInfo;
25403 + new-instance v0, Landroid/net/NetworkInfo;
25405 + const-string v1, "MOBILE"
25407 + const-string v4, "CONNECTED"
25409 + invoke-direct {v0, v6, v6, v1, v4}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
25411 + aput-object v0, v7, v6
25413 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25415 + if-eqz v0, :cond_39
25417 + if-eqz v8, :cond_39
25419 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25421 + move-result v0
25423 + if-nez v0, :cond_39
25425 + aget-object v0, v7, v6
25427 + invoke-virtual {v0, v3}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
25429 + aget-object v0, v7, v6
25431 + sget-object v1, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
25433 + invoke-virtual {v0, v1}, Landroid/net/NetworkInfo;->setState(Landroid/net/NetworkInfo$State;)V
25435 + :cond_39
25436 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25438 + if-eqz v0, :cond_55
25440 + if-eqz v8, :cond_55
25442 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25444 + move-result v0
25446 + if-eqz v0, :cond_55
25448 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25450 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25452 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25454 + move-result-object v1
25456 + const-string/jumbo v4, "networkInfoCurrent"
25458 + move-object v6, v5
25460 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25462 + :goto_54
25463 + return-object v7
25465 + :cond_55
25466 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25468 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25470 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25472 + move-result-object v1
25474 + const-string/jumbo v4, "networkInfoCurrent"
25476 + move v3, v6
25478 + move-object v6, v5
25480 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25482 + invoke-super {p0}, Landroid/net/ConnectivityManager;->getAllNetworkInfo()[Landroid/net/NetworkInfo;
25484 + move-result-object v7
25486 + goto :goto_54
25487 +.end method
25489 +.method public getLinkProperties(I)Landroid/net/LinkProperties;
25490 + .registers 11
25492 + const/4 v2, -0x1
25494 + const/4 v5, 0x0
25496 + new-instance v7, Landroid/net/LinkProperties;
25498 + invoke-direct {v7}, Landroid/net/LinkProperties;-><init>()V
25500 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25502 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25504 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25506 + move-result-object v1
25508 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25510 + move-result v3
25512 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25514 + move-result-object v8
25516 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25518 + if-eqz v0, :cond_34
25520 + if-eqz v8, :cond_34
25522 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25524 + move-result v0
25526 + if-eqz v0, :cond_34
25528 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25530 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25532 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25534 + move-result-object v1
25536 + const/4 v3, 0x1
25538 + const-string/jumbo v4, "networkInfoCurrent"
25540 + move-object v6, v5
25542 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25544 + :goto_33
25545 + return-object v7
25547 + :cond_34
25548 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25550 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25552 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25554 + move-result-object v1
25556 + const/4 v3, 0x0
25558 + const-string/jumbo v4, "networkInfoCurrent"
25560 + move-object v6, v5
25562 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25564 + invoke-super {p0, p1}, Landroid/net/ConnectivityManager;->getLinkProperties(I)Landroid/net/LinkProperties;
25566 + move-result-object v7
25568 + goto :goto_33
25569 +.end method
25571 +.method public getMobileDataEnabled()Z
25572 + .registers 9
25574 + const/4 v3, 0x1
25576 + const/4 v2, -0x1
25578 + const/4 v5, 0x0
25580 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25582 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25584 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25586 + move-result-object v1
25588 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25590 + move-result v4
25592 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25594 + move-result-object v7
25596 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25598 + if-eqz v0, :cond_2f
25600 + if-eqz v7, :cond_2f
25602 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25604 + move-result v0
25606 + if-nez v0, :cond_2f
25608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25610 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25612 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25614 + move-result-object v1
25616 + const-string/jumbo v4, "networkInfoCurrent"
25618 + move-object v6, v5
25620 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25622 + :goto_2e
25623 + return v3
25625 + :cond_2f
25626 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25628 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25630 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25632 + move-result-object v1
25634 + const/4 v3, 0x0
25636 + const-string/jumbo v4, "networkInfoCurrent"
25638 + move-object v6, v5
25640 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25642 + invoke-super {p0}, Landroid/net/ConnectivityManager;->getMobileDataEnabled()Z
25644 + move-result v3
25646 + goto :goto_2e
25647 +.end method
25649 +.method public getNetworkInfo(I)Landroid/net/NetworkInfo;
25650 + .registers 11
25652 + const/4 v3, 0x1
25654 + const/4 v2, -0x1
25656 + const/4 v6, 0x0
25658 + const/4 v5, 0x0
25660 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25662 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25664 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25666 + move-result-object v1
25668 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25670 + move-result v4
25672 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25674 + move-result-object v8
25676 + new-instance v7, Landroid/net/NetworkInfo;
25678 + const-string v0, "MOBILE"
25680 + const-string v1, "CONNECTED"
25682 + invoke-direct {v7, v6, v6, v0, v1}, Landroid/net/NetworkInfo;-><init>(IILjava/lang/String;Ljava/lang/String;)V
25684 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25686 + if-eqz v0, :cond_31
25688 + if-eqz v8, :cond_31
25690 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25692 + move-result v0
25694 + if-nez v0, :cond_31
25696 + invoke-virtual {v7, v3}, Landroid/net/NetworkInfo;->setIsAvailable(Z)V
25698 + sget-object v0, Landroid/net/NetworkInfo$State;->CONNECTED:Landroid/net/NetworkInfo$State;
25700 + invoke-virtual {v7, v0}, Landroid/net/NetworkInfo;->setState(Landroid/net/NetworkInfo$State;)V
25702 + :cond_31
25703 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25705 + if-eqz v0, :cond_4d
25707 + if-eqz v8, :cond_4d
25709 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25711 + move-result v0
25713 + if-eqz v0, :cond_4d
25715 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25717 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25719 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25721 + move-result-object v1
25723 + const-string/jumbo v4, "networkInfoCurrent"
25725 + move-object v6, v5
25727 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25729 + :goto_4c
25730 + return-object v7
25732 + :cond_4d
25733 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25735 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25737 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25739 + move-result-object v1
25741 + const-string/jumbo v4, "networkInfoCurrent"
25743 + move v3, v6
25745 + move-object v6, v5
25747 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25749 + invoke-super {p0, p1}, Landroid/net/ConnectivityManager;->getNetworkInfo(I)Landroid/net/NetworkInfo;
25751 + move-result-object v7
25753 + goto :goto_4c
25754 +.end method
25756 +.method public requestRouteToHost(II)Z
25757 + .registers 12
25759 + const/4 v8, 0x0
25761 + const/4 v3, 0x1
25763 + const/4 v2, -0x1
25765 + const/4 v5, 0x0
25767 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25769 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25771 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25773 + move-result-object v1
25775 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25777 + move-result v4
25779 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25781 + move-result-object v7
25783 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25785 + if-eqz v0, :cond_30
25787 + if-eqz v7, :cond_30
25789 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25791 + move-result v0
25793 + if-nez v0, :cond_30
25795 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25797 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25799 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25801 + move-result-object v1
25803 + const-string/jumbo v4, "networkInfoCurrent"
25805 + move-object v6, v5
25807 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25809 + :goto_2f
25810 + return v3
25812 + :cond_30
25813 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25815 + if-eqz v0, :cond_4d
25817 + if-eqz v7, :cond_4d
25819 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25821 + move-result v0
25823 + if-eqz v0, :cond_4d
25825 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25827 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25829 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25831 + move-result-object v1
25833 + const-string/jumbo v4, "networkInfoCurrent"
25835 + move-object v6, v5
25837 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25839 + move v3, v8
25841 + goto :goto_2f
25843 + :cond_4d
25844 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25846 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25848 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25850 + move-result-object v1
25852 + const-string/jumbo v4, "networkInfoCurrent"
25854 + move v3, v8
25856 + move-object v6, v5
25858 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25860 + invoke-super {p0, p1, p2}, Landroid/net/ConnectivityManager;->requestRouteToHost(II)Z
25862 + move-result v3
25864 + goto :goto_2f
25865 +.end method
25867 +.method public requestRouteToHostAddress(ILjava/net/InetAddress;)Z
25868 + .registers 12
25870 + const/4 v8, 0x0
25872 + const/4 v3, 0x1
25874 + const/4 v2, -0x1
25876 + const/4 v5, 0x0
25878 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25880 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25882 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25884 + move-result-object v1
25886 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25888 + move-result v4
25890 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25892 + move-result-object v7
25894 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25896 + if-eqz v0, :cond_30
25898 + if-eqz v7, :cond_30
25900 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
25902 + move-result v0
25904 + if-nez v0, :cond_30
25906 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25908 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25910 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25912 + move-result-object v1
25914 + const-string/jumbo v4, "networkInfoCurrent"
25916 + move-object v6, v5
25918 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25920 + :goto_2f
25921 + return v3
25923 + :cond_30
25924 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25926 + if-eqz v0, :cond_4d
25928 + if-eqz v7, :cond_4d
25930 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
25932 + move-result v0
25934 + if-eqz v0, :cond_4d
25936 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25938 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25940 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25942 + move-result-object v1
25944 + const-string/jumbo v4, "networkInfoCurrent"
25946 + move-object v6, v5
25948 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25950 + move v3, v8
25952 + goto :goto_2f
25954 + :cond_4d
25955 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25957 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25959 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25961 + move-result-object v1
25963 + const-string/jumbo v4, "networkInfoCurrent"
25965 + move v3, v8
25967 + move-object v6, v5
25969 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
25971 + invoke-super {p0, p1, p2}, Landroid/net/ConnectivityManager;->requestRouteToHostAddress(ILjava/net/InetAddress;)Z
25973 + move-result v3
25975 + goto :goto_2f
25976 +.end method
25978 +.method public setMobileDataEnabled(Z)V
25979 + .registers 10
25981 + const/4 v2, -0x1
25983 + const/4 v5, 0x0
25985 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
25987 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
25989 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
25991 + move-result-object v1
25993 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
25995 + move-result v3
25997 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
25999 + move-result-object v7
26001 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26003 + if-eqz v0, :cond_2f
26005 + if-eqz v7, :cond_2f
26007 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSwitchConnectivitySetting()B
26009 + move-result v0
26011 + if-eqz v0, :cond_2f
26013 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26015 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
26017 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
26019 + move-result-object v1
26021 + const/4 v3, 0x1
26023 + const-string/jumbo v4, "switchconnectivity"
26025 + move-object v6, v5
26027 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26029 + :goto_2e
26030 + return-void
26032 + :cond_2f
26033 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26035 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyConnectivityManager;->context:Landroid/content/Context;
26037 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
26039 + move-result-object v1
26041 + const/4 v3, 0x0
26043 + const-string/jumbo v4, "switchconnectivity"
26045 + move-object v6, v5
26047 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26049 + invoke-super {p0, p1}, Landroid/net/ConnectivityManager;->setMobileDataEnabled(Z)V
26051 + goto :goto_2e
26052 +.end method
26053 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali ext-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali
26054 --- stock-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 1969-12-31 18:00:00.000000000 -0600
26055 +++ ext-framework/smali/android/privacy/surrogate/PrivacyContentResolver.smali 2012-11-02 22:30:49.079877996 -0500
26056 @@ -0,0 +1,871 @@
26057 +.class public final Landroid/privacy/surrogate/PrivacyContentResolver;
26058 +.super Ljava/lang/Object;
26059 +.source "PrivacyContentResolver.java"
26062 +# static fields
26063 +.field private static final TAG:Ljava/lang/String; = "PrivacyContentResolver"
26065 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
26068 +# direct methods
26069 +.method public constructor <init>()V
26070 + .registers 1
26072 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
26074 + return-void
26075 +.end method
26077 +.method private static arrayToString([Ljava/lang/String;)Ljava/lang/String;
26078 + .registers 8
26080 + new-instance v4, Ljava/lang/StringBuffer;
26082 + invoke-direct {v4}, Ljava/lang/StringBuffer;-><init>()V
26084 + if-eqz p0, :cond_2d
26086 + move-object v0, p0
26088 + array-length v3, v0
26090 + const/4 v2, 0x0
26092 + :goto_a
26093 + if-ge v2, v3, :cond_30
26095 + aget-object v1, v0, v2
26097 + new-instance v5, Ljava/lang/StringBuilder;
26099 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
26101 + const-string v6, "["
26103 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
26105 + move-result-object v5
26107 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
26109 + move-result-object v5
26111 + const-string v6, "]"
26113 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
26115 + move-result-object v5
26117 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
26119 + move-result-object v5
26121 + invoke-virtual {v4, v5}, Ljava/lang/StringBuffer;->append(Ljava/lang/String;)Ljava/lang/StringBuffer;
26123 + add-int/lit8 v2, v2, 0x1
26125 + goto :goto_a
26127 + :cond_2d
26128 + const-string v5, ""
26130 + :goto_2f
26131 + return-object v5
26133 + :cond_30
26134 + invoke-virtual {v4}, Ljava/lang/StringBuffer;->toString()Ljava/lang/String;
26136 + move-result-object v5
26138 + goto :goto_2f
26139 +.end method
26141 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;)Landroid/database/Cursor;
26142 + .registers 21
26143 + .annotation system Ldalvik/annotation/Throws;
26144 + value = {
26145 + Landroid/os/RemoteException;
26147 + .end annotation
26149 + if-eqz p0, :cond_1e4
26151 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26153 + if-nez v1, :cond_13
26155 + const-string/jumbo v1, "privacy"
26157 + move-object/from16 v0, p2
26159 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
26161 + move-result-object v1
26163 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
26165 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26167 + :cond_13
26168 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
26170 + move-result-object v2
26172 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
26174 + move-result v3
26176 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26178 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
26180 + move-result-object v7
26182 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26184 + move-result-object v9
26186 + const-string v15, "[real]"
26188 + move-object/from16 v13, p3
26190 + if-eqz v9, :cond_54
26192 + const-string v1, "contacts"
26194 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26196 + move-result v1
26198 + if-nez v1, :cond_3b
26200 + const-string v1, "com.android.contacts"
26202 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26204 + move-result v1
26206 + if-eqz v1, :cond_ab
26208 + :cond_3b
26209 + if-eqz v7, :cond_54
26211 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
26213 + move-result v1
26215 + const/4 v4, 0x1
26217 + if-ne v1, v4, :cond_55
26219 + const-string v15, "[empty]"
26221 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26223 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26225 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26227 + const/4 v4, 0x1
26229 + const-string v5, "contacts"
26231 + const/4 v6, 0x0
26233 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26235 + :cond_54
26236 + :goto_54
26237 + return-object v13
26239 + :cond_55
26240 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getContactsSetting()B
26242 + move-result v1
26244 + const/4 v4, 0x2
26246 + if-ne v1, v4, :cond_a1
26248 + invoke-virtual/range {p0 .. p0}, Landroid/net/Uri;->toString()Ljava/lang/String;
26250 + move-result-object v1
26252 + sget-object v4, Landroid/provider/ContactsContract$Contacts;->CONTENT_URI:Landroid/net/Uri;
26254 + invoke-virtual {v4}, Landroid/net/Uri;->toString()Ljava/lang/String;
26256 + move-result-object v4
26258 + invoke-virtual {v1, v4}, Ljava/lang/String;->contains(Ljava/lang/CharSequence;)Z
26260 + move-result v1
26262 + if-eqz v1, :cond_a1
26264 + const/4 v11, 0x0
26266 + if-eqz p1, :cond_82
26268 + move-object/from16 v8, p1
26270 + array-length v12, v8
26272 + const/4 v10, 0x0
26274 + :goto_73
26275 + if-ge v10, v12, :cond_82
26277 + aget-object v16, v8, v10
26279 + const-string v1, "_id"
26281 + move-object/from16 v0, v16
26283 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26285 + move-result v1
26287 + if-eqz v1, :cond_93
26289 + const/4 v11, 0x1
26291 + :cond_82
26292 + if-nez v11, :cond_96
26294 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26296 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26298 + :goto_89
26299 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26301 + const/4 v4, 0x2
26303 + const-string v5, "contacts"
26305 + const/4 v6, 0x0
26307 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26309 + goto :goto_54
26311 + :cond_93
26312 + add-int/lit8 v10, v10, 0x1
26314 + goto :goto_73
26316 + :cond_96
26317 + new-instance v14, Landroid/privacy/surrogate/PrivacyCursor;
26319 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getAllowedContacts()[I
26321 + move-result-object v1
26323 + invoke-direct {v14, v13, v1}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;[I)V
26325 + move-object v13, v14
26327 + goto :goto_89
26329 + :cond_a1
26330 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26332 + const/4 v4, 0x0
26334 + const-string v5, "contacts"
26336 + const/4 v6, 0x0
26338 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26340 + goto :goto_54
26342 + :cond_ab
26343 + const-string v1, "com.android.calendar"
26345 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26347 + move-result v1
26349 + if-eqz v1, :cond_d8
26351 + if-eqz v7, :cond_cd
26353 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCalendarSetting()B
26355 + move-result v1
26357 + const/4 v4, 0x1
26359 + if-ne v1, v4, :cond_cd
26361 + const-string v15, "[empty]"
26363 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26365 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26367 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26369 + const/4 v4, 0x1
26371 + const-string v5, "calendar"
26373 + const/4 v6, 0x0
26375 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26377 + goto :goto_54
26379 + :cond_cd
26380 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26382 + const/4 v4, 0x0
26384 + const-string v5, "calendar"
26386 + const/4 v6, 0x0
26388 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26390 + goto/16 :goto_54
26392 + :cond_d8
26393 + sget-object v1, Landroid/provider/Telephony$Mms;->CONTENT_URI:Landroid/net/Uri;
26395 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26397 + move-result-object v1
26399 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26401 + move-result v1
26403 + if-eqz v1, :cond_10c
26405 + if-eqz v7, :cond_100
26407 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
26409 + move-result v1
26411 + const/4 v4, 0x1
26413 + if-ne v1, v4, :cond_100
26415 + const-string v15, "[empty]"
26417 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26419 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26421 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26423 + const/4 v4, 0x1
26425 + const-string/jumbo v5, "mms"
26427 + const/4 v6, 0x0
26429 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26431 + goto/16 :goto_54
26433 + :cond_100
26434 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26436 + const/4 v4, 0x0
26438 + const-string/jumbo v5, "mms"
26440 + const/4 v6, 0x0
26442 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26444 + goto/16 :goto_54
26446 + :cond_10c
26447 + sget-object v1, Landroid/provider/Telephony$Sms;->CONTENT_URI:Landroid/net/Uri;
26449 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26451 + move-result-object v1
26453 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26455 + move-result v1
26457 + if-eqz v1, :cond_140
26459 + if-eqz v7, :cond_134
26461 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
26463 + move-result v1
26465 + const/4 v4, 0x1
26467 + if-ne v1, v4, :cond_134
26469 + const-string v15, "[empty]"
26471 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26473 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26475 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26477 + const/4 v4, 0x1
26479 + const-string/jumbo v5, "sms"
26481 + const/4 v6, 0x0
26483 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26485 + goto/16 :goto_54
26487 + :cond_134
26488 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26490 + const/4 v4, 0x0
26492 + const-string/jumbo v5, "sms"
26494 + const/4 v6, 0x0
26496 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26498 + goto/16 :goto_54
26500 + :cond_140
26501 + sget-object v1, Landroid/provider/Telephony$MmsSms;->CONTENT_URI:Landroid/net/Uri;
26503 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26505 + move-result-object v1
26507 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26509 + move-result v1
26511 + if-nez v1, :cond_155
26513 + const-string/jumbo v1, "mms-sms-v2"
26515 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26517 + move-result v1
26519 + if-eqz v1, :cond_184
26521 + :cond_155
26522 + if-eqz v7, :cond_178
26524 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getMmsSetting()B
26526 + move-result v1
26528 + const/4 v4, 0x1
26530 + if-eq v1, v4, :cond_165
26532 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSmsSetting()B
26534 + move-result v1
26536 + const/4 v4, 0x1
26538 + if-ne v1, v4, :cond_178
26540 + :cond_165
26541 + const-string v15, "[empty]"
26543 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26545 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26547 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26549 + const/4 v4, 0x1
26551 + const-string/jumbo v5, "mmsSms"
26553 + const/4 v6, 0x0
26555 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26557 + goto/16 :goto_54
26559 + :cond_178
26560 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26562 + const/4 v4, 0x0
26564 + const-string/jumbo v5, "mmsSms"
26566 + const/4 v6, 0x0
26568 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26570 + goto/16 :goto_54
26572 + :cond_184
26573 + const-string v1, "call_log"
26575 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26577 + move-result v1
26579 + if-eqz v1, :cond_1b2
26581 + if-eqz v7, :cond_1a7
26583 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getCallLogSetting()B
26585 + move-result v1
26587 + const/4 v4, 0x1
26589 + if-ne v1, v4, :cond_1a7
26591 + const-string v15, "[empty]"
26593 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26595 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26597 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26599 + const/4 v4, 0x1
26601 + const-string v5, "callLog"
26603 + const/4 v6, 0x0
26605 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26607 + goto/16 :goto_54
26609 + :cond_1a7
26610 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26612 + const/4 v4, 0x0
26614 + const-string v5, "callLog"
26616 + const/4 v6, 0x0
26618 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26620 + goto/16 :goto_54
26622 + :cond_1b2
26623 + sget-object v1, Landroid/provider/Browser;->BOOKMARKS_URI:Landroid/net/Uri;
26625 + invoke-virtual {v1}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26627 + move-result-object v1
26629 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26631 + move-result v1
26633 + if-eqz v1, :cond_54
26635 + if-eqz v7, :cond_1d9
26637 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getBookmarksSetting()B
26639 + move-result v1
26641 + const/4 v4, 0x1
26643 + if-ne v1, v4, :cond_1d9
26645 + const-string v15, "[empty]"
26647 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26649 + invoke-direct {v13}, Landroid/privacy/surrogate/PrivacyCursor;-><init>()V
26651 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26653 + const/4 v4, 0x1
26655 + const-string v5, "bookmarks"
26657 + const/4 v6, 0x0
26659 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26661 + goto/16 :goto_54
26663 + :cond_1d9
26664 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26666 + const/4 v4, 0x0
26668 + const-string v5, "bookmarks"
26670 + const/4 v6, 0x0
26672 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26674 + goto/16 :goto_54
26676 + :cond_1e4
26677 + move-object/from16 v13, p3
26679 + goto/16 :goto_54
26680 +.end method
26682 +.method public static enforcePrivacyPermission(Landroid/net/Uri;[Ljava/lang/String;Landroid/content/Context;Landroid/database/Cursor;Z)Landroid/database/Cursor;
26683 + .registers 20
26684 + .annotation system Ldalvik/annotation/Throws;
26685 + value = {
26686 + Landroid/os/RemoteException;
26688 + .end annotation
26690 + if-eqz p0, :cond_c8
26692 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26694 + if-nez v1, :cond_13
26696 + const-string/jumbo v1, "privacy"
26698 + move-object/from16 v0, p2
26700 + invoke-virtual {v0, v1}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
26702 + move-result-object v1
26704 + check-cast v1, Landroid/privacy/PrivacySettingsManager;
26706 + sput-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26708 + :cond_13
26709 + invoke-virtual/range {p2 .. p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
26711 + move-result-object v2
26713 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
26715 + move-result v3
26717 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26719 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
26721 + move-result-object v7
26723 + invoke-virtual {p0}, Landroid/net/Uri;->getAuthority()Ljava/lang/String;
26725 + move-result-object v9
26727 + const-string v14, "[real]"
26729 + move-object/from16 v13, p3
26731 + if-eqz v9, :cond_6d
26733 + const-string v1, "com.google.android.gsf.gservices"
26735 + invoke-virtual {v9, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26737 + move-result v1
26739 + if-eqz v1, :cond_6d
26741 + if-eqz v7, :cond_b6
26743 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
26745 + move-result v1
26747 + if-eqz v1, :cond_b6
26749 + invoke-interface/range {p3 .. p3}, Landroid/database/Cursor;->getPosition()I
26751 + move-result v8
26753 + const/4 v11, -0x1
26755 + const/4 v12, 0x0
26757 + :goto_41
26758 + :try_start_41
26759 + invoke-interface/range {p3 .. p3}, Landroid/database/Cursor;->getCount()I
26761 + move-result v1
26763 + if-ge v12, v1, :cond_5d
26765 + invoke-interface/range {p3 .. p3}, Landroid/database/Cursor;->moveToNext()Z
26767 + const/4 v1, 0x0
26769 + move-object/from16 v0, p3
26771 + invoke-interface {v0, v1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
26773 + move-result-object v1
26775 + const-string v4, "android_id"
26777 + invoke-virtual {v1, v4}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
26779 + move-result v1
26781 + if-eqz v1, :cond_6e
26783 + invoke-interface/range {p3 .. p3}, Landroid/database/Cursor;->getPosition()I
26784 + :try_end_5c
26785 + .catchall {:try_start_41 .. :try_end_5c} :catchall_cb
26786 + .catch Ljava/lang/Exception; {:try_start_41 .. :try_end_5c} :catch_71
26788 + move-result v11
26790 + :cond_5d
26791 + move-object/from16 v0, p3
26793 + invoke-interface {v0, v8}, Landroid/database/Cursor;->moveToPosition(I)Z
26795 + const/4 v1, -0x1
26797 + if-ne v11, v1, :cond_89
26799 + const-string v1, "PrivacyContentResolver"
26801 + const-string/jumbo v4, "now we return real cursor, because forbidden_pos is -1"
26803 + :goto_6a
26804 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
26806 + :cond_6d
26807 + :goto_6d
26808 + return-object v13
26810 + :cond_6e
26811 + add-int/lit8 v12, v12, 0x1
26813 + goto :goto_41
26815 + :catch_71
26816 + move-exception v10
26818 + :try_start_72
26819 + const-string v1, "PrivacyContentResolver"
26821 + const-string/jumbo v4, "something went wrong while getting blocked permission for android id"
26823 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
26824 + :try_end_7a
26825 + .catchall {:try_start_72 .. :try_end_7a} :catchall_cb
26827 + move-object/from16 v0, p3
26829 + invoke-interface {v0, v8}, Landroid/database/Cursor;->moveToPosition(I)Z
26831 + const/4 v1, -0x1
26833 + if-ne v11, v1, :cond_89
26835 + const-string v1, "PrivacyContentResolver"
26837 + const-string/jumbo v4, "now we return real cursor, because forbidden_pos is -1"
26839 + goto :goto_6a
26841 + :cond_88
26842 + throw v1
26844 + :cond_89
26845 + const-string v1, "PrivacyContentResolver"
26847 + new-instance v4, Ljava/lang/StringBuilder;
26849 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
26851 + const-string/jumbo v5, "now blocking google access to android id and give fake cursor. forbidden_position: "
26853 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
26855 + move-result-object v4
26857 + invoke-virtual {v4, v11}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
26859 + move-result-object v4
26861 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
26863 + move-result-object v4
26865 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
26867 + const-string v14, "[fake]"
26869 + new-instance v13, Landroid/privacy/surrogate/PrivacyCursor;
26871 + move-object/from16 v0, p3
26873 + invoke-direct {v13, v0, v11}, Landroid/privacy/surrogate/PrivacyCursor;-><init>(Landroid/database/Cursor;I)V
26875 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26877 + const/4 v4, 0x1
26879 + const-string/jumbo v5, "networkInfoSIM"
26881 + const/4 v6, 0x0
26883 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26885 + goto :goto_6d
26887 + :cond_b6
26888 + const-string v1, "PrivacyContentResolver"
26890 + const-string v4, "google is allowed to get real cursor"
26892 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
26894 + sget-object v1, Landroid/privacy/surrogate/PrivacyContentResolver;->pSetMan:Landroid/privacy/PrivacySettingsManager;
26896 + const/4 v4, 0x0
26898 + const-string/jumbo v5, "networkInfoSIM"
26900 + const/4 v6, 0x0
26902 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
26904 + goto :goto_6d
26906 + :cond_c8
26907 + move-object/from16 v13, p3
26909 + goto :goto_6d
26911 + :catchall_cb
26912 + move-exception v1
26914 + move-object/from16 v0, p3
26916 + invoke-interface {v0, v8}, Landroid/database/Cursor;->moveToPosition(I)Z
26918 + const/4 v4, -0x1
26920 + if-ne v11, v4, :cond_88
26922 + const-string v1, "PrivacyContentResolver"
26924 + const-string/jumbo v4, "now we return real cursor, because forbidden_pos is -1"
26926 + goto :goto_6a
26927 +.end method
26928 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali ext-framework/smali/android/privacy/surrogate/PrivacyCursor.smali
26929 --- stock-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 1969-12-31 18:00:00.000000000 -0600
26930 +++ ext-framework/smali/android/privacy/surrogate/PrivacyCursor.smali 2012-11-02 22:30:49.083878013 -0500
26931 @@ -0,0 +1,1765 @@
26932 +.class public Landroid/privacy/surrogate/PrivacyCursor;
26933 +.super Ljava/lang/Object;
26934 +.source "PrivacyCursor.java"
26936 +# interfaces
26937 +.implements Landroid/database/Cursor;
26940 +# static fields
26941 +.field private static final TAG:Ljava/lang/String; = "PrivacyCursor"
26943 +.field private static final mask:[Ljava/lang/String;
26946 +# instance fields
26947 +.field private allowedIdMapping:[I
26949 +.field private allowedIds:[I
26951 +.field private blockedColumnAndroidID:I
26953 +.field private googleCursor:Z
26955 +.field private realCursor:Landroid/database/Cursor;
26958 +# direct methods
26959 +.method static constructor <clinit>()V
26960 + .registers 3
26962 + const/16 v0, 0x10
26964 + new-array v0, v0, [Ljava/lang/String;
26966 + const/4 v1, 0x0
26968 + const-string v2, "0"
26970 + aput-object v2, v0, v1
26972 + const/4 v1, 0x1
26974 + const-string v2, "1"
26976 + aput-object v2, v0, v1
26978 + const/4 v1, 0x2
26980 + const-string v2, "2"
26982 + aput-object v2, v0, v1
26984 + const/4 v1, 0x3
26986 + const-string v2, "3"
26988 + aput-object v2, v0, v1
26990 + const/4 v1, 0x4
26992 + const-string v2, "4"
26994 + aput-object v2, v0, v1
26996 + const/4 v1, 0x5
26998 + const-string v2, "5"
27000 + aput-object v2, v0, v1
27002 + const/4 v1, 0x6
27004 + const-string v2, "6"
27006 + aput-object v2, v0, v1
27008 + const/4 v1, 0x7
27010 + const-string v2, "7"
27012 + aput-object v2, v0, v1
27014 + const/16 v1, 0x8
27016 + const-string v2, "8"
27018 + aput-object v2, v0, v1
27020 + const/16 v1, 0x9
27022 + const-string v2, "9"
27024 + aput-object v2, v0, v1
27026 + const/16 v1, 0xa
27028 + const-string v2, "a"
27030 + aput-object v2, v0, v1
27032 + const/16 v1, 0xb
27034 + const-string v2, "b"
27036 + aput-object v2, v0, v1
27038 + const/16 v1, 0xc
27040 + const-string v2, "c"
27042 + aput-object v2, v0, v1
27044 + const/16 v1, 0xd
27046 + const-string v2, "d"
27048 + aput-object v2, v0, v1
27050 + const/16 v1, 0xe
27052 + const-string v2, "e"
27054 + aput-object v2, v0, v1
27056 + const/16 v1, 0xf
27058 + const-string v2, "f"
27060 + aput-object v2, v0, v1
27062 + sput-object v0, Landroid/privacy/surrogate/PrivacyCursor;->mask:[Ljava/lang/String;
27064 + return-void
27065 +.end method
27067 +.method public constructor <init>()V
27068 + .registers 1
27070 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
27072 + return-void
27073 +.end method
27075 +.method public constructor <init>(Landroid/database/Cursor;I)V
27076 + .registers 6
27078 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
27080 + const/16 v0, -0xb
27082 + if-ne p2, v0, :cond_28
27084 + const/4 v0, 0x0
27086 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27088 + :goto_a
27089 + iput p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->blockedColumnAndroidID:I
27091 + const/4 v0, 0x1
27093 + iput-boolean v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
27095 + const-string v0, "PrivacyCursor"
27097 + new-instance v1, Ljava/lang/StringBuilder;
27099 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
27101 + const-string v2, "constructor is ready for google cursor! forbidden_position: "
27103 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27105 + move-result-object v1
27107 + invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
27109 + move-result-object v1
27111 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
27113 + move-result-object v1
27115 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
27117 + return-void
27119 + :cond_28
27120 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27122 + goto :goto_a
27123 +.end method
27125 +.method public constructor <init>(Landroid/database/Cursor;[I)V
27126 + .registers 7
27128 + invoke-direct {p0}, Ljava/lang/Object;-><init>()V
27130 + if-eqz p2, :cond_8
27132 + array-length v2, p2
27134 + if-nez v2, :cond_9
27136 + :cond_8
27137 + const/4 p1, 0x0
27139 + :cond_9
27140 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27142 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
27144 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27146 + if-eqz v2, :cond_3f
27148 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27150 + invoke-interface {v2}, Landroid/database/Cursor;->getPosition()I
27152 + move-result v0
27154 + array-length v2, p2
27156 + new-array v2, v2, [I
27158 + iput-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27160 + const/4 v1, 0x0
27162 + :cond_1d
27163 + :goto_1d
27164 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27166 + invoke-interface {v2}, Landroid/database/Cursor;->moveToNext()Z
27168 + move-result v2
27170 + if-eqz v2, :cond_3a
27172 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27174 + invoke-direct {p0, v2}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
27176 + move-result v2
27178 + if-eqz v2, :cond_1d
27180 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27182 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27184 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
27186 + move-result v3
27188 + aput v3, v2, v1
27190 + add-int/lit8 v1, v1, 0x1
27192 + goto :goto_1d
27194 + :cond_3a
27195 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27197 + invoke-interface {v2, v0}, Landroid/database/Cursor;->moveToPosition(I)Z
27199 + :cond_3f
27200 + return-void
27201 +.end method
27203 +.method private getContactId(Landroid/database/Cursor;)I
27204 + .registers 5
27206 + const-string v2, "_id"
27208 + invoke-interface {p1, v2}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
27210 + move-result v0
27212 + const/4 v1, -0x1
27214 + const/4 v2, -0x1
27216 + if-eq v0, v2, :cond_e
27218 + invoke-interface {p1, v0}, Landroid/database/Cursor;->getInt(I)I
27220 + move-result v1
27222 + :cond_e
27223 + return v1
27224 +.end method
27226 +.method private getFakeID()Ljava/lang/String;
27227 + .registers 8
27229 + :try_start_0
27230 + new-instance v3, Ljava/util/Random;
27232 + invoke-direct {v3}, Ljava/util/Random;-><init>()V
27234 + const-string v2, ""
27236 + const/4 v1, 0x0
27238 + :goto_8
27239 + const/16 v4, 0x10
27241 + if-ge v1, v4, :cond_34
27243 + new-instance v4, Ljava/lang/StringBuilder;
27245 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
27247 + invoke-virtual {v4, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27249 + move-result-object v4
27251 + sget-object v5, Landroid/privacy/surrogate/PrivacyCursor;->mask:[Ljava/lang/String;
27253 + const/16 v6, 0xf
27255 + invoke-virtual {v3, v6}, Ljava/util/Random;->nextInt(I)I
27257 + move-result v6
27259 + aget-object v5, v5, v6
27261 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27263 + move-result-object v4
27265 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
27266 + :try_end_26
27267 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_26} :catch_2a
27269 + move-result-object v2
27271 + add-int/lit8 v1, v1, 0x1
27273 + goto :goto_8
27275 + :catch_2a
27276 + move-exception v0
27278 + const-string v4, "PrivacyCursor"
27280 + const-string/jumbo v5, "something went wrong with creating fake ID"
27282 + invoke-static {v4, v5}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
27284 + const/4 v2, 0x0
27286 + :cond_34
27287 + return-object v2
27288 +.end method
27290 +.method private getMappedPos(I)I
27291 + .registers 4
27293 + const/4 v0, 0x0
27295 + :goto_1
27296 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27298 + array-length v1, v1
27300 + if-ge v0, v1, :cond_10
27302 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27304 + aget v1, v1, v0
27306 + if-ne v1, p1, :cond_d
27308 + :goto_c
27309 + return v0
27311 + :cond_d
27312 + add-int/lit8 v0, v0, 0x1
27314 + goto :goto_1
27316 + :cond_10
27317 + const/4 v0, -0x1
27319 + goto :goto_c
27320 +.end method
27322 +.method private isAllowed(I)Z
27323 + .registers 7
27325 + const/4 v4, 0x0
27327 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIds:[I
27329 + array-length v3, v0
27331 + const/4 v2, 0x0
27333 + :goto_5
27334 + if-ge v2, v3, :cond_c
27336 + aget v1, v0, v2
27338 + if-ne p1, v1, :cond_d
27340 + const/4 v4, 0x1
27342 + :cond_c
27343 + return v4
27345 + :cond_d
27346 + add-int/lit8 v2, v2, 0x1
27348 + goto :goto_5
27349 +.end method
27351 +.method private isAllowed(Landroid/database/Cursor;)Z
27352 + .registers 3
27354 + invoke-direct {p0, p1}, Landroid/privacy/surrogate/PrivacyCursor;->getContactId(Landroid/database/Cursor;)I
27356 + move-result v0
27358 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(I)Z
27360 + move-result v0
27362 + return v0
27363 +.end method
27366 +# virtual methods
27367 +.method public close()V
27368 + .registers 2
27370 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27372 + if-eqz v0, :cond_9
27374 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27376 + invoke-interface {v0}, Landroid/database/Cursor;->close()V
27378 + :cond_9
27379 + return-void
27380 +.end method
27382 +.method public copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
27383 + .registers 4
27385 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27387 + if-eqz v0, :cond_9
27389 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27391 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->copyStringToBuffer(ILandroid/database/CharArrayBuffer;)V
27393 + :cond_9
27394 + return-void
27395 +.end method
27397 +.method public deactivate()V
27398 + .registers 2
27400 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27402 + if-eqz v0, :cond_9
27404 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27406 + invoke-interface {v0}, Landroid/database/Cursor;->deactivate()V
27408 + :cond_9
27409 + return-void
27410 +.end method
27412 +.method public getBlob(I)[B
27413 + .registers 3
27415 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27417 + if-eqz v0, :cond_b
27419 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27421 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getBlob(I)[B
27423 + move-result-object v0
27425 + :goto_a
27426 + return-object v0
27428 + :cond_b
27429 + const/4 v0, 0x0
27431 + new-array v0, v0, [B
27433 + goto :goto_a
27434 +.end method
27436 +.method public getColumnCount()I
27437 + .registers 2
27439 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27441 + if-eqz v0, :cond_b
27443 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27445 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnCount()I
27447 + move-result v0
27449 + :goto_a
27450 + return v0
27452 + :cond_b
27453 + const/4 v0, 0x0
27455 + goto :goto_a
27456 +.end method
27458 +.method public getColumnIndex(Ljava/lang/String;)I
27459 + .registers 3
27461 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27463 + if-eqz v0, :cond_b
27465 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27467 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndex(Ljava/lang/String;)I
27469 + move-result v0
27471 + :goto_a
27472 + return v0
27474 + :cond_b
27475 + const/4 v0, -0x1
27477 + goto :goto_a
27478 +.end method
27480 +.method public getColumnIndexOrThrow(Ljava/lang/String;)I
27481 + .registers 3
27482 + .annotation system Ldalvik/annotation/Throws;
27483 + value = {
27484 + Ljava/lang/IllegalArgumentException;
27486 + .end annotation
27488 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27490 + if-eqz v0, :cond_b
27492 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27494 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnIndexOrThrow(Ljava/lang/String;)I
27496 + move-result v0
27498 + :goto_a
27499 + return v0
27501 + :cond_b
27502 + const/4 v0, -0x1
27504 + goto :goto_a
27505 +.end method
27507 +.method public getColumnName(I)Ljava/lang/String;
27508 + .registers 3
27510 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27512 + if-eqz v0, :cond_b
27514 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27516 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getColumnName(I)Ljava/lang/String;
27518 + move-result-object v0
27520 + :goto_a
27521 + return-object v0
27523 + :cond_b
27524 + const-string v0, ""
27526 + goto :goto_a
27527 +.end method
27529 +.method public getColumnNames()[Ljava/lang/String;
27530 + .registers 4
27532 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27534 + if-eqz v0, :cond_b
27536 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27538 + invoke-interface {v0}, Landroid/database/Cursor;->getColumnNames()[Ljava/lang/String;
27540 + move-result-object v0
27542 + :goto_a
27543 + return-object v0
27545 + :cond_b
27546 + const/4 v0, 0x1
27548 + new-array v0, v0, [Ljava/lang/String;
27550 + const/4 v1, 0x0
27552 + const-string v2, ""
27554 + aput-object v2, v0, v1
27556 + goto :goto_a
27557 +.end method
27559 +.method public getCount()I
27560 + .registers 4
27562 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27564 + if-eqz v0, :cond_2b
27566 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27568 + if-eqz v0, :cond_2b
27570 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
27572 + if-nez v0, :cond_2b
27574 + const-string v0, "PrivacyCursor"
27576 + new-instance v1, Ljava/lang/StringBuilder;
27578 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
27580 + const-string v2, "getCount: "
27582 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27584 + move-result-object v1
27586 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27588 + array-length v2, v2
27590 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
27592 + move-result-object v1
27594 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
27596 + move-result-object v1
27598 + invoke-static {v0, v1}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
27600 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27602 + array-length v0, v0
27604 + :goto_2a
27605 + return v0
27607 + :cond_2b
27608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27610 + if-eqz v0, :cond_36
27612 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27614 + invoke-interface {v0}, Landroid/database/Cursor;->getCount()I
27616 + move-result v0
27618 + goto :goto_2a
27620 + :cond_36
27621 + const/4 v0, 0x0
27623 + goto :goto_2a
27624 +.end method
27626 +.method public getDouble(I)D
27627 + .registers 4
27629 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27631 + if-eqz v0, :cond_b
27633 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27635 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getDouble(I)D
27637 + move-result-wide v0
27639 + :goto_a
27640 + return-wide v0
27642 + :cond_b
27643 + const-wide/16 v0, 0x0
27645 + goto :goto_a
27646 +.end method
27648 +.method public getExtras()Landroid/os/Bundle;
27649 + .registers 2
27651 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27653 + if-eqz v0, :cond_b
27655 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27657 + invoke-interface {v0}, Landroid/database/Cursor;->getExtras()Landroid/os/Bundle;
27659 + move-result-object v0
27661 + :goto_a
27662 + return-object v0
27664 + :cond_b
27665 + new-instance v0, Landroid/os/Bundle;
27667 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
27669 + goto :goto_a
27670 +.end method
27672 +.method public getFloat(I)F
27673 + .registers 3
27675 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27677 + if-eqz v0, :cond_b
27679 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27681 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getFloat(I)F
27683 + move-result v0
27685 + :goto_a
27686 + return v0
27688 + :cond_b
27689 + const/4 v0, 0x0
27691 + goto :goto_a
27692 +.end method
27694 +.method public getInt(I)I
27695 + .registers 4
27697 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27699 + if-eqz v1, :cond_b
27701 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27703 + invoke-interface {v1, p1}, Landroid/database/Cursor;->getInt(I)I
27705 + move-result v0
27707 + :goto_a
27708 + return v0
27710 + :cond_b
27711 + const/4 v0, 0x0
27713 + goto :goto_a
27714 +.end method
27716 +.method public getLong(I)J
27717 + .registers 4
27719 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27721 + if-eqz v0, :cond_b
27723 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27725 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getLong(I)J
27727 + move-result-wide v0
27729 + :goto_a
27730 + return-wide v0
27732 + :cond_b
27733 + const-wide/16 v0, 0x0
27735 + goto :goto_a
27736 +.end method
27738 +.method public getPosition()I
27739 + .registers 5
27741 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27743 + if-eqz v1, :cond_3f
27745 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
27747 + if-eqz v1, :cond_3f
27749 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
27751 + if-nez v1, :cond_3f
27753 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27755 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
27757 + move-result v1
27759 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
27761 + move-result v0
27763 + const-string v1, "PrivacyCursor"
27765 + new-instance v2, Ljava/lang/StringBuilder;
27767 + invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
27769 + const-string v3, "getPosition - mapped position: "
27771 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27773 + move-result-object v2
27775 + invoke-virtual {v2, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
27777 + move-result-object v2
27779 + const-string v3, " real position: "
27781 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27783 + move-result-object v2
27785 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27787 + invoke-interface {v3}, Landroid/database/Cursor;->getPosition()I
27789 + move-result v3
27791 + invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
27793 + move-result-object v2
27795 + invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
27797 + move-result-object v2
27799 + invoke-static {v1, v2}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
27801 + :goto_3e
27802 + return v0
27804 + :cond_3f
27805 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27807 + if-eqz v1, :cond_4a
27809 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27811 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
27813 + move-result v0
27815 + goto :goto_3e
27817 + :cond_4a
27818 + const/4 v0, -0x1
27820 + goto :goto_3e
27821 +.end method
27823 +.method public getShort(I)S
27824 + .registers 3
27826 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27828 + if-eqz v0, :cond_b
27830 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27832 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getShort(I)S
27834 + move-result v0
27836 + :goto_a
27837 + return v0
27839 + :cond_b
27840 + const/4 v0, 0x0
27842 + goto :goto_a
27843 +.end method
27845 +.method public getString(I)Ljava/lang/String;
27846 + .registers 9
27848 + iget-boolean v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
27850 + if-eqz v4, :cond_63
27852 + const/4 v4, 0x1
27854 + if-ne p1, v4, :cond_63
27856 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27858 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
27860 + move-result v4
27862 + iget v5, p0, Landroid/privacy/surrogate/PrivacyCursor;->blockedColumnAndroidID:I
27864 + if-ne v4, v5, :cond_63
27866 + const-string v4, "PrivacyCursor"
27868 + const-string v5, "google tries to get android_id with getString()"
27870 + invoke-static {v4, v5}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
27872 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyCursor;->getFakeID()Ljava/lang/String;
27874 + move-result-object v2
27876 + if-eqz v2, :cond_58
27878 + :try_start_1e
27879 + new-instance v3, Ljava/math/BigInteger;
27881 + const/16 v4, 0x10
27883 + invoke-direct {v3, v2, v4}, Ljava/math/BigInteger;-><init>(Ljava/lang/String;I)V
27885 + invoke-static {v3}, Ljava/lang/String;->valueOf(Ljava/lang/Object;)Ljava/lang/String;
27887 + move-result-object v1
27889 + const-string v4, "PrivacyCursor"
27891 + new-instance v5, Ljava/lang/StringBuilder;
27893 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
27895 + const-string/jumbo v6, "returned : "
27897 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27899 + move-result-object v5
27901 + invoke-virtual {v5, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27903 + move-result-object v5
27905 + const-string v6, "(String) as fake android id"
27907 + invoke-virtual {v5, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
27909 + move-result-object v5
27911 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
27913 + move-result-object v5
27915 + invoke-static {v4, v5}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
27916 + :try_end_48
27917 + .catch Ljava/lang/Exception; {:try_start_1e .. :try_end_48} :catch_49
27919 + :goto_48
27920 + return-object v1
27922 + :catch_49
27923 + move-exception v0
27925 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
27927 + const-string v4, "PrivacyCursor"
27929 + const-string/jumbo v5, "returned \"\" as android_id"
27931 + invoke-static {v4, v5}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
27933 + const-string v1, ""
27935 + goto :goto_48
27937 + :cond_58
27938 + const-string v4, "PrivacyCursor"
27940 + const-string/jumbo v5, "returned \"\" as android_id"
27942 + invoke-static {v4, v5}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
27944 + const-string v1, ""
27946 + goto :goto_48
27948 + :cond_63
27949 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27951 + if-eqz v4, :cond_6e
27953 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27955 + invoke-interface {v4, p1}, Landroid/database/Cursor;->getString(I)Ljava/lang/String;
27957 + move-result-object v1
27959 + goto :goto_48
27961 + :cond_6e
27962 + const-string v1, ""
27964 + goto :goto_48
27965 +.end method
27967 +.method public getType(I)I
27968 + .registers 3
27970 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27972 + if-eqz v0, :cond_b
27974 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27976 + invoke-interface {v0, p1}, Landroid/database/Cursor;->getType(I)I
27978 + move-result v0
27980 + :goto_a
27981 + return v0
27983 + :cond_b
27984 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27986 + const/4 v0, 0x0
27988 + goto :goto_a
27989 +.end method
27991 +.method public getWantsAllOnMoveCalls()Z
27992 + .registers 2
27994 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
27996 + if-eqz v0, :cond_b
27998 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28000 + invoke-interface {v0}, Landroid/database/Cursor;->getWantsAllOnMoveCalls()Z
28002 + move-result v0
28004 + :goto_a
28005 + return v0
28007 + :cond_b
28008 + const/4 v0, 0x0
28010 + goto :goto_a
28011 +.end method
28013 +.method public isAfterLast()Z
28014 + .registers 2
28016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28018 + if-eqz v0, :cond_b
28020 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28022 + invoke-interface {v0}, Landroid/database/Cursor;->isAfterLast()Z
28024 + move-result v0
28026 + :goto_a
28027 + return v0
28029 + :cond_b
28030 + const/4 v0, 0x0
28032 + goto :goto_a
28033 +.end method
28035 +.method public isBeforeFirst()Z
28036 + .registers 2
28038 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28040 + if-eqz v0, :cond_b
28042 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28044 + invoke-interface {v0}, Landroid/database/Cursor;->isBeforeFirst()Z
28046 + move-result v0
28048 + :goto_a
28049 + return v0
28051 + :cond_b
28052 + const/4 v0, 0x0
28054 + goto :goto_a
28055 +.end method
28057 +.method public isClosed()Z
28058 + .registers 2
28060 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28062 + if-eqz v0, :cond_b
28064 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28066 + invoke-interface {v0}, Landroid/database/Cursor;->isClosed()Z
28068 + move-result v0
28070 + :goto_a
28071 + return v0
28073 + :cond_b
28074 + const/4 v0, 0x0
28076 + goto :goto_a
28077 +.end method
28079 +.method public isFirst()Z
28080 + .registers 4
28082 + const/4 v0, 0x0
28084 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28086 + if-eqz v1, :cond_1b
28088 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28090 + if-eqz v1, :cond_1b
28092 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28094 + if-nez v1, :cond_1b
28096 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28098 + invoke-interface {v1}, Landroid/database/Cursor;->getPosition()I
28100 + move-result v1
28102 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28104 + aget v2, v2, v0
28106 + if-ne v1, v2, :cond_1a
28108 + const/4 v0, 0x1
28110 + :cond_1a
28111 + :goto_1a
28112 + return v0
28114 + :cond_1b
28115 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28117 + if-eqz v1, :cond_1a
28119 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28121 + invoke-interface {v0}, Landroid/database/Cursor;->isFirst()Z
28123 + move-result v0
28125 + goto :goto_1a
28126 +.end method
28128 +.method public isLast()Z
28129 + .registers 4
28131 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28133 + if-eqz v0, :cond_1f
28135 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28137 + if-eqz v0, :cond_1f
28139 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28141 + if-nez v0, :cond_1f
28143 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28145 + invoke-interface {v0}, Landroid/database/Cursor;->getPosition()I
28147 + move-result v0
28149 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28151 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28153 + array-length v2, v2
28155 + add-int/lit8 v2, v2, -0x1
28157 + aget v1, v1, v2
28159 + if-ne v0, v1, :cond_2a
28161 + const/4 v0, 0x1
28163 + :goto_1e
28164 + return v0
28166 + :cond_1f
28167 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28169 + if-eqz v0, :cond_2a
28171 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28173 + invoke-interface {v0}, Landroid/database/Cursor;->isLast()Z
28175 + move-result v0
28177 + goto :goto_1e
28179 + :cond_2a
28180 + const/4 v0, 0x0
28182 + goto :goto_1e
28183 +.end method
28185 +.method public isNull(I)Z
28186 + .registers 3
28188 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28190 + if-eqz v0, :cond_b
28192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28194 + invoke-interface {v0, p1}, Landroid/database/Cursor;->isNull(I)Z
28196 + move-result v0
28198 + :goto_a
28199 + return v0
28201 + :cond_b
28202 + const/4 v0, 0x0
28204 + goto :goto_a
28205 +.end method
28207 +.method public move(I)Z
28208 + .registers 8
28210 + const/4 v2, 0x0
28212 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28214 + if-eqz v3, :cond_3e
28216 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28218 + if-eqz v3, :cond_3e
28220 + iget-boolean v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28222 + if-nez v3, :cond_3e
28224 + const-string v3, "PrivacyCursor"
28226 + new-instance v4, Ljava/lang/StringBuilder;
28228 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
28230 + const-string/jumbo v5, "move - offset: "
28232 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28234 + move-result-object v4
28236 + invoke-virtual {v4, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
28238 + move-result-object v4
28240 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
28242 + move-result-object v4
28244 + invoke-static {v3, v4}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
28246 + :try_start_26
28247 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28249 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28251 + invoke-interface {v4}, Landroid/database/Cursor;->getPosition()I
28253 + move-result v4
28255 + invoke-direct {p0, v4}, Landroid/privacy/surrogate/PrivacyCursor;->getMappedPos(I)I
28257 + move-result v4
28259 + add-int/2addr v4, p1
28261 + aget v1, v3, v4
28263 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28265 + invoke-interface {v3, v1}, Landroid/database/Cursor;->moveToPosition(I)Z
28266 + :try_end_3a
28267 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_26 .. :try_end_3a} :catch_3c
28269 + move-result v2
28271 + :cond_3b
28272 + :goto_3b
28273 + return v2
28275 + :catch_3c
28276 + move-exception v0
28278 + goto :goto_3b
28280 + :cond_3e
28281 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28283 + if-eqz v3, :cond_3b
28285 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28287 + invoke-interface {v3, p1}, Landroid/database/Cursor;->move(I)Z
28289 + goto :goto_3b
28290 +.end method
28292 +.method public moveToFirst()Z
28293 + .registers 4
28295 + const/4 v0, 0x0
28297 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28299 + if-eqz v1, :cond_18
28301 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28303 + if-eqz v1, :cond_18
28305 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28307 + if-nez v1, :cond_18
28309 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28311 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28313 + aget v2, v2, v0
28315 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
28317 + move-result v0
28319 + :cond_17
28320 + :goto_17
28321 + return v0
28323 + :cond_18
28324 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28326 + if-eqz v1, :cond_17
28328 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28330 + invoke-interface {v1}, Landroid/database/Cursor;->moveToFirst()Z
28332 + move-result v0
28334 + goto :goto_17
28335 +.end method
28337 +.method public moveToLast()Z
28338 + .registers 5
28340 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28342 + if-eqz v1, :cond_1c
28344 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28346 + if-eqz v1, :cond_1c
28348 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28350 + if-nez v1, :cond_1c
28352 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28354 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28356 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28358 + array-length v3, v3
28360 + add-int/lit8 v3, v3, -0x1
28362 + aget v2, v2, v3
28364 + invoke-interface {v1, v2}, Landroid/database/Cursor;->moveToPosition(I)Z
28366 + move-result v0
28368 + :goto_1b
28369 + return v0
28371 + :cond_1c
28372 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28374 + if-eqz v1, :cond_27
28376 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28378 + invoke-interface {v1}, Landroid/database/Cursor;->moveToLast()Z
28380 + move-result v0
28382 + goto :goto_1b
28384 + :cond_27
28385 + const/4 v0, 0x0
28387 + goto :goto_1b
28388 +.end method
28390 +.method public moveToNext()Z
28391 + .registers 3
28393 + const/4 v0, 0x0
28395 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28397 + if-eqz v1, :cond_29
28399 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28401 + if-eqz v1, :cond_29
28403 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28405 + if-nez v1, :cond_29
28407 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28409 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
28411 + move-result v1
28413 + if-nez v1, :cond_16
28415 + :cond_15
28416 + :goto_15
28417 + return v0
28419 + :cond_16
28420 + const/4 v0, 0x1
28422 + :goto_17
28423 + const/4 v1, 0x1
28425 + if-ne v0, v1, :cond_15
28427 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28429 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
28431 + move-result v1
28433 + if-nez v1, :cond_15
28435 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28437 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
28439 + move-result v0
28441 + goto :goto_17
28443 + :cond_29
28444 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28446 + if-eqz v1, :cond_15
28448 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28450 + invoke-interface {v1}, Landroid/database/Cursor;->moveToNext()Z
28452 + move-result v0
28454 + goto :goto_15
28455 +.end method
28457 +.method public moveToPosition(I)Z
28458 + .registers 6
28460 + const/4 v1, 0x0
28462 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28464 + if-eqz v2, :cond_1a
28466 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28468 + if-eqz v2, :cond_1a
28470 + iget-boolean v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28472 + if-nez v2, :cond_1a
28474 + :try_start_d
28475 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28477 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28479 + aget v3, v3, p1
28481 + invoke-interface {v2, v3}, Landroid/database/Cursor;->moveToPosition(I)Z
28482 + :try_end_16
28483 + .catch Ljava/lang/ArrayIndexOutOfBoundsException; {:try_start_d .. :try_end_16} :catch_18
28485 + move-result v1
28487 + :cond_17
28488 + :goto_17
28489 + return v1
28491 + :catch_18
28492 + move-exception v0
28494 + goto :goto_17
28496 + :cond_1a
28497 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28499 + if-eqz v2, :cond_17
28501 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28503 + invoke-interface {v2, p1}, Landroid/database/Cursor;->moveToPosition(I)Z
28505 + move-result v1
28507 + goto :goto_17
28508 +.end method
28510 +.method public moveToPrevious()Z
28511 + .registers 3
28513 + const/4 v0, 0x0
28515 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28517 + if-eqz v1, :cond_29
28519 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->allowedIdMapping:[I
28521 + if-eqz v1, :cond_29
28523 + iget-boolean v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->googleCursor:Z
28525 + if-nez v1, :cond_29
28527 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28529 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
28531 + move-result v1
28533 + if-nez v1, :cond_16
28535 + :cond_15
28536 + :goto_15
28537 + return v0
28539 + :cond_16
28540 + const/4 v0, 0x1
28542 + :goto_17
28543 + const/4 v1, 0x1
28545 + if-ne v0, v1, :cond_15
28547 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28549 + invoke-direct {p0, v1}, Landroid/privacy/surrogate/PrivacyCursor;->isAllowed(Landroid/database/Cursor;)Z
28551 + move-result v1
28553 + if-nez v1, :cond_15
28555 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28557 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
28559 + move-result v0
28561 + goto :goto_17
28563 + :cond_29
28564 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28566 + if-eqz v1, :cond_15
28568 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28570 + invoke-interface {v1}, Landroid/database/Cursor;->moveToPrevious()Z
28572 + move-result v0
28574 + goto :goto_15
28575 +.end method
28577 +.method public registerContentObserver(Landroid/database/ContentObserver;)V
28578 + .registers 3
28580 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28582 + if-eqz v0, :cond_9
28584 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28586 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerContentObserver(Landroid/database/ContentObserver;)V
28588 + :cond_9
28589 + return-void
28590 +.end method
28592 +.method public registerDataSetObserver(Landroid/database/DataSetObserver;)V
28593 + .registers 3
28595 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28597 + if-eqz v0, :cond_9
28599 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28601 + invoke-interface {v0, p1}, Landroid/database/Cursor;->registerDataSetObserver(Landroid/database/DataSetObserver;)V
28603 + :cond_9
28604 + return-void
28605 +.end method
28607 +.method public requery()Z
28608 + .registers 2
28610 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28612 + if-eqz v0, :cond_b
28614 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28616 + invoke-interface {v0}, Landroid/database/Cursor;->requery()Z
28618 + move-result v0
28620 + :goto_a
28621 + return v0
28623 + :cond_b
28624 + const/4 v0, 0x0
28626 + goto :goto_a
28627 +.end method
28629 +.method public respond(Landroid/os/Bundle;)Landroid/os/Bundle;
28630 + .registers 3
28632 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28634 + if-eqz v0, :cond_b
28636 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28638 + invoke-interface {v0, p1}, Landroid/database/Cursor;->respond(Landroid/os/Bundle;)Landroid/os/Bundle;
28640 + move-result-object v0
28642 + :goto_a
28643 + return-object v0
28645 + :cond_b
28646 + new-instance v0, Landroid/os/Bundle;
28648 + invoke-direct {v0}, Landroid/os/Bundle;-><init>()V
28650 + goto :goto_a
28651 +.end method
28653 +.method public setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
28654 + .registers 4
28656 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28658 + if-eqz v0, :cond_9
28660 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28662 + invoke-interface {v0, p1, p2}, Landroid/database/Cursor;->setNotificationUri(Landroid/content/ContentResolver;Landroid/net/Uri;)V
28664 + :cond_9
28665 + return-void
28666 +.end method
28668 +.method public unregisterContentObserver(Landroid/database/ContentObserver;)V
28669 + .registers 3
28671 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28673 + if-eqz v0, :cond_9
28675 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28677 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterContentObserver(Landroid/database/ContentObserver;)V
28679 + :cond_9
28680 + return-void
28681 +.end method
28683 +.method public unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
28684 + .registers 3
28686 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28688 + if-eqz v0, :cond_9
28690 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyCursor;->realCursor:Landroid/database/Cursor;
28692 + invoke-interface {v0, p1}, Landroid/database/Cursor;->unregisterDataSetObserver(Landroid/database/DataSetObserver;)V
28694 + :cond_9
28695 + return-void
28696 +.end method
28697 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyGSMPhone.smali ext-framework/smali/android/privacy/surrogate/PrivacyGSMPhone.smali
28698 --- stock-framework/smali/android/privacy/surrogate/PrivacyGSMPhone.smali 1969-12-31 18:00:00.000000000 -0600
28699 +++ ext-framework/smali/android/privacy/surrogate/PrivacyGSMPhone.smali 2012-11-02 22:30:49.091878064 -0500
28700 @@ -0,0 +1,1602 @@
28701 +.class public Landroid/privacy/surrogate/PrivacyGSMPhone;
28702 +.super Lcom/android/internal/telephony/gsm/GSMPhone;
28703 +.source "PrivacyGSMPhone.java"
28706 +# static fields
28707 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyGSMPhone"
28710 +# instance fields
28711 +.field private context:Landroid/content/Context;
28713 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
28716 +# direct methods
28717 +.method public constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
28718 + .registers 7
28720 + invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/gsm/GSMPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
28722 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28724 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
28726 + const-string/jumbo v1, "privacy"
28728 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
28730 + move-result-object v1
28732 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
28734 + move-result-object v1
28736 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
28738 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28740 + const-string v0, "PrivacyGSMPhone"
28742 + new-instance v1, Ljava/lang/StringBuilder;
28744 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
28746 + const-string v2, "Constructor ready for package: "
28748 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28750 + move-result-object v1
28752 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28754 + move-result-object v2
28756 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28758 + move-result-object v1
28760 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
28762 + move-result-object v1
28764 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
28766 + return-void
28767 +.end method
28770 +# virtual methods
28771 +.method public dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
28772 + .registers 10
28773 + .annotation system Ldalvik/annotation/Throws;
28774 + value = {
28775 + Lcom/android/internal/telephony/CallStateException;
28777 + .end annotation
28779 + const/4 v2, 0x0
28781 + const/4 v5, 0x0
28783 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28785 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28787 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28789 + move-result-object v1
28791 + const/4 v3, -0x1
28793 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
28795 + move-result-object v7
28797 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28799 + if-eqz v0, :cond_31
28801 + if-eqz v7, :cond_31
28803 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
28805 + move-result v0
28807 + if-eqz v0, :cond_31
28809 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28811 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28813 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28815 + move-result-object v1
28817 + const/4 v3, 0x1
28819 + const-string/jumbo v4, "phoneCall"
28821 + move-object v6, v5
28823 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
28825 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
28827 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
28829 + throw v0
28831 + :cond_31
28832 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28834 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28836 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28838 + move-result-object v1
28840 + const-string/jumbo v4, "phoneCall"
28842 + move v3, v2
28844 + move-object v6, v5
28846 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
28848 + invoke-super {p0, p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
28850 + move-result-object v0
28852 + return-object v0
28853 +.end method
28855 +.method public dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
28856 + .registers 11
28857 + .annotation system Ldalvik/annotation/Throws;
28858 + value = {
28859 + Lcom/android/internal/telephony/CallStateException;
28861 + .end annotation
28863 + const/4 v2, 0x0
28865 + const/4 v5, 0x0
28867 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28869 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28871 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28873 + move-result-object v1
28875 + const/4 v3, -0x1
28877 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
28879 + move-result-object v7
28881 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28883 + if-eqz v0, :cond_31
28885 + if-eqz v7, :cond_31
28887 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
28889 + move-result v0
28891 + if-eqz v0, :cond_31
28893 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28895 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28897 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28899 + move-result-object v1
28901 + const/4 v3, 0x1
28903 + const-string/jumbo v4, "phoneCall"
28905 + move-object v6, v5
28907 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
28909 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
28911 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
28913 + throw v0
28915 + :cond_31
28916 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28918 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28920 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28922 + move-result-object v1
28924 + const-string/jumbo v4, "phoneCall"
28926 + move v3, v2
28928 + move-object v6, v5
28930 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
28932 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/gsm/GSMPhone;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
28934 + move-result-object v0
28936 + return-object v0
28937 +.end method
28939 +.method public getCellLocation()Landroid/telephony/CellLocation;
28940 + .registers 8
28942 + const/4 v5, 0x0
28944 + const/4 v2, 0x0
28946 + const-string v0, "PrivacyGSMPhone"
28948 + new-instance v1, Ljava/lang/StringBuilder;
28950 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
28952 + const-string v3, "Package: "
28954 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28956 + move-result-object v1
28958 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28960 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28962 + move-result-object v3
28964 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28966 + move-result-object v1
28968 + const-string v3, " asked for getCellLocation()"
28970 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
28972 + move-result-object v1
28974 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
28976 + move-result-object v1
28978 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
28980 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28982 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
28984 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
28986 + move-result-object v1
28988 + invoke-static {}, Landroid/os/Process;->myUid()I
28990 + move-result v3
28992 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
28994 + move-result-object v6
28996 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
28998 + if-eqz v0, :cond_5f
29000 + if-eqz v6, :cond_5f
29002 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
29004 + move-result v0
29006 + if-nez v0, :cond_48
29008 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
29010 + move-result v0
29012 + if-eqz v0, :cond_5f
29014 + :cond_48
29015 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29017 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29019 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29021 + move-result-object v1
29023 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
29025 + move-result v3
29027 + const-string v4, "locationNetwork"
29029 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29031 + new-instance v0, Landroid/telephony/gsm/GsmCellLocation;
29033 + invoke-direct {v0}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
29035 + :goto_5e
29036 + return-object v0
29038 + :cond_5f
29039 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29041 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29043 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29045 + move-result-object v1
29047 + const-string v4, "locationNetwork"
29049 + move v3, v2
29051 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29053 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
29055 + move-result-object v0
29057 + goto :goto_5e
29058 +.end method
29060 +.method public getDeviceId()Ljava/lang/String;
29061 + .registers 8
29063 + const-string v0, "PrivacyGSMPhone"
29065 + new-instance v3, Ljava/lang/StringBuilder;
29067 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
29069 + const-string v4, "Package: "
29071 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29073 + move-result-object v3
29075 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29077 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29079 + move-result-object v4
29081 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29083 + move-result-object v3
29085 + const-string v4, " asked for getDeviceId()"
29087 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29089 + move-result-object v3
29091 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29093 + move-result-object v3
29095 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29097 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29099 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29101 + move-result-object v1
29103 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
29105 + move-result v2
29107 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29109 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29111 + move-result-object v6
29113 + if-eqz v6, :cond_4c
29115 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29117 + move-result v0
29119 + if-eqz v0, :cond_4c
29121 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
29123 + move-result-object v5
29125 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29127 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29129 + move-result v3
29131 + const-string v4, "deviceID"
29133 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29135 + :goto_4b
29136 + return-object v5
29138 + :cond_4c
29139 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getDeviceId()Ljava/lang/String;
29141 + move-result-object v5
29143 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29145 + const/4 v3, 0x0
29147 + const-string v4, "deviceID"
29149 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29151 + goto :goto_4b
29152 +.end method
29154 +.method public getDeviceSvn()Ljava/lang/String;
29155 + .registers 8
29157 + const-string v0, "PrivacyGSMPhone"
29159 + new-instance v3, Ljava/lang/StringBuilder;
29161 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
29163 + const-string v4, "Package: "
29165 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29167 + move-result-object v3
29169 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29171 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29173 + move-result-object v4
29175 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29177 + move-result-object v3
29179 + const-string v4, " asked for getDeviceSvn()"
29181 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29183 + move-result-object v3
29185 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29187 + move-result-object v3
29189 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29191 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29193 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29195 + move-result-object v1
29197 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
29199 + move-result v2
29201 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29203 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29205 + move-result-object v6
29207 + if-eqz v6, :cond_4c
29209 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29211 + move-result v0
29213 + if-eqz v0, :cond_4c
29215 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
29217 + move-result-object v5
29219 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29221 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29223 + move-result v3
29225 + const-string v4, "deviceID"
29227 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29229 + :goto_4b
29230 + return-object v5
29232 + :cond_4c
29233 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getDeviceId()Ljava/lang/String;
29235 + move-result-object v5
29237 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29239 + const/4 v3, 0x0
29241 + const-string v4, "deviceID"
29243 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29245 + goto :goto_4b
29246 +.end method
29248 +.method public getEsn()Ljava/lang/String;
29249 + .registers 8
29251 + const-string v0, "PrivacyGSMPhone"
29253 + new-instance v3, Ljava/lang/StringBuilder;
29255 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
29257 + const-string v4, "Package: "
29259 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29261 + move-result-object v3
29263 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29265 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29267 + move-result-object v4
29269 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29271 + move-result-object v3
29273 + const-string v4, " asked for getEsn()"
29275 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29277 + move-result-object v3
29279 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29281 + move-result-object v3
29283 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29285 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29287 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29289 + move-result-object v1
29291 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
29293 + move-result v2
29295 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29297 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29299 + move-result-object v6
29301 + if-eqz v6, :cond_4c
29303 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29305 + move-result v0
29307 + if-eqz v0, :cond_4c
29309 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
29311 + move-result-object v5
29313 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29315 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29317 + move-result v3
29319 + const-string v4, "deviceID"
29321 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29323 + :goto_4b
29324 + return-object v5
29326 + :cond_4c
29327 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getDeviceId()Ljava/lang/String;
29329 + move-result-object v5
29331 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29333 + const/4 v3, 0x0
29335 + const-string v4, "deviceID"
29337 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29339 + goto :goto_4b
29340 +.end method
29342 +.method public getImei()Ljava/lang/String;
29343 + .registers 8
29345 + const-string v0, "PrivacyGSMPhone"
29347 + new-instance v3, Ljava/lang/StringBuilder;
29349 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
29351 + const-string v4, "Package: "
29353 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29355 + move-result-object v3
29357 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29359 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29361 + move-result-object v4
29363 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29365 + move-result-object v3
29367 + const-string v4, " asked for getImei"
29369 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29371 + move-result-object v3
29373 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29375 + move-result-object v3
29377 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29379 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29381 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29383 + move-result-object v1
29385 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
29387 + move-result v2
29389 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29391 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29393 + move-result-object v6
29395 + if-eqz v6, :cond_4c
29397 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29399 + move-result v0
29401 + if-eqz v0, :cond_4c
29403 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
29405 + move-result-object v5
29407 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29409 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29411 + move-result v3
29413 + const-string v4, "deviceID"
29415 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29417 + :goto_4b
29418 + return-object v5
29420 + :cond_4c
29421 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getDeviceId()Ljava/lang/String;
29423 + move-result-object v5
29425 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29427 + const/4 v3, 0x0
29429 + const-string v4, "deviceID"
29431 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29433 + goto :goto_4b
29434 +.end method
29436 +.method public getLine1AlphaTag()Ljava/lang/String;
29437 + .registers 8
29439 + const/4 v2, 0x0
29441 + const-string v0, "PrivacyGSMPhone"
29443 + new-instance v1, Ljava/lang/StringBuilder;
29445 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
29447 + const-string v3, "Package: "
29449 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29451 + move-result-object v1
29453 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29455 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29457 + move-result-object v3
29459 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29461 + move-result-object v1
29463 + const-string v3, " asked for getLine1AlphaTag()"
29465 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29467 + move-result-object v1
29469 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29471 + move-result-object v1
29473 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29475 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29477 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29479 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29481 + move-result-object v1
29483 + invoke-static {}, Landroid/os/Process;->myUid()I
29485 + move-result v3
29487 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29489 + move-result-object v6
29491 + const-string v5, ""
29493 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29495 + if-eqz v0, :cond_59
29497 + if-eqz v6, :cond_59
29499 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
29501 + move-result v0
29503 + if-eqz v0, :cond_59
29505 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
29507 + move-result-object v5
29509 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29511 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29513 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29515 + move-result-object v1
29517 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
29519 + move-result v3
29521 + const-string v4, "line1Number"
29523 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29525 + :goto_58
29526 + return-object v5
29528 + :cond_59
29529 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29531 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29533 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29535 + move-result-object v1
29537 + const-string v4, "line1Number"
29539 + move v3, v2
29541 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29543 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getLine1AlphaTag()Ljava/lang/String;
29545 + move-result-object v5
29547 + goto :goto_58
29548 +.end method
29550 +.method public getLine1Number()Ljava/lang/String;
29551 + .registers 8
29553 + const/4 v2, 0x0
29555 + const-string v0, "PrivacyGSMPhone"
29557 + new-instance v1, Ljava/lang/StringBuilder;
29559 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
29561 + const-string v3, "Package: "
29563 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29565 + move-result-object v1
29567 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29569 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29571 + move-result-object v3
29573 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29575 + move-result-object v1
29577 + const-string v3, " asked for getLine1Number()"
29579 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29581 + move-result-object v1
29583 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29585 + move-result-object v1
29587 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29589 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29591 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29593 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29595 + move-result-object v1
29597 + invoke-static {}, Landroid/os/Process;->myUid()I
29599 + move-result v3
29601 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29603 + move-result-object v6
29605 + const-string v5, ""
29607 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29609 + if-eqz v0, :cond_59
29611 + if-eqz v6, :cond_59
29613 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
29615 + move-result v0
29617 + if-eqz v0, :cond_59
29619 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
29621 + move-result-object v5
29623 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29625 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29627 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29629 + move-result-object v1
29631 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
29633 + move-result v3
29635 + const-string v4, "line1Number"
29637 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29639 + :goto_58
29640 + return-object v5
29642 + :cond_59
29643 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29645 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29647 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29649 + move-result-object v1
29651 + const-string v4, "line1Number"
29653 + move v3, v2
29655 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29657 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getLine1AlphaTag()Ljava/lang/String;
29659 + move-result-object v5
29661 + goto :goto_58
29662 +.end method
29664 +.method public getMeid()Ljava/lang/String;
29665 + .registers 8
29667 + const-string v0, "PrivacyGSMPhone"
29669 + new-instance v3, Ljava/lang/StringBuilder;
29671 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
29673 + const-string v4, "Package: "
29675 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29677 + move-result-object v3
29679 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29681 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29683 + move-result-object v4
29685 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29687 + move-result-object v3
29689 + const-string v4, " asked for getMeid()"
29691 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29693 + move-result-object v3
29695 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29697 + move-result-object v3
29699 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29701 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29703 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29705 + move-result-object v1
29707 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
29709 + move-result v2
29711 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29713 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29715 + move-result-object v6
29717 + if-eqz v6, :cond_4c
29719 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29721 + move-result v0
29723 + if-eqz v0, :cond_4c
29725 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
29727 + move-result-object v5
29729 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29731 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
29733 + move-result v3
29735 + const-string v4, "deviceID"
29737 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29739 + :goto_4b
29740 + return-object v5
29742 + :cond_4c
29743 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getDeviceId()Ljava/lang/String;
29745 + move-result-object v5
29747 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29749 + const/4 v3, 0x0
29751 + const-string v4, "deviceID"
29753 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29755 + goto :goto_4b
29756 +.end method
29758 +.method public getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
29759 + .registers 8
29761 + const/4 v5, 0x0
29763 + const/4 v2, 0x0
29765 + const-string v0, "PrivacyGSMPhone"
29767 + new-instance v1, Ljava/lang/StringBuilder;
29769 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
29771 + const-string v3, "Package: "
29773 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29775 + move-result-object v1
29777 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29779 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29781 + move-result-object v3
29783 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29785 + move-result-object v1
29787 + const-string v3, " asked for getPhoneSubInfo()"
29789 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29791 + move-result-object v1
29793 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29795 + move-result-object v1
29797 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29799 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29801 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29803 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29805 + move-result-object v1
29807 + invoke-static {}, Landroid/os/Process;->myUid()I
29809 + move-result v3
29811 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29813 + move-result-object v6
29815 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29817 + if-eqz v0, :cond_54
29819 + if-eqz v6, :cond_54
29821 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
29823 + move-result v0
29825 + if-eqz v0, :cond_54
29827 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29829 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29831 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29833 + move-result-object v1
29835 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
29837 + move-result v3
29839 + const-string v4, "locationNetwork"
29841 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29843 + :goto_53
29844 + return-object v5
29846 + :cond_54
29847 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29849 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29851 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29853 + move-result-object v1
29855 + const-string v4, "locationNetwork"
29857 + move v3, v2
29859 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29861 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
29863 + move-result-object v5
29865 + goto :goto_53
29866 +.end method
29868 +.method public getServiceState()Landroid/telephony/ServiceState;
29869 + .registers 10
29871 + :try_start_0
29872 + const-string v0, "PrivacyGSMPhone"
29874 + new-instance v1, Ljava/lang/StringBuilder;
29876 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
29878 + const-string v2, "Package: "
29880 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29882 + move-result-object v1
29884 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29886 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29888 + move-result-object v2
29890 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29892 + move-result-object v1
29894 + const-string v2, " asked for getServiceState()"
29896 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
29898 + move-result-object v1
29900 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
29902 + move-result-object v1
29904 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
29906 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29908 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29910 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29912 + move-result-object v1
29914 + invoke-static {}, Landroid/os/Process;->myUid()I
29916 + move-result v2
29918 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
29920 + move-result-object v6
29922 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29924 + if-eqz v0, :cond_61
29926 + if-eqz v6, :cond_61
29928 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
29930 + move-result v0
29932 + if-eqz v0, :cond_61
29934 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29936 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29938 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29940 + move-result-object v1
29942 + const/4 v2, 0x0
29944 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
29946 + move-result v3
29948 + const-string v4, "locationNetwork"
29950 + const/4 v5, 0x0
29952 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29954 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getServiceState()Landroid/telephony/ServiceState;
29956 + move-result-object v8
29958 + const-string v0, ""
29960 + const-string v1, ""
29962 + const-string v2, ""
29964 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
29966 + :goto_60
29967 + return-object v8
29969 + :cond_61
29970 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
29972 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
29974 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
29976 + move-result-object v1
29978 + const/4 v2, 0x0
29980 + const/4 v3, 0x0
29982 + const-string v4, "locationNetwork"
29984 + const/4 v5, 0x0
29986 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
29988 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getServiceState()Landroid/telephony/ServiceState;
29989 + :try_end_74
29990 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_74} :catch_76
29992 + move-result-object v8
29994 + goto :goto_60
29996 + :catch_76
29997 + move-exception v7
29999 + invoke-virtual {v7}, Ljava/lang/Exception;->printStackTrace()V
30001 + const-string v0, "PrivacyGSMPhone"
30003 + const-string v1, "We got exception in getServiceState()-> give fake state"
30005 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
30007 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getServiceState()Landroid/telephony/ServiceState;
30009 + move-result-object v8
30011 + const-string v0, ""
30013 + const-string v1, ""
30015 + const-string v2, ""
30017 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
30019 + goto :goto_60
30020 +.end method
30022 +.method public getSubscriberId()Ljava/lang/String;
30023 + .registers 8
30025 + const-string v0, "PrivacyGSMPhone"
30027 + new-instance v3, Ljava/lang/StringBuilder;
30029 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
30031 + const-string v4, "Package: "
30033 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30035 + move-result-object v3
30037 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30039 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30041 + move-result-object v4
30043 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30045 + move-result-object v3
30047 + const-string v4, " asked for getSubscriberId()"
30049 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30051 + move-result-object v3
30053 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
30055 + move-result-object v3
30057 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
30059 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30061 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30063 + move-result-object v1
30065 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
30067 + move-result v2
30069 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30071 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
30073 + move-result-object v6
30075 + if-eqz v6, :cond_4d
30077 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
30079 + move-result v0
30081 + if-eqz v0, :cond_4d
30083 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
30085 + move-result-object v5
30087 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30089 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
30091 + move-result v3
30093 + const-string/jumbo v4, "subscriberID"
30095 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30097 + :goto_4c
30098 + return-object v5
30100 + :cond_4d
30101 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getSubscriberId()Ljava/lang/String;
30103 + move-result-object v5
30105 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30107 + const/4 v3, 0x0
30109 + const-string/jumbo v4, "subscriberID"
30111 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30113 + goto :goto_4c
30114 +.end method
30116 +.method public getVoiceMailAlphaTag()Ljava/lang/String;
30117 + .registers 8
30119 + const-string v0, "PrivacyGSMPhone"
30121 + new-instance v3, Ljava/lang/StringBuilder;
30123 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
30125 + const-string v4, "Package: "
30127 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30129 + move-result-object v3
30131 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30133 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30135 + move-result-object v4
30137 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30139 + move-result-object v3
30141 + const-string v4, " asked for getVoiceMailAlphaTag()"
30143 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30145 + move-result-object v3
30147 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
30149 + move-result-object v3
30151 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
30153 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30155 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30157 + move-result-object v1
30159 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
30161 + move-result v2
30163 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30165 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
30167 + move-result-object v6
30169 + if-eqz v6, :cond_4c
30171 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
30173 + move-result v0
30175 + if-eqz v0, :cond_4c
30177 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
30179 + move-result-object v5
30181 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30183 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
30185 + move-result v3
30187 + const-string v4, "line1Number"
30189 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30191 + :goto_4b
30192 + return-object v5
30194 + :cond_4c
30195 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getVoiceMailNumber()Ljava/lang/String;
30197 + move-result-object v5
30199 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30201 + const/4 v3, 0x0
30203 + const-string v4, "line1Number"
30205 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30207 + goto :goto_4b
30208 +.end method
30210 +.method public getVoiceMailNumber()Ljava/lang/String;
30211 + .registers 8
30213 + const-string v0, "PrivacyGSMPhone"
30215 + new-instance v3, Ljava/lang/StringBuilder;
30217 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
30219 + const-string v4, "Package: "
30221 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30223 + move-result-object v3
30225 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30227 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30229 + move-result-object v4
30231 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30233 + move-result-object v3
30235 + const-string v4, " asked for getVoiceMailNumber()"
30237 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30239 + move-result-object v3
30241 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
30243 + move-result-object v3
30245 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
30247 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->context:Landroid/content/Context;
30249 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30251 + move-result-object v1
30253 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
30255 + move-result v2
30257 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30259 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
30261 + move-result-object v6
30263 + if-eqz v6, :cond_4c
30265 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
30267 + move-result v0
30269 + if-eqz v0, :cond_4c
30271 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
30273 + move-result-object v5
30275 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30277 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
30279 + move-result v3
30281 + const-string v4, "line1Number"
30283 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30285 + :goto_4b
30286 + return-object v5
30288 + :cond_4c
30289 + invoke-super {p0}, Lcom/android/internal/telephony/gsm/GSMPhone;->getVoiceMailNumber()Ljava/lang/String;
30291 + move-result-object v5
30293 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyGSMPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30295 + const/4 v3, 0x0
30297 + const-string v4, "line1Number"
30299 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30301 + goto :goto_4b
30302 +.end method
30303 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali ext-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali
30304 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 1969-12-31 18:00:00.000000000 -0600
30305 +++ ext-framework/smali/android/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater.smali 2012-11-02 22:30:49.091878064 -0500
30306 @@ -0,0 +1,134 @@
30307 +.class Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
30308 +.super Ljava/lang/Thread;
30309 +.source "PrivacyLocationManager.java"
30312 +# annotations
30313 +.annotation system Ldalvik/annotation/EnclosingClass;
30314 + value = Landroid/privacy/surrogate/PrivacyLocationManager;
30315 +.end annotation
30317 +.annotation system Ldalvik/annotation/InnerClass;
30318 + accessFlags = 0x2
30319 + name = "PrivacyLocationUpdater"
30320 +.end annotation
30323 +# instance fields
30324 +.field private intent:Landroid/app/PendingIntent;
30326 +.field private latitude:D
30328 +.field private listener:Landroid/location/LocationListener;
30330 +.field private longitude:D
30332 +.field private provider:Ljava/lang/String;
30334 +.field final synthetic this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
30337 +# direct methods
30338 +.method public constructor <init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
30339 + .registers 9
30341 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->this$0:Landroid/privacy/surrogate/PrivacyLocationManager;
30343 + invoke-direct {p0}, Ljava/lang/Thread;-><init>()V
30345 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
30347 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
30349 + iput-object p4, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
30351 + iput-wide p5, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
30353 + iput-wide p7, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
30355 + return-void
30356 +.end method
30359 +# virtual methods
30360 +.method public run()V
30361 + .registers 8
30363 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
30365 + if-eqz v3, :cond_43
30367 + new-instance v2, Landroid/location/Location;
30369 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->provider:Ljava/lang/String;
30371 + invoke-direct {v2, v3}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
30373 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->latitude:D
30375 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLatitude(D)V
30377 + iget-wide v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->longitude:D
30379 + invoke-virtual {v2, v3, v4}, Landroid/location/Location;->setLongitude(D)V
30381 + const/4 v1, 0x0
30383 + :goto_16
30384 + const/4 v3, 0x5
30386 + if-ge v1, v3, :cond_43
30388 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
30390 + if-eqz v3, :cond_34
30392 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->listener:Landroid/location/LocationListener;
30394 + invoke-interface {v3, v2}, Landroid/location/LocationListener;->onLocationChanged(Landroid/location/Location;)V
30396 + :cond_22
30397 + :goto_22
30398 + :try_start_22
30399 + invoke-static {}, Ljava/lang/Math;->random()D
30401 + move-result-wide v3
30403 + const-wide v5, 0x408f400000000000L
30405 + mul-double/2addr v3, v5
30407 + double-to-int v3, v3
30409 + int-to-long v3, v3
30411 + invoke-static {v3, v4}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->sleep(J)V
30412 + :try_end_31
30413 + .catch Ljava/lang/InterruptedException; {:try_start_22 .. :try_end_31} :catch_3e
30415 + :goto_31
30416 + add-int/lit8 v1, v1, 0x1
30418 + goto :goto_16
30420 + :cond_34
30421 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
30423 + if-eqz v3, :cond_22
30425 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->intent:Landroid/app/PendingIntent;
30427 + invoke-virtual {v3}, Landroid/app/PendingIntent;->cancel()V
30429 + goto :goto_22
30431 + :catch_3e
30432 + move-exception v0
30434 + invoke-virtual {v0}, Ljava/lang/InterruptedException;->printStackTrace()V
30436 + goto :goto_31
30438 + :cond_43
30439 + return-void
30440 +.end method
30441 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali ext-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali
30442 --- stock-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 1969-12-31 18:00:00.000000000 -0600
30443 +++ ext-framework/smali/android/privacy/surrogate/PrivacyLocationManager.smali 2012-11-02 22:30:49.095878079 -0500
30444 @@ -0,0 +1,2091 @@
30445 +.class public final Landroid/privacy/surrogate/PrivacyLocationManager;
30446 +.super Landroid/location/LocationManager;
30447 +.source "PrivacyLocationManager.java"
30450 +# annotations
30451 +.annotation system Ldalvik/annotation/MemberClasses;
30452 + value = {
30453 + Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
30455 +.end annotation
30458 +# static fields
30459 +.field private static final CUSTOM_LOCATION_UPDATE_COUNT:I = 0x5
30461 +.field private static final TAG:Ljava/lang/String; = "PrivacyLocationManager"
30464 +# instance fields
30465 +.field private context:Landroid/content/Context;
30467 +.field private lock:Ljava/lang/Object;
30469 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
30472 +# direct methods
30473 +.method public constructor <init>(Landroid/location/ILocationManager;Landroid/content/Context;)V
30474 + .registers 5
30476 + invoke-direct {p0, p2, p1}, Landroid/location/LocationManager;-><init>(Landroid/content/Context;Landroid/location/ILocationManager;)V
30478 + new-instance v0, Ljava/lang/Object;
30480 + invoke-direct {v0}, Ljava/lang/Object;-><init>()V
30482 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
30484 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
30486 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
30488 + const-string/jumbo v1, "privacy"
30490 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
30492 + move-result-object v1
30494 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
30496 + move-result-object v1
30498 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
30500 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30502 + return-void
30503 +.end method
30505 +.method private requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
30506 + .registers 7
30508 + const/4 v2, 0x3
30510 + if-nez p1, :cond_5
30512 + const/4 v0, 0x0
30514 + :goto_4
30515 + return v0
30517 + :cond_5
30518 + invoke-virtual {p1}, Landroid/location/Criteria;->getAccuracy()I
30520 + move-result v0
30522 + const/4 v1, 0x1
30524 + if-eq v0, v1, :cond_24
30526 + invoke-virtual {p1}, Landroid/location/Criteria;->getBearingAccuracy()I
30528 + move-result v0
30530 + if-eq v0, v2, :cond_24
30532 + invoke-virtual {p1}, Landroid/location/Criteria;->getHorizontalAccuracy()I
30534 + move-result v0
30536 + if-eq v0, v2, :cond_24
30538 + invoke-virtual {p1}, Landroid/location/Criteria;->getVerticalAccuracy()I
30540 + move-result v0
30542 + if-eq v0, v2, :cond_24
30544 + invoke-virtual {p1}, Landroid/location/Criteria;->getSpeedAccuracy()I
30546 + move-result v0
30548 + if-ne v0, v2, :cond_2b
30550 + :cond_24
30551 + const-string v0, "gps"
30553 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
30555 + move-result v0
30557 + goto :goto_4
30559 + :cond_2b
30560 + const-string/jumbo v0, "network"
30562 + invoke-direct {p0, v0, p2, p3}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
30564 + move-result v0
30566 + goto :goto_4
30567 +.end method
30569 +.method private requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
30570 + .registers 24
30572 + move-object/from16 v0, p0
30574 + iget-object v0, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->lock:Ljava/lang/Object;
30576 + move-object/from16 v19, v0
30578 + monitor-enter v19
30580 + :try_start_7
30581 + move-object/from16 v0, p0
30583 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
30585 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
30587 + move-result-object v2
30589 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
30591 + move-result v3
30593 + move-object/from16 v0, p0
30595 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30597 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
30599 + move-result-object v7
30601 + const/16 v18, 0x0
30603 + if-eqz v7, :cond_239
30605 + const-string v1, "gps"
30607 + move-object/from16 v0, p1
30609 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
30611 + move-result v1
30613 + if-eqz v1, :cond_111
30615 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
30617 + move-result v1
30619 + packed-switch v1, :pswitch_data_25e
30621 + :cond_30
30622 + :goto_30
30623 + monitor-exit v19
30625 + return v18
30627 + :pswitch_32
30628 + move-object/from16 v0, p0
30630 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30632 + const/4 v4, 0x0
30634 + const-string v5, "locationGPS"
30636 + const/4 v6, 0x0
30638 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30640 + goto :goto_30
30642 + :catchall_3e
30643 + move-exception v1
30645 + monitor-exit v19
30646 + :try_end_40
30647 + .catchall {:try_start_7 .. :try_end_40} :catchall_3e
30649 + throw v1
30651 + :pswitch_41
30652 + if-eqz p3, :cond_46
30654 + :try_start_43
30655 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
30657 + :cond_46
30658 + const/16 v18, 0x1
30660 + move-object/from16 v0, p0
30662 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30664 + const/4 v4, 0x1
30666 + const-string v5, "locationGPS"
30668 + const/4 v6, 0x0
30670 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30671 + :try_end_53
30672 + .catchall {:try_start_43 .. :try_end_53} :catchall_3e
30674 + goto :goto_30
30676 + :pswitch_54
30677 + :try_start_54
30678 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
30680 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
30682 + move-result-object v1
30684 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30686 + move-result-wide v13
30688 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
30690 + move-result-object v1
30692 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30694 + move-result-wide v15
30696 + move-object/from16 v9, p0
30698 + move-object/from16 v10, p1
30700 + move-object/from16 v11, p2
30702 + move-object/from16 v12, p3
30704 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
30706 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
30707 + :try_end_74
30708 + .catchall {:try_start_54 .. :try_end_74} :catchall_3e
30709 + .catch Ljava/lang/NumberFormatException; {:try_start_54 .. :try_end_74} :catch_a6
30711 + const/16 v18, 0x1
30713 + :goto_76
30714 + :try_start_76
30715 + move-object/from16 v0, p0
30717 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30719 + const/4 v4, 0x2
30721 + const-string v5, "locationGPS"
30723 + new-instance v6, Ljava/lang/StringBuilder;
30725 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
30727 + const-string v8, "Lat: "
30729 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30731 + move-result-object v6
30733 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
30735 + move-result-object v8
30737 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30739 + move-result-object v6
30741 + const-string v8, " Lon: "
30743 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30745 + move-result-object v6
30747 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
30749 + move-result-object v8
30751 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30753 + move-result-object v6
30755 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
30757 + move-result-object v6
30759 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30761 + goto :goto_30
30763 + :catch_a6
30764 + move-exception v17
30766 + const-string v1, "PrivacyLocationManager"
30768 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
30770 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
30771 + :try_end_af
30772 + .catchall {:try_start_76 .. :try_end_af} :catchall_3e
30774 + const/16 v18, 0x1
30776 + goto :goto_76
30778 + :pswitch_b2
30779 + :try_start_b2
30780 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
30782 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
30784 + move-result-object v1
30786 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30788 + move-result-wide v13
30790 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
30792 + move-result-object v1
30794 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30796 + move-result-wide v15
30798 + move-object/from16 v9, p0
30800 + move-object/from16 v10, p1
30802 + move-object/from16 v11, p2
30804 + move-object/from16 v12, p3
30806 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
30808 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
30809 + :try_end_d2
30810 + .catchall {:try_start_b2 .. :try_end_d2} :catchall_3e
30811 + .catch Ljava/lang/NumberFormatException; {:try_start_b2 .. :try_end_d2} :catch_105
30813 + const/16 v18, 0x1
30815 + :goto_d4
30816 + :try_start_d4
30817 + move-object/from16 v0, p0
30819 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30821 + const/4 v4, 0x3
30823 + const-string v5, "locationGPS"
30825 + new-instance v6, Ljava/lang/StringBuilder;
30827 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
30829 + const-string v8, "Lat: "
30831 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30833 + move-result-object v6
30835 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
30837 + move-result-object v8
30839 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30841 + move-result-object v6
30843 + const-string v8, " Lon: "
30845 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30847 + move-result-object v6
30849 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
30851 + move-result-object v8
30853 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30855 + move-result-object v6
30857 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
30859 + move-result-object v6
30861 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30863 + goto/16 :goto_30
30865 + :catch_105
30866 + move-exception v17
30868 + const-string v1, "PrivacyLocationManager"
30870 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
30872 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
30874 + const/16 v18, 0x1
30876 + goto :goto_d4
30878 + :cond_111
30879 + const-string/jumbo v1, "network"
30881 + move-object/from16 v0, p1
30883 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
30885 + move-result v1
30887 + if-eqz v1, :cond_204
30889 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
30891 + move-result v1
30893 + packed-switch v1, :pswitch_data_26a
30895 + goto/16 :goto_30
30897 + :pswitch_125
30898 + move-object/from16 v0, p0
30900 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30902 + const/4 v4, 0x0
30904 + const-string v5, "locationNetwork"
30906 + const/4 v6, 0x0
30908 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30910 + goto/16 :goto_30
30912 + :pswitch_132
30913 + if-eqz p3, :cond_137
30915 + invoke-virtual/range {p3 .. p3}, Landroid/app/PendingIntent;->cancel()V
30917 + :cond_137
30918 + const/16 v18, 0x1
30920 + move-object/from16 v0, p0
30922 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30924 + const/4 v4, 0x1
30926 + const-string v5, "locationNetwork"
30928 + const/4 v6, 0x0
30930 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
30931 + :try_end_144
30932 + .catchall {:try_start_d4 .. :try_end_144} :catchall_3e
30934 + goto/16 :goto_30
30936 + :pswitch_146
30937 + :try_start_146
30938 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
30940 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
30942 + move-result-object v1
30944 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30946 + move-result-wide v13
30948 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
30950 + move-result-object v1
30952 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
30954 + move-result-wide v15
30956 + move-object/from16 v9, p0
30958 + move-object/from16 v10, p1
30960 + move-object/from16 v11, p2
30962 + move-object/from16 v12, p3
30964 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
30966 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
30967 + :try_end_166
30968 + .catchall {:try_start_146 .. :try_end_166} :catchall_3e
30969 + .catch Ljava/lang/NumberFormatException; {:try_start_146 .. :try_end_166} :catch_199
30971 + const/16 v18, 0x1
30973 + :goto_168
30974 + :try_start_168
30975 + move-object/from16 v0, p0
30977 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
30979 + const/4 v4, 0x2
30981 + const-string v5, "locationNetwork"
30983 + new-instance v6, Ljava/lang/StringBuilder;
30985 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
30987 + const-string v8, "Lat: "
30989 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30991 + move-result-object v6
30993 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
30995 + move-result-object v8
30997 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
30999 + move-result-object v6
31001 + const-string v8, " Lon: "
31003 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31005 + move-result-object v6
31007 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
31009 + move-result-object v8
31011 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31013 + move-result-object v6
31015 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31017 + move-result-object v6
31019 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31021 + goto/16 :goto_30
31023 + :catch_199
31024 + move-exception v17
31026 + const-string v1, "PrivacyLocationManager"
31028 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
31030 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
31031 + :try_end_1a2
31032 + .catchall {:try_start_168 .. :try_end_1a2} :catchall_3e
31034 + const/16 v18, 0x1
31036 + goto :goto_168
31038 + :pswitch_1a5
31039 + :try_start_1a5
31040 + new-instance v8, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;
31042 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
31044 + move-result-object v1
31046 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31048 + move-result-wide v13
31050 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
31052 + move-result-object v1
31054 + invoke-static {v1}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31056 + move-result-wide v15
31058 + move-object/from16 v9, p0
31060 + move-object/from16 v10, p1
31062 + move-object/from16 v11, p2
31064 + move-object/from16 v12, p3
31066 + invoke-direct/range {v8 .. v16}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;-><init>(Landroid/privacy/surrogate/PrivacyLocationManager;Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;DD)V
31068 + invoke-virtual {v8}, Landroid/privacy/surrogate/PrivacyLocationManager$PrivacyLocationUpdater;->start()V
31069 + :try_end_1c5
31070 + .catchall {:try_start_1a5 .. :try_end_1c5} :catchall_3e
31071 + .catch Ljava/lang/NumberFormatException; {:try_start_1a5 .. :try_end_1c5} :catch_1f8
31073 + const/16 v18, 0x1
31075 + :goto_1c7
31076 + :try_start_1c7
31077 + move-object/from16 v0, p0
31079 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31081 + const/4 v4, 0x3
31083 + const-string v5, "locationNetwork"
31085 + new-instance v6, Ljava/lang/StringBuilder;
31087 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
31089 + const-string v8, "Lat: "
31091 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31093 + move-result-object v6
31095 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
31097 + move-result-object v8
31099 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31101 + move-result-object v6
31103 + const-string v8, " Lon: "
31105 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31107 + move-result-object v6
31109 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
31111 + move-result-object v8
31113 + invoke-virtual {v6, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31115 + move-result-object v6
31117 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31119 + move-result-object v6
31121 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31123 + goto/16 :goto_30
31125 + :catch_1f8
31126 + move-exception v17
31128 + const-string v1, "PrivacyLocationManager"
31130 + const-string/jumbo v4, "requestLocationUpdates: invalid coordinates"
31132 + invoke-static {v1, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
31134 + const/16 v18, 0x1
31136 + goto :goto_1c7
31138 + :cond_204
31139 + const-string/jumbo v1, "passive"
31141 + move-object/from16 v0, p1
31143 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31145 + move-result v1
31147 + if-eqz v1, :cond_30
31149 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
31151 + move-result v1
31153 + if-nez v1, :cond_22a
31155 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
31157 + move-result v1
31159 + if-nez v1, :cond_22a
31161 + const/16 v18, 0x0
31163 + move-object/from16 v0, p0
31165 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31167 + const/4 v4, 0x0
31169 + const-string v5, "locationGPS"
31171 + const/4 v6, 0x0
31173 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31175 + goto/16 :goto_30
31177 + :cond_22a
31178 + const/16 v18, 0x1
31180 + move-object/from16 v0, p0
31182 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31184 + const/4 v4, 0x1
31186 + const-string v5, "locationGPS"
31188 + const/4 v6, 0x0
31190 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31192 + goto/16 :goto_30
31194 + :cond_239
31195 + const-string/jumbo v1, "network"
31197 + move-object/from16 v0, p1
31199 + invoke-virtual {v0, v1}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31201 + move-result v1
31203 + if-eqz v1, :cond_251
31205 + move-object/from16 v0, p0
31207 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31209 + const/4 v4, 0x0
31211 + const-string v5, "locationNetwork"
31213 + const/4 v6, 0x0
31215 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31217 + goto/16 :goto_30
31219 + :cond_251
31220 + move-object/from16 v0, p0
31222 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31224 + const/4 v4, 0x0
31226 + const-string v5, "locationGPS"
31228 + const/4 v6, 0x0
31230 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31231 + :try_end_25c
31232 + .catchall {:try_start_1c7 .. :try_end_25c} :catchall_3e
31234 + goto/16 :goto_30
31236 + :pswitch_data_25e
31237 + .packed-switch 0x0
31238 + :pswitch_32
31239 + :pswitch_41
31240 + :pswitch_54
31241 + :pswitch_b2
31242 + .end packed-switch
31244 + :pswitch_data_26a
31245 + .packed-switch 0x0
31246 + :pswitch_125
31247 + :pswitch_132
31248 + :pswitch_146
31249 + :pswitch_1a5
31250 + .end packed-switch
31251 +.end method
31254 +# virtual methods
31255 +.method public addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
31256 + .registers 10
31258 + const/4 v5, 0x0
31260 + const/4 v7, 0x0
31262 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
31264 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
31266 + move-result-object v1
31268 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
31270 + move-result v2
31272 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31274 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
31276 + move-result-object v6
31278 + if-eqz v6, :cond_24
31280 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
31282 + move-result v0
31284 + if-eqz v0, :cond_24
31286 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31288 + const/4 v3, 0x1
31290 + const-string v4, "locationGPS"
31292 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31294 + move v0, v7
31296 + :goto_23
31297 + return v0
31299 + :cond_24
31300 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31302 + const-string v4, "locationGPS"
31304 + move v3, v7
31306 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31308 + invoke-super {p0, p1}, Landroid/location/LocationManager;->addNmeaListener(Landroid/location/GpsStatus$NmeaListener;)Z
31310 + move-result v0
31312 + goto :goto_23
31313 +.end method
31315 +.method public getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31316 + .registers 14
31318 + const/4 v11, 0x3
31320 + const/4 v10, 0x2
31322 + const/4 v8, 0x1
31324 + const/4 v3, 0x0
31326 + const/4 v5, 0x0
31328 + if-nez p1, :cond_c
31330 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31332 + move-result-object v7
31334 + :cond_b
31335 + :goto_b
31336 + return-object v7
31338 + :cond_c
31339 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
31341 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
31343 + move-result-object v1
31345 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
31347 + move-result v2
31349 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31351 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
31353 + move-result-object v6
31355 + const/4 v7, 0x0
31357 + if-eqz v6, :cond_22c
31359 + const-string v0, "gps"
31361 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31363 + move-result v0
31365 + if-eqz v0, :cond_ff
31367 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
31369 + move-result v0
31371 + packed-switch v0, :pswitch_data_29a
31373 + goto :goto_b
31375 + :pswitch_2f
31376 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31378 + move-result-object v7
31380 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31382 + const-string v4, "locationGPS"
31384 + if-eqz v7, :cond_5e
31386 + new-instance v5, Ljava/lang/StringBuilder;
31388 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
31390 + const-string v8, "Lat: "
31392 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31394 + move-result-object v5
31396 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31398 + move-result-wide v8
31400 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31402 + move-result-object v5
31404 + const-string v8, " Lon: "
31406 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31408 + move-result-object v5
31410 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31412 + move-result-wide v8
31414 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31416 + move-result-object v5
31418 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31420 + move-result-object v5
31422 + :cond_5e
31423 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31425 + goto :goto_b
31427 + :pswitch_62
31428 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31430 + const-string v4, "locationGPS"
31432 + move v3, v8
31434 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31436 + goto :goto_b
31438 + :pswitch_6b
31439 + new-instance v7, Landroid/location/Location;
31441 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
31443 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
31445 + move-result-object v0
31447 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31449 + move-result-wide v3
31451 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
31453 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
31455 + move-result-object v0
31457 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31459 + move-result-wide v3
31461 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
31463 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31465 + const-string v4, "locationGPS"
31467 + new-instance v3, Ljava/lang/StringBuilder;
31469 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
31471 + const-string v5, "Lat: "
31473 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31475 + move-result-object v3
31477 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31479 + move-result-wide v8
31481 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31483 + move-result-object v3
31485 + const-string v5, " Lon: "
31487 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31489 + move-result-object v3
31491 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31493 + move-result-wide v8
31495 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31497 + move-result-object v3
31499 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31501 + move-result-object v5
31503 + move v3, v10
31505 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31507 + goto/16 :goto_b
31509 + :pswitch_b5
31510 + new-instance v7, Landroid/location/Location;
31512 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
31514 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLat()Ljava/lang/String;
31516 + move-result-object v0
31518 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31520 + move-result-wide v3
31522 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
31524 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsLon()Ljava/lang/String;
31526 + move-result-object v0
31528 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31530 + move-result-wide v3
31532 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
31534 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31536 + const-string v4, "locationGPS"
31538 + new-instance v3, Ljava/lang/StringBuilder;
31540 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
31542 + const-string v5, "Lat: "
31544 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31546 + move-result-object v3
31548 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31550 + move-result-wide v8
31552 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31554 + move-result-object v3
31556 + const-string v5, " Lon: "
31558 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31560 + move-result-object v3
31562 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31564 + move-result-wide v8
31566 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31568 + move-result-object v3
31570 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31572 + move-result-object v5
31574 + move v3, v11
31576 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31578 + goto/16 :goto_b
31580 + :cond_ff
31581 + const-string/jumbo v0, "network"
31583 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31585 + move-result v0
31587 + if-eqz v0, :cond_1e3
31589 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
31591 + move-result v0
31593 + packed-switch v0, :pswitch_data_2a6
31595 + goto/16 :goto_b
31597 + :pswitch_111
31598 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31600 + move-result-object v7
31602 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31604 + const-string v4, "locationNetwork"
31606 + if-eqz v7, :cond_140
31608 + new-instance v5, Ljava/lang/StringBuilder;
31610 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
31612 + const-string v8, "Lat: "
31614 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31616 + move-result-object v5
31618 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31620 + move-result-wide v8
31622 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31624 + move-result-object v5
31626 + const-string v8, " Lon: "
31628 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31630 + move-result-object v5
31632 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31634 + move-result-wide v8
31636 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31638 + move-result-object v5
31640 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31642 + move-result-object v5
31644 + :cond_140
31645 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31647 + goto/16 :goto_b
31649 + :pswitch_145
31650 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31652 + const-string v4, "locationNetwork"
31654 + move v3, v8
31656 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31658 + goto/16 :goto_b
31660 + :pswitch_14f
31661 + new-instance v7, Landroid/location/Location;
31663 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
31665 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
31667 + move-result-object v0
31669 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31671 + move-result-wide v3
31673 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
31675 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
31677 + move-result-object v0
31679 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31681 + move-result-wide v3
31683 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
31685 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31687 + const-string v4, "locationNetwork"
31689 + new-instance v3, Ljava/lang/StringBuilder;
31691 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
31693 + const-string v5, "Lat: "
31695 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31697 + move-result-object v3
31699 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31701 + move-result-wide v8
31703 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31705 + move-result-object v3
31707 + const-string v5, " Lon: "
31709 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31711 + move-result-object v3
31713 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31715 + move-result-wide v8
31717 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31719 + move-result-object v3
31721 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31723 + move-result-object v5
31725 + move v3, v10
31727 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31729 + goto/16 :goto_b
31731 + :pswitch_199
31732 + new-instance v7, Landroid/location/Location;
31734 + invoke-direct {v7, p1}, Landroid/location/Location;-><init>(Ljava/lang/String;)V
31736 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLat()Ljava/lang/String;
31738 + move-result-object v0
31740 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31742 + move-result-wide v3
31744 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLatitude(D)V
31746 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkLon()Ljava/lang/String;
31748 + move-result-object v0
31750 + invoke-static {v0}, Ljava/lang/Double;->parseDouble(Ljava/lang/String;)D
31752 + move-result-wide v3
31754 + invoke-virtual {v7, v3, v4}, Landroid/location/Location;->setLongitude(D)V
31756 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31758 + const-string v4, "locationNetwork"
31760 + new-instance v3, Ljava/lang/StringBuilder;
31762 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
31764 + const-string v5, "Lat: "
31766 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31768 + move-result-object v3
31770 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31772 + move-result-wide v8
31774 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31776 + move-result-object v3
31778 + const-string v5, " Lon: "
31780 + invoke-virtual {v3, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31782 + move-result-object v3
31784 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31786 + move-result-wide v8
31788 + invoke-virtual {v3, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31790 + move-result-object v3
31792 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31794 + move-result-object v5
31796 + move v3, v11
31798 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31800 + goto/16 :goto_b
31802 + :cond_1e3
31803 + const-string/jumbo v0, "passive"
31805 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31807 + move-result v0
31809 + if-eqz v0, :cond_b
31811 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
31813 + move-result v0
31815 + if-nez v0, :cond_b
31817 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
31819 + move-result v0
31821 + if-nez v0, :cond_b
31823 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31825 + move-result-object v7
31827 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31829 + const-string v4, "locationGPS"
31831 + if-eqz v7, :cond_227
31833 + new-instance v5, Ljava/lang/StringBuilder;
31835 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
31837 + const-string v8, "Lat: "
31839 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31841 + move-result-object v5
31843 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31845 + move-result-wide v8
31847 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31849 + move-result-object v5
31851 + const-string v8, " Lon: "
31853 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31855 + move-result-object v5
31857 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31859 + move-result-wide v8
31861 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31863 + move-result-object v5
31865 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31867 + move-result-object v5
31869 + :cond_227
31870 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31872 + goto/16 :goto_b
31874 + :cond_22c
31875 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getLastKnownLocation(Ljava/lang/String;)Landroid/location/Location;
31877 + move-result-object v7
31879 + const-string/jumbo v0, "network"
31881 + invoke-virtual {p1, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
31883 + move-result v0
31885 + if-eqz v0, :cond_269
31887 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31889 + const-string v4, "locationNetwork"
31891 + if-eqz v7, :cond_264
31893 + new-instance v5, Ljava/lang/StringBuilder;
31895 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
31897 + const-string v8, "Lat: "
31899 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31901 + move-result-object v5
31903 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31905 + move-result-wide v8
31907 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31909 + move-result-object v5
31911 + const-string v8, " Lon: "
31913 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31915 + move-result-object v5
31917 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31919 + move-result-wide v8
31921 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31923 + move-result-object v5
31925 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31927 + move-result-object v5
31929 + :cond_264
31930 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31932 + goto/16 :goto_b
31934 + :cond_269
31935 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
31937 + const-string v4, "locationGPS"
31939 + if-eqz v7, :cond_294
31941 + new-instance v5, Ljava/lang/StringBuilder;
31943 + invoke-direct {v5}, Ljava/lang/StringBuilder;-><init>()V
31945 + const-string v8, "Lat: "
31947 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31949 + move-result-object v5
31951 + invoke-virtual {v7}, Landroid/location/Location;->getLatitude()D
31953 + move-result-wide v8
31955 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31957 + move-result-object v5
31959 + const-string v8, " Lon: "
31961 + invoke-virtual {v5, v8}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
31963 + move-result-object v5
31965 + invoke-virtual {v7}, Landroid/location/Location;->getLongitude()D
31967 + move-result-wide v8
31969 + invoke-virtual {v5, v8, v9}, Ljava/lang/StringBuilder;->append(D)Ljava/lang/StringBuilder;
31971 + move-result-object v5
31973 + invoke-virtual {v5}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
31975 + move-result-object v5
31977 + :cond_294
31978 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
31980 + goto/16 :goto_b
31982 + nop
31984 + :pswitch_data_29a
31985 + .packed-switch 0x0
31986 + :pswitch_2f
31987 + :pswitch_62
31988 + :pswitch_6b
31989 + :pswitch_b5
31990 + .end packed-switch
31992 + :pswitch_data_2a6
31993 + .packed-switch 0x0
31994 + :pswitch_111
31995 + :pswitch_145
31996 + :pswitch_14f
31997 + :pswitch_199
31998 + .end packed-switch
31999 +.end method
32001 +.method public getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32002 + .registers 7
32004 + if-nez p1, :cond_7
32006 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32008 + move-result-object v0
32010 + :cond_6
32011 + :goto_6
32012 + return-object v0
32014 + :cond_7
32015 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32017 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
32019 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32021 + move-result-object v3
32023 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
32025 + move-result v4
32027 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
32029 + move-result-object v1
32031 + const/4 v0, 0x0
32033 + if-eqz v1, :cond_5f
32035 + const-string v2, "gps"
32037 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32039 + move-result v2
32041 + if-eqz v2, :cond_2f
32043 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
32045 + move-result v2
32047 + packed-switch v2, :pswitch_data_64
32049 + :pswitch_29
32050 + goto :goto_6
32052 + :pswitch_2a
32053 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32055 + move-result-object v0
32057 + goto :goto_6
32059 + :cond_2f
32060 + const-string/jumbo v2, "network"
32062 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32064 + move-result v2
32066 + if-eqz v2, :cond_45
32068 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
32070 + move-result v2
32072 + packed-switch v2, :pswitch_data_70
32074 + :pswitch_3f
32075 + goto :goto_6
32077 + :pswitch_40
32078 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32080 + move-result-object v0
32082 + goto :goto_6
32084 + :cond_45
32085 + const-string/jumbo v2, "passive"
32087 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32089 + move-result v2
32091 + if-eqz v2, :cond_6
32093 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
32095 + move-result v2
32097 + if-eqz v2, :cond_5a
32099 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
32101 + move-result v2
32103 + if-nez v2, :cond_6
32105 + :cond_5a
32106 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32108 + move-result-object v0
32110 + goto :goto_6
32112 + :cond_5f
32113 + invoke-super {p0, p1}, Landroid/location/LocationManager;->getProvider(Ljava/lang/String;)Landroid/location/LocationProvider;
32115 + move-result-object v0
32117 + goto :goto_6
32119 + :pswitch_data_64
32120 + .packed-switch 0x0
32121 + :pswitch_2a
32122 + :pswitch_29
32123 + :pswitch_2a
32124 + :pswitch_2a
32125 + .end packed-switch
32127 + :pswitch_data_70
32128 + .packed-switch 0x0
32129 + :pswitch_40
32130 + :pswitch_3f
32131 + :pswitch_40
32132 + :pswitch_40
32133 + .end packed-switch
32134 +.end method
32136 +.method public isProviderEnabled(Ljava/lang/String;)Z
32137 + .registers 7
32139 + if-nez p1, :cond_7
32141 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
32143 + move-result v0
32145 + :cond_6
32146 + :goto_6
32147 + :pswitch_6
32148 + return v0
32150 + :cond_7
32151 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32153 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyLocationManager;->context:Landroid/content/Context;
32155 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32157 + move-result-object v3
32159 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
32161 + move-result v4
32163 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
32165 + move-result-object v1
32167 + const/4 v0, 0x0
32169 + if-eqz v1, :cond_65
32171 + const-string v2, "gps"
32173 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32175 + move-result v2
32177 + if-eqz v2, :cond_31
32179 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
32181 + move-result v2
32183 + packed-switch v2, :pswitch_data_6a
32185 + goto :goto_6
32187 + :pswitch_2a
32188 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
32190 + move-result v0
32192 + goto :goto_6
32194 + :pswitch_2f
32195 + const/4 v0, 0x1
32197 + goto :goto_6
32199 + :cond_31
32200 + const-string/jumbo v2, "network"
32202 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32204 + move-result v2
32206 + if-eqz v2, :cond_49
32208 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
32210 + move-result v2
32212 + packed-switch v2, :pswitch_data_76
32214 + goto :goto_6
32216 + :pswitch_42
32217 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
32219 + move-result v0
32221 + goto :goto_6
32223 + :pswitch_47
32224 + const/4 v0, 0x1
32226 + goto :goto_6
32228 + :cond_49
32229 + const-string/jumbo v2, "passive"
32231 + invoke-virtual {p1, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
32233 + move-result v2
32235 + if-eqz v2, :cond_6
32237 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
32239 + move-result v2
32241 + if-eqz v2, :cond_5e
32243 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
32245 + move-result v2
32247 + if-nez v2, :cond_63
32249 + :cond_5e
32250 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
32252 + move-result v0
32254 + goto :goto_6
32256 + :cond_63
32257 + const/4 v0, 0x0
32259 + goto :goto_6
32261 + :cond_65
32262 + invoke-super {p0, p1}, Landroid/location/LocationManager;->isProviderEnabled(Ljava/lang/String;)Z
32264 + move-result v0
32266 + goto :goto_6
32268 + :pswitch_data_6a
32269 + .packed-switch 0x0
32270 + :pswitch_2a
32271 + :pswitch_6
32272 + :pswitch_2f
32273 + :pswitch_2f
32274 + .end packed-switch
32276 + :pswitch_data_76
32277 + .packed-switch 0x0
32278 + :pswitch_42
32279 + :pswitch_6
32280 + :pswitch_47
32281 + :pswitch_47
32282 + .end packed-switch
32283 +.end method
32285 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
32286 + .registers 7
32288 + if-eqz p4, :cond_4
32290 + if-nez p5, :cond_8
32292 + :cond_4
32293 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
32295 + :cond_7
32296 + :goto_7
32297 + return-void
32299 + :cond_8
32300 + const/4 v0, 0x0
32302 + invoke-direct {p0, p4, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32304 + move-result v0
32306 + if-nez v0, :cond_7
32308 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/app/PendingIntent;)V
32310 + goto :goto_7
32311 +.end method
32313 +.method public requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32314 + .registers 8
32316 + if-eqz p4, :cond_4
32318 + if-nez p5, :cond_8
32320 + :cond_4
32321 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32323 + :cond_7
32324 + :goto_7
32325 + return-void
32327 + :cond_8
32328 + const/4 v0, 0x0
32330 + invoke-direct {p0, p4, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32332 + move-result v0
32334 + if-nez v0, :cond_7
32336 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(JFLandroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32338 + goto :goto_7
32339 +.end method
32341 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
32342 + .registers 7
32344 + if-eqz p1, :cond_4
32346 + if-nez p5, :cond_8
32348 + :cond_4
32349 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
32351 + :cond_7
32352 + :goto_7
32353 + return-void
32355 + :cond_8
32356 + const/4 v0, 0x0
32358 + invoke-direct {p0, p1, v0, p5}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32360 + move-result v0
32362 + if-nez v0, :cond_7
32364 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/app/PendingIntent;)V
32366 + goto :goto_7
32367 +.end method
32369 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
32370 + .registers 7
32372 + if-eqz p1, :cond_4
32374 + if-nez p5, :cond_8
32376 + :cond_4
32377 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
32379 + :cond_7
32380 + :goto_7
32381 + return-void
32383 + :cond_8
32384 + const/4 v0, 0x0
32386 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32388 + move-result v0
32390 + if-nez v0, :cond_7
32392 + invoke-super/range {p0 .. p5}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;)V
32394 + goto :goto_7
32395 +.end method
32397 +.method public requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
32398 + .registers 8
32400 + if-eqz p1, :cond_4
32402 + if-nez p5, :cond_8
32404 + :cond_4
32405 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
32407 + :cond_7
32408 + :goto_7
32409 + return-void
32411 + :cond_8
32412 + const/4 v0, 0x0
32414 + invoke-direct {p0, p1, p5, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32416 + move-result v0
32418 + if-nez v0, :cond_7
32420 + invoke-super/range {p0 .. p6}, Landroid/location/LocationManager;->requestLocationUpdates(Ljava/lang/String;JFLandroid/location/LocationListener;Landroid/os/Looper;)V
32422 + goto :goto_7
32423 +.end method
32425 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
32426 + .registers 4
32428 + if-eqz p1, :cond_4
32430 + if-nez p2, :cond_8
32432 + :cond_4
32433 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
32435 + :cond_7
32436 + :goto_7
32437 + return-void
32439 + :cond_8
32440 + const/4 v0, 0x0
32442 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32444 + move-result v0
32446 + if-nez v0, :cond_7
32448 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/app/PendingIntent;)V
32450 + goto :goto_7
32451 +.end method
32453 +.method public requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32454 + .registers 5
32456 + if-eqz p1, :cond_4
32458 + if-nez p2, :cond_8
32460 + :cond_4
32461 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32463 + :cond_7
32464 + :goto_7
32465 + return-void
32467 + :cond_8
32468 + const/4 v0, 0x0
32470 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32472 + move-result v0
32474 + if-nez v0, :cond_7
32476 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Landroid/location/Criteria;Landroid/location/LocationListener;Landroid/os/Looper;)V
32478 + goto :goto_7
32479 +.end method
32481 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
32482 + .registers 4
32484 + if-eqz p1, :cond_4
32486 + if-nez p2, :cond_8
32488 + :cond_4
32489 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
32491 + :cond_7
32492 + :goto_7
32493 + return-void
32495 + :cond_8
32496 + const/4 v0, 0x0
32498 + invoke-direct {p0, p1, v0, p2}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32500 + move-result v0
32502 + if-nez v0, :cond_7
32504 + invoke-super {p0, p1, p2}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/app/PendingIntent;)V
32506 + goto :goto_7
32507 +.end method
32509 +.method public requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
32510 + .registers 5
32512 + if-eqz p1, :cond_4
32514 + if-nez p2, :cond_8
32516 + :cond_4
32517 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
32519 + :cond_7
32520 + :goto_7
32521 + return-void
32523 + :cond_8
32524 + const/4 v0, 0x0
32526 + invoke-direct {p0, p1, p2, v0}, Landroid/privacy/surrogate/PrivacyLocationManager;->requestLocationUpdates(Ljava/lang/String;Landroid/location/LocationListener;Landroid/app/PendingIntent;)Z
32528 + move-result v0
32530 + if-nez v0, :cond_7
32532 + invoke-super {p0, p1, p2, p3}, Landroid/location/LocationManager;->requestSingleUpdate(Ljava/lang/String;Landroid/location/LocationListener;Landroid/os/Looper;)V
32534 + goto :goto_7
32535 +.end method
32536 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyPhoneProxy.smali ext-framework/smali/android/privacy/surrogate/PrivacyPhoneProxy.smali
32537 --- stock-framework/smali/android/privacy/surrogate/PrivacyPhoneProxy.smali 1969-12-31 18:00:00.000000000 -0600
32538 +++ ext-framework/smali/android/privacy/surrogate/PrivacyPhoneProxy.smali 2012-11-02 22:30:49.099878096 -0500
32539 @@ -0,0 +1,3064 @@
32540 +.class public Landroid/privacy/surrogate/PrivacyPhoneProxy;
32541 +.super Lcom/android/internal/telephony/PhoneProxy;
32542 +.source "PrivacyPhoneProxy.java"
32545 +# static fields
32546 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyPhoneProxy"
32549 +# instance fields
32550 +.field private context:Landroid/content/Context;
32552 +.field private context_available:Z
32554 +.field private mPm:Landroid/content/pm/IPackageManager;
32556 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
32559 +# direct methods
32560 +.method public constructor <init>(Lcom/android/internal/telephony/Phone;Landroid/content/Context;)V
32561 + .registers 6
32563 + invoke-direct {p0, p1}, Lcom/android/internal/telephony/PhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;)V
32565 + if-eqz p2, :cond_3e
32567 + iput-object p2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32569 + const/4 v0, 0x1
32571 + iput-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
32573 + :goto_a
32574 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
32576 + invoke-direct {p0, v0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->initiate(Z)V
32578 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
32580 + const-string/jumbo v1, "privacy"
32582 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
32584 + move-result-object v1
32586 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
32588 + move-result-object v1
32590 + invoke-direct {v0, p2, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
32592 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32594 + const-string v0, "PrivacyPhoneProxy"
32596 + new-instance v1, Ljava/lang/StringBuilder;
32598 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
32600 + const-string v2, "Constructor ready for package: "
32602 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32604 + move-result-object v1
32606 + invoke-virtual {p2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32608 + move-result-object v2
32610 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32612 + move-result-object v1
32614 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
32616 + move-result-object v1
32618 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
32620 + return-void
32622 + :cond_3e
32623 + const/4 v0, 0x0
32625 + iput-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
32627 + goto :goto_a
32628 +.end method
32630 +.method private getPackageName()[Ljava/lang/String;
32631 + .registers 6
32633 + :try_start_0
32634 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->mPm:Landroid/content/pm/IPackageManager;
32636 + if-eqz v3, :cond_f
32638 + invoke-static {}, Landroid/os/Process;->myUid()I
32640 + move-result v2
32642 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->mPm:Landroid/content/pm/IPackageManager;
32644 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
32646 + move-result-object v1
32648 + :goto_e
32649 + return-object v1
32651 + :cond_f
32652 + const-string/jumbo v3, "package"
32654 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
32656 + move-result-object v3
32658 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
32660 + move-result-object v3
32662 + iput-object v3, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->mPm:Landroid/content/pm/IPackageManager;
32664 + invoke-static {}, Landroid/os/Process;->myUid()I
32666 + move-result v2
32668 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->mPm:Landroid/content/pm/IPackageManager;
32670 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
32671 + :try_end_25
32672 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
32674 + move-result-object v1
32676 + goto :goto_e
32678 + :catch_27
32679 + move-exception v0
32681 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
32683 + const-string v3, "PrivacyPhoneProxy"
32685 + const-string/jumbo v4, "something went wrong with getting package name"
32687 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
32689 + const/4 v1, 0x0
32691 + goto :goto_e
32692 +.end method
32694 +.method private initiate(Z)V
32695 + .registers 5
32697 + if-eqz p1, :cond_21
32699 + const-string v0, "PrivacyPhoneProxy"
32701 + new-instance v1, Ljava/lang/StringBuilder;
32703 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
32705 + const-string v2, "Context is available for package:"
32707 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32709 + move-result-object v1
32711 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32713 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32715 + move-result-object v2
32717 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32719 + move-result-object v1
32721 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
32723 + move-result-object v1
32725 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
32727 + :goto_20
32728 + return-void
32730 + :cond_21
32731 + const-string v0, "PrivacyPhoneProxy"
32733 + new-instance v1, Ljava/lang/StringBuilder;
32735 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
32737 + const-string v2, "Context is not available for package: "
32739 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32741 + move-result-object v1
32743 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32745 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32747 + move-result-object v2
32749 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
32751 + move-result-object v1
32753 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
32755 + move-result-object v1
32757 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
32759 + const-string/jumbo v0, "package"
32761 + invoke-static {v0}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
32763 + move-result-object v0
32765 + invoke-static {v0}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
32767 + move-result-object v0
32769 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->mPm:Landroid/content/pm/IPackageManager;
32771 + goto :goto_20
32772 +.end method
32775 +# virtual methods
32776 +.method public dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
32777 + .registers 14
32778 + .annotation system Ldalvik/annotation/Throws;
32779 + value = {
32780 + Lcom/android/internal/telephony/CallStateException;
32782 + .end annotation
32784 + const/4 v3, 0x1
32786 + const/4 v4, -0x1
32788 + const/4 v2, 0x0
32790 + const/4 v5, 0x0
32792 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
32794 + if-eqz v0, :cond_4a
32796 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32798 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32800 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32802 + move-result-object v1
32804 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
32806 + move-result-object v11
32808 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32810 + if-eqz v0, :cond_35
32812 + if-eqz v11, :cond_35
32814 + invoke-virtual {v11}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
32816 + move-result v0
32818 + if-eqz v0, :cond_35
32820 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32822 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32824 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32826 + move-result-object v1
32828 + const-string/jumbo v4, "phoneCall"
32830 + move-object v6, v5
32832 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
32834 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
32836 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
32838 + throw v0
32840 + :cond_35
32841 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32843 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32845 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32847 + move-result-object v1
32849 + const-string/jumbo v4, "phoneCall"
32851 + move v3, v2
32853 + move-object v6, v5
32855 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
32857 + invoke-super {p0, p1}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
32859 + move-result-object v0
32861 + :goto_49
32862 + return-object v0
32864 + :cond_4a
32865 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
32867 + move-result-object v9
32869 + const/4 v7, 0x1
32871 + const/4 v11, 0x0
32873 + const/4 v10, 0x0
32875 + if-nez v9, :cond_58
32877 + invoke-super {p0, p1}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
32879 + move-result-object v0
32881 + goto :goto_49
32883 + :cond_58
32884 + const/4 v8, 0x0
32886 + :goto_59
32887 + array-length v0, v9
32889 + if-ge v8, v0, :cond_72
32891 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32893 + aget-object v1, v9, v8
32895 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
32897 + move-result-object v11
32899 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32901 + if-eqz v0, :cond_85
32903 + if-eqz v11, :cond_85
32905 + invoke-virtual {v11}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
32907 + move-result v0
32909 + if-eqz v0, :cond_85
32911 + const/4 v7, 0x0
32913 + move v10, v8
32915 + :cond_72
32916 + if-eqz v7, :cond_88
32918 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32920 + aget-object v1, v9, v10
32922 + const-string/jumbo v4, "phoneCall"
32924 + move v3, v2
32926 + move-object v6, v5
32928 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
32930 + invoke-super {p0, p1}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
32932 + move-result-object v0
32934 + goto :goto_49
32936 + :cond_85
32937 + add-int/lit8 v8, v8, 0x1
32939 + goto :goto_59
32941 + :cond_88
32942 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32944 + aget-object v1, v9, v10
32946 + const-string/jumbo v4, "phoneCall"
32948 + move-object v6, v5
32950 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
32952 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
32954 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
32956 + throw v0
32957 +.end method
32959 +.method public dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
32960 + .registers 15
32961 + .annotation system Ldalvik/annotation/Throws;
32962 + value = {
32963 + Lcom/android/internal/telephony/CallStateException;
32965 + .end annotation
32967 + const/4 v3, 0x1
32969 + const/4 v4, -0x1
32971 + const/4 v2, 0x0
32973 + const/4 v5, 0x0
32975 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
32977 + if-eqz v0, :cond_4a
32979 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32981 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
32983 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
32985 + move-result-object v1
32987 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
32989 + move-result-object v11
32991 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
32993 + if-eqz v0, :cond_35
32995 + if-eqz v11, :cond_35
32997 + invoke-virtual {v11}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
32999 + move-result v0
33001 + if-eqz v0, :cond_35
33003 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33005 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33007 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33009 + move-result-object v1
33011 + const-string/jumbo v4, "phoneCall"
33013 + move-object v6, v5
33015 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33017 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
33019 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
33021 + throw v0
33023 + :cond_35
33024 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33026 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33028 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33030 + move-result-object v1
33032 + const-string/jumbo v4, "phoneCall"
33034 + move v3, v2
33036 + move-object v6, v5
33038 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33040 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
33042 + move-result-object v0
33044 + :goto_49
33045 + return-object v0
33047 + :cond_4a
33048 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
33050 + move-result-object v9
33052 + const/4 v7, 0x1
33054 + const/4 v11, 0x0
33056 + const/4 v10, 0x0
33058 + if-nez v9, :cond_58
33060 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
33062 + move-result-object v0
33064 + goto :goto_49
33066 + :cond_58
33067 + const/4 v8, 0x0
33069 + :goto_59
33070 + array-length v0, v9
33072 + if-ge v8, v0, :cond_72
33074 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33076 + aget-object v1, v9, v8
33078 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33080 + move-result-object v11
33082 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33084 + if-eqz v0, :cond_85
33086 + if-eqz v11, :cond_85
33088 + invoke-virtual {v11}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
33090 + move-result v0
33092 + if-eqz v0, :cond_85
33094 + const/4 v7, 0x0
33096 + move v10, v8
33098 + :cond_72
33099 + if-eqz v7, :cond_88
33101 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33103 + aget-object v1, v9, v10
33105 + const-string/jumbo v4, "phoneCall"
33107 + move v3, v2
33109 + move-object v6, v5
33111 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33113 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/PhoneProxy;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
33115 + move-result-object v0
33117 + goto :goto_49
33119 + :cond_85
33120 + add-int/lit8 v8, v8, 0x1
33122 + goto :goto_59
33124 + :cond_88
33125 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33127 + aget-object v1, v9, v10
33129 + const-string/jumbo v4, "phoneCall"
33131 + move-object v6, v5
33133 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33135 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
33137 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
33139 + throw v0
33140 +.end method
33142 +.method public getCellLocation()Landroid/telephony/CellLocation;
33143 + .registers 13
33145 + const/4 v5, 0x0
33147 + const/4 v2, 0x0
33149 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getPhoneType()I
33151 + move-result v11
33153 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
33155 + if-eqz v0, :cond_b7
33157 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33159 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33161 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33163 + move-result-object v1
33165 + invoke-static {}, Landroid/os/Process;->myUid()I
33167 + move-result v3
33169 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33171 + move-result-object v6
33173 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33175 + if-eqz v0, :cond_7d
33177 + if-eqz v6, :cond_7d
33179 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
33181 + move-result v0
33183 + if-nez v0, :cond_2c
33185 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
33187 + move-result v0
33189 + if-eqz v0, :cond_7d
33191 + :cond_2c
33192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33194 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33196 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33198 + move-result-object v1
33200 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
33202 + move-result v3
33204 + const-string v4, "locationNetwork"
33206 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33208 + const-string v0, "PrivacyPhoneProxy"
33210 + new-instance v1, Ljava/lang/StringBuilder;
33212 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33214 + const-string/jumbo v2, "package: "
33216 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33218 + move-result-object v1
33220 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33222 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33224 + move-result-object v2
33226 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33228 + move-result-object v1
33230 + const-string v2, " BLOCKED for getCellLocation()"
33232 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33234 + move-result-object v1
33236 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33238 + move-result-object v1
33240 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33242 + packed-switch v11, :pswitch_data_170
33244 + new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
33246 + invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
33248 + :goto_6a
33249 + :pswitch_6a
33250 + return-object v5
33252 + :pswitch_6b
33253 + new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
33255 + invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
33257 + goto :goto_6a
33259 + :pswitch_71
33260 + new-instance v5, Landroid/telephony/cdma/CdmaCellLocation;
33262 + invoke-direct {v5}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
33264 + goto :goto_6a
33266 + :pswitch_77
33267 + new-instance v5, Landroid/telephony/cdma/CdmaCellLocation;
33269 + invoke-direct {v5}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
33271 + goto :goto_6a
33273 + :cond_7d
33274 + if-eqz v6, :cond_8d
33276 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33278 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33280 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33282 + move-result-object v1
33284 + const-string v4, "locationNetwork"
33286 + move v3, v2
33288 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33290 + :cond_8d
33291 + const-string v0, "PrivacyPhoneProxy"
33293 + new-instance v1, Ljava/lang/StringBuilder;
33295 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33297 + const-string/jumbo v2, "package: "
33299 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33301 + move-result-object v1
33303 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33305 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33307 + move-result-object v2
33309 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33311 + move-result-object v1
33313 + const-string v2, " ALLOWED for getCellLocation()"
33315 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33317 + move-result-object v1
33319 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33321 + move-result-object v1
33323 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33325 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getCellLocation()Landroid/telephony/CellLocation;
33327 + move-result-object v5
33329 + goto :goto_6a
33331 + :cond_b7
33332 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
33334 + move-result-object v9
33336 + const/4 v7, 0x1
33338 + const/4 v6, 0x0
33340 + const/4 v10, 0x0
33342 + if-nez v9, :cond_c5
33344 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getCellLocation()Landroid/telephony/CellLocation;
33346 + move-result-object v5
33348 + goto :goto_6a
33350 + :cond_c5
33351 + const/4 v8, 0x0
33353 + :goto_c6
33354 + array-length v0, v9
33356 + if-ge v8, v0, :cond_e9
33358 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33360 + aget-object v1, v9, v8
33362 + invoke-static {}, Landroid/os/Process;->myUid()I
33364 + move-result v3
33366 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33368 + move-result-object v6
33370 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33372 + if-eqz v0, :cond_11e
33374 + if-eqz v6, :cond_11e
33376 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
33378 + move-result v0
33380 + if-nez v0, :cond_e7
33382 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
33384 + move-result v0
33386 + if-eqz v0, :cond_11e
33388 + :cond_e7
33389 + const/4 v7, 0x0
33391 + move v10, v8
33393 + :cond_e9
33394 + if-eqz v7, :cond_121
33396 + if-eqz v6, :cond_f7
33398 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33400 + aget-object v1, v9, v10
33402 + const-string v4, "locationNetwork"
33404 + move v3, v2
33406 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33408 + :cond_f7
33409 + const-string v0, "PrivacyPhoneProxy"
33411 + new-instance v1, Ljava/lang/StringBuilder;
33413 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33415 + const-string/jumbo v2, "package: "
33417 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33419 + move-result-object v1
33421 + aget-object v2, v9, v10
33423 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33425 + move-result-object v1
33427 + const-string v2, " ALLOWED for getCellLocation()"
33429 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33431 + move-result-object v1
33433 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33435 + move-result-object v1
33437 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33439 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getCellLocation()Landroid/telephony/CellLocation;
33441 + move-result-object v5
33443 + goto/16 :goto_6a
33445 + :cond_11e
33446 + add-int/lit8 v8, v8, 0x1
33448 + goto :goto_c6
33450 + :cond_121
33451 + if-eqz v6, :cond_130
33453 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33455 + aget-object v1, v9, v10
33457 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
33459 + move-result v3
33461 + const-string v4, "locationNetwork"
33463 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33465 + :cond_130
33466 + const-string v0, "PrivacyPhoneProxy"
33468 + new-instance v1, Ljava/lang/StringBuilder;
33470 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33472 + const-string/jumbo v2, "package: "
33474 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33476 + move-result-object v1
33478 + aget-object v2, v9, v10
33480 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33482 + move-result-object v1
33484 + const-string v2, " BLOCKED for getCellLocation()"
33486 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33488 + move-result-object v1
33490 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33492 + move-result-object v1
33494 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33496 + packed-switch v11, :pswitch_data_17c
33498 + new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
33500 + invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
33502 + goto/16 :goto_6a
33504 + :pswitch_15b
33505 + new-instance v5, Landroid/telephony/gsm/GsmCellLocation;
33507 + invoke-direct {v5}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
33509 + goto/16 :goto_6a
33511 + :pswitch_162
33512 + new-instance v5, Landroid/telephony/cdma/CdmaCellLocation;
33514 + invoke-direct {v5}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
33516 + goto/16 :goto_6a
33518 + :pswitch_169
33519 + new-instance v5, Landroid/telephony/cdma/CdmaCellLocation;
33521 + invoke-direct {v5}, Landroid/telephony/cdma/CdmaCellLocation;-><init>()V
33523 + goto/16 :goto_6a
33525 + :pswitch_data_170
33526 + .packed-switch 0x0
33527 + :pswitch_6a
33528 + :pswitch_6b
33529 + :pswitch_71
33530 + :pswitch_77
33531 + .end packed-switch
33533 + :pswitch_data_17c
33534 + .packed-switch 0x0
33535 + :pswitch_6a
33536 + :pswitch_15b
33537 + :pswitch_162
33538 + :pswitch_169
33539 + .end packed-switch
33540 +.end method
33542 +.method public getDataConnectionState()Lcom/android/internal/telephony/Phone$DataState;
33543 + .registers 12
33545 + const/4 v5, 0x0
33547 + const/4 v2, 0x0
33549 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
33551 + if-eqz v0, :cond_97
33553 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33555 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33557 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33559 + move-result-object v1
33561 + invoke-static {}, Landroid/os/Process;->myUid()I
33563 + move-result v3
33565 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33567 + move-result-object v6
33569 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33571 + if-eqz v0, :cond_5c
33573 + if-eqz v6, :cond_5c
33575 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
33577 + move-result v0
33579 + if-eqz v0, :cond_5c
33581 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33583 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33585 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33587 + move-result-object v1
33589 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
33591 + move-result v3
33593 + const-string/jumbo v4, "networkInfoCurrent"
33595 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33597 + const-string v0, "PrivacyPhoneProxy"
33599 + new-instance v1, Ljava/lang/StringBuilder;
33601 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33603 + const-string/jumbo v2, "package: "
33605 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33607 + move-result-object v1
33609 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33611 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33613 + move-result-object v2
33615 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33617 + move-result-object v1
33619 + const-string v2, " BLOCKED for getDataConnection()"
33621 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33623 + move-result-object v1
33625 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33627 + move-result-object v1
33629 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33631 + sget-object v0, Lcom/android/internal/telephony/Phone$DataState;->CONNECTING:Lcom/android/internal/telephony/Phone$DataState;
33633 + :goto_5b
33634 + return-object v0
33636 + :cond_5c
33637 + if-eqz v6, :cond_6d
33639 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33641 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33643 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33645 + move-result-object v1
33647 + const-string/jumbo v4, "networkInfoCurrent"
33649 + move v3, v2
33651 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33653 + :cond_6d
33654 + const-string v0, "PrivacyPhoneProxy"
33656 + new-instance v1, Ljava/lang/StringBuilder;
33658 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33660 + const-string/jumbo v2, "package: "
33662 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33664 + move-result-object v1
33666 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33668 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33670 + move-result-object v2
33672 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33674 + move-result-object v1
33676 + const-string v2, " ALLOWED for getDataConnection()"
33678 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33680 + move-result-object v1
33682 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33684 + move-result-object v1
33686 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33688 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getDataConnectionState()Lcom/android/internal/telephony/Phone$DataState;
33690 + move-result-object v0
33692 + goto :goto_5b
33694 + :cond_97
33695 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
33697 + move-result-object v9
33699 + const/4 v7, 0x1
33701 + const/4 v6, 0x0
33703 + const/4 v10, 0x0
33705 + if-nez v9, :cond_a5
33707 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getDataConnectionState()Lcom/android/internal/telephony/Phone$DataState;
33709 + move-result-object v0
33711 + goto :goto_5b
33713 + :cond_a5
33714 + const/4 v8, 0x0
33716 + :goto_a6
33717 + array-length v0, v9
33719 + if-ge v8, v0, :cond_c3
33721 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33723 + aget-object v1, v9, v8
33725 + invoke-static {}, Landroid/os/Process;->myUid()I
33727 + move-result v3
33729 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33731 + move-result-object v6
33733 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33735 + if-eqz v0, :cond_f9
33737 + if-eqz v6, :cond_f9
33739 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
33741 + move-result v0
33743 + if-eqz v0, :cond_f9
33745 + const/4 v7, 0x0
33747 + move v10, v8
33749 + :cond_c3
33750 + if-eqz v7, :cond_fc
33752 + if-eqz v6, :cond_d2
33754 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33756 + aget-object v1, v9, v10
33758 + const-string/jumbo v4, "networkInfoCurrent"
33760 + move v3, v2
33762 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33764 + :cond_d2
33765 + const-string v0, "PrivacyPhoneProxy"
33767 + new-instance v1, Ljava/lang/StringBuilder;
33769 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33771 + const-string/jumbo v2, "package: "
33773 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33775 + move-result-object v1
33777 + aget-object v2, v9, v10
33779 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33781 + move-result-object v1
33783 + const-string v2, " ALLOWED for getDataConnection()"
33785 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33787 + move-result-object v1
33789 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33791 + move-result-object v1
33793 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33795 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getDataConnectionState()Lcom/android/internal/telephony/Phone$DataState;
33797 + move-result-object v0
33799 + goto/16 :goto_5b
33801 + :cond_f9
33802 + add-int/lit8 v8, v8, 0x1
33804 + goto :goto_a6
33806 + :cond_fc
33807 + if-eqz v6, :cond_10c
33809 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33811 + aget-object v1, v9, v10
33813 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
33815 + move-result v3
33817 + const-string/jumbo v4, "networkInfoCurrent"
33819 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33821 + :cond_10c
33822 + const-string v0, "PrivacyPhoneProxy"
33824 + new-instance v1, Ljava/lang/StringBuilder;
33826 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
33828 + const-string/jumbo v2, "package: "
33830 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33832 + move-result-object v1
33834 + aget-object v2, v9, v10
33836 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33838 + move-result-object v1
33840 + const-string v2, " BLOCKED for getDataConnection()"
33842 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33844 + move-result-object v1
33846 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33848 + move-result-object v1
33850 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33852 + sget-object v0, Lcom/android/internal/telephony/Phone$DataState;->CONNECTING:Lcom/android/internal/telephony/Phone$DataState;
33854 + goto/16 :goto_5b
33855 +.end method
33857 +.method public getDeviceId()Ljava/lang/String;
33858 + .registers 20
33860 + move-object/from16 v0, p0
33862 + iget-boolean v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
33864 + if-eqz v1, :cond_93
33866 + move-object/from16 v0, p0
33868 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33870 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33872 + move-result-object v2
33874 + invoke-static {}, Landroid/os/Process;->myUid()I
33876 + move-result v3
33878 + move-object/from16 v0, p0
33880 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33882 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
33884 + move-result-object v7
33886 + if-eqz v7, :cond_5d
33888 + if-eqz v7, :cond_5d
33890 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
33892 + move-result v1
33894 + if-eqz v1, :cond_5d
33896 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
33898 + move-result-object v6
33900 + move-object/from16 v0, p0
33902 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33904 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
33906 + move-result v4
33908 + const-string v5, "deviceID"
33910 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33912 + const-string v1, "PrivacyPhoneProxy"
33914 + new-instance v4, Ljava/lang/StringBuilder;
33916 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
33918 + const-string/jumbo v5, "package: "
33920 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33922 + move-result-object v4
33924 + move-object/from16 v0, p0
33926 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33928 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33930 + move-result-object v5
33932 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33934 + move-result-object v4
33936 + const-string v5, " BLOCKED for getDeviceId()"
33938 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33940 + move-result-object v4
33942 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33944 + move-result-object v4
33946 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
33948 + :goto_5c
33949 + return-object v6
33951 + :cond_5d
33952 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getDeviceId()Ljava/lang/String;
33954 + move-result-object v6
33956 + move-object/from16 v0, p0
33958 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
33960 + const/4 v4, 0x0
33962 + const-string v5, "deviceID"
33964 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
33966 + const-string v1, "PrivacyPhoneProxy"
33968 + new-instance v4, Ljava/lang/StringBuilder;
33970 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
33972 + const-string/jumbo v5, "package: "
33974 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33976 + move-result-object v4
33978 + move-object/from16 v0, p0
33980 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
33982 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
33984 + move-result-object v5
33986 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33988 + move-result-object v4
33990 + const-string v5, " ALLOWED for getDeviceId()"
33992 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
33994 + move-result-object v4
33996 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
33998 + move-result-object v4
34000 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34002 + goto :goto_5c
34004 + :cond_93
34005 + invoke-direct/range {p0 .. p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
34007 + move-result-object v17
34009 + const/4 v15, 0x1
34011 + const/4 v14, 0x0
34013 + const/16 v18, 0x0
34015 + if-nez v17, :cond_a2
34017 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getDeviceId()Ljava/lang/String;
34019 + move-result-object v6
34021 + goto :goto_5c
34023 + :cond_a2
34024 + const/16 v16, 0x0
34026 + :goto_a4
34027 + move-object/from16 v0, v17
34029 + array-length v1, v0
34031 + move/from16 v0, v16
34033 + if-ge v0, v1, :cond_ca
34035 + move-object/from16 v0, p0
34037 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34039 + aget-object v4, v17, v16
34041 + invoke-static {}, Landroid/os/Process;->myUid()I
34043 + move-result v5
34045 + invoke-virtual {v1, v4, v5}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34047 + move-result-object v14
34049 + move-object/from16 v0, p0
34051 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34053 + if-eqz v1, :cond_106
34055 + if-eqz v14, :cond_106
34057 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
34059 + move-result v1
34061 + if-eqz v1, :cond_106
34063 + const/4 v15, 0x0
34065 + move/from16 v18, v16
34067 + :cond_ca
34068 + if-eqz v15, :cond_109
34070 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getDeviceId()Ljava/lang/String;
34072 + move-result-object v6
34074 + if-eqz v14, :cond_e3
34076 + move-object/from16 v0, p0
34078 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34080 + aget-object v9, v17, v18
34082 + invoke-static {}, Landroid/os/Process;->myUid()I
34084 + move-result v10
34086 + const/4 v11, 0x0
34088 + const-string v12, "deviceID"
34090 + move-object v13, v6
34092 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34094 + :cond_e3
34095 + const-string v1, "PrivacyPhoneProxy"
34097 + new-instance v4, Ljava/lang/StringBuilder;
34099 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34101 + const-string/jumbo v5, "package: "
34103 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34105 + move-result-object v4
34107 + aget-object v5, v17, v18
34109 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34111 + move-result-object v4
34113 + const-string v5, " ALLOWED for getDeviceId()"
34115 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34117 + move-result-object v4
34119 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34121 + move-result-object v4
34123 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34125 + goto/16 :goto_5c
34127 + :cond_106
34128 + add-int/lit8 v16, v16, 0x1
34130 + goto :goto_a4
34132 + :cond_109
34133 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
34135 + move-result-object v6
34137 + if-eqz v14, :cond_123
34139 + move-object/from16 v0, p0
34141 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34143 + aget-object v9, v17, v18
34145 + invoke-static {}, Landroid/os/Process;->myUid()I
34147 + move-result v10
34149 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
34151 + move-result v11
34153 + const-string v12, "deviceID"
34155 + move-object v13, v6
34157 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34159 + :cond_123
34160 + const-string v1, "PrivacyPhoneProxy"
34162 + new-instance v4, Ljava/lang/StringBuilder;
34164 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34166 + const-string/jumbo v5, "package: "
34168 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34170 + move-result-object v4
34172 + aget-object v5, v17, v18
34174 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34176 + move-result-object v4
34178 + const-string v5, " BLOCKED for getDeviceId()"
34180 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34182 + move-result-object v4
34184 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34186 + move-result-object v4
34188 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34190 + goto/16 :goto_5c
34191 +.end method
34193 +.method public getDeviceSvn()Ljava/lang/String;
34194 + .registers 2
34196 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getDeviceId()Ljava/lang/String;
34198 + move-result-object v0
34200 + return-object v0
34201 +.end method
34203 +.method public getEsn()Ljava/lang/String;
34204 + .registers 2
34206 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getSubscriberId()Ljava/lang/String;
34208 + move-result-object v0
34210 + return-object v0
34211 +.end method
34213 +.method public getIccSerialNumber()Ljava/lang/String;
34214 + .registers 2
34216 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getSubscriberId()Ljava/lang/String;
34218 + move-result-object v0
34220 + return-object v0
34221 +.end method
34223 +.method public getImei()Ljava/lang/String;
34224 + .registers 2
34226 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getDeviceId()Ljava/lang/String;
34228 + move-result-object v0
34230 + return-object v0
34231 +.end method
34233 +.method public getLine1AlphaTag()Ljava/lang/String;
34234 + .registers 2
34236 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getLine1Number()Ljava/lang/String;
34238 + move-result-object v0
34240 + return-object v0
34241 +.end method
34243 +.method public getLine1Number()Ljava/lang/String;
34244 + .registers 20
34246 + move-object/from16 v0, p0
34248 + iget-boolean v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
34250 + if-eqz v1, :cond_93
34252 + move-object/from16 v0, p0
34254 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34256 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34258 + move-result-object v2
34260 + invoke-static {}, Landroid/os/Process;->myUid()I
34262 + move-result v3
34264 + move-object/from16 v0, p0
34266 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34268 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34270 + move-result-object v7
34272 + if-eqz v7, :cond_5d
34274 + if-eqz v7, :cond_5d
34276 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
34278 + move-result v1
34280 + if-eqz v1, :cond_5d
34282 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
34284 + move-result-object v6
34286 + move-object/from16 v0, p0
34288 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34290 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
34292 + move-result v4
34294 + const-string v5, "line1Number"
34296 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34298 + const-string v1, "PrivacyPhoneProxy"
34300 + new-instance v4, Ljava/lang/StringBuilder;
34302 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34304 + const-string/jumbo v5, "package: "
34306 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34308 + move-result-object v4
34310 + move-object/from16 v0, p0
34312 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34314 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34316 + move-result-object v5
34318 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34320 + move-result-object v4
34322 + const-string v5, " BLOCKED for getLine1Number()"
34324 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34326 + move-result-object v4
34328 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34330 + move-result-object v4
34332 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34334 + :goto_5c
34335 + return-object v6
34337 + :cond_5d
34338 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getLine1Number()Ljava/lang/String;
34340 + move-result-object v6
34342 + move-object/from16 v0, p0
34344 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34346 + const/4 v4, 0x0
34348 + const-string v5, "line1Number"
34350 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34352 + const-string v1, "PrivacyPhoneProxy"
34354 + new-instance v4, Ljava/lang/StringBuilder;
34356 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34358 + const-string/jumbo v5, "package: "
34360 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34362 + move-result-object v4
34364 + move-object/from16 v0, p0
34366 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34368 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34370 + move-result-object v5
34372 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34374 + move-result-object v4
34376 + const-string v5, " ALLOWED for getLine1Number()"
34378 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34380 + move-result-object v4
34382 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34384 + move-result-object v4
34386 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34388 + goto :goto_5c
34390 + :cond_93
34391 + invoke-direct/range {p0 .. p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
34393 + move-result-object v17
34395 + const/4 v15, 0x1
34397 + const/4 v14, 0x0
34399 + const/16 v18, 0x0
34401 + if-nez v17, :cond_a2
34403 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getLine1Number()Ljava/lang/String;
34405 + move-result-object v6
34407 + goto :goto_5c
34409 + :cond_a2
34410 + const/16 v16, 0x0
34412 + :goto_a4
34413 + move-object/from16 v0, v17
34415 + array-length v1, v0
34417 + move/from16 v0, v16
34419 + if-ge v0, v1, :cond_ca
34421 + move-object/from16 v0, p0
34423 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34425 + aget-object v4, v17, v16
34427 + invoke-static {}, Landroid/os/Process;->myUid()I
34429 + move-result v5
34431 + invoke-virtual {v1, v4, v5}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34433 + move-result-object v14
34435 + move-object/from16 v0, p0
34437 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34439 + if-eqz v1, :cond_106
34441 + if-eqz v14, :cond_106
34443 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
34445 + move-result v1
34447 + if-eqz v1, :cond_106
34449 + const/4 v15, 0x0
34451 + move/from16 v18, v16
34453 + :cond_ca
34454 + if-eqz v15, :cond_109
34456 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getLine1Number()Ljava/lang/String;
34458 + move-result-object v6
34460 + if-eqz v14, :cond_e3
34462 + move-object/from16 v0, p0
34464 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34466 + aget-object v9, v17, v18
34468 + invoke-static {}, Landroid/os/Process;->myUid()I
34470 + move-result v10
34472 + const/4 v11, 0x0
34474 + const-string v12, "line1Number"
34476 + move-object v13, v6
34478 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34480 + :cond_e3
34481 + const-string v1, "PrivacyPhoneProxy"
34483 + new-instance v4, Ljava/lang/StringBuilder;
34485 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34487 + const-string/jumbo v5, "package: "
34489 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34491 + move-result-object v4
34493 + aget-object v5, v17, v18
34495 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34497 + move-result-object v4
34499 + const-string v5, " ALLOWED for getLine1Number()"
34501 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34503 + move-result-object v4
34505 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34507 + move-result-object v4
34509 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34511 + goto/16 :goto_5c
34513 + :cond_106
34514 + add-int/lit8 v16, v16, 0x1
34516 + goto :goto_a4
34518 + :cond_109
34519 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
34521 + move-result-object v6
34523 + if-eqz v14, :cond_123
34525 + move-object/from16 v0, p0
34527 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34529 + aget-object v9, v17, v18
34531 + invoke-static {}, Landroid/os/Process;->myUid()I
34533 + move-result v10
34535 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
34537 + move-result v11
34539 + const-string v12, "line1Number"
34541 + move-object v13, v6
34543 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34545 + :cond_123
34546 + const-string v1, "PrivacyPhoneProxy"
34548 + new-instance v4, Ljava/lang/StringBuilder;
34550 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
34552 + const-string/jumbo v5, "package: "
34554 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34556 + move-result-object v4
34558 + aget-object v5, v17, v18
34560 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34562 + move-result-object v4
34564 + const-string v5, " BLOCKED for getLine1Number()"
34566 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34568 + move-result-object v4
34570 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34572 + move-result-object v4
34574 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34576 + goto/16 :goto_5c
34577 +.end method
34579 +.method public getMeid()Ljava/lang/String;
34580 + .registers 2
34582 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getSubscriberId()Ljava/lang/String;
34584 + move-result-object v0
34586 + return-object v0
34587 +.end method
34589 +.method public getMsisdn()Ljava/lang/String;
34590 + .registers 2
34592 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getSubscriberId()Ljava/lang/String;
34594 + move-result-object v0
34596 + return-object v0
34597 +.end method
34599 +.method public getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
34600 + .registers 2
34602 + new-instance v0, Lcom/android/internal/telephony/PhoneSubInfo;
34604 + invoke-direct {v0, p0}, Lcom/android/internal/telephony/PhoneSubInfo;-><init>(Lcom/android/internal/telephony/Phone;)V
34606 + return-object v0
34607 +.end method
34609 +.method public getServiceState()Landroid/telephony/ServiceState;
34610 + .registers 13
34612 + const/4 v5, 0x0
34614 + const/4 v2, 0x0
34616 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
34618 + if-eqz v0, :cond_a2
34620 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34622 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34624 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34626 + move-result-object v1
34628 + invoke-static {}, Landroid/os/Process;->myUid()I
34630 + move-result v3
34632 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34634 + move-result-object v6
34636 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34638 + if-eqz v0, :cond_67
34640 + if-eqz v6, :cond_67
34642 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34644 + move-result v0
34646 + if-eqz v0, :cond_67
34648 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34650 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34652 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34654 + move-result-object v1
34656 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34658 + move-result v3
34660 + const-string/jumbo v4, "networkInfoCurrent"
34662 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34664 + const-string v0, "PrivacyPhoneProxy"
34666 + new-instance v1, Ljava/lang/StringBuilder;
34668 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
34670 + const-string/jumbo v2, "package: "
34672 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34674 + move-result-object v1
34676 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34678 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34680 + move-result-object v2
34682 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34684 + move-result-object v1
34686 + const-string v2, " BLOCKED for getServiceState()"
34688 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34690 + move-result-object v1
34692 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34694 + move-result-object v1
34696 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34698 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getServiceState()Landroid/telephony/ServiceState;
34700 + move-result-object v9
34702 + const-string v0, ""
34704 + const-string v1, ""
34706 + const-string v2, ""
34708 + invoke-virtual {v9, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
34710 + :goto_66
34711 + return-object v9
34713 + :cond_67
34714 + if-eqz v6, :cond_78
34716 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34718 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34720 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34722 + move-result-object v1
34724 + const-string/jumbo v4, "networkInfoCurrent"
34726 + move v3, v2
34728 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34730 + :cond_78
34731 + const-string v0, "PrivacyPhoneProxy"
34733 + new-instance v1, Ljava/lang/StringBuilder;
34735 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
34737 + const-string/jumbo v2, "package: "
34739 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34741 + move-result-object v1
34743 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34745 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34747 + move-result-object v2
34749 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34751 + move-result-object v1
34753 + const-string v2, " ALLOWED for getServiceState()"
34755 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34757 + move-result-object v1
34759 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34761 + move-result-object v1
34763 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34765 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getServiceState()Landroid/telephony/ServiceState;
34767 + move-result-object v9
34769 + goto :goto_66
34771 + :cond_a2
34772 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
34774 + move-result-object v10
34776 + const/4 v7, 0x1
34778 + const/4 v6, 0x0
34780 + const/4 v11, 0x0
34782 + if-nez v10, :cond_b0
34784 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getServiceState()Landroid/telephony/ServiceState;
34786 + move-result-object v9
34788 + goto :goto_66
34790 + :cond_b0
34791 + const/4 v8, 0x0
34793 + :goto_b1
34794 + array-length v0, v10
34796 + if-ge v8, v0, :cond_ce
34798 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34800 + aget-object v1, v10, v8
34802 + invoke-static {}, Landroid/os/Process;->myUid()I
34804 + move-result v3
34806 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34808 + move-result-object v6
34810 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34812 + if-eqz v0, :cond_104
34814 + if-eqz v6, :cond_104
34816 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34818 + move-result v0
34820 + if-eqz v0, :cond_104
34822 + const/4 v7, 0x0
34824 + move v11, v8
34826 + :cond_ce
34827 + if-eqz v7, :cond_107
34829 + if-eqz v6, :cond_dd
34831 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34833 + aget-object v1, v10, v11
34835 + const-string/jumbo v4, "networkInfoCurrent"
34837 + move v3, v2
34839 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34841 + :cond_dd
34842 + const-string v0, "PrivacyPhoneProxy"
34844 + new-instance v1, Ljava/lang/StringBuilder;
34846 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
34848 + const-string/jumbo v2, "package: "
34850 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34852 + move-result-object v1
34854 + aget-object v2, v10, v11
34856 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34858 + move-result-object v1
34860 + const-string v2, " ALLOWED for getServiceState()"
34862 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34864 + move-result-object v1
34866 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34868 + move-result-object v1
34870 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34872 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getServiceState()Landroid/telephony/ServiceState;
34874 + move-result-object v9
34876 + goto/16 :goto_66
34878 + :cond_104
34879 + add-int/lit8 v8, v8, 0x1
34881 + goto :goto_b1
34883 + :cond_107
34884 + if-eqz v6, :cond_117
34886 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34888 + aget-object v1, v10, v11
34890 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34892 + move-result v3
34894 + const-string/jumbo v4, "networkInfoCurrent"
34896 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
34898 + :cond_117
34899 + const-string v0, "PrivacyPhoneProxy"
34901 + new-instance v1, Ljava/lang/StringBuilder;
34903 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
34905 + const-string/jumbo v2, "package: "
34907 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34909 + move-result-object v1
34911 + aget-object v2, v10, v11
34913 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34915 + move-result-object v1
34917 + const-string v2, " BLOCKED for getServiceState()"
34919 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
34921 + move-result-object v1
34923 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
34925 + move-result-object v1
34927 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
34929 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getServiceState()Landroid/telephony/ServiceState;
34931 + move-result-object v9
34933 + const-string v0, ""
34935 + const-string v1, ""
34937 + const-string v2, ""
34939 + invoke-virtual {v9, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
34941 + goto/16 :goto_66
34942 +.end method
34944 +.method public getSignalStrength()Landroid/telephony/SignalStrength;
34945 + .registers 13
34947 + const/4 v5, 0x0
34949 + const/4 v2, 0x0
34951 + new-instance v9, Landroid/telephony/SignalStrength;
34953 + invoke-direct {v9}, Landroid/telephony/SignalStrength;-><init>()V
34955 + iget-boolean v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
34957 + if-eqz v0, :cond_9a
34959 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34961 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34963 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34965 + move-result-object v1
34967 + invoke-static {}, Landroid/os/Process;->myUid()I
34969 + move-result v3
34971 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
34973 + move-result-object v6
34975 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34977 + if-eqz v0, :cond_5f
34979 + if-eqz v6, :cond_5f
34981 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34983 + move-result v0
34985 + if-eqz v0, :cond_5f
34987 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
34989 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
34991 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
34993 + move-result-object v1
34995 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
34997 + move-result v3
34999 + const-string/jumbo v4, "networkInfoCurrent"
35001 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35003 + const-string v0, "PrivacyPhoneProxy"
35005 + new-instance v1, Ljava/lang/StringBuilder;
35007 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35009 + const-string/jumbo v2, "package: "
35011 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35013 + move-result-object v1
35015 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35017 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35019 + move-result-object v2
35021 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35023 + move-result-object v1
35025 + const-string v2, " BLOCKED for getSignalStrength()"
35027 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35029 + move-result-object v1
35031 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35033 + move-result-object v1
35035 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35037 + :goto_5e
35038 + return-object v9
35040 + :cond_5f
35041 + if-eqz v6, :cond_70
35043 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35045 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35047 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35049 + move-result-object v1
35051 + const-string/jumbo v4, "networkInfoCurrent"
35053 + move v3, v2
35055 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35057 + :cond_70
35058 + const-string v0, "PrivacyPhoneProxy"
35060 + new-instance v1, Ljava/lang/StringBuilder;
35062 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35064 + const-string/jumbo v2, "package: "
35066 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35068 + move-result-object v1
35070 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35072 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35074 + move-result-object v2
35076 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35078 + move-result-object v1
35080 + const-string v2, " ALLOWED for getSignalStrength()"
35082 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35084 + move-result-object v1
35086 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35088 + move-result-object v1
35090 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35092 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getSignalStrength()Landroid/telephony/SignalStrength;
35094 + move-result-object v9
35096 + goto :goto_5e
35098 + :cond_9a
35099 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
35101 + move-result-object v10
35103 + const/4 v7, 0x1
35105 + const/4 v6, 0x0
35107 + const/4 v11, 0x0
35109 + if-nez v10, :cond_a8
35111 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getSignalStrength()Landroid/telephony/SignalStrength;
35113 + move-result-object v9
35115 + goto :goto_5e
35117 + :cond_a8
35118 + const/4 v8, 0x0
35120 + :goto_a9
35121 + array-length v0, v10
35123 + if-ge v8, v0, :cond_c6
35125 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35127 + aget-object v1, v10, v8
35129 + invoke-static {}, Landroid/os/Process;->myUid()I
35131 + move-result v3
35133 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35135 + move-result-object v6
35137 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35139 + if-eqz v0, :cond_fc
35141 + if-eqz v6, :cond_fc
35143 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
35145 + move-result v0
35147 + if-eqz v0, :cond_fc
35149 + const/4 v7, 0x0
35151 + move v11, v8
35153 + :cond_c6
35154 + if-eqz v7, :cond_ff
35156 + if-eqz v6, :cond_d5
35158 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35160 + aget-object v1, v10, v11
35162 + const-string/jumbo v4, "networkInfoCurrent"
35164 + move v3, v2
35166 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35168 + :cond_d5
35169 + const-string v0, "PrivacyPhoneProxy"
35171 + new-instance v1, Ljava/lang/StringBuilder;
35173 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35175 + const-string/jumbo v2, "package: "
35177 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35179 + move-result-object v1
35181 + aget-object v2, v10, v11
35183 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35185 + move-result-object v1
35187 + const-string v2, " ALLOWED for getSignalStrength()"
35189 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35191 + move-result-object v1
35193 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35195 + move-result-object v1
35197 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35199 + invoke-super {p0}, Lcom/android/internal/telephony/PhoneProxy;->getSignalStrength()Landroid/telephony/SignalStrength;
35201 + move-result-object v9
35203 + goto/16 :goto_5e
35205 + :cond_fc
35206 + add-int/lit8 v8, v8, 0x1
35208 + goto :goto_a9
35210 + :cond_ff
35211 + if-eqz v6, :cond_10f
35213 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35215 + aget-object v1, v10, v11
35217 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
35219 + move-result v3
35221 + const-string/jumbo v4, "networkInfoCurrent"
35223 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35225 + :cond_10f
35226 + const-string v0, "PrivacyPhoneProxy"
35228 + new-instance v1, Ljava/lang/StringBuilder;
35230 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35232 + const-string/jumbo v2, "package: "
35234 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35236 + move-result-object v1
35238 + aget-object v2, v10, v11
35240 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35242 + move-result-object v1
35244 + const-string v2, " BLOCKED for getSignalStrength()"
35246 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35248 + move-result-object v1
35250 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35252 + move-result-object v1
35254 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35256 + goto/16 :goto_5e
35257 +.end method
35259 +.method public getSubscriberId()Ljava/lang/String;
35260 + .registers 20
35262 + move-object/from16 v0, p0
35264 + iget-boolean v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context_available:Z
35266 + if-eqz v1, :cond_95
35268 + move-object/from16 v0, p0
35270 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35272 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35274 + move-result-object v2
35276 + invoke-static {}, Landroid/os/Process;->myUid()I
35278 + move-result v3
35280 + move-object/from16 v0, p0
35282 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35284 + invoke-virtual {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35286 + move-result-object v7
35288 + if-eqz v7, :cond_5e
35290 + if-eqz v7, :cond_5e
35292 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
35294 + move-result v1
35296 + if-eqz v1, :cond_5e
35298 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
35300 + move-result-object v6
35302 + move-object/from16 v0, p0
35304 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35306 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
35308 + move-result v4
35310 + const-string/jumbo v5, "subscriberID"
35312 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35314 + const-string v1, "PrivacyPhoneProxy"
35316 + new-instance v4, Ljava/lang/StringBuilder;
35318 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
35320 + const-string/jumbo v5, "package: "
35322 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35324 + move-result-object v4
35326 + move-object/from16 v0, p0
35328 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35330 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35332 + move-result-object v5
35334 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35336 + move-result-object v4
35338 + const-string v5, " BLOCKED for getSubscriberId()"
35340 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35342 + move-result-object v4
35344 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35346 + move-result-object v4
35348 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35350 + :goto_5d
35351 + return-object v6
35353 + :cond_5e
35354 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getSubscriberId()Ljava/lang/String;
35356 + move-result-object v6
35358 + move-object/from16 v0, p0
35360 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35362 + const/4 v4, 0x0
35364 + const-string/jumbo v5, "subscriberID"
35366 + invoke-virtual/range {v1 .. v7}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35368 + const-string v1, "PrivacyPhoneProxy"
35370 + new-instance v4, Ljava/lang/StringBuilder;
35372 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
35374 + const-string/jumbo v5, "package: "
35376 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35378 + move-result-object v4
35380 + move-object/from16 v0, p0
35382 + iget-object v5, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->context:Landroid/content/Context;
35384 + invoke-virtual {v5}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35386 + move-result-object v5
35388 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35390 + move-result-object v4
35392 + const-string v5, " ALLOWED for getSubscriberId()"
35394 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35396 + move-result-object v4
35398 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35400 + move-result-object v4
35402 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35404 + goto :goto_5d
35406 + :cond_95
35407 + invoke-direct/range {p0 .. p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getPackageName()[Ljava/lang/String;
35409 + move-result-object v17
35411 + const/4 v15, 0x1
35413 + const/4 v14, 0x0
35415 + const/16 v18, 0x0
35417 + if-nez v17, :cond_a4
35419 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getSubscriberId()Ljava/lang/String;
35421 + move-result-object v6
35423 + goto :goto_5d
35425 + :cond_a4
35426 + const/16 v16, 0x0
35428 + :goto_a6
35429 + move-object/from16 v0, v17
35431 + array-length v1, v0
35433 + move/from16 v0, v16
35435 + if-ge v0, v1, :cond_cc
35437 + move-object/from16 v0, p0
35439 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35441 + aget-object v4, v17, v16
35443 + invoke-static {}, Landroid/os/Process;->myUid()I
35445 + move-result v5
35447 + invoke-virtual {v1, v4, v5}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35449 + move-result-object v14
35451 + move-object/from16 v0, p0
35453 + iget-object v1, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35455 + if-eqz v1, :cond_109
35457 + if-eqz v14, :cond_109
35459 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
35461 + move-result v1
35463 + if-eqz v1, :cond_109
35465 + const/4 v15, 0x0
35467 + move/from16 v18, v16
35469 + :cond_cc
35470 + if-eqz v15, :cond_10c
35472 + invoke-super/range {p0 .. p0}, Lcom/android/internal/telephony/PhoneProxy;->getSubscriberId()Ljava/lang/String;
35474 + move-result-object v6
35476 + if-eqz v14, :cond_e6
35478 + move-object/from16 v0, p0
35480 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35482 + aget-object v9, v17, v18
35484 + invoke-static {}, Landroid/os/Process;->myUid()I
35486 + move-result v10
35488 + const/4 v11, 0x0
35490 + const-string/jumbo v12, "subscriberID"
35492 + move-object v13, v6
35494 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35496 + :cond_e6
35497 + const-string v1, "PrivacyPhoneProxy"
35499 + new-instance v4, Ljava/lang/StringBuilder;
35501 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
35503 + const-string/jumbo v5, "package: "
35505 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35507 + move-result-object v4
35509 + aget-object v5, v17, v18
35511 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35513 + move-result-object v4
35515 + const-string v5, " ALLOWED for getSubscriberId()"
35517 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35519 + move-result-object v4
35521 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35523 + move-result-object v4
35525 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35527 + goto/16 :goto_5d
35529 + :cond_109
35530 + add-int/lit8 v16, v16, 0x1
35532 + goto :goto_a6
35534 + :cond_10c
35535 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
35537 + move-result-object v6
35539 + if-eqz v14, :cond_127
35541 + move-object/from16 v0, p0
35543 + iget-object v8, v0, Landroid/privacy/surrogate/PrivacyPhoneProxy;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35545 + aget-object v9, v17, v18
35547 + invoke-static {}, Landroid/os/Process;->myUid()I
35549 + move-result v10
35551 + invoke-virtual {v14}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
35553 + move-result v11
35555 + const-string/jumbo v12, "subscriberID"
35557 + move-object v13, v6
35559 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35561 + :cond_127
35562 + const-string v1, "PrivacyPhoneProxy"
35564 + new-instance v4, Ljava/lang/StringBuilder;
35566 + invoke-direct {v4}, Ljava/lang/StringBuilder;-><init>()V
35568 + const-string/jumbo v5, "package: "
35570 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35572 + move-result-object v4
35574 + aget-object v5, v17, v18
35576 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35578 + move-result-object v4
35580 + const-string v5, " BLOCKED for getSubscriberId()"
35582 + invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35584 + move-result-object v4
35586 + invoke-virtual {v4}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35588 + move-result-object v4
35590 + invoke-static {v1, v4}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35592 + goto/16 :goto_5d
35593 +.end method
35595 +.method public getVoiceMailNumber()Ljava/lang/String;
35596 + .registers 2
35598 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyPhoneProxy;->getLine1Number()Ljava/lang/String;
35600 + move-result-object v0
35602 + return-object v0
35603 +.end method
35604 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacySipPhone.smali ext-framework/smali/android/privacy/surrogate/PrivacySipPhone.smali
35605 --- stock-framework/smali/android/privacy/surrogate/PrivacySipPhone.smali 1969-12-31 18:00:00.000000000 -0600
35606 +++ ext-framework/smali/android/privacy/surrogate/PrivacySipPhone.smali 2012-11-02 22:30:49.107878137 -0500
35607 @@ -0,0 +1,1602 @@
35608 +.class public Landroid/privacy/surrogate/PrivacySipPhone;
35609 +.super Lcom/android/internal/telephony/sip/SipPhone;
35610 +.source "PrivacySipPhone.java"
35613 +# static fields
35614 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyGSMPhone"
35617 +# instance fields
35618 +.field private context:Landroid/content/Context;
35620 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
35623 +# direct methods
35624 +.method public constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
35625 + .registers 7
35627 + invoke-direct {p0, p1, p2, p3}, Lcom/android/internal/telephony/sip/SipPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
35629 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35631 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
35633 + const-string/jumbo v1, "privacy"
35635 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
35637 + move-result-object v1
35639 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
35641 + move-result-object v1
35643 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
35645 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35647 + const-string v0, "PrivacyGSMPhone"
35649 + new-instance v1, Ljava/lang/StringBuilder;
35651 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35653 + const-string v2, "Constructor ready for package: "
35655 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35657 + move-result-object v1
35659 + invoke-virtual {p1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35661 + move-result-object v2
35663 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35665 + move-result-object v1
35667 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35669 + move-result-object v1
35671 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35673 + return-void
35674 +.end method
35677 +# virtual methods
35678 +.method public dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
35679 + .registers 10
35680 + .annotation system Ldalvik/annotation/Throws;
35681 + value = {
35682 + Lcom/android/internal/telephony/CallStateException;
35684 + .end annotation
35686 + const/4 v2, 0x0
35688 + const/4 v5, 0x0
35690 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35692 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35694 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35696 + move-result-object v1
35698 + const/4 v3, -0x1
35700 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35702 + move-result-object v7
35704 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35706 + if-eqz v0, :cond_31
35708 + if-eqz v7, :cond_31
35710 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
35712 + move-result v0
35714 + if-eqz v0, :cond_31
35716 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35718 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35720 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35722 + move-result-object v1
35724 + const/4 v3, 0x1
35726 + const-string/jumbo v4, "phoneCall"
35728 + move-object v6, v5
35730 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35732 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
35734 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
35736 + throw v0
35738 + :cond_31
35739 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35741 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35743 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35745 + move-result-object v1
35747 + const-string/jumbo v4, "phoneCall"
35749 + move v3, v2
35751 + move-object v6, v5
35753 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35755 + invoke-super {p0, p1}, Lcom/android/internal/telephony/sip/SipPhone;->dial(Ljava/lang/String;)Lcom/android/internal/telephony/Connection;
35757 + move-result-object v0
35759 + return-object v0
35760 +.end method
35762 +.method public dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
35763 + .registers 11
35764 + .annotation system Ldalvik/annotation/Throws;
35765 + value = {
35766 + Lcom/android/internal/telephony/CallStateException;
35768 + .end annotation
35770 + const/4 v2, 0x0
35772 + const/4 v5, 0x0
35774 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35776 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35778 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35780 + move-result-object v1
35782 + const/4 v3, -0x1
35784 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35786 + move-result-object v7
35788 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35790 + if-eqz v0, :cond_31
35792 + if-eqz v7, :cond_31
35794 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getPhoneCallSetting()B
35796 + move-result v0
35798 + if-eqz v0, :cond_31
35800 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35802 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35804 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35806 + move-result-object v1
35808 + const/4 v3, 0x1
35810 + const-string/jumbo v4, "phoneCall"
35812 + move-object v6, v5
35814 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35816 + new-instance v0, Lcom/android/internal/telephony/CallStateException;
35818 + invoke-direct {v0}, Lcom/android/internal/telephony/CallStateException;-><init>()V
35820 + throw v0
35822 + :cond_31
35823 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35825 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35827 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35829 + move-result-object v1
35831 + const-string/jumbo v4, "phoneCall"
35833 + move v3, v2
35835 + move-object v6, v5
35837 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35839 + invoke-super {p0, p1, p2}, Lcom/android/internal/telephony/sip/SipPhone;->dial(Ljava/lang/String;Lcom/android/internal/telephony/UUSInfo;)Lcom/android/internal/telephony/Connection;
35841 + move-result-object v0
35843 + return-object v0
35844 +.end method
35846 +.method public getCellLocation()Landroid/telephony/CellLocation;
35847 + .registers 8
35849 + const/4 v5, 0x0
35851 + const/4 v2, 0x0
35853 + const-string v0, "PrivacyGSMPhone"
35855 + new-instance v1, Ljava/lang/StringBuilder;
35857 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
35859 + const-string v3, "Package: "
35861 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35863 + move-result-object v1
35865 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35867 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35869 + move-result-object v3
35871 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35873 + move-result-object v1
35875 + const-string v3, " asked for getCellLocation()"
35877 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35879 + move-result-object v1
35881 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
35883 + move-result-object v1
35885 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
35887 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35889 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35891 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35893 + move-result-object v1
35895 + invoke-static {}, Landroid/os/Process;->myUid()I
35897 + move-result v3
35899 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
35901 + move-result-object v6
35903 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35905 + if-eqz v0, :cond_5f
35907 + if-eqz v6, :cond_5f
35909 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
35911 + move-result v0
35913 + if-nez v0, :cond_48
35915 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
35917 + move-result v0
35919 + if-eqz v0, :cond_5f
35921 + :cond_48
35922 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35924 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35926 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35928 + move-result-object v1
35930 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
35932 + move-result v3
35934 + const-string v4, "locationNetwork"
35936 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35938 + new-instance v0, Landroid/telephony/gsm/GsmCellLocation;
35940 + invoke-direct {v0}, Landroid/telephony/gsm/GsmCellLocation;-><init>()V
35942 + :goto_5e
35943 + return-object v0
35945 + :cond_5f
35946 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
35948 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35950 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35952 + move-result-object v1
35954 + const-string v4, "locationNetwork"
35956 + move v3, v2
35958 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
35960 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getCellLocation()Landroid/telephony/CellLocation;
35962 + move-result-object v0
35964 + goto :goto_5e
35965 +.end method
35967 +.method public getDeviceId()Ljava/lang/String;
35968 + .registers 8
35970 + const-string v0, "PrivacyGSMPhone"
35972 + new-instance v3, Ljava/lang/StringBuilder;
35974 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
35976 + const-string v4, "Package: "
35978 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35980 + move-result-object v3
35982 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
35984 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
35986 + move-result-object v4
35988 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35990 + move-result-object v3
35992 + const-string v4, " asked for getDeviceId()"
35994 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
35996 + move-result-object v3
35998 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36000 + move-result-object v3
36002 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36004 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36006 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36008 + move-result-object v1
36010 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36012 + move-result v2
36014 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36016 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36018 + move-result-object v6
36020 + if-eqz v6, :cond_4c
36022 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36024 + move-result v0
36026 + if-eqz v0, :cond_4c
36028 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
36030 + move-result-object v5
36032 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36034 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36036 + move-result v3
36038 + const-string v4, "deviceID"
36040 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36042 + :goto_4b
36043 + return-object v5
36045 + :cond_4c
36046 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getDeviceId()Ljava/lang/String;
36048 + move-result-object v5
36050 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36052 + const/4 v3, 0x0
36054 + const-string v4, "deviceID"
36056 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36058 + goto :goto_4b
36059 +.end method
36061 +.method public getDeviceSvn()Ljava/lang/String;
36062 + .registers 8
36064 + const-string v0, "PrivacyGSMPhone"
36066 + new-instance v3, Ljava/lang/StringBuilder;
36068 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
36070 + const-string v4, "Package: "
36072 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36074 + move-result-object v3
36076 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36078 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36080 + move-result-object v4
36082 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36084 + move-result-object v3
36086 + const-string v4, " asked for getDeviceSvn()"
36088 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36090 + move-result-object v3
36092 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36094 + move-result-object v3
36096 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36098 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36100 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36102 + move-result-object v1
36104 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36106 + move-result v2
36108 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36110 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36112 + move-result-object v6
36114 + if-eqz v6, :cond_4c
36116 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36118 + move-result v0
36120 + if-eqz v0, :cond_4c
36122 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
36124 + move-result-object v5
36126 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36128 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36130 + move-result v3
36132 + const-string v4, "deviceID"
36134 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36136 + :goto_4b
36137 + return-object v5
36139 + :cond_4c
36140 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getDeviceId()Ljava/lang/String;
36142 + move-result-object v5
36144 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36146 + const/4 v3, 0x0
36148 + const-string v4, "deviceID"
36150 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36152 + goto :goto_4b
36153 +.end method
36155 +.method public getEsn()Ljava/lang/String;
36156 + .registers 8
36158 + const-string v0, "PrivacyGSMPhone"
36160 + new-instance v3, Ljava/lang/StringBuilder;
36162 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
36164 + const-string v4, "Package: "
36166 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36168 + move-result-object v3
36170 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36172 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36174 + move-result-object v4
36176 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36178 + move-result-object v3
36180 + const-string v4, " asked for getEsn()"
36182 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36184 + move-result-object v3
36186 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36188 + move-result-object v3
36190 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36192 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36194 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36196 + move-result-object v1
36198 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36200 + move-result v2
36202 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36204 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36206 + move-result-object v6
36208 + if-eqz v6, :cond_4c
36210 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36212 + move-result v0
36214 + if-eqz v0, :cond_4c
36216 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
36218 + move-result-object v5
36220 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36222 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36224 + move-result v3
36226 + const-string v4, "deviceID"
36228 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36230 + :goto_4b
36231 + return-object v5
36233 + :cond_4c
36234 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getDeviceId()Ljava/lang/String;
36236 + move-result-object v5
36238 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36240 + const/4 v3, 0x0
36242 + const-string v4, "deviceID"
36244 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36246 + goto :goto_4b
36247 +.end method
36249 +.method public getImei()Ljava/lang/String;
36250 + .registers 8
36252 + const-string v0, "PrivacyGSMPhone"
36254 + new-instance v3, Ljava/lang/StringBuilder;
36256 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
36258 + const-string v4, "Package: "
36260 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36262 + move-result-object v3
36264 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36266 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36268 + move-result-object v4
36270 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36272 + move-result-object v3
36274 + const-string v4, " asked for getImei"
36276 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36278 + move-result-object v3
36280 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36282 + move-result-object v3
36284 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36286 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36288 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36290 + move-result-object v1
36292 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36294 + move-result v2
36296 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36298 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36300 + move-result-object v6
36302 + if-eqz v6, :cond_4c
36304 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36306 + move-result v0
36308 + if-eqz v0, :cond_4c
36310 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
36312 + move-result-object v5
36314 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36316 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36318 + move-result v3
36320 + const-string v4, "deviceID"
36322 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36324 + :goto_4b
36325 + return-object v5
36327 + :cond_4c
36328 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getDeviceId()Ljava/lang/String;
36330 + move-result-object v5
36332 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36334 + const/4 v3, 0x0
36336 + const-string v4, "deviceID"
36338 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36340 + goto :goto_4b
36341 +.end method
36343 +.method public getLine1AlphaTag()Ljava/lang/String;
36344 + .registers 8
36346 + const/4 v2, 0x0
36348 + const-string v0, "PrivacyGSMPhone"
36350 + new-instance v1, Ljava/lang/StringBuilder;
36352 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
36354 + const-string v3, "Package: "
36356 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36358 + move-result-object v1
36360 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36362 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36364 + move-result-object v3
36366 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36368 + move-result-object v1
36370 + const-string v3, " asked for getLine1AlphaTag()"
36372 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36374 + move-result-object v1
36376 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36378 + move-result-object v1
36380 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36382 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36384 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36386 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36388 + move-result-object v1
36390 + invoke-static {}, Landroid/os/Process;->myUid()I
36392 + move-result v3
36394 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36396 + move-result-object v6
36398 + const-string v5, ""
36400 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36402 + if-eqz v0, :cond_59
36404 + if-eqz v6, :cond_59
36406 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
36408 + move-result v0
36410 + if-eqz v0, :cond_59
36412 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
36414 + move-result-object v5
36416 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36418 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36420 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36422 + move-result-object v1
36424 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
36426 + move-result v3
36428 + const-string v4, "line1Number"
36430 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36432 + :goto_58
36433 + return-object v5
36435 + :cond_59
36436 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36438 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36440 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36442 + move-result-object v1
36444 + const-string v4, "line1Number"
36446 + move v3, v2
36448 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36450 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getLine1AlphaTag()Ljava/lang/String;
36452 + move-result-object v5
36454 + goto :goto_58
36455 +.end method
36457 +.method public getLine1Number()Ljava/lang/String;
36458 + .registers 8
36460 + const/4 v2, 0x0
36462 + const-string v0, "PrivacyGSMPhone"
36464 + new-instance v1, Ljava/lang/StringBuilder;
36466 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
36468 + const-string v3, "Package: "
36470 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36472 + move-result-object v1
36474 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36476 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36478 + move-result-object v3
36480 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36482 + move-result-object v1
36484 + const-string v3, " asked for getLine1Number()"
36486 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36488 + move-result-object v1
36490 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36492 + move-result-object v1
36494 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36496 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36498 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36500 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36502 + move-result-object v1
36504 + invoke-static {}, Landroid/os/Process;->myUid()I
36506 + move-result v3
36508 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36510 + move-result-object v6
36512 + const-string v5, ""
36514 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36516 + if-eqz v0, :cond_59
36518 + if-eqz v6, :cond_59
36520 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
36522 + move-result v0
36524 + if-eqz v0, :cond_59
36526 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
36528 + move-result-object v5
36530 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36532 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36534 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36536 + move-result-object v1
36538 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
36540 + move-result v3
36542 + const-string v4, "line1Number"
36544 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36546 + :goto_58
36547 + return-object v5
36549 + :cond_59
36550 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36552 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36554 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36556 + move-result-object v1
36558 + const-string v4, "line1Number"
36560 + move v3, v2
36562 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36564 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getLine1AlphaTag()Ljava/lang/String;
36566 + move-result-object v5
36568 + goto :goto_58
36569 +.end method
36571 +.method public getMeid()Ljava/lang/String;
36572 + .registers 8
36574 + const-string v0, "PrivacyGSMPhone"
36576 + new-instance v3, Ljava/lang/StringBuilder;
36578 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
36580 + const-string v4, "Package: "
36582 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36584 + move-result-object v3
36586 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36588 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36590 + move-result-object v4
36592 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36594 + move-result-object v3
36596 + const-string v4, " asked for getMeid()"
36598 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36600 + move-result-object v3
36602 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36604 + move-result-object v3
36606 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36608 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36610 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36612 + move-result-object v1
36614 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36616 + move-result v2
36618 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36620 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36622 + move-result-object v6
36624 + if-eqz v6, :cond_4c
36626 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36628 + move-result v0
36630 + if-eqz v0, :cond_4c
36632 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
36634 + move-result-object v5
36636 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36638 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
36640 + move-result v3
36642 + const-string v4, "deviceID"
36644 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36646 + :goto_4b
36647 + return-object v5
36649 + :cond_4c
36650 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getDeviceId()Ljava/lang/String;
36652 + move-result-object v5
36654 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36656 + const/4 v3, 0x0
36658 + const-string v4, "deviceID"
36660 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36662 + goto :goto_4b
36663 +.end method
36665 +.method public getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
36666 + .registers 8
36668 + const/4 v5, 0x0
36670 + const/4 v2, 0x0
36672 + const-string v0, "PrivacyGSMPhone"
36674 + new-instance v1, Ljava/lang/StringBuilder;
36676 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
36678 + const-string v3, "Package: "
36680 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36682 + move-result-object v1
36684 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36686 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36688 + move-result-object v3
36690 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36692 + move-result-object v1
36694 + const-string v3, " asked for getPhoneSubInfo()"
36696 + invoke-virtual {v1, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36698 + move-result-object v1
36700 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36702 + move-result-object v1
36704 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36706 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36708 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36710 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36712 + move-result-object v1
36714 + invoke-static {}, Landroid/os/Process;->myUid()I
36716 + move-result v3
36718 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36720 + move-result-object v6
36722 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36724 + if-eqz v0, :cond_54
36726 + if-eqz v6, :cond_54
36728 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
36730 + move-result v0
36732 + if-eqz v0, :cond_54
36734 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36736 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36738 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36740 + move-result-object v1
36742 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
36744 + move-result v3
36746 + const-string v4, "locationNetwork"
36748 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36750 + :goto_53
36751 + return-object v5
36753 + :cond_54
36754 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36756 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36758 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36760 + move-result-object v1
36762 + const-string v4, "locationNetwork"
36764 + move v3, v2
36766 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36768 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getPhoneSubInfo()Lcom/android/internal/telephony/PhoneSubInfo;
36770 + move-result-object v5
36772 + goto :goto_53
36773 +.end method
36775 +.method public getServiceState()Landroid/telephony/ServiceState;
36776 + .registers 10
36778 + :try_start_0
36779 + const-string v0, "PrivacyGSMPhone"
36781 + new-instance v1, Ljava/lang/StringBuilder;
36783 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
36785 + const-string v2, "Package: "
36787 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36789 + move-result-object v1
36791 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36793 + invoke-virtual {v2}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36795 + move-result-object v2
36797 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36799 + move-result-object v1
36801 + const-string v2, " asked for getServiceState()"
36803 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36805 + move-result-object v1
36807 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36809 + move-result-object v1
36811 + invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36813 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36815 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36817 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36819 + move-result-object v1
36821 + invoke-static {}, Landroid/os/Process;->myUid()I
36823 + move-result v2
36825 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36827 + move-result-object v6
36829 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36831 + if-eqz v0, :cond_61
36833 + if-eqz v6, :cond_61
36835 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
36837 + move-result v0
36839 + if-eqz v0, :cond_61
36841 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36843 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36845 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36847 + move-result-object v1
36849 + const/4 v2, 0x0
36851 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
36853 + move-result v3
36855 + const-string v4, "locationNetwork"
36857 + const/4 v5, 0x0
36859 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36861 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getServiceState()Landroid/telephony/ServiceState;
36863 + move-result-object v8
36865 + const-string v0, ""
36867 + const-string v1, ""
36869 + const-string v2, ""
36871 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
36873 + :goto_60
36874 + return-object v8
36876 + :cond_61
36877 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36879 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36881 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36883 + move-result-object v1
36885 + const/4 v2, 0x0
36887 + const/4 v3, 0x0
36889 + const-string v4, "locationNetwork"
36891 + const/4 v5, 0x0
36893 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
36895 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getServiceState()Landroid/telephony/ServiceState;
36896 + :try_end_74
36897 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_74} :catch_76
36899 + move-result-object v8
36901 + goto :goto_60
36903 + :catch_76
36904 + move-exception v7
36906 + invoke-virtual {v7}, Ljava/lang/Exception;->printStackTrace()V
36908 + const-string v0, "PrivacyGSMPhone"
36910 + const-string v1, "We got exception in getServiceState()-> give fake state"
36912 + invoke-static {v0, v1}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
36914 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getServiceState()Landroid/telephony/ServiceState;
36916 + move-result-object v8
36918 + const-string v0, ""
36920 + const-string v1, ""
36922 + const-string v2, ""
36924 + invoke-virtual {v8, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
36926 + goto :goto_60
36927 +.end method
36929 +.method public getSubscriberId()Ljava/lang/String;
36930 + .registers 8
36932 + const-string v0, "PrivacyGSMPhone"
36934 + new-instance v3, Ljava/lang/StringBuilder;
36936 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
36938 + const-string v4, "Package: "
36940 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36942 + move-result-object v3
36944 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36946 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36948 + move-result-object v4
36950 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36952 + move-result-object v3
36954 + const-string v4, " asked for getSubscriberId()"
36956 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
36958 + move-result-object v3
36960 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
36962 + move-result-object v3
36964 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
36966 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
36968 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
36970 + move-result-object v1
36972 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
36974 + move-result v2
36976 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36978 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
36980 + move-result-object v6
36982 + if-eqz v6, :cond_4d
36984 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
36986 + move-result v0
36988 + if-eqz v0, :cond_4d
36990 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
36992 + move-result-object v5
36994 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
36996 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
36998 + move-result v3
37000 + const-string/jumbo v4, "subscriberID"
37002 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37004 + :goto_4c
37005 + return-object v5
37007 + :cond_4d
37008 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getSubscriberId()Ljava/lang/String;
37010 + move-result-object v5
37012 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37014 + const/4 v3, 0x0
37016 + const-string/jumbo v4, "subscriberID"
37018 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37020 + goto :goto_4c
37021 +.end method
37023 +.method public getVoiceMailAlphaTag()Ljava/lang/String;
37024 + .registers 8
37026 + const-string v0, "PrivacyGSMPhone"
37028 + new-instance v3, Ljava/lang/StringBuilder;
37030 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
37032 + const-string v4, "Package: "
37034 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37036 + move-result-object v3
37038 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
37040 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37042 + move-result-object v4
37044 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37046 + move-result-object v3
37048 + const-string v4, " asked for getVoiceMailAlphaTag()"
37050 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37052 + move-result-object v3
37054 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
37056 + move-result-object v3
37058 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
37060 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
37062 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37064 + move-result-object v1
37066 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37068 + move-result v2
37070 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37072 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37074 + move-result-object v6
37076 + if-eqz v6, :cond_4c
37078 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37080 + move-result v0
37082 + if-eqz v0, :cond_4c
37084 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
37086 + move-result-object v5
37088 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37090 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37092 + move-result v3
37094 + const-string v4, "line1Number"
37096 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37098 + :goto_4b
37099 + return-object v5
37101 + :cond_4c
37102 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getVoiceMailNumber()Ljava/lang/String;
37104 + move-result-object v5
37106 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37108 + const/4 v3, 0x0
37110 + const-string v4, "line1Number"
37112 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37114 + goto :goto_4b
37115 +.end method
37117 +.method public getVoiceMailNumber()Ljava/lang/String;
37118 + .registers 8
37120 + const-string v0, "PrivacyGSMPhone"
37122 + new-instance v3, Ljava/lang/StringBuilder;
37124 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
37126 + const-string v4, "Package: "
37128 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37130 + move-result-object v3
37132 + iget-object v4, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
37134 + invoke-virtual {v4}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37136 + move-result-object v4
37138 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37140 + move-result-object v3
37142 + const-string v4, " asked for getVoiceMailNumber()"
37144 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
37146 + move-result-object v3
37148 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
37150 + move-result-object v3
37152 + invoke-static {v0, v3}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
37154 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->context:Landroid/content/Context;
37156 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37158 + move-result-object v1
37160 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37162 + move-result v2
37164 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37166 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37168 + move-result-object v6
37170 + if-eqz v6, :cond_4c
37172 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37174 + move-result v0
37176 + if-eqz v0, :cond_4c
37178 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
37180 + move-result-object v5
37182 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37184 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37186 + move-result v3
37188 + const-string v4, "line1Number"
37190 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37192 + :goto_4b
37193 + return-object v5
37195 + :cond_4c
37196 + invoke-super {p0}, Lcom/android/internal/telephony/sip/SipPhone;->getVoiceMailNumber()Ljava/lang/String;
37198 + move-result-object v5
37200 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacySipPhone;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37202 + const/4 v3, 0x0
37204 + const-string v4, "line1Number"
37206 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37208 + goto :goto_4b
37209 +.end method
37210 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali ext-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali
37211 --- stock-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 1969-12-31 18:00:00.000000000 -0600
37212 +++ ext-framework/smali/android/privacy/surrogate/PrivacyTelephonyManager.smali 2012-11-02 22:30:49.111878164 -0500
37213 @@ -0,0 +1,1273 @@
37214 +.class public final Landroid/privacy/surrogate/PrivacyTelephonyManager;
37215 +.super Landroid/telephony/TelephonyManager;
37216 +.source "PrivacyTelephonyManager.java"
37219 +# static fields
37220 +.field private static final NETWORK_TYPES:[I = null
37222 +.field private static final PHONE_TYPES:[I = null
37224 +.field private static final TAG:Ljava/lang/String; = "PrivacyTelephonyManager"
37227 +# instance fields
37228 +.field private context:Landroid/content/Context;
37230 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
37233 +# direct methods
37234 +.method static constructor <clinit>()V
37235 + .registers 1
37237 + const/4 v0, 0x4
37239 + new-array v0, v0, [I
37241 + fill-array-data v0, :array_12
37243 + sput-object v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->PHONE_TYPES:[I
37245 + const/16 v0, 0x10
37247 + new-array v0, v0, [I
37249 + fill-array-data v0, :array_1e
37251 + sput-object v0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->NETWORK_TYPES:[I
37253 + return-void
37255 + :array_12
37256 + .array-data 0x4
37257 + 0x0t 0x0t 0x0t 0x0t
37258 + 0x1t 0x0t 0x0t 0x0t
37259 + 0x2t 0x0t 0x0t 0x0t
37260 + 0x3t 0x0t 0x0t 0x0t
37261 + .end array-data
37263 + :array_1e
37264 + .array-data 0x4
37265 + 0x0t 0x0t 0x0t 0x0t
37266 + 0x1t 0x0t 0x0t 0x0t
37267 + 0x2t 0x0t 0x0t 0x0t
37268 + 0x3t 0x0t 0x0t 0x0t
37269 + 0x4t 0x0t 0x0t 0x0t
37270 + 0x5t 0x0t 0x0t 0x0t
37271 + 0x6t 0x0t 0x0t 0x0t
37272 + 0x7t 0x0t 0x0t 0x0t
37273 + 0x8t 0x0t 0x0t 0x0t
37274 + 0x9t 0x0t 0x0t 0x0t
37275 + 0xat 0x0t 0x0t 0x0t
37276 + 0xbt 0x0t 0x0t 0x0t
37277 + 0xct 0x0t 0x0t 0x0t
37278 + 0xdt 0x0t 0x0t 0x0t
37279 + 0xet 0x0t 0x0t 0x0t
37280 + 0xft 0x0t 0x0t 0x0t
37281 + .end array-data
37282 +.end method
37284 +.method public constructor <init>(Landroid/content/Context;)V
37285 + .registers 4
37287 + invoke-direct {p0, p1}, Landroid/telephony/TelephonyManager;-><init>(Landroid/content/Context;)V
37289 + iput-object p1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37291 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
37293 + const-string/jumbo v1, "privacy"
37295 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
37297 + move-result-object v1
37299 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
37301 + move-result-object v1
37303 + invoke-direct {v0, p1, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
37305 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37307 + return-void
37308 +.end method
37310 +.method private getNetworkInfo()Ljava/lang/String;
37311 + .registers 8
37313 + const/4 v5, 0x0
37315 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37317 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37319 + move-result-object v1
37321 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37323 + move-result v2
37325 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37327 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37329 + move-result-object v6
37331 + if-eqz v6, :cond_25
37333 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
37335 + move-result v0
37337 + if-eqz v0, :cond_25
37339 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37341 + const/4 v3, 0x1
37343 + const-string/jumbo v4, "networkInfoCurrent"
37345 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37347 + const-string v5, ""
37349 + :goto_24
37350 + return-object v5
37352 + :cond_25
37353 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37355 + const/4 v3, 0x0
37357 + const-string/jumbo v4, "networkInfoCurrent"
37359 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37361 + goto :goto_24
37362 +.end method
37364 +.method private getSimInfo()Ljava/lang/String;
37365 + .registers 8
37367 + const/4 v5, 0x0
37369 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37371 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37373 + move-result-object v1
37375 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37377 + move-result v2
37379 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37381 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37383 + move-result-object v6
37385 + if-eqz v6, :cond_25
37387 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimInfoSetting()B
37389 + move-result v0
37391 + if-eqz v0, :cond_25
37393 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37395 + const/4 v3, 0x1
37397 + const-string/jumbo v4, "networkInfoSIM"
37399 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37401 + const-string v5, ""
37403 + :goto_24
37404 + return-object v5
37406 + :cond_25
37407 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37409 + const/4 v3, 0x0
37411 + const-string/jumbo v4, "networkInfoSIM"
37413 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37415 + goto :goto_24
37416 +.end method
37419 +# virtual methods
37420 +.method public getAllCellInfo()Ljava/util/List;
37421 + .registers 6
37422 + .annotation system Ldalvik/annotation/Signature;
37423 + value = {
37424 + "()",
37425 + "Ljava/util/List",
37426 + "<",
37427 + "Landroid/telephony/CellInfo;",
37428 + ">;"
37430 + .end annotation
37432 + iget-object v2, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37434 + iget-object v3, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37436 + invoke-virtual {v3}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37438 + move-result-object v3
37440 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37442 + move-result v4
37444 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37446 + move-result-object v1
37448 + const/4 v0, 0x0
37450 + if-eqz v1, :cond_1f
37452 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37454 + move-result v2
37456 + const/4 v3, 0x1
37458 + if-ne v2, v3, :cond_20
37460 + new-instance v0, Ljava/util/ArrayList;
37462 + invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
37464 + :cond_1f
37465 + :goto_1f
37466 + return-object v0
37468 + :cond_20
37469 + invoke-virtual {v1}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37471 + move-result v2
37473 + if-eqz v2, :cond_2c
37475 + new-instance v0, Ljava/util/ArrayList;
37477 + invoke-direct {v0}, Ljava/util/ArrayList;-><init>()V
37479 + goto :goto_1f
37481 + :cond_2c
37482 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getAllCellInfo()Ljava/util/List;
37484 + move-result-object v0
37486 + goto :goto_1f
37487 +.end method
37489 +.method public getCellLocation()Landroid/telephony/CellLocation;
37490 + .registers 10
37492 + const/4 v7, 0x0
37494 + :try_start_1
37495 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37497 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37499 + move-result-object v1
37501 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37503 + move-result v2
37505 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37507 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37509 + move-result-object v6
37511 + if-eqz v6, :cond_2c
37513 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37515 + move-result v0
37517 + if-nez v0, :cond_1f
37519 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationGpsSetting()B
37521 + move-result v0
37523 + if-eqz v0, :cond_2c
37525 + :cond_1f
37526 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37528 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37530 + move-result v3
37532 + const-string v4, "locationNetwork"
37534 + const/4 v5, 0x0
37536 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37538 + :goto_2b
37539 + return-object v7
37541 + :cond_2c
37542 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37544 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37546 + move-result v3
37548 + const-string v4, "locationNetwork"
37550 + const/4 v5, 0x0
37552 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37554 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getCellLocation()Landroid/telephony/CellLocation;
37555 + :try_end_3b
37556 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_3b} :catch_3d
37558 + move-result-object v7
37560 + goto :goto_2b
37562 + :catch_3d
37563 + move-exception v8
37565 + goto :goto_2b
37566 +.end method
37568 +.method public getCompleteVoiceMailNumber()Ljava/lang/String;
37569 + .registers 9
37571 + :try_start_0
37572 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37574 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37576 + move-result-object v1
37578 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37580 + move-result v2
37582 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37584 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37586 + move-result-object v6
37588 + const-string v5, ""
37590 + if-eqz v6, :cond_2a
37592 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37594 + move-result v0
37596 + if-eqz v0, :cond_2a
37598 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
37600 + move-result-object v5
37602 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37604 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37606 + move-result v3
37608 + const-string v4, "line1Number"
37610 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37612 + :goto_29
37613 + return-object v5
37615 + :cond_2a
37616 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getCompleteVoiceMailNumber()Ljava/lang/String;
37618 + move-result-object v5
37620 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37622 + const/4 v3, 0x0
37624 + const-string v4, "line1Number"
37626 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37627 + :try_end_36
37628 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_36} :catch_37
37630 + goto :goto_29
37632 + :catch_37
37633 + move-exception v7
37635 + const/4 v5, 0x0
37637 + goto :goto_29
37638 +.end method
37640 +.method public getDeviceId()Ljava/lang/String;
37641 + .registers 8
37643 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37645 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37647 + move-result-object v1
37649 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37651 + move-result v2
37653 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37655 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37657 + move-result-object v6
37659 + if-eqz v6, :cond_28
37661 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
37663 + move-result v0
37665 + if-eqz v0, :cond_28
37667 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
37669 + move-result-object v5
37671 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37673 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
37675 + move-result v3
37677 + const-string v4, "deviceID"
37679 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37681 + :goto_27
37682 + return-object v5
37684 + :cond_28
37685 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceId()Ljava/lang/String;
37687 + move-result-object v5
37689 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37691 + const/4 v3, 0x0
37693 + const-string v4, "deviceID"
37695 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37697 + goto :goto_27
37698 +.end method
37700 +.method public getDeviceSoftwareVersion()Ljava/lang/String;
37701 + .registers 9
37703 + :try_start_0
37704 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37706 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37708 + move-result-object v1
37710 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37712 + move-result v2
37714 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37716 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37718 + move-result-object v6
37720 + const-string v5, ""
37722 + if-eqz v6, :cond_2a
37724 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
37726 + move-result v0
37728 + if-eqz v0, :cond_2a
37730 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceId()Ljava/lang/String;
37732 + move-result-object v5
37734 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37736 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getDeviceIdSetting()B
37738 + move-result v3
37740 + const-string v4, "deviceID"
37742 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37744 + :goto_29
37745 + return-object v5
37747 + :cond_2a
37748 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getDeviceSoftwareVersion()Ljava/lang/String;
37750 + move-result-object v5
37752 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37754 + const/4 v3, 0x0
37756 + const-string v4, "deviceID"
37758 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37759 + :try_end_36
37760 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_36} :catch_37
37762 + goto :goto_29
37764 + :catch_37
37765 + move-exception v7
37767 + const/4 v5, 0x0
37769 + goto :goto_29
37770 +.end method
37772 +.method public getIsimDomain()Ljava/lang/String;
37773 + .registers 2
37775 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
37777 + move-result-object v0
37779 + return-object v0
37780 +.end method
37782 +.method public getIsimImpi()Ljava/lang/String;
37783 + .registers 2
37785 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSubscriberId()Ljava/lang/String;
37787 + move-result-object v0
37789 + return-object v0
37790 +.end method
37792 +.method public getIsimImpu()[Ljava/lang/String;
37793 + .registers 10
37795 + const/4 v8, 0x0
37797 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37799 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37801 + move-result-object v1
37803 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37805 + move-result v2
37807 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37809 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37811 + move-result-object v6
37813 + const/4 v0, 0x1
37815 + new-array v7, v0, [Ljava/lang/String;
37817 + if-eqz v6, :cond_31
37819 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
37821 + move-result v0
37823 + if-eqz v0, :cond_31
37825 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
37827 + move-result-object v0
37829 + aput-object v0, v7, v8
37831 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37833 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
37835 + move-result v3
37837 + const-string/jumbo v4, "subscriberID"
37839 + aget-object v5, v7, v8
37841 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37843 + :goto_30
37844 + return-object v7
37846 + :cond_31
37847 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getIsimImpu()[Ljava/lang/String;
37849 + move-result-object v7
37851 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37853 + const-string/jumbo v4, "subscriberID"
37855 + aget-object v5, v7, v8
37857 + move v3, v8
37859 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37861 + goto :goto_30
37862 +.end method
37864 +.method public getLine1AlphaTag()Ljava/lang/String;
37865 + .registers 2
37867 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getLine1Number()Ljava/lang/String;
37869 + move-result-object v0
37871 + return-object v0
37872 +.end method
37874 +.method public getLine1Number()Ljava/lang/String;
37875 + .registers 8
37877 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37879 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37881 + move-result-object v1
37883 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37885 + move-result v2
37887 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37889 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37891 + move-result-object v6
37893 + if-eqz v6, :cond_28
37895 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37897 + move-result v0
37899 + if-eqz v0, :cond_28
37901 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
37903 + move-result-object v5
37905 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37907 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
37909 + move-result v3
37911 + const-string v4, "line1Number"
37913 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37915 + :goto_27
37916 + return-object v5
37918 + :cond_28
37919 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getLine1Number()Ljava/lang/String;
37921 + move-result-object v5
37923 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37925 + const/4 v3, 0x0
37927 + const-string v4, "line1Number"
37929 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
37931 + goto :goto_27
37932 +.end method
37934 +.method public getMsisdn()Ljava/lang/String;
37935 + .registers 2
37937 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSubscriberId()Ljava/lang/String;
37939 + move-result-object v0
37941 + return-object v0
37942 +.end method
37944 +.method public getNeighboringCellInfo()Ljava/util/List;
37945 + .registers 10
37946 + .annotation system Ldalvik/annotation/Signature;
37947 + value = {
37948 + "()",
37949 + "Ljava/util/List",
37950 + "<",
37951 + "Landroid/telephony/NeighboringCellInfo;",
37952 + ">;"
37954 + .end annotation
37956 + iget-object v6, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
37958 + iget-object v7, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
37960 + invoke-virtual {v7}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
37962 + move-result-object v7
37964 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
37966 + move-result v8
37968 + invoke-virtual {v6, v7, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
37970 + move-result-object v5
37972 + const/4 v3, 0x0
37974 + const-string v4, "[null]"
37976 + if-eqz v5, :cond_1c
37978 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37980 + move-result v6
37982 + const/4 v7, 0x1
37984 + if-ne v6, v7, :cond_1d
37986 + :cond_1c
37987 + :goto_1c
37988 + return-object v3
37990 + :cond_1d
37991 + invoke-virtual {v5}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
37993 + move-result v6
37995 + if-eqz v6, :cond_2b
37997 + new-instance v3, Ljava/util/ArrayList;
37999 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
38001 + const-string v4, "[empty list of cells]"
38003 + goto :goto_1c
38005 + :cond_2b
38006 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNeighboringCellInfo()Ljava/util/List;
38008 + move-result-object v3
38010 + const-string v0, ""
38012 + invoke-interface {v3}, Ljava/util/List;->iterator()Ljava/util/Iterator;
38014 + move-result-object v2
38016 + :goto_35
38017 + invoke-interface {v2}, Ljava/util/Iterator;->hasNext()Z
38019 + move-result v6
38021 + if-eqz v6, :cond_5f
38023 + invoke-interface {v2}, Ljava/util/Iterator;->next()Ljava/lang/Object;
38025 + move-result-object v1
38027 + check-cast v1, Landroid/telephony/NeighboringCellInfo;
38029 + new-instance v6, Ljava/lang/StringBuilder;
38031 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
38033 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
38035 + move-result-object v6
38037 + const-string v7, "\t"
38039 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
38041 + move-result-object v6
38043 + invoke-virtual {v6, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
38045 + move-result-object v6
38047 + const-string v7, "\n"
38049 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
38051 + move-result-object v6
38053 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
38055 + move-result-object v0
38057 + goto :goto_35
38059 + :cond_5f
38060 + new-instance v6, Ljava/lang/StringBuilder;
38062 + invoke-direct {v6}, Ljava/lang/StringBuilder;-><init>()V
38064 + const-string v7, "[real value]:\n"
38066 + invoke-virtual {v6, v7}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
38068 + move-result-object v6
38070 + invoke-virtual {v6, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
38072 + move-result-object v6
38074 + invoke-virtual {v6}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
38076 + move-result-object v4
38078 + goto :goto_1c
38079 +.end method
38081 +.method public getNetworkCountryIso()Ljava/lang/String;
38082 + .registers 2
38084 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
38086 + move-result-object v0
38088 + if-nez v0, :cond_a
38090 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkCountryIso()Ljava/lang/String;
38092 + move-result-object v0
38094 + :cond_a
38095 + return-object v0
38096 +.end method
38098 +.method public getNetworkOperator()Ljava/lang/String;
38099 + .registers 2
38101 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
38103 + move-result-object v0
38105 + if-nez v0, :cond_a
38107 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperator()Ljava/lang/String;
38109 + move-result-object v0
38111 + :cond_a
38112 + return-object v0
38113 +.end method
38115 +.method public getNetworkOperatorName()Ljava/lang/String;
38116 + .registers 2
38118 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
38120 + move-result-object v0
38122 + if-nez v0, :cond_a
38124 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkOperatorName()Ljava/lang/String;
38126 + move-result-object v0
38128 + :cond_a
38129 + return-object v0
38130 +.end method
38132 +.method public getNetworkType()I
38133 + .registers 7
38135 + const/4 v5, 0x0
38137 + :try_start_1
38138 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
38140 + move-result-object v1
38142 + sget-object v3, Landroid/privacy/surrogate/PrivacyTelephonyManager;->NETWORK_TYPES:[I
38144 + const/4 v4, 0x0
38146 + aget v2, v3, v4
38148 + if-nez v1, :cond_10
38150 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getNetworkType()I
38151 + :try_end_f
38152 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_f} :catch_11
38154 + move-result v2
38156 + :cond_10
38157 + :goto_10
38158 + return v2
38160 + :catch_11
38161 + move-exception v0
38163 + sget-object v3, Landroid/privacy/surrogate/PrivacyTelephonyManager;->NETWORK_TYPES:[I
38165 + aget v2, v3, v5
38167 + goto :goto_10
38168 +.end method
38170 +.method public getPhoneType()I
38171 + .registers 5
38173 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getNetworkInfo()Ljava/lang/String;
38175 + move-result-object v0
38177 + sget-object v2, Landroid/privacy/surrogate/PrivacyTelephonyManager;->PHONE_TYPES:[I
38179 + const/4 v3, 0x0
38181 + aget v1, v2, v3
38183 + if-nez v0, :cond_f
38185 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getPhoneType()I
38187 + move-result v1
38189 + :cond_f
38190 + return v1
38191 +.end method
38193 +.method public getSimCountryIso()Ljava/lang/String;
38194 + .registers 2
38196 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
38198 + move-result-object v0
38200 + if-nez v0, :cond_a
38202 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimCountryIso()Ljava/lang/String;
38204 + move-result-object v0
38206 + :cond_a
38207 + return-object v0
38208 +.end method
38210 +.method public getSimOperator()Ljava/lang/String;
38211 + .registers 2
38213 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
38215 + move-result-object v0
38217 + if-nez v0, :cond_a
38219 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperator()Ljava/lang/String;
38221 + move-result-object v0
38223 + :cond_a
38224 + return-object v0
38225 +.end method
38227 +.method public getSimOperatorName()Ljava/lang/String;
38228 + .registers 2
38230 + invoke-direct {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getSimInfo()Ljava/lang/String;
38232 + move-result-object v0
38234 + if-nez v0, :cond_a
38236 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimOperatorName()Ljava/lang/String;
38238 + move-result-object v0
38240 + :cond_a
38241 + return-object v0
38242 +.end method
38244 +.method public getSimSerialNumber()Ljava/lang/String;
38245 + .registers 8
38247 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38249 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38251 + move-result-object v1
38253 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38255 + move-result v2
38257 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38259 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38261 + move-result-object v6
38263 + if-eqz v6, :cond_29
38265 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
38267 + move-result v0
38269 + if-eqz v0, :cond_29
38271 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumber()Ljava/lang/String;
38273 + move-result-object v5
38275 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38277 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSimSerialNumberSetting()B
38279 + move-result v3
38281 + const-string/jumbo v4, "simSerial"
38283 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38285 + :goto_28
38286 + return-object v5
38288 + :cond_29
38289 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSimSerialNumber()Ljava/lang/String;
38291 + move-result-object v5
38293 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38295 + const/4 v3, 0x0
38297 + const-string/jumbo v4, "simSerial"
38299 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38301 + goto :goto_28
38302 +.end method
38304 +.method public getSubscriberId()Ljava/lang/String;
38305 + .registers 8
38307 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38309 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38311 + move-result-object v1
38313 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38315 + move-result v2
38317 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38319 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38321 + move-result-object v6
38323 + if-eqz v6, :cond_29
38325 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
38327 + move-result v0
38329 + if-eqz v0, :cond_29
38331 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberId()Ljava/lang/String;
38333 + move-result-object v5
38335 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38337 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getSubscriberIdSetting()B
38339 + move-result v3
38341 + const-string/jumbo v4, "subscriberID"
38343 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38345 + :goto_28
38346 + return-object v5
38348 + :cond_29
38349 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getSubscriberId()Ljava/lang/String;
38351 + move-result-object v5
38353 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38355 + const/4 v3, 0x0
38357 + const-string/jumbo v4, "subscriberID"
38359 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38361 + goto :goto_28
38362 +.end method
38364 +.method public getVoiceMailAlphaTag()Ljava/lang/String;
38365 + .registers 2
38367 + invoke-virtual {p0}, Landroid/privacy/surrogate/PrivacyTelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
38369 + move-result-object v0
38371 + return-object v0
38372 +.end method
38374 +.method public getVoiceMailNumber()Ljava/lang/String;
38375 + .registers 8
38377 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38379 + invoke-virtual {v0}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38381 + move-result-object v1
38383 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38385 + move-result v2
38387 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38389 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38391 + move-result-object v6
38393 + if-eqz v6, :cond_28
38395 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
38397 + move-result v0
38399 + if-eqz v0, :cond_28
38401 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1Number()Ljava/lang/String;
38403 + move-result-object v5
38405 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38407 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLine1NumberSetting()B
38409 + move-result v3
38411 + const-string v4, "line1Number"
38413 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38415 + :goto_27
38416 + return-object v5
38418 + :cond_28
38419 + invoke-super {p0}, Landroid/telephony/TelephonyManager;->getVoiceMailNumber()Ljava/lang/String;
38421 + move-result-object v5
38423 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38425 + const/4 v3, 0x0
38427 + const-string v4, "line1Number"
38429 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38431 + goto :goto_27
38432 +.end method
38434 +.method public listen(Landroid/telephony/PhoneStateListener;I)V
38435 + .registers 5
38437 + and-int/lit8 v1, p2, 0x10
38439 + if-nez v1, :cond_8
38441 + and-int/lit8 v1, p2, 0x20
38443 + if-eqz v1, :cond_29
38445 + :cond_8
38446 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38448 + if-eqz v1, :cond_27
38450 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38452 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38454 + move-result-object v0
38456 + :goto_12
38457 + if-eqz v0, :cond_1c
38459 + invoke-virtual {p1, v0}, Landroid/telephony/PhoneStateListener;->setPackageName(Ljava/lang/String;)V
38461 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyTelephonyManager;->context:Landroid/content/Context;
38463 + invoke-virtual {p1, v1}, Landroid/telephony/PhoneStateListener;->setContext(Landroid/content/Context;)V
38465 + :cond_1c
38466 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38468 + move-result v1
38470 + invoke-virtual {p1, v1}, Landroid/telephony/PhoneStateListener;->setUid(I)V
38472 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
38474 + :goto_26
38475 + return-void
38477 + :cond_27
38478 + const/4 v0, 0x0
38480 + goto :goto_12
38482 + :cond_29
38483 + invoke-super {p0, p1, p2}, Landroid/telephony/TelephonyManager;->listen(Landroid/telephony/PhoneStateListener;I)V
38485 + goto :goto_26
38486 +.end method
38487 diff -Npru stock-framework/smali/android/privacy/surrogate/PrivacyWifiManager.smali ext-framework/smali/android/privacy/surrogate/PrivacyWifiManager.smali
38488 --- stock-framework/smali/android/privacy/surrogate/PrivacyWifiManager.smali 1969-12-31 18:00:00.000000000 -0600
38489 +++ ext-framework/smali/android/privacy/surrogate/PrivacyWifiManager.smali 2012-11-02 22:30:49.115878176 -0500
38490 @@ -0,0 +1,1097 @@
38491 +.class public Landroid/privacy/surrogate/PrivacyWifiManager;
38492 +.super Landroid/net/wifi/WifiManager;
38493 +.source "PrivacyWifiManager.java"
38496 +# static fields
38497 +.field private static final P_TAG:Ljava/lang/String; = "PrivacyWifiManager"
38500 +# instance fields
38501 +.field private context:Landroid/content/Context;
38503 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
38506 +# direct methods
38507 +.method public constructor <init>(Landroid/net/wifi/IWifiManager;Landroid/os/Handler;Landroid/content/Context;)V
38508 + .registers 6
38510 + invoke-direct {p0, p1, p2}, Landroid/net/wifi/WifiManager;-><init>(Landroid/net/wifi/IWifiManager;Landroid/os/Handler;)V
38512 + iput-object p3, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38514 + new-instance v0, Landroid/privacy/PrivacySettingsManager;
38516 + const-string/jumbo v1, "privacy"
38518 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
38520 + move-result-object v1
38522 + invoke-static {v1}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
38524 + move-result-object v1
38526 + invoke-direct {v0, p3, v1}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
38528 + iput-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38530 + return-void
38531 +.end method
38534 +# virtual methods
38535 +.method public getConfigFile()Ljava/lang/String;
38536 + .registers 9
38538 + const/4 v2, -0x1
38540 + const/4 v5, 0x0
38542 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38544 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38546 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38548 + move-result-object v1
38550 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38552 + move-result v3
38554 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38556 + move-result-object v7
38558 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38560 + if-eqz v0, :cond_31
38562 + if-eqz v7, :cond_31
38564 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38566 + move-result v0
38568 + if-eqz v0, :cond_31
38570 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38572 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38574 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38576 + move-result-object v1
38578 + const/4 v3, 0x1
38580 + const-string/jumbo v4, "wifiInfo"
38582 + move-object v6, v5
38584 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38586 + const-string v0, ""
38588 + :goto_30
38589 + return-object v0
38591 + :cond_31
38592 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38594 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38596 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38598 + move-result-object v1
38600 + const/4 v3, 0x0
38602 + const-string/jumbo v4, "wifiInfo"
38604 + move-object v6, v5
38606 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38608 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getConfigFile()Ljava/lang/String;
38610 + move-result-object v0
38612 + goto :goto_30
38613 +.end method
38615 +.method public getConfiguredNetworks()Ljava/util/List;
38616 + .registers 10
38617 + .annotation system Ldalvik/annotation/Signature;
38618 + value = {
38619 + "()",
38620 + "Ljava/util/List",
38621 + "<",
38622 + "Landroid/net/wifi/WifiConfiguration;",
38623 + ">;"
38625 + .end annotation
38627 + const/4 v2, -0x1
38629 + const/4 v5, 0x0
38631 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38633 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38635 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38637 + move-result-object v1
38639 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38641 + move-result v3
38643 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38645 + move-result-object v8
38647 + new-instance v7, Ljava/util/ArrayList;
38649 + invoke-direct {v7}, Ljava/util/ArrayList;-><init>()V
38651 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38653 + if-eqz v0, :cond_34
38655 + if-eqz v8, :cond_34
38657 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38659 + move-result v0
38661 + if-eqz v0, :cond_34
38663 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38665 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38667 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38669 + move-result-object v1
38671 + const/4 v3, 0x1
38673 + const-string/jumbo v4, "wifiInfo"
38675 + move-object v6, v5
38677 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38679 + :goto_33
38680 + return-object v7
38682 + :cond_34
38683 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38685 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38687 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38689 + move-result-object v1
38691 + const/4 v3, 0x0
38693 + const-string/jumbo v4, "wifiInfo"
38695 + move-object v6, v5
38697 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38699 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getConfiguredNetworks()Ljava/util/List;
38701 + move-result-object v7
38703 + goto :goto_33
38704 +.end method
38706 +.method public getConnectionInfo()Landroid/net/wifi/WifiInfo;
38707 + .registers 10
38709 + const/4 v3, 0x1
38711 + const/4 v2, -0x1
38713 + const/4 v5, 0x0
38715 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38717 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38719 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38721 + move-result-object v1
38723 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38725 + move-result v4
38727 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38729 + move-result-object v8
38731 + new-instance v7, Landroid/net/wifi/WifiInfo;
38733 + invoke-direct {v7, v3}, Landroid/net/wifi/WifiInfo;-><init>(Z)V
38735 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38737 + if-eqz v0, :cond_34
38739 + if-eqz v8, :cond_34
38741 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38743 + move-result v0
38745 + if-eqz v0, :cond_34
38747 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38749 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38751 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38753 + move-result-object v1
38755 + const-string/jumbo v4, "wifiInfo"
38757 + move-object v6, v5
38759 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38761 + :goto_33
38762 + return-object v7
38764 + :cond_34
38765 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38767 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38769 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38771 + move-result-object v1
38773 + const/4 v3, 0x0
38775 + const-string/jumbo v4, "wifiInfo"
38777 + move-object v6, v5
38779 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38781 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getConnectionInfo()Landroid/net/wifi/WifiInfo;
38783 + move-result-object v7
38785 + goto :goto_33
38786 +.end method
38788 +.method public getDhcpInfo()Landroid/net/DhcpInfo;
38789 + .registers 9
38791 + const/4 v2, -0x1
38793 + const/4 v5, 0x0
38795 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38797 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38799 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38801 + move-result-object v1
38803 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38805 + move-result v3
38807 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38809 + move-result-object v7
38811 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38813 + if-eqz v0, :cond_34
38815 + if-eqz v7, :cond_34
38817 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38819 + move-result v0
38821 + if-eqz v0, :cond_34
38823 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38825 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38827 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38829 + move-result-object v1
38831 + const/4 v3, 0x1
38833 + const-string/jumbo v4, "wifiInfo"
38835 + move-object v6, v5
38837 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38839 + new-instance v0, Landroid/net/DhcpInfo;
38841 + invoke-direct {v0}, Landroid/net/DhcpInfo;-><init>()V
38843 + :goto_33
38844 + return-object v0
38846 + :cond_34
38847 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38849 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38851 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38853 + move-result-object v1
38855 + const/4 v3, 0x0
38857 + const-string/jumbo v4, "wifiInfo"
38859 + move-object v6, v5
38861 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38863 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getDhcpInfo()Landroid/net/DhcpInfo;
38865 + move-result-object v0
38867 + goto :goto_33
38868 +.end method
38870 +.method public getFrequencyBand()I
38871 + .registers 9
38873 + const/4 v2, -0x1
38875 + const/4 v5, 0x0
38877 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38879 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38881 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38883 + move-result-object v1
38885 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38887 + move-result v3
38889 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38891 + move-result-object v7
38893 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38895 + if-eqz v0, :cond_2f
38897 + if-eqz v7, :cond_2f
38899 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38901 + move-result v0
38903 + if-eqz v0, :cond_2f
38905 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38907 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38909 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38911 + move-result-object v1
38913 + const/4 v3, 0x1
38915 + const-string/jumbo v4, "wifiInfo"
38917 + move-object v6, v5
38919 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38921 + :goto_2e
38922 + return v2
38924 + :cond_2f
38925 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38927 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38929 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38931 + move-result-object v1
38933 + const/4 v3, 0x0
38935 + const-string/jumbo v4, "wifiInfo"
38937 + move-object v6, v5
38939 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
38941 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getFrequencyBand()I
38943 + move-result v2
38945 + goto :goto_2e
38946 +.end method
38948 +.method public getScanResults()Ljava/util/List;
38949 + .registers 10
38950 + .annotation system Ldalvik/annotation/Signature;
38951 + value = {
38952 + "()",
38953 + "Ljava/util/List",
38954 + "<",
38955 + "Landroid/net/wifi/ScanResult;",
38956 + ">;"
38958 + .end annotation
38960 + const/4 v2, -0x1
38962 + const/4 v5, 0x0
38964 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38966 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
38968 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
38970 + move-result-object v1
38972 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
38974 + move-result v3
38976 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
38978 + move-result-object v8
38980 + new-instance v7, Ljava/util/ArrayList;
38982 + invoke-direct {v7}, Ljava/util/ArrayList;-><init>()V
38984 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38986 + if-eqz v0, :cond_34
38988 + if-eqz v8, :cond_34
38990 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
38992 + move-result v0
38994 + if-eqz v0, :cond_34
38996 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
38998 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39000 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39002 + move-result-object v1
39004 + const/4 v3, 0x1
39006 + const-string/jumbo v4, "wifiInfo"
39008 + move-object v6, v5
39010 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39012 + :goto_33
39013 + return-object v7
39015 + :cond_34
39016 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39018 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39020 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39022 + move-result-object v1
39024 + const/4 v3, 0x0
39026 + const-string/jumbo v4, "wifiInfo"
39028 + move-object v6, v5
39030 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39032 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getScanResults()Ljava/util/List;
39034 + move-result-object v7
39036 + goto :goto_33
39037 +.end method
39039 +.method public getWifiApConfiguration()Landroid/net/wifi/WifiConfiguration;
39040 + .registers 9
39042 + const/4 v2, -0x1
39044 + const/4 v5, 0x0
39046 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39048 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39050 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39052 + move-result-object v1
39054 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39056 + move-result v3
39058 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39060 + move-result-object v7
39062 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39064 + if-eqz v0, :cond_34
39066 + if-eqz v7, :cond_34
39068 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
39070 + move-result v0
39072 + if-eqz v0, :cond_34
39074 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39076 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39078 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39080 + move-result-object v1
39082 + const/4 v3, 0x1
39084 + const-string/jumbo v4, "wifiInfo"
39086 + move-object v6, v5
39088 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39090 + new-instance v0, Landroid/net/wifi/WifiConfiguration;
39092 + invoke-direct {v0}, Landroid/net/wifi/WifiConfiguration;-><init>()V
39094 + :goto_33
39095 + return-object v0
39097 + :cond_34
39098 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39100 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39102 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39104 + move-result-object v1
39106 + const/4 v3, 0x0
39108 + const-string/jumbo v4, "wifiInfo"
39110 + move-object v6, v5
39112 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39114 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getWifiApConfiguration()Landroid/net/wifi/WifiConfiguration;
39116 + move-result-object v0
39118 + goto :goto_33
39119 +.end method
39121 +.method public getWifiState()I
39122 + .registers 9
39124 + const/4 v3, 0x1
39126 + const/4 v2, -0x1
39128 + const/4 v5, 0x0
39130 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39132 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39134 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39136 + move-result-object v1
39138 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39140 + move-result v4
39142 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39144 + move-result-object v7
39146 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39148 + if-eqz v0, :cond_30
39150 + if-eqz v7, :cond_30
39152 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
39154 + move-result v0
39156 + if-nez v0, :cond_30
39158 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39160 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39162 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39164 + move-result-object v1
39166 + const-string/jumbo v4, "wifiInfo"
39168 + move-object v6, v5
39170 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39172 + const/4 v0, 0x3
39174 + :goto_2f
39175 + return v0
39177 + :cond_30
39178 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39180 + if-eqz v0, :cond_4d
39182 + if-eqz v7, :cond_4d
39184 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
39186 + move-result v0
39188 + if-eqz v0, :cond_4d
39190 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39192 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39194 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39196 + move-result-object v1
39198 + const-string/jumbo v4, "wifiInfo"
39200 + move-object v6, v5
39202 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39204 + const/4 v0, 0x4
39206 + goto :goto_2f
39208 + :cond_4d
39209 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39211 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39213 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39215 + move-result-object v1
39217 + const/4 v3, 0x0
39219 + const-string/jumbo v4, "wifiInfo"
39221 + move-object v6, v5
39223 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39225 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->getWifiState()I
39227 + move-result v0
39229 + goto :goto_2f
39230 +.end method
39232 +.method public isWifiEnabled()Z
39233 + .registers 10
39235 + const/4 v8, 0x0
39237 + const/4 v3, 0x1
39239 + const/4 v2, -0x1
39241 + const/4 v5, 0x0
39243 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39245 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39247 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39249 + move-result-object v1
39251 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39253 + move-result v4
39255 + invoke-virtual {v0, v1, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39257 + move-result-object v7
39259 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39261 + if-eqz v0, :cond_30
39263 + if-eqz v7, :cond_30
39265 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getForceOnlineState()B
39267 + move-result v0
39269 + if-nez v0, :cond_30
39271 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39273 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39275 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39277 + move-result-object v1
39279 + const-string/jumbo v4, "wifiInfo"
39281 + move-object v6, v5
39283 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39285 + :goto_2f
39286 + return v3
39288 + :cond_30
39289 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39291 + if-eqz v0, :cond_4d
39293 + if-eqz v7, :cond_4d
39295 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
39297 + move-result v0
39299 + if-eqz v0, :cond_4d
39301 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39303 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39305 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39307 + move-result-object v1
39309 + const-string/jumbo v4, "wifiInfo"
39311 + move-object v6, v5
39313 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39315 + move v3, v8
39317 + goto :goto_2f
39319 + :cond_4d
39320 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39322 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39324 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39326 + move-result-object v1
39328 + const-string/jumbo v4, "wifiInfo"
39330 + move v3, v8
39332 + move-object v6, v5
39334 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39336 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->isWifiEnabled()Z
39338 + move-result v3
39340 + goto :goto_2f
39341 +.end method
39343 +.method public setWifiEnabled(Z)Z
39344 + .registers 11
39346 + const/4 v8, 0x0
39348 + const/4 v2, -0x1
39350 + const/4 v5, 0x0
39352 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39354 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39356 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39358 + move-result-object v1
39360 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39362 + move-result v3
39364 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39366 + move-result-object v7
39368 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39370 + if-eqz v0, :cond_31
39372 + if-eqz v7, :cond_31
39374 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getSwitchWifiStateSetting()B
39376 + move-result v0
39378 + if-eqz v0, :cond_31
39380 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39382 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39384 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39386 + move-result-object v1
39388 + const/4 v3, 0x1
39390 + const-string/jumbo v4, "switchWifiState"
39392 + move-object v6, v5
39394 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39396 + move v0, v8
39398 + :goto_30
39399 + return v0
39401 + :cond_31
39402 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39404 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39406 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39408 + move-result-object v1
39410 + const-string/jumbo v4, "switchWifiState"
39412 + move v3, v8
39414 + move-object v6, v5
39416 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39418 + invoke-super {p0, p1}, Landroid/net/wifi/WifiManager;->setWifiEnabled(Z)Z
39420 + move-result v0
39422 + goto :goto_30
39423 +.end method
39425 +.method public startScan()Z
39426 + .registers 10
39428 + const/4 v8, 0x0
39430 + const/4 v2, -0x1
39432 + const/4 v5, 0x0
39434 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39436 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39438 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39440 + move-result-object v1
39442 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39444 + move-result v3
39446 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39448 + move-result-object v7
39450 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39452 + if-eqz v0, :cond_31
39454 + if-eqz v7, :cond_31
39456 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
39458 + move-result v0
39460 + if-eqz v0, :cond_31
39462 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39464 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39466 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39468 + move-result-object v1
39470 + const/4 v3, 0x1
39472 + const-string/jumbo v4, "wifiInfo"
39474 + move-object v6, v5
39476 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39478 + move v0, v8
39480 + :goto_30
39481 + return v0
39483 + :cond_31
39484 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39486 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39488 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39490 + move-result-object v1
39492 + const-string/jumbo v4, "wifiInfo"
39494 + move v3, v8
39496 + move-object v6, v5
39498 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39500 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->startScan()Z
39502 + move-result v0
39504 + goto :goto_30
39505 +.end method
39507 +.method public startScanActive()Z
39508 + .registers 10
39510 + const/4 v8, 0x0
39512 + const/4 v2, -0x1
39514 + const/4 v5, 0x0
39516 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39518 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39520 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39522 + move-result-object v1
39524 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
39526 + move-result v3
39528 + invoke-virtual {v0, v1, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
39530 + move-result-object v7
39532 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39534 + if-eqz v0, :cond_31
39536 + if-eqz v7, :cond_31
39538 + invoke-virtual {v7}, Landroid/privacy/PrivacySettings;->getWifiInfoSetting()B
39540 + move-result v0
39542 + if-eqz v0, :cond_31
39544 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39546 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39548 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39550 + move-result-object v1
39552 + const/4 v3, 0x1
39554 + const-string/jumbo v4, "wifiInfo"
39556 + move-object v6, v5
39558 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39560 + move v0, v8
39562 + :goto_30
39563 + return v0
39565 + :cond_31
39566 + iget-object v0, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39568 + iget-object v1, p0, Landroid/privacy/surrogate/PrivacyWifiManager;->context:Landroid/content/Context;
39570 + invoke-virtual {v1}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
39572 + move-result-object v1
39574 + const-string/jumbo v4, "wifiInfo"
39576 + move v3, v8
39578 + move-object v6, v5
39580 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39582 + invoke-super {p0}, Landroid/net/wifi/WifiManager;->startScanActive()Z
39584 + move-result v0
39586 + goto :goto_30
39587 +.end method
39588 diff -Npru stock-framework/smali/android/provider/Settings$Secure.smali ext-framework/smali/android/provider/Settings$Secure.smali
39589 --- stock-framework/smali/android/provider/Settings$Secure.smali 2012-11-02 22:31:09.335978440 -0500
39590 +++ ext-framework/smali/android/provider/Settings$Secure.smali 2012-11-02 22:30:49.179878493 -0500
39591 @@ -292,6 +292,8 @@
39593 .field public static final PREFERRED_TTY_MODE:Ljava/lang/String; = "preferred_tty_mode"
39595 +.field private static final PRIVACY_TAG:Ljava/lang/String; = "PM,SecureSettings"
39597 .field public static final READ_EXTERNAL_STORAGE_ENFORCED_DEFAULT:Ljava/lang/String; = "read_external_storage_enforced_default"
39599 .field public static final REBOOT_INTERVAL:Ljava/lang/String; = "reboot_interval"
39600 @@ -567,6 +569,14 @@
39602 .field public static final WTF_IS_FATAL:Ljava/lang/String; = "wtf_is_fatal"
39604 +.field private static context:Landroid/content/Context;
39606 +.field private static mPm:Landroid/content/pm/IPackageManager;
39608 +.field private static pSetMan:Landroid/privacy/PrivacySettingsManager;
39610 +.field private static privacyMode:Z
39612 .field private static sIsSystemProcess:Z
39614 .field private static sLockSettings:Lcom/android/internal/widget/ILockSettings;
39615 @@ -582,6 +592,8 @@
39617 const/4 v3, 0x3
39619 + const/4 v2, 0x0
39621 sput-object v0, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
39623 sput-object v0, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
39624 @@ -610,6 +622,8 @@
39626 invoke-virtual {v0, v1}, Ljava/util/HashSet;->add(Ljava/lang/Object;)Z
39628 + sput-boolean v2, Landroid/provider/Settings$Secure;->privacyMode:Z
39630 const-string v0, "content://settings/secure"
39632 invoke-static {v0}, Landroid/net/Uri;->parse(Ljava/lang/String;)Landroid/net/Uri;
39633 @@ -622,11 +636,9 @@
39635 new-array v0, v0, [Ljava/lang/String;
39637 - const/4 v1, 0x0
39639 - const-string v2, "adb_enabled"
39640 + const-string v1, "adb_enabled"
39642 - aput-object v2, v0, v1
39643 + aput-object v1, v0, v2
39645 const/4 v1, 0x1
39647 @@ -1083,126 +1095,430 @@
39648 goto :goto_a
39649 .end method
39651 +.method private static getPackageName()[Ljava/lang/String;
39652 + .registers 5
39654 + :try_start_0
39655 + sget-object v3, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39657 + if-eqz v3, :cond_f
39659 + invoke-static {}, Landroid/os/Process;->myUid()I
39661 + move-result v2
39663 + sget-object v3, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39665 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
39667 + move-result-object v1
39669 + :goto_e
39670 + return-object v1
39672 + :cond_f
39673 + const-string/jumbo v3, "package"
39675 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
39677 + move-result-object v3
39679 + invoke-static {v3}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
39681 + move-result-object v3
39683 + sput-object v3, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39685 + invoke-static {}, Landroid/os/Process;->myUid()I
39687 + move-result v2
39689 + sget-object v3, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39691 + invoke-interface {v3, v2}, Landroid/content/pm/IPackageManager;->getPackagesForUid(I)[Ljava/lang/String;
39692 + :try_end_25
39693 + .catch Ljava/lang/Exception; {:try_start_0 .. :try_end_25} :catch_27
39695 + move-result-object v1
39697 + goto :goto_e
39699 + :catch_27
39700 + move-exception v0
39702 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
39704 + const-string v3, "PM,SecureSettings"
39706 + const-string/jumbo v4, "something went wrong with getting package name"
39708 + invoke-static {v3, v4}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
39710 + const/4 v1, 0x0
39712 + goto :goto_e
39713 +.end method
39715 .method public static declared-synchronized getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
39716 - .registers 7
39717 + .registers 22
39719 - const-class v1, Landroid/provider/Settings$Secure;
39720 + const-class v19, Landroid/provider/Settings$Secure;
39722 - monitor-enter v1
39723 + monitor-enter v19
39725 :try_start_3
39726 - sget-object v0, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
39727 + sget-object v2, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
39729 - if-nez v0, :cond_15
39730 + if-nez v2, :cond_15
39732 - new-instance v0, Landroid/provider/Settings$NameValueCache;
39733 + new-instance v2, Landroid/provider/Settings$NameValueCache;
39735 - const-string/jumbo v2, "sys.settings_secure_version"
39736 + const-string/jumbo v3, "sys.settings_secure_version"
39738 - sget-object v3, Landroid/provider/Settings$Secure;->CONTENT_URI:Landroid/net/Uri;
39739 + sget-object v4, Landroid/provider/Settings$Secure;->CONTENT_URI:Landroid/net/Uri;
39741 - const-string v4, "GET_secure"
39742 + const-string v5, "GET_secure"
39744 - invoke-direct {v0, v2, v3, v4}, Landroid/provider/Settings$NameValueCache;-><init>(Ljava/lang/String;Landroid/net/Uri;Ljava/lang/String;)V
39745 + invoke-direct {v2, v3, v4, v5}, Landroid/provider/Settings$NameValueCache;-><init>(Ljava/lang/String;Landroid/net/Uri;Ljava/lang/String;)V
39747 - sput-object v0, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
39748 + sput-object v2, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
39750 :cond_15
39751 - sget-object v0, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
39752 + const-string v2, "android_id"
39754 - if-nez v0, :cond_30
39755 + move-object/from16 v0, p1
39757 - const-string v0, "lock_settings"
39758 + invoke-virtual {v0, v2}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
39760 - invoke-static {v0}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
39761 + move-result v2
39763 - move-result-object v0
39764 + if-eqz v2, :cond_d0
39766 - invoke-static {v0}, Lcom/android/internal/widget/ILockSettings$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/widget/ILockSettings;
39767 + invoke-static {}, Landroid/provider/Settings$Secure;->initiate()V
39768 + :try_end_22
39769 + .catchall {:try_start_3 .. :try_end_22} :catchall_119
39771 - move-result-object v0
39772 + :try_start_22
39773 + sget-object v2, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39775 - sput-object v0, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
39776 + if-nez v2, :cond_3a
39778 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
39780 + sget-object v3, Landroid/provider/Settings$Secure;->context:Landroid/content/Context;
39782 + const-string/jumbo v4, "privacy"
39784 + invoke-static {v4}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
39786 + move-result-object v4
39788 + invoke-static {v4}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
39790 + move-result-object v4
39792 + invoke-direct {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
39794 + sput-object v2, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39796 + :cond_3a
39797 + sget-object v2, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39799 + if-nez v2, :cond_4b
39801 + const-string/jumbo v2, "package"
39803 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
39805 + move-result-object v2
39807 + invoke-static {v2}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
39809 + move-result-object v2
39811 + sput-object v2, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
39813 + :cond_4b
39814 + const/16 v18, 0x0
39816 + invoke-static {}, Landroid/provider/Settings$Secure;->getPackageName()[Ljava/lang/String;
39818 + move-result-object v17
39820 + if-eqz v17, :cond_be
39822 + move-object/from16 v0, v17
39824 + array-length v2, v0
39826 + if-lez v2, :cond_be
39828 + const/16 v16, 0x0
39830 + :goto_5a
39831 + move-object/from16 v0, v17
39833 + array-length v2, v0
39835 + move/from16 v0, v16
39837 + if-ge v0, v2, :cond_d0
39839 + sget-object v2, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39841 + aget-object v3, v17, v16
39843 + invoke-virtual {v2, v3}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;)Landroid/privacy/PrivacySettings;
39845 + move-result-object v18
39847 + if-eqz v18, :cond_9e
39849 + invoke-virtual/range {v18 .. v18}, Landroid/privacy/PrivacySettings;->getAndroidIdSetting()B
39851 + move-result v2
39853 + if-eqz v2, :cond_9e
39855 + invoke-virtual/range {v18 .. v18}, Landroid/privacy/PrivacySettings;->getAndroidID()Ljava/lang/String;
39857 + move-result-object v7
39859 + if-eqz v7, :cond_88
39861 + sget-object v2, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39863 + aget-object v3, v17, v16
39865 + const/4 v4, 0x0
39867 + invoke-virtual/range {v18 .. v18}, Landroid/privacy/PrivacySettings;->getAndroidIdSetting()B
39869 + move-result v5
39871 + const-string v6, "android_id"
39873 + const/4 v8, 0x0
39875 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39876 + :try_end_86
39877 + .catchall {:try_start_22 .. :try_end_86} :catchall_119
39878 + .catch Ljava/lang/Exception; {:try_start_22 .. :try_end_86} :catch_10d
39880 + :goto_86
39881 + monitor-exit v19
39883 + return-object v7
39885 + :cond_88
39886 + :try_start_88
39887 + sget-object v8, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39889 + aget-object v9, v17, v16
39891 + const/4 v10, 0x0
39893 + invoke-virtual/range {v18 .. v18}, Landroid/privacy/PrivacySettings;->getAndroidIdSetting()B
39895 + move-result v11
39897 + const-string v12, "android_id"
39899 + const-string/jumbo v13, "q4a5w896ay21dr46"
39901 + const/4 v14, 0x0
39903 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39905 + const-string/jumbo v7, "q4a5w896ay21dr46"
39907 + goto :goto_86
39909 + :cond_9e
39910 + move-object/from16 v0, v17
39912 + array-length v2, v0
39914 + add-int/lit8 v2, v2, -0x1
39916 + move/from16 v0, v16
39918 + if-ne v0, v2, :cond_b9
39920 + sget-object v8, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39922 + move-object/from16 v0, v17
39924 + array-length v2, v0
39926 + add-int/lit8 v2, v2, -0x1
39928 + aget-object v9, v17, v2
39930 + const/4 v10, 0x0
39932 + const/4 v11, 0x0
39934 + const-string v12, "android_id"
39936 + const/4 v13, 0x0
39938 + const/4 v14, 0x0
39940 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39942 + :cond_b9
39943 + const/16 v18, 0x0
39945 + add-int/lit8 v16, v16, 0x1
39947 + goto :goto_5a
39949 + :cond_be
39950 + sget-object v8, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
39952 + move-object/from16 v0, v17
39954 + array-length v2, v0
39956 + add-int/lit8 v2, v2, -0x1
39958 + aget-object v9, v17, v2
39960 + const/4 v10, 0x0
39962 + const/4 v11, 0x0
39964 + const-string v12, "android_id"
39966 + const/4 v13, 0x0
39968 + const/4 v14, 0x0
39970 + invoke-virtual/range {v8 .. v14}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
39971 + :try_end_d0
39972 + .catchall {:try_start_88 .. :try_end_d0} :catchall_119
39973 + .catch Ljava/lang/Exception; {:try_start_88 .. :try_end_d0} :catch_10d
39975 + :cond_d0
39976 + :goto_d0
39977 + :try_start_d0
39978 + sget-object v2, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
39980 + if-nez v2, :cond_eb
39982 + const-string v2, "lock_settings"
39984 + invoke-static {v2}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
39986 + move-result-object v2
39988 + invoke-static {v2}, Lcom/android/internal/widget/ILockSettings$Stub;->asInterface(Landroid/os/IBinder;)Lcom/android/internal/widget/ILockSettings;
39990 + move-result-object v2
39992 + sput-object v2, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
39994 invoke-static {}, Landroid/os/Process;->myUid()I
39996 - move-result v0
39997 + move-result v2
39999 - const/16 v2, 0x3e8
40000 + const/16 v3, 0x3e8
40002 - if-ne v0, v2, :cond_4e
40003 + if-ne v2, v3, :cond_11c
40005 - const/4 v0, 0x1
40006 + const/4 v2, 0x1
40008 - :goto_2e
40009 - sput-boolean v0, Landroid/provider/Settings$Secure;->sIsSystemProcess:Z
40010 + :goto_e9
40011 + sput-boolean v2, Landroid/provider/Settings$Secure;->sIsSystemProcess:Z
40013 - :cond_30
40014 - sget-object v0, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
40015 + :cond_eb
40016 + sget-object v2, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
40018 - if-eqz v0, :cond_51
40019 + if-eqz v2, :cond_11f
40021 - sget-boolean v0, Landroid/provider/Settings$Secure;->sIsSystemProcess:Z
40022 + sget-boolean v2, Landroid/provider/Settings$Secure;->sIsSystemProcess:Z
40024 - if-nez v0, :cond_51
40025 + if-nez v2, :cond_11f
40027 - sget-object v0, Landroid/provider/Settings$Secure;->MOVED_TO_LOCK_SETTINGS:Ljava/util/HashSet;
40028 + sget-object v2, Landroid/provider/Settings$Secure;->MOVED_TO_LOCK_SETTINGS:Ljava/util/HashSet;
40030 - invoke-virtual {v0, p1}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z
40031 - :try_end_3d
40032 - .catchall {:try_start_3 .. :try_end_3d} :catchall_58
40033 + move-object/from16 v0, p1
40035 - move-result v0
40036 + invoke-virtual {v2, v0}, Ljava/util/HashSet;->contains(Ljava/lang/Object;)Z
40037 + :try_end_fa
40038 + .catchall {:try_start_d0 .. :try_end_fa} :catchall_119
40040 - if-eqz v0, :cond_51
40041 + move-result v2
40043 + if-eqz v2, :cond_11f
40045 - :try_start_40
40046 - sget-object v0, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
40047 + :try_start_fd
40048 + sget-object v2, Landroid/provider/Settings$Secure;->sLockSettings:Lcom/android/internal/widget/ILockSettings;
40050 - const-string v2, "0"
40051 + const-string v3, "0"
40053 invoke-static {}, Landroid/os/UserId;->getCallingUserId()I
40055 - move-result v3
40056 + move-result v4
40058 - invoke-interface {v0, p1, v2, v3}, Lcom/android/internal/widget/ILockSettings;->getString(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
40059 - :try_end_4b
40060 - .catchall {:try_start_40 .. :try_end_4b} :catchall_58
40061 - .catch Landroid/os/RemoteException; {:try_start_40 .. :try_end_4b} :catch_50
40062 + move-object/from16 v0, p1
40064 - move-result-object v0
40065 + invoke-interface {v2, v0, v3, v4}, Lcom/android/internal/widget/ILockSettings;->getString(Ljava/lang/String;Ljava/lang/String;I)Ljava/lang/String;
40066 + :try_end_10a
40067 + .catchall {:try_start_fd .. :try_end_10a} :catchall_119
40068 + .catch Landroid/os/RemoteException; {:try_start_fd .. :try_end_10a} :catch_11e
40070 - :goto_4c
40071 - monitor-exit v1
40072 + move-result-object v7
40074 - return-object v0
40075 + goto/16 :goto_86
40077 - :cond_4e
40078 - const/4 v0, 0x0
40079 + :catch_10d
40080 + move-exception v15
40082 - goto :goto_2e
40083 + :try_start_10e
40084 + invoke-virtual {v15}, Ljava/lang/Exception;->printStackTrace()V
40086 - :catch_50
40087 - move-exception v0
40088 + const-string v2, "PM,SecureSettings"
40090 - :cond_51
40091 - :try_start_51
40092 - sget-object v0, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
40093 + const-string v3, "Got exception in getString()"
40095 - invoke-virtual {v0, p0, p1}, Landroid/provider/Settings$NameValueCache;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
40096 - :try_end_56
40097 - .catchall {:try_start_51 .. :try_end_56} :catchall_58
40098 + invoke-static {v2, v3}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
40099 + :try_end_118
40100 + .catchall {:try_start_10e .. :try_end_118} :catchall_119
40102 - move-result-object v0
40103 + goto :goto_d0
40105 - goto :goto_4c
40106 + :catchall_119
40107 + move-exception v2
40109 - :catchall_58
40110 - move-exception v0
40111 + monitor-exit v19
40113 + throw v2
40115 + :cond_11c
40116 + const/4 v2, 0x0
40118 + goto :goto_e9
40120 + :catch_11e
40121 + move-exception v2
40123 + :cond_11f
40124 + :try_start_11f
40125 + sget-object v2, Landroid/provider/Settings$Secure;->sNameValueCache:Landroid/provider/Settings$NameValueCache;
40127 + move-object/from16 v0, p0
40129 + move-object/from16 v1, p1
40131 - monitor-exit v1
40132 + invoke-virtual {v2, v0, v1}, Landroid/provider/Settings$NameValueCache;->getString(Landroid/content/ContentResolver;Ljava/lang/String;)Ljava/lang/String;
40133 + :try_end_128
40134 + .catchall {:try_start_11f .. :try_end_128} :catchall_119
40136 - throw v0
40137 + move-result-object v7
40139 + goto/16 :goto_86
40140 .end method
40142 .method public static getUriFor(Ljava/lang/String;)Landroid/net/Uri;
40143 @@ -1217,6 +1533,71 @@
40144 return-object v0
40145 .end method
40147 +.method private static initiate()V
40148 + .registers 4
40150 + const/4 v1, 0x0
40152 + :try_start_1
40153 + sput-object v1, Landroid/provider/Settings$Secure;->context:Landroid/content/Context;
40155 + new-instance v1, Landroid/privacy/PrivacySettingsManager;
40157 + sget-object v2, Landroid/provider/Settings$Secure;->context:Landroid/content/Context;
40159 + const-string/jumbo v3, "privacy"
40161 + invoke-static {v3}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
40163 + move-result-object v3
40165 + invoke-static {v3}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
40167 + move-result-object v3
40169 + invoke-direct {v1, v2, v3}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
40171 + sput-object v1, Landroid/provider/Settings$Secure;->pSetMan:Landroid/privacy/PrivacySettingsManager;
40173 + const-string/jumbo v1, "package"
40175 + invoke-static {v1}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
40177 + move-result-object v1
40179 + invoke-static {v1}, Landroid/content/pm/IPackageManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/content/pm/IPackageManager;
40181 + move-result-object v1
40183 + sput-object v1, Landroid/provider/Settings$Secure;->mPm:Landroid/content/pm/IPackageManager;
40185 + const/4 v1, 0x1
40187 + sput-boolean v1, Landroid/provider/Settings$Secure;->privacyMode:Z
40188 + :try_end_27
40189 + .catch Ljava/lang/Exception; {:try_start_1 .. :try_end_27} :catch_28
40191 + :goto_27
40192 + return-void
40194 + :catch_28
40195 + move-exception v0
40197 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
40199 + const-string v1, "PM,SecureSettings"
40201 + const-string v2, "Something went wrong with initalize variables"
40203 + invoke-static {v1, v2}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
40205 + const/4 v1, 0x0
40207 + sput-boolean v1, Landroid/provider/Settings$Secure;->privacyMode:Z
40209 + goto :goto_27
40210 +.end method
40212 .method public static final isLocationProviderEnabled(Landroid/content/ContentResolver;Ljava/lang/String;)Z
40213 .registers 4
40215 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener$1.smali ext-framework/smali/android/telephony/PhoneStateListener$1.smali
40216 --- stock-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-11-02 22:31:09.543979472 -0500
40217 +++ ext-framework/smali/android/telephony/PhoneStateListener$1.smali 2012-11-02 22:30:49.375879467 -0500
40218 @@ -64,23 +64,196 @@
40219 .end method
40221 .method public onCallStateChanged(ILjava/lang/String;)V
40222 - .registers 6
40223 + .registers 19
40225 - iget-object v0, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40226 + move-object/from16 v0, p0
40228 - iget-object v0, v0, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
40229 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40231 - const/16 v1, 0x20
40232 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40233 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
40235 - const/4 v2, 0x0
40236 + move-result-object v3
40238 - invoke-static {v0, v1, p1, v2, p2}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40239 + if-eqz v3, :cond_99
40241 - move-result-object v0
40242 + if-eqz p2, :cond_99
40244 - invoke-virtual {v0}, Landroid/os/Message;->sendToTarget()V
40245 + invoke-virtual/range {p2 .. p2}, Ljava/lang/String;->isEmpty()Z
40247 + move-result v3
40249 + if-nez v3, :cond_99
40251 + move-object/from16 v0, p0
40253 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40255 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40256 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
40258 + move-result-object v3
40260 + const-string/jumbo v4, "privacy"
40262 + invoke-virtual {v3, v4}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
40264 + move-result-object v2
40266 + check-cast v2, Landroid/privacy/PrivacySettingsManager;
40268 + move-object/from16 v0, p0
40270 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40272 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40273 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40275 + move-result-object v3
40277 + move-object/from16 v0, p0
40279 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40281 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40282 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40284 + move-result v4
40286 + invoke-virtual {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
40288 + move-result-object v8
40290 + if-eqz v8, :cond_6a
40292 + invoke-virtual {v8}, Landroid/privacy/PrivacySettings;->getIncomingCallsSetting()B
40294 + move-result v3
40296 + if-eqz v3, :cond_6a
40298 + const-string v7, ""
40300 + move-object/from16 v0, p0
40302 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40304 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
40306 + const/16 v4, 0x20
40308 + const/4 v5, 0x0
40310 + move/from16 v0, p1
40312 + invoke-static {v3, v4, v0, v5, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40314 + move-result-object v3
40316 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
40318 + move-object/from16 v0, p0
40320 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40322 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40323 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40325 + move-result-object v3
40327 + move-object/from16 v0, p0
40329 + iget-object v4, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40331 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40332 + invoke-static {v4}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40334 + move-result v4
40336 + const/4 v5, 0x1
40338 + const-string v6, "incomingCall"
40340 + invoke-virtual/range {v2 .. v8}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
40342 + :goto_69
40343 return-void
40345 + :cond_6a
40346 + move-object/from16 v0, p0
40348 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40350 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
40352 + const/16 v4, 0x20
40354 + const/4 v5, 0x0
40356 + move/from16 v0, p1
40358 + move-object/from16 v1, p2
40360 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40362 + move-result-object v3
40364 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
40366 + move-object/from16 v0, p0
40368 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40370 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40371 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40373 + move-result-object v10
40375 + move-object/from16 v0, p0
40377 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40379 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40380 + invoke-static {v3}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40382 + move-result v11
40384 + const/4 v12, 0x0
40386 + const-string v13, "incomingCall"
40388 + move-object v9, v2
40390 + move-object/from16 v14, p2
40392 + move-object v15, v8
40394 + invoke-virtual/range {v9 .. v15}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
40396 + goto :goto_69
40398 + :cond_99
40399 + move-object/from16 v0, p0
40401 + iget-object v3, v0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40403 + iget-object v3, v3, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
40405 + const/16 v4, 0x20
40407 + const/4 v5, 0x0
40409 + move/from16 v0, p1
40411 + move-object/from16 v1, p2
40413 + invoke-static {v3, v4, v0, v5, v1}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40415 + move-result-object v3
40417 + invoke-virtual {v3}, Landroid/os/Message;->sendToTarget()V
40419 + goto :goto_69
40420 .end method
40422 .method public onCellInfoChanged(Landroid/telephony/CellInfo;)V
40423 @@ -104,27 +277,124 @@
40424 .end method
40426 .method public onCellLocationChanged(Landroid/os/Bundle;)V
40427 - .registers 6
40428 + .registers 10
40430 + const/4 v5, 0x0
40432 const/4 v3, 0x0
40434 invoke-static {p1}, Landroid/telephony/CellLocation;->newFromBundle(Landroid/os/Bundle;)Landroid/telephony/CellLocation;
40436 + move-result-object v7
40438 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40440 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40441 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
40443 + move-result-object v1
40445 + if-eqz v1, :cond_4a
40447 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40449 + #getter for: Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40450 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
40452 + move-result-object v1
40454 + const-string/jumbo v2, "privacy"
40456 + invoke-virtual {v1, v2}, Landroid/content/Context;->getSystemService(Ljava/lang/String;)Ljava/lang/Object;
40458 move-result-object v0
40460 + check-cast v0, Landroid/privacy/PrivacySettingsManager;
40462 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40464 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40465 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40467 + move-result-object v1
40469 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40471 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40472 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40474 + move-result v2
40476 + invoke-virtual {v0, v1, v2}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
40478 + move-result-object v6
40480 + if-eqz v6, :cond_4b
40482 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
40484 + move-result v1
40486 + if-eqz v1, :cond_4b
40488 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40490 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40491 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40493 + move-result-object v1
40495 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40497 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40498 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40500 + move-result v2
40502 + invoke-virtual {v6}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
40504 + move-result v3
40506 + const-string v4, "locationNetwork"
40508 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
40510 + :cond_4a
40511 + :goto_4a
40512 + return-void
40514 + :cond_4b
40515 iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40517 iget-object v1, v1, Landroid/telephony/PhoneStateListener;->mHandler:Landroid/os/Handler;
40519 const/16 v2, 0x10
40521 - invoke-static {v1, v2, v3, v3, v0}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40522 + invoke-static {v1, v2, v3, v3, v7}, Landroid/os/Message;->obtain(Landroid/os/Handler;IIILjava/lang/Object;)Landroid/os/Message;
40524 move-result-object v1
40526 invoke-virtual {v1}, Landroid/os/Message;->sendToTarget()V
40528 - return-void
40529 + iget-object v1, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40531 + #getter for: Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40532 + invoke-static {v1}, Landroid/telephony/PhoneStateListener;->access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40534 + move-result-object v1
40536 + iget-object v2, p0, Landroid/telephony/PhoneStateListener$1;->this$0:Landroid/telephony/PhoneStateListener;
40538 + #getter for: Landroid/telephony/PhoneStateListener;->uid:I
40539 + invoke-static {v2}, Landroid/telephony/PhoneStateListener;->access$200(Landroid/telephony/PhoneStateListener;)I
40541 + move-result v2
40543 + const-string v4, "locationNetwork"
40545 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
40547 + goto :goto_4a
40548 .end method
40550 .method public onDataActivity(I)V
40551 diff -Npru stock-framework/smali/android/telephony/PhoneStateListener.smali ext-framework/smali/android/telephony/PhoneStateListener.smali
40552 --- stock-framework/smali/android/telephony/PhoneStateListener.smali 2012-11-02 22:31:08.503974315 -0500
40553 +++ ext-framework/smali/android/telephony/PhoneStateListener.smali 2012-11-02 22:30:48.343874353 -0500
40554 @@ -31,12 +31,20 @@
40556 .field public static final LISTEN_SIGNAL_STRENGTHS:I = 0x100
40558 +.field private static final TAG:Ljava/lang/String; = "PhoneStateListener"
40561 # instance fields
40562 .field callback:Lcom/android/internal/telephony/IPhoneStateListener;
40564 +.field private context:Landroid/content/Context;
40566 .field mHandler:Landroid/os/Handler;
40568 +.field private packageName:Ljava/lang/String;
40570 +.field private uid:I
40573 # direct methods
40574 .method public constructor <init>()V
40575 @@ -59,6 +67,30 @@
40576 return-void
40577 .end method
40579 +.method static synthetic access$000(Landroid/telephony/PhoneStateListener;)Landroid/content/Context;
40580 + .registers 2
40582 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40584 + return-object v0
40585 +.end method
40587 +.method static synthetic access$100(Landroid/telephony/PhoneStateListener;)Ljava/lang/String;
40588 + .registers 2
40590 + iget-object v0, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40592 + return-object v0
40593 +.end method
40595 +.method static synthetic access$200(Landroid/telephony/PhoneStateListener;)I
40596 + .registers 2
40598 + iget v0, p0, Landroid/telephony/PhoneStateListener;->uid:I
40600 + return v0
40601 +.end method
40604 # virtual methods
40605 .method public onCallForwardingIndicatorChanged(Z)V
40606 @@ -134,3 +166,27 @@
40608 return-void
40609 .end method
40611 +.method public setContext(Landroid/content/Context;)V
40612 + .registers 2
40614 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->context:Landroid/content/Context;
40616 + return-void
40617 +.end method
40619 +.method public setPackageName(Ljava/lang/String;)V
40620 + .registers 2
40622 + iput-object p1, p0, Landroid/telephony/PhoneStateListener;->packageName:Ljava/lang/String;
40624 + return-void
40625 +.end method
40627 +.method public setUid(I)V
40628 + .registers 2
40630 + iput p1, p0, Landroid/telephony/PhoneStateListener;->uid:I
40632 + return-void
40633 +.end method
40634 diff -Npru stock-framework/smali/android/telephony/ServiceState.smali ext-framework/smali/android/telephony/ServiceState.smali
40635 --- stock-framework/smali/android/telephony/ServiceState.smali 2012-11-02 22:31:09.543979472 -0500
40636 +++ ext-framework/smali/android/telephony/ServiceState.smali 2012-11-02 22:30:49.379879478 -0500
40637 @@ -668,48 +668,6 @@
40638 return-void
40639 .end method
40641 -.method private setNullState(I)V
40642 - .registers 5
40644 - const/4 v2, 0x0
40646 - const/4 v1, 0x0
40648 - const/4 v0, -0x1
40650 - iput p1, p0, Landroid/telephony/ServiceState;->mState:I
40652 - iput-boolean v1, p0, Landroid/telephony/ServiceState;->mRoaming:Z
40654 - iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorAlphaLong:Ljava/lang/String;
40656 - iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorAlphaShort:Ljava/lang/String;
40658 - iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorNumeric:Ljava/lang/String;
40660 - iput-boolean v1, p0, Landroid/telephony/ServiceState;->mIsManualNetworkSelection:Z
40662 - iput v1, p0, Landroid/telephony/ServiceState;->mRadioTechnology:I
40664 - iput-boolean v1, p0, Landroid/telephony/ServiceState;->mCssIndicator:Z
40666 - iput v0, p0, Landroid/telephony/ServiceState;->mNetworkId:I
40668 - iput v0, p0, Landroid/telephony/ServiceState;->mSystemId:I
40670 - iput v0, p0, Landroid/telephony/ServiceState;->mCdmaRoamingIndicator:I
40672 - iput v0, p0, Landroid/telephony/ServiceState;->mCdmaDefaultRoamingIndicator:I
40674 - iput v0, p0, Landroid/telephony/ServiceState;->mCdmaEriIconIndex:I
40676 - iput v0, p0, Landroid/telephony/ServiceState;->mCdmaEriIconMode:I
40678 - iput-boolean v1, p0, Landroid/telephony/ServiceState;->mIsEmergencyOnly:Z
40680 - return-void
40681 -.end method
40684 # virtual methods
40685 .method protected copyFrom(Landroid/telephony/ServiceState;)V
40686 @@ -1511,6 +1469,48 @@
40687 return-void
40688 .end method
40690 +.method setNullState(I)V
40691 + .registers 5
40693 + const/4 v2, 0x0
40695 + const/4 v1, 0x0
40697 + const/4 v0, -0x1
40699 + iput p1, p0, Landroid/telephony/ServiceState;->mState:I
40701 + iput-boolean v1, p0, Landroid/telephony/ServiceState;->mRoaming:Z
40703 + iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorAlphaLong:Ljava/lang/String;
40705 + iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorAlphaShort:Ljava/lang/String;
40707 + iput-object v2, p0, Landroid/telephony/ServiceState;->mOperatorNumeric:Ljava/lang/String;
40709 + iput-boolean v1, p0, Landroid/telephony/ServiceState;->mIsManualNetworkSelection:Z
40711 + iput v1, p0, Landroid/telephony/ServiceState;->mRadioTechnology:I
40713 + iput-boolean v1, p0, Landroid/telephony/ServiceState;->mCssIndicator:Z
40715 + iput v0, p0, Landroid/telephony/ServiceState;->mNetworkId:I
40717 + iput v0, p0, Landroid/telephony/ServiceState;->mSystemId:I
40719 + iput v0, p0, Landroid/telephony/ServiceState;->mCdmaRoamingIndicator:I
40721 + iput v0, p0, Landroid/telephony/ServiceState;->mCdmaDefaultRoamingIndicator:I
40723 + iput v0, p0, Landroid/telephony/ServiceState;->mCdmaEriIconIndex:I
40725 + iput v0, p0, Landroid/telephony/ServiceState;->mCdmaEriIconMode:I
40727 + iput-boolean v1, p0, Landroid/telephony/ServiceState;->mIsEmergencyOnly:Z
40729 + return-void
40730 +.end method
40732 .method public setOperatorAlphaLong(Ljava/lang/String;)V
40733 .registers 2
40735 @@ -1560,7 +1560,7 @@
40737 const/4 v0, 0x3
40739 - invoke-direct {p0, v0}, Landroid/telephony/ServiceState;->setNullState(I)V
40740 + invoke-virtual {p0, v0}, Landroid/telephony/ServiceState;->setNullState(I)V
40742 return-void
40743 .end method
40744 @@ -1570,7 +1570,7 @@
40746 const/4 v0, 0x1
40748 - invoke-direct {p0, v0}, Landroid/telephony/ServiceState;->setNullState(I)V
40749 + invoke-virtual {p0, v0}, Landroid/telephony/ServiceState;->setNullState(I)V
40751 return-void
40752 .end method
40753 diff -Npru stock-framework/smali/android/text/SpannableStringBuilder.smali ext-framework/smali/android/text/SpannableStringBuilder.smali
40754 --- stock-framework/smali/android/text/SpannableStringBuilder.smali 2012-11-02 22:31:09.595979737 -0500
40755 +++ ext-framework/smali/android/text/SpannableStringBuilder.smali 2012-11-02 22:30:49.423879701 -0500
40756 @@ -681,17 +681,17 @@
40758 const/4 v5, 0x1
40760 - if-ge v4, v5, :cond_18f
40761 + if-ge v4, v5, :cond_190
40763 new-instance v4, Ljava/lang/Exception;
40765 - const-string v5, "mGapLength < 1"
40766 + const-string/jumbo v5, "mGapLength < 1"
40768 invoke-direct {v4, v5}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
40770 invoke-virtual {v4}, Ljava/lang/Exception;->printStackTrace()V
40772 - :cond_18f
40773 + :cond_190
40774 move-object/from16 v0, p0
40776 iget-object v4, v0, Landroid/text/SpannableStringBuilder;->mText:[C
40777 @@ -706,7 +706,7 @@
40779 invoke-static {v0, v1, v2, v4, v3}, Landroid/text/TextUtils;->getChars(Ljava/lang/CharSequence;II[CI)V
40781 - if-lez v33, :cond_200
40782 + if-lez v33, :cond_201
40784 move-object/from16 v0, p0
40786 @@ -724,21 +724,21 @@
40788 array-length v5, v5
40790 - if-ne v4, v5, :cond_1fe
40791 + if-ne v4, v5, :cond_1ff
40793 const/4 v14, 0x1
40795 - :goto_1b1
40796 + :goto_1b2
40797 const/16 v30, 0x0
40799 - :goto_1b3
40800 + :goto_1b4
40801 move-object/from16 v0, p0
40803 iget v4, v0, Landroid/text/SpannableStringBuilder;->mSpanCount:I
40805 move/from16 v0, v30
40807 - if-ge v0, v4, :cond_200
40808 + if-ge v0, v4, :cond_201
40810 move-object/from16 v0, p0
40812 @@ -806,14 +806,14 @@
40814 add-int/lit8 v30, v30, 0x1
40816 - goto :goto_1b3
40817 + goto :goto_1b4
40819 - :cond_1fe
40820 + :cond_1ff
40821 const/4 v14, 0x0
40823 - goto :goto_1b1
40824 + goto :goto_1b2
40826 - :cond_200
40827 + :cond_201
40828 move-object/from16 v0, p0
40830 iget v4, v0, Landroid/text/SpannableStringBuilder;->mSpanCount:I
40831 @@ -826,7 +826,7 @@
40833 instance-of v4, v0, Landroid/text/Spanned;
40835 - if-eqz v4, :cond_26d
40836 + if-eqz v4, :cond_26e
40838 move-object/from16 v35, p3
40840 @@ -846,14 +846,14 @@
40842 const/16 v30, 0x0
40844 - :goto_220
40845 + :goto_221
40846 move-object/from16 v0, v36
40848 array-length v4, v0
40850 move/from16 v0, v30
40852 - if-ge v0, v4, :cond_26d
40853 + if-ge v0, v4, :cond_26e
40855 aget-object v4, v36, v30
40857 @@ -875,20 +875,20 @@
40859 move/from16 v1, p4
40861 - if-ge v0, v1, :cond_23f
40862 + if-ge v0, v1, :cond_240
40864 move/from16 v37, p4
40866 - :cond_23f
40867 + :cond_240
40868 move/from16 v0, v28
40870 move/from16 v1, p5
40872 - if-le v0, v1, :cond_247
40873 + if-le v0, v1, :cond_248
40875 move/from16 v28, p5
40877 - :cond_247
40878 + :cond_248
40879 aget-object v4, v36, v30
40881 move-object/from16 v0, p0
40882 @@ -897,7 +897,7 @@
40884 move-result v4
40886 - if-gez v4, :cond_26a
40887 + if-gez v4, :cond_26b
40889 const/16 v22, 0x0
40891 @@ -923,12 +923,12 @@
40893 invoke-direct/range {v21 .. v26}, Landroid/text/SpannableStringBuilder;->setSpan(ZLjava/lang/Object;III)V
40895 - :cond_26a
40896 + :cond_26b
40897 add-int/lit8 v30, v30, 0x1
40899 - goto :goto_220
40900 + goto :goto_221
40902 - :cond_26d
40903 + :cond_26e
40904 return-void
40905 .end method
40907 @@ -1500,20 +1500,20 @@
40909 const/4 v7, 0x1
40911 - if-ge v6, v7, :cond_3e
40912 + if-ge v6, v7, :cond_3f
40914 new-instance v6, Ljava/lang/Exception;
40916 - const-string v7, "mGapLength < 1"
40917 + const-string/jumbo v7, "mGapLength < 1"
40919 invoke-direct {v6, v7}, Ljava/lang/Exception;-><init>(Ljava/lang/String;)V
40921 invoke-virtual {v6}, Ljava/lang/Exception;->printStackTrace()V
40923 - :cond_3e
40924 + :cond_3f
40925 const/4 v2, 0x0
40927 - :goto_3f
40928 + :goto_40
40929 iget v6, p0, Landroid/text/SpannableStringBuilder;->mSpanCount:I
40931 if-ge v2, v6, :cond_e
40932 @@ -1524,7 +1524,7 @@
40934 iget v7, p0, Landroid/text/SpannableStringBuilder;->mGapStart:I
40936 - if-le v6, v7, :cond_52
40937 + if-le v6, v7, :cond_53
40939 iget-object v6, p0, Landroid/text/SpannableStringBuilder;->mSpanStarts:[I
40941 @@ -1534,14 +1534,14 @@
40943 aput v7, v6, v2
40945 - :cond_52
40946 + :cond_53
40947 iget-object v6, p0, Landroid/text/SpannableStringBuilder;->mSpanEnds:[I
40949 aget v6, v6, v2
40951 iget v7, p0, Landroid/text/SpannableStringBuilder;->mGapStart:I
40953 - if-le v6, v7, :cond_61
40954 + if-le v6, v7, :cond_62
40956 iget-object v6, p0, Landroid/text/SpannableStringBuilder;->mSpanEnds:[I
40958 @@ -1551,10 +1551,10 @@
40960 aput v7, v6, v2
40962 - :cond_61
40963 + :cond_62
40964 add-int/lit8 v2, v2, 0x1
40966 - goto :goto_3f
40967 + goto :goto_40
40968 .end method
40970 .method private sendAfterTextChanged([Landroid/text/TextWatcher;)V
40971 diff -Npru stock-framework/smali/android/view/ViewGroup.smali ext-framework/smali/android/view/ViewGroup.smali
40972 --- stock-framework/smali/android/view/ViewGroup.smali 2012-11-02 22:31:06.999966855 -0500
40973 +++ ext-framework/smali/android/view/ViewGroup.smali 2012-11-02 22:30:46.435864886 -0500
40974 @@ -3365,7 +3365,7 @@
40976 iget-object v4, p0, Landroid/view/ViewGroup;->mFocused:Landroid/view/View;
40978 - if-eqz v4, :cond_23
40979 + if-eqz v4, :cond_24
40981 invoke-static {p1}, Landroid/view/ViewGroup;->debugIndent(I)Ljava/lang/String;
40983 @@ -3379,7 +3379,7 @@
40985 move-result-object v4
40987 - const-string v5, "mFocused"
40988 + const-string/jumbo v5, "mFocused"
40990 invoke-virtual {v4, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
40992 @@ -3393,10 +3393,10 @@
40994 invoke-static {v4, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
40996 - :cond_23
40997 + :cond_24
40998 iget v4, p0, Landroid/view/ViewGroup;->mChildrenCount:I
41000 - if-eqz v4, :cond_44
41001 + if-eqz v4, :cond_45
41003 invoke-static {p1}, Landroid/view/ViewGroup;->debugIndent(I)Ljava/lang/String;
41005 @@ -3424,13 +3424,13 @@
41007 invoke-static {v4, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
41009 - :cond_44
41010 + :cond_45
41011 iget v1, p0, Landroid/view/ViewGroup;->mChildrenCount:I
41013 const/4 v2, 0x0
41015 - :goto_47
41016 - if-ge v2, v1, :cond_55
41017 + :goto_48
41018 + if-ge v2, v1, :cond_56
41020 iget-object v4, p0, Landroid/view/ViewGroup;->mChildren:[Landroid/view/View;
41022 @@ -3442,12 +3442,12 @@
41024 add-int/lit8 v2, v2, 0x1
41026 - goto :goto_47
41027 + goto :goto_48
41029 - :cond_55
41030 + :cond_56
41031 iget v4, p0, Landroid/view/ViewGroup;->mChildrenCount:I
41033 - if-eqz v4, :cond_76
41034 + if-eqz v4, :cond_77
41036 invoke-static {p1}, Landroid/view/ViewGroup;->debugIndent(I)Ljava/lang/String;
41038 @@ -3475,7 +3475,7 @@
41040 invoke-static {v4, v3}, Landroid/util/Log;->d(Ljava/lang/String;Ljava/lang/String;)I
41042 - :cond_76
41043 + :cond_77
41044 return-void
41045 .end method
41047 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/CDMAPhone.smali ext-framework/smali/com/android/internal/telephony/cdma/CDMAPhone.smali
41048 --- stock-framework/smali/com/android/internal/telephony/cdma/CDMAPhone.smali 2012-11-02 22:31:10.899986198 -0500
41049 +++ ext-framework/smali/com/android/internal/telephony/cdma/CDMAPhone.smali 2012-11-02 22:30:49.059877897 -0500
41050 @@ -3536,7 +3536,7 @@
41051 return-void
41052 .end method
41054 -.method notifyLocationChanged()V
41055 +.method public notifyLocationChanged()V
41056 .registers 2
41058 iget-object v0, p0, Lcom/android/internal/telephony/cdma/CDMAPhone;->mNotifier:Lcom/android/internal/telephony/PhoneNotifier;
41059 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/CdmaServiceStateTracker.smali ext-framework/smali/com/android/internal/telephony/cdma/CdmaServiceStateTracker.smali
41060 --- stock-framework/smali/com/android/internal/telephony/cdma/CdmaServiceStateTracker.smali 2012-11-02 22:31:10.939986394 -0500
41061 +++ ext-framework/smali/com/android/internal/telephony/cdma/CdmaServiceStateTracker.smali 2012-11-02 22:30:50.627885676 -0500
41062 @@ -46,6 +46,8 @@
41064 .field private mCdmaSSM:Lcom/android/internal/telephony/cdma/CdmaSubscriptionSourceManager;
41066 +.field private mContext:Landroid/content/Context;
41068 .field protected mCurPlmn:Ljava/lang/String;
41070 .field mCurrentOtaspMode:I
41071 @@ -102,6 +104,8 @@
41073 .field newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
41075 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
41077 .field phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
41080 @@ -261,7 +265,7 @@
41082 move-result v2
41084 - if-nez v2, :cond_116
41085 + if-nez v2, :cond_130
41087 move v2, v3
41089 @@ -369,12 +373,36 @@
41091 iput-boolean v3, p0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNeedToRegForRuimLoaded:Z
41093 + invoke-virtual {p1}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getContext()Landroid/content/Context;
41095 + move-result-object v2
41097 + iput-object v2, p0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mContext:Landroid/content/Context;
41099 + new-instance v2, Landroid/privacy/PrivacySettingsManager;
41101 + iget-object v3, p0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mContext:Landroid/content/Context;
41103 + const-string/jumbo v4, "privacy"
41105 + invoke-static {v4}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
41107 + move-result-object v4
41109 + invoke-static {v4}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
41111 + move-result-object v4
41113 + invoke-direct {v2, v3, v4}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
41115 + iput-object v2, p0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
41117 return-void
41119 - :cond_116
41120 + :cond_130
41121 move v2, v4
41123 - goto :goto_a5
41124 + goto/16 :goto_a5
41125 .end method
41127 .method static synthetic access$000(Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;)V
41128 @@ -3897,7 +3925,7 @@
41129 .end method
41131 .method public handleMessage(Landroid/os/Message;)V
41132 - .registers 22
41133 + .registers 24
41135 move-object/from16 v0, p0
41137 @@ -3911,9 +3939,9 @@
41139 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
41141 - const-string v18, "Received message "
41142 + const-string v20, "Received message "
41144 - move-object/from16 v0, v18
41145 + move-object/from16 v0, v20
41147 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41149 @@ -3925,9 +3953,9 @@
41151 move-result-object v3
41153 - const-string v18, "["
41154 + const-string v20, "["
41156 - move-object/from16 v0, v18
41157 + move-object/from16 v0, v20
41159 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41161 @@ -3937,25 +3965,25 @@
41163 iget v0, v0, Landroid/os/Message;->what:I
41165 - move/from16 v18, v0
41166 + move/from16 v20, v0
41168 - move/from16 v0, v18
41169 + move/from16 v0, v20
41171 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
41173 move-result-object v3
41175 - const-string v18, "]"
41176 + const-string v20, "]"
41178 - move-object/from16 v0, v18
41179 + move-object/from16 v0, v20
41181 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41183 move-result-object v3
41185 - const-string v18, " while being destroyed. Ignoring."
41186 + const-string v20, " while being destroyed. Ignoring."
41188 - move-object/from16 v0, v18
41189 + move-object/from16 v0, v20
41191 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41193 @@ -3978,7 +4006,7 @@
41195 iget v3, v0, Landroid/os/Message;->what:I
41197 - packed-switch v3, :pswitch_data_322
41198 + packed-switch v3, :pswitch_data_386
41200 :pswitch_50
41201 invoke-super/range {p0 .. p1}, Lcom/android/internal/telephony/ServiceStateTracker;->handleMessage(Landroid/os/Message;)V
41202 @@ -4013,15 +4041,15 @@
41204 iget-object v3, v3, Lcom/android/internal/telephony/cdma/CDMAPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
41206 - const/16 v18, 0x1b
41207 + const/16 v20, 0x1b
41209 - const/16 v19, 0x0
41210 + const/16 v21, 0x0
41212 move-object/from16 v0, p0
41214 - move/from16 v1, v18
41215 + move/from16 v1, v20
41217 - move-object/from16 v2, v19
41218 + move-object/from16 v2, v21
41220 invoke-virtual {v3, v0, v1, v2}, Lcom/android/internal/telephony/IccRecords;->registerForRecordsLoaded(Landroid/os/Handler;ILjava/lang/Object;)V
41222 @@ -4040,9 +4068,9 @@
41224 move-result v3
41226 - const/16 v18, 0x1
41227 + const/16 v20, 0x1
41229 - move/from16 v0, v18
41230 + move/from16 v0, v20
41232 if-ne v3, v0, :cond_a0
41234 @@ -4088,9 +4116,9 @@
41236 move-result-object v3
41238 - sget-object v18, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_ON:Lcom/android/internal/telephony/CommandsInterface$RadioState;
41239 + sget-object v20, Lcom/android/internal/telephony/CommandsInterface$RadioState;->RADIO_ON:Lcom/android/internal/telephony/CommandsInterface$RadioState;
41241 - move-object/from16 v0, v18
41242 + move-object/from16 v0, v20
41244 if-ne v3, v0, :cond_cd
41246 @@ -4158,15 +4186,15 @@
41248 iget-object v3, v9, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
41250 - if-nez v3, :cond_174
41251 + if-nez v3, :cond_19e
41253 iget-object v3, v9, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
41255 check-cast v3, [Ljava/lang/String;
41257 - move-object/from16 v17, v3
41258 + move-object/from16 v18, v3
41260 - check-cast v17, [Ljava/lang/String;
41261 + check-cast v18, [Ljava/lang/String;
41263 const/4 v4, -0x1
41265 @@ -4178,26 +4206,26 @@
41267 const/4 v8, -0x1
41269 - move-object/from16 v0, v17
41270 + move-object/from16 v0, v18
41272 array-length v3, v0
41274 - const/16 v18, 0x9
41275 + const/16 v20, 0x9
41277 - move/from16 v0, v18
41278 + move/from16 v0, v20
41280 if-le v3, v0, :cond_166
41282 const/4 v3, 0x4
41284 :try_start_11d
41285 - aget-object v3, v17, v3
41286 + aget-object v3, v18, v3
41288 if-eqz v3, :cond_128
41290 const/4 v3, 0x4
41292 - aget-object v3, v17, v3
41293 + aget-object v3, v18, v3
41295 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41297 @@ -4206,13 +4234,13 @@
41298 :cond_128
41299 const/4 v3, 0x5
41301 - aget-object v3, v17, v3
41302 + aget-object v3, v18, v3
41304 if-eqz v3, :cond_134
41306 const/4 v3, 0x5
41308 - aget-object v3, v17, v3
41309 + aget-object v3, v18, v3
41311 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41313 @@ -4221,13 +4249,13 @@
41314 :cond_134
41315 const/4 v3, 0x6
41317 - aget-object v3, v17, v3
41318 + aget-object v3, v18, v3
41320 if-eqz v3, :cond_140
41322 const/4 v3, 0x6
41324 - aget-object v3, v17, v3
41325 + aget-object v3, v18, v3
41327 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41329 @@ -4245,13 +4273,13 @@
41330 :cond_14a
41331 const/16 v3, 0x8
41333 - aget-object v3, v17, v3
41334 + aget-object v3, v18, v3
41336 if-eqz v3, :cond_158
41338 const/16 v3, 0x8
41340 - aget-object v3, v17, v3
41341 + aget-object v3, v18, v3
41343 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41345 @@ -4260,17 +4288,17 @@
41346 :cond_158
41347 const/16 v3, 0x9
41349 - aget-object v3, v17, v3
41350 + aget-object v3, v18, v3
41352 if-eqz v3, :cond_166
41354 const/16 v3, 0x9
41356 - aget-object v3, v17, v3
41357 + aget-object v3, v18, v3
41359 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41360 :try_end_165
41361 - .catch Ljava/lang/NumberFormatException; {:try_start_11d .. :try_end_165} :catch_179
41362 + .catch Ljava/lang/NumberFormatException; {:try_start_11d .. :try_end_165} :catch_1a3
41364 move-result v8
41366 @@ -4278,31 +4306,74 @@
41367 :goto_166
41368 move-object/from16 v0, p0
41370 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
41372 + move-object/from16 v0, p0
41374 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mContext:Landroid/content/Context;
41376 + move-object/from16 v20, v0
41378 + invoke-virtual/range {v20 .. v20}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
41380 + move-result-object v20
41382 + const/16 v21, 0x0
41384 + move-object/from16 v0, v20
41386 + move/from16 v1, v21
41388 + invoke-virtual {v3, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
41390 + move-result-object v17
41392 + move-object/from16 v0, p0
41394 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
41396 + if-eqz v3, :cond_1bf
41398 + if-eqz v17, :cond_1bf
41400 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
41402 + move-result v3
41404 + const/16 v20, 0x1
41406 + move/from16 v0, v20
41408 + if-ne v3, v0, :cond_1bf
41410 + move-object/from16 v0, p0
41412 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
41414 - invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
41415 + invoke-virtual {v3}, Landroid/telephony/cdma/CdmaCellLocation;->setStateInvalid()V
41417 + :goto_197
41418 move-object/from16 v0, p0
41420 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
41422 invoke-virtual {v3}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyLocationChanged()V
41424 - :cond_174
41425 + :cond_19e
41426 invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->disableSingleLocationUpdate()V
41428 goto/16 :goto_48
41430 - :catch_179
41431 + :catch_1a3
41432 move-exception v11
41434 new-instance v3, Ljava/lang/StringBuilder;
41436 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
41438 - const-string v18, "error parsing cell location data: "
41439 + const-string v20, "error parsing cell location data: "
41441 - move-object/from16 v0, v18
41442 + move-object/from16 v0, v20
41444 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41446 @@ -4322,7 +4393,67 @@
41448 goto :goto_166
41450 - :pswitch_195
41451 + :cond_1bf
41452 + move-object/from16 v0, p0
41454 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
41456 + if-eqz v3, :cond_1f2
41458 + if-eqz v17, :cond_1f2
41460 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
41462 + move-result v3
41464 + const/16 v20, 0x3
41466 + move/from16 v0, v20
41468 + if-ne v3, v0, :cond_1f2
41470 + new-instance v19, Ljava/util/Random;
41472 + invoke-direct/range {v19 .. v19}, Ljava/util/Random;-><init>()V
41474 + move-object/from16 v0, p0
41476 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
41478 + invoke-virtual/range {v19 .. v19}, Ljava/util/Random;->nextInt()I
41480 + move-result v4
41482 + invoke-virtual/range {v19 .. v19}, Ljava/util/Random;->nextInt()I
41484 + move-result v5
41486 + invoke-virtual/range {v19 .. v19}, Ljava/util/Random;->nextInt()I
41488 + move-result v6
41490 + invoke-virtual/range {v19 .. v19}, Ljava/util/Random;->nextInt()I
41492 + move-result v7
41494 + invoke-virtual/range {v19 .. v19}, Ljava/util/Random;->nextInt()I
41496 + move-result v8
41498 + invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
41500 + goto :goto_197
41502 + :cond_1f2
41503 + move-object/from16 v0, p0
41505 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
41507 + invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
41509 + goto :goto_197
41511 + :pswitch_1fa
41512 move-object/from16 v0, p1
41514 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41515 @@ -4339,7 +4470,7 @@
41517 goto/16 :goto_48
41519 - :pswitch_1a6
41520 + :pswitch_20b
41521 move-object/from16 v0, p1
41523 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41524 @@ -4358,15 +4489,15 @@
41526 check-cast v10, [Ljava/lang/String;
41528 - if-eqz v10, :cond_222
41529 + if-eqz v10, :cond_287
41531 array-length v3, v10
41533 - const/16 v18, 0x5
41534 + const/16 v20, 0x5
41536 - move/from16 v0, v18
41537 + move/from16 v0, v20
41539 - if-lt v3, v0, :cond_222
41540 + if-lt v3, v0, :cond_287
41542 const/4 v3, 0x0
41544 @@ -4380,13 +4511,13 @@
41546 aget-object v3, v10, v3
41548 - const/16 v18, 0x2
41549 + const/16 v20, 0x2
41551 - aget-object v18, v10, v18
41552 + aget-object v20, v10, v20
41554 move-object/from16 v0, p0
41556 - move-object/from16 v1, v18
41557 + move-object/from16 v1, v20
41559 invoke-virtual {v0, v3, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->parseSidNid(Ljava/lang/String;Ljava/lang/String;)V
41561 @@ -4410,9 +4541,9 @@
41563 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
41565 - const-string v18, "GET_CDMA_SUBSCRIPTION: MDN="
41566 + const-string v20, "GET_CDMA_SUBSCRIPTION: MDN="
41568 - move-object/from16 v0, v18
41569 + move-object/from16 v0, v20
41571 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41573 @@ -4422,9 +4553,9 @@
41575 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mMdn:Ljava/lang/String;
41577 - move-object/from16 v18, v0
41578 + move-object/from16 v20, v0
41580 - move-object/from16 v0, v18
41581 + move-object/from16 v0, v20
41583 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41585 @@ -4454,26 +4585,26 @@
41587 move-result-object v3
41589 - const-string v18, "IMSI"
41590 + const-string v20, "IMSI"
41592 - const/16 v19, 0x0
41593 + const/16 v21, 0x0
41595 - move-object/from16 v0, v18
41596 + move-object/from16 v0, v20
41598 - move-object/from16 v1, v19
41599 + move-object/from16 v1, v21
41601 invoke-virtual {v3, v0, v1}, Lcom/android/internal/telephony/IccCard;->broadcastIccStateChangedIntent(Ljava/lang/String;Ljava/lang/String;)V
41603 goto/16 :goto_48
41605 - :cond_222
41606 + :cond_287
41607 new-instance v3, Ljava/lang/StringBuilder;
41609 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
41611 - const-string v18, "GET_CDMA_SUBSCRIPTION: error parsing cdmaSubscription params num="
41612 + const-string v20, "GET_CDMA_SUBSCRIPTION: error parsing cdmaSubscription params num="
41614 - move-object/from16 v0, v18
41615 + move-object/from16 v0, v20
41617 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
41619 @@ -4481,9 +4612,9 @@
41621 array-length v0, v10
41623 - move/from16 v18, v0
41624 + move/from16 v20, v0
41626 - move/from16 v0, v18
41627 + move/from16 v0, v20
41629 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
41631 @@ -4499,28 +4630,28 @@
41633 goto/16 :goto_48
41635 - :pswitch_243
41636 + :pswitch_2a8
41637 move-object/from16 v0, p0
41639 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
41641 - const/16 v18, 0x3
41642 + const/16 v20, 0x3
41644 move-object/from16 v0, p0
41646 - move/from16 v1, v18
41647 + move/from16 v1, v20
41649 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
41651 - move-result-object v18
41652 + move-result-object v20
41654 - move-object/from16 v0, v18
41655 + move-object/from16 v0, v20
41657 invoke-interface {v3, v0}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
41659 goto/16 :goto_48
41661 - :pswitch_258
41662 + :pswitch_2bd
41663 move-object/from16 v0, p1
41665 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41666 @@ -4533,9 +4664,9 @@
41668 check-cast v3, [Ljava/lang/Object;
41670 - const/16 v18, 0x0
41671 + const/16 v20, 0x0
41673 - aget-object v15, v3, v18
41674 + aget-object v15, v3, v20
41676 check-cast v15, Ljava/lang/String;
41678 @@ -4545,9 +4676,9 @@
41680 check-cast v3, [Ljava/lang/Object;
41682 - const/16 v18, 0x1
41683 + const/16 v20, 0x1
41685 - aget-object v3, v3, v18
41686 + aget-object v3, v3, v20
41688 check-cast v3, Ljava/lang/Long;
41690 @@ -4561,7 +4692,7 @@
41692 goto/16 :goto_48
41694 - :pswitch_281
41695 + :pswitch_2e6
41696 move-object/from16 v0, p1
41698 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41699 @@ -4580,12 +4711,12 @@
41701 goto/16 :goto_48
41703 - :pswitch_293
41704 + :pswitch_2f8
41705 invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->updateSpnDisplay()V
41707 goto/16 :goto_48
41709 - :pswitch_298
41710 + :pswitch_2fd
41711 move-object/from16 v0, p1
41713 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41714 @@ -4600,27 +4731,27 @@
41716 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
41718 - const/16 v18, 0x1f
41719 + const/16 v20, 0x1f
41721 - const/16 v19, 0x0
41722 + const/16 v21, 0x0
41724 move-object/from16 v0, p0
41726 - move/from16 v1, v18
41727 + move/from16 v1, v20
41729 - move-object/from16 v2, v19
41730 + move-object/from16 v2, v21
41732 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
41734 - move-result-object v18
41735 + move-result-object v20
41737 - move-object/from16 v0, v18
41738 + move-object/from16 v0, v20
41740 invoke-interface {v3, v0}, Lcom/android/internal/telephony/CommandsInterface;->getVoiceRegistrationState(Landroid/os/Message;)V
41742 goto/16 :goto_48
41744 - :pswitch_2bb
41745 + :pswitch_320
41746 const-string v3, "[CdmaServiceStateTracker] ERI file has been loaded, repolling."
41748 move-object/from16 v0, p0
41749 @@ -4631,7 +4762,7 @@
41751 goto/16 :goto_48
41753 - :pswitch_2c7
41754 + :pswitch_32c
41755 move-object/from16 v0, p1
41757 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41758 @@ -4658,7 +4789,7 @@
41760 move/from16 v0, v16
41762 - if-eq v0, v3, :cond_2e7
41763 + if-eq v0, v3, :cond_34c
41765 const/16 v3, 0xa
41767 @@ -4666,7 +4797,7 @@
41769 if-ne v0, v3, :cond_48
41771 - :cond_2e7
41772 + :cond_34c
41773 const-string v3, "EVENT_OTA_PROVISION_STATUS_CHANGE: Complete, Reload MDN"
41775 move-object/from16 v0, p0
41776 @@ -4677,23 +4808,23 @@
41778 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
41780 - const/16 v18, 0x22
41781 + const/16 v20, 0x22
41783 move-object/from16 v0, p0
41785 - move/from16 v1, v18
41786 + move/from16 v1, v20
41788 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
41790 - move-result-object v18
41791 + move-result-object v20
41793 - move-object/from16 v0, v18
41794 + move-object/from16 v0, v20
41796 invoke-interface {v3, v0}, Lcom/android/internal/telephony/CommandsInterface;->getCDMASubscription(Landroid/os/Message;)V
41798 goto/16 :goto_48
41800 - :pswitch_303
41801 + :pswitch_368
41802 move-object/from16 v0, p1
41804 iget-object v9, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
41805 @@ -4726,9 +4857,7 @@
41807 goto/16 :goto_48
41809 - nop
41811 - :pswitch_data_322
41812 + :pswitch_data_386
41813 .packed-switch 0x1
41814 :pswitch_af
41815 :pswitch_50
41816 @@ -4739,37 +4868,37 @@
41817 :pswitch_50
41818 :pswitch_50
41819 :pswitch_50
41820 - :pswitch_243
41821 - :pswitch_258
41822 - :pswitch_281
41823 + :pswitch_2a8
41824 + :pswitch_2bd
41825 + :pswitch_2e6
41826 :pswitch_50
41827 :pswitch_50
41828 :pswitch_50
41829 :pswitch_50
41830 :pswitch_50
41831 - :pswitch_298
41832 + :pswitch_2fd
41833 :pswitch_50
41834 :pswitch_50
41835 :pswitch_50
41836 :pswitch_50
41837 :pswitch_50
41838 - :pswitch_195
41839 - :pswitch_195
41840 + :pswitch_1fa
41841 + :pswitch_1fa
41842 :pswitch_62
41843 - :pswitch_293
41844 + :pswitch_2f8
41845 :pswitch_50
41846 :pswitch_50
41847 :pswitch_d5
41848 :pswitch_f8
41849 :pswitch_50
41850 :pswitch_50
41851 - :pswitch_1a6
41852 + :pswitch_20b
41853 :pswitch_ab
41854 - :pswitch_2bb
41855 - :pswitch_2c7
41856 + :pswitch_320
41857 + :pswitch_32c
41858 :pswitch_50
41859 :pswitch_54
41860 - :pswitch_303
41861 + :pswitch_368
41862 .end packed-switch
41863 .end method
41865 @@ -5202,9 +5331,33 @@
41866 .end method
41868 .method protected handlePollStateResultMessage(ILandroid/os/AsyncResult;)V
41869 - .registers 25
41870 + .registers 27
41872 + move-object/from16 v0, p0
41874 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
41876 - packed-switch p1, :pswitch_data_26e
41877 + move-object/from16 v0, p0
41879 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mContext:Landroid/content/Context;
41881 + move-object/from16 v21, v0
41883 + invoke-virtual/range {v21 .. v21}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
41885 + move-result-object v21
41887 + const/16 v22, 0x0
41889 + move-object/from16 v0, v21
41891 + move/from16 v1, v22
41893 + invoke-virtual {v3, v0, v1}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
41895 + move-result-object v17
41897 + packed-switch p1, :pswitch_data_31c
41899 const-string v3, "handlePollStateResultMessage: RIL response handle in wrong phone! Expected CDMA RIL request and get GSM RIL request."
41901 @@ -5212,20 +5365,20 @@
41903 invoke-virtual {v0, v3}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->loge(Ljava/lang/String;)V
41905 - :cond_a
41906 - :goto_a
41907 + :cond_22
41908 + :goto_22
41909 return-void
41911 - :pswitch_b
41912 + :pswitch_23
41913 move-object/from16 v0, p2
41915 iget-object v3, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
41917 check-cast v3, [Ljava/lang/String;
41919 - move-object/from16 v17, v3
41920 + move-object/from16 v18, v3
41922 - check-cast v17, [Ljava/lang/String;
41923 + check-cast v18, [Ljava/lang/String;
41925 const/4 v15, 0x4
41927 @@ -5245,215 +5398,215 @@
41929 const/16 v16, -0x1
41931 - const/16 v18, 0x0
41932 + const/16 v19, 0x0
41934 const/4 v10, 0x0
41936 const/4 v14, 0x0
41938 - move-object/from16 v0, v17
41939 + move-object/from16 v0, v18
41941 array-length v3, v0
41943 - const/16 v19, 0xe
41944 + const/16 v21, 0xe
41946 - move/from16 v0, v19
41947 + move/from16 v0, v21
41949 - if-lt v3, v0, :cond_180
41950 + if-lt v3, v0, :cond_1aa
41952 const/4 v3, 0x0
41954 - :try_start_31
41955 - aget-object v3, v17, v3
41956 + :try_start_49
41957 + aget-object v3, v18, v3
41959 - if-eqz v3, :cond_3c
41960 + if-eqz v3, :cond_54
41962 const/4 v3, 0x0
41964 - aget-object v3, v17, v3
41965 + aget-object v3, v18, v3
41967 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41969 move-result v15
41971 - :cond_3c
41972 + :cond_54
41973 const/4 v3, 0x3
41975 - aget-object v3, v17, v3
41976 + aget-object v3, v18, v3
41978 - if-eqz v3, :cond_48
41979 + if-eqz v3, :cond_60
41981 const/4 v3, 0x3
41983 - aget-object v3, v17, v3
41984 + aget-object v3, v18, v3
41986 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
41988 move-result v13
41990 - :cond_48
41991 + :cond_60
41992 const/4 v3, 0x4
41994 - aget-object v3, v17, v3
41995 + aget-object v3, v18, v3
41997 - if-eqz v3, :cond_54
41998 + if-eqz v3, :cond_6c
42000 const/4 v3, 0x4
42002 - aget-object v3, v17, v3
42003 + aget-object v3, v18, v3
42005 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42007 move-result v4
42009 - :cond_54
42010 + :cond_6c
42011 const/4 v3, 0x5
42013 - aget-object v3, v17, v3
42014 + aget-object v3, v18, v3
42016 - if-eqz v3, :cond_60
42017 + if-eqz v3, :cond_78
42019 const/4 v3, 0x5
42021 - aget-object v3, v17, v3
42022 + aget-object v3, v18, v3
42024 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42026 move-result v5
42028 - :cond_60
42029 + :cond_78
42030 const/4 v3, 0x6
42032 - aget-object v3, v17, v3
42033 + aget-object v3, v18, v3
42035 - if-eqz v3, :cond_6c
42036 + if-eqz v3, :cond_84
42038 const/4 v3, 0x6
42040 - aget-object v3, v17, v3
42041 + aget-object v3, v18, v3
42043 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42045 move-result v6
42047 - :cond_6c
42048 - if-nez v5, :cond_76
42049 + :cond_84
42050 + if-nez v5, :cond_8e
42052 - if-nez v6, :cond_76
42053 + if-nez v6, :cond_8e
42055 const v5, 0x7fffffff
42057 const v6, 0x7fffffff
42059 - :cond_76
42060 + :cond_8e
42061 const/4 v3, 0x7
42063 - aget-object v3, v17, v3
42064 + aget-object v3, v18, v3
42066 - if-eqz v3, :cond_82
42067 + if-eqz v3, :cond_9a
42069 const/4 v3, 0x7
42071 - aget-object v3, v17, v3
42072 + aget-object v3, v18, v3
42074 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42076 move-result v9
42078 - :cond_82
42079 + :cond_9a
42080 const/16 v3, 0x8
42082 - aget-object v3, v17, v3
42083 + aget-object v3, v18, v3
42085 - if-eqz v3, :cond_90
42086 + if-eqz v3, :cond_a8
42088 const/16 v3, 0x8
42090 - aget-object v3, v17, v3
42091 + aget-object v3, v18, v3
42093 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42095 move-result v7
42097 - :cond_90
42098 + :cond_a8
42099 const/16 v3, 0x9
42101 - aget-object v3, v17, v3
42102 + aget-object v3, v18, v3
42104 - if-eqz v3, :cond_9e
42105 + if-eqz v3, :cond_b6
42107 const/16 v3, 0x9
42109 - aget-object v3, v17, v3
42110 + aget-object v3, v18, v3
42112 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42114 move-result v8
42116 - :cond_9e
42117 + :cond_b6
42118 const/16 v3, 0xa
42120 - aget-object v3, v17, v3
42121 + aget-object v3, v18, v3
42123 - if-eqz v3, :cond_ac
42124 + if-eqz v3, :cond_c4
42126 const/16 v3, 0xa
42128 - aget-object v3, v17, v3
42129 + aget-object v3, v18, v3
42131 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42133 move-result v16
42135 - :cond_ac
42136 + :cond_c4
42137 const/16 v3, 0xb
42139 - aget-object v3, v17, v3
42140 + aget-object v3, v18, v3
42142 - if-eqz v3, :cond_ba
42143 + if-eqz v3, :cond_d2
42145 const/16 v3, 0xb
42147 - aget-object v3, v17, v3
42148 + aget-object v3, v18, v3
42150 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42152 - move-result v18
42153 + move-result v19
42155 - :cond_ba
42156 + :cond_d2
42157 const/16 v3, 0xc
42159 - aget-object v3, v17, v3
42160 + aget-object v3, v18, v3
42162 - if-eqz v3, :cond_c8
42163 + if-eqz v3, :cond_e0
42165 const/16 v3, 0xc
42167 - aget-object v3, v17, v3
42168 + aget-object v3, v18, v3
42170 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42172 move-result v10
42174 - :cond_c8
42175 + :cond_e0
42176 const/16 v3, 0xd
42178 - aget-object v3, v17, v3
42179 + aget-object v3, v18, v3
42181 - if-eqz v3, :cond_d6
42182 + if-eqz v3, :cond_ee
42184 const/16 v3, 0xd
42186 - aget-object v3, v17, v3
42187 + aget-object v3, v18, v3
42189 invoke-static {v3}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
42190 - :try_end_d5
42191 - .catch Ljava/lang/NumberFormatException; {:try_start_31 .. :try_end_d5} :catch_163
42192 + :try_end_ed
42193 + .catch Ljava/lang/NumberFormatException; {:try_start_49 .. :try_end_ed} :catch_18d
42195 move-result v14
42197 - :cond_d6
42198 - :goto_d6
42199 + :cond_ee
42200 + :goto_ee
42201 move-object/from16 v0, p0
42203 iput v15, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationState:I
42204 @@ -5464,11 +5617,11 @@
42206 move-result v3
42208 - if-eqz v3, :cond_1a6
42209 + if-eqz v3, :cond_1d0
42211 const/16 v3, 0xa
42213 - aget-object v3, v17, v3
42214 + aget-object v3, v18, v3
42216 move-object/from16 v0, p0
42218 @@ -5476,11 +5629,11 @@
42220 move-result v3
42222 - if-nez v3, :cond_1a6
42223 + if-nez v3, :cond_1d0
42225 const/4 v3, 0x1
42227 - :goto_ef
42228 + :goto_107
42229 move-object/from16 v0, p0
42231 iput-boolean v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mCdmaRoaming:Z
42232 @@ -5493,9 +5646,9 @@
42234 invoke-virtual {v0, v15}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->regCodeToServiceState(I)I
42236 - move-result v19
42237 + move-result v21
42239 - move/from16 v0, v19
42240 + move/from16 v0, v21
42242 invoke-virtual {v3, v0}, Landroid/telephony/ServiceState;->setState(I)V
42244 @@ -5521,11 +5674,11 @@
42246 iput v0, v1, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRoamingIndicator:I
42248 - if-nez v18, :cond_1a9
42249 + if-nez v19, :cond_1d3
42251 const/4 v3, 0x0
42253 - :goto_11e
42254 + :goto_136
42255 move-object/from16 v0, p0
42257 iput-boolean v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mIsInPrl:Z
42258 @@ -5536,11 +5689,30 @@
42260 move-object/from16 v0, p0
42262 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
42264 + if-eqz v3, :cond_1d6
42266 + if-eqz v17, :cond_1d6
42268 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
42270 + move-result v3
42272 + const/16 v21, 0x1
42274 + move/from16 v0, v21
42276 + if-ne v3, v0, :cond_1d6
42278 + move-object/from16 v0, p0
42280 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
42282 - invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
42283 + invoke-virtual {v3}, Landroid/telephony/cdma/CdmaCellLocation;->setStateInvalid()V
42285 - if-nez v14, :cond_1ac
42286 + :goto_157
42287 + if-nez v14, :cond_213
42289 const-string v3, "General"
42291 @@ -5548,24 +5720,24 @@
42293 iput-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42295 - :goto_135
42296 + :goto_15f
42297 move-object/from16 v0, p0
42299 iget v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationState:I
42301 - const/16 v19, 0x3
42302 + const/16 v21, 0x3
42304 - move/from16 v0, v19
42305 + move/from16 v0, v21
42307 - if-ne v3, v0, :cond_a
42308 + if-ne v3, v0, :cond_22
42310 new-instance v3, Ljava/lang/StringBuilder;
42312 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
42314 - const-string v19, "Registration denied, "
42315 + const-string v21, "Registration denied, "
42317 - move-object/from16 v0, v19
42318 + move-object/from16 v0, v21
42320 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42322 @@ -5575,9 +5747,9 @@
42324 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42326 - move-object/from16 v19, v0
42327 + move-object/from16 v21, v0
42329 - move-object/from16 v0, v19
42330 + move-object/from16 v0, v21
42332 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42334 @@ -5591,18 +5763,18 @@
42336 invoke-virtual {v0, v3}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->log(Ljava/lang/String;)V
42338 - goto/16 :goto_a
42339 + goto/16 :goto_22
42341 - :catch_163
42342 + :catch_18d
42343 move-exception v11
42345 new-instance v3, Ljava/lang/StringBuilder;
42347 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
42349 - const-string v19, "EVENT_POLL_STATE_REGISTRATION_CDMA: error parsing: "
42350 + const-string v21, "EVENT_POLL_STATE_REGISTRATION_CDMA: error parsing: "
42352 - move-object/from16 v0, v19
42353 + move-object/from16 v0, v21
42355 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42357 @@ -5620,180 +5792,240 @@
42359 invoke-virtual {v0, v3}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->loge(Ljava/lang/String;)V
42361 - goto/16 :goto_d6
42362 + goto/16 :goto_ee
42364 - :cond_180
42365 + :cond_1aa
42366 new-instance v3, Ljava/lang/RuntimeException;
42368 - new-instance v19, Ljava/lang/StringBuilder;
42369 + new-instance v21, Ljava/lang/StringBuilder;
42371 - invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
42372 + invoke-direct/range {v21 .. v21}, Ljava/lang/StringBuilder;-><init>()V
42374 - const-string v20, "Warning! Wrong number of parameters returned from RIL_REQUEST_REGISTRATION_STATE: expected 14 or more strings and got "
42375 + const-string v22, "Warning! Wrong number of parameters returned from RIL_REQUEST_REGISTRATION_STATE: expected 14 or more strings and got "
42377 - invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42378 + invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42380 - move-result-object v19
42381 + move-result-object v21
42383 - move-object/from16 v0, v17
42384 + move-object/from16 v0, v18
42386 array-length v0, v0
42388 - move/from16 v20, v0
42389 + move/from16 v22, v0
42391 - invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
42392 + invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
42394 - move-result-object v19
42395 + move-result-object v21
42397 - const-string v20, " strings"
42398 + const-string v22, " strings"
42400 - invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42401 + invoke-virtual/range {v21 .. v22}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42403 - move-result-object v19
42404 + move-result-object v21
42406 - invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
42407 + invoke-virtual/range {v21 .. v21}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
42409 - move-result-object v19
42410 + move-result-object v21
42412 - move-object/from16 v0, v19
42413 + move-object/from16 v0, v21
42415 invoke-direct {v3, v0}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
42417 throw v3
42419 - :cond_1a6
42420 + :cond_1d0
42421 const/4 v3, 0x0
42423 - goto/16 :goto_ef
42424 + goto/16 :goto_107
42426 - :cond_1a9
42427 + :cond_1d3
42428 const/4 v3, 0x1
42430 - goto/16 :goto_11e
42431 + goto/16 :goto_136
42433 - :cond_1ac
42434 - const/4 v3, 0x1
42435 + :cond_1d6
42436 + move-object/from16 v0, p0
42438 - if-ne v14, v3, :cond_1b6
42439 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
42441 - const-string v3, "Authentication Failure"
42442 + if-eqz v3, :cond_20a
42444 - move-object/from16 v0, p0
42445 + if-eqz v17, :cond_20a
42447 - iput-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42448 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
42450 - goto :goto_135
42451 + move-result v3
42453 - :cond_1b6
42454 - const-string v3, ""
42455 + const/16 v21, 0x3
42457 - move-object/from16 v0, p0
42458 + move/from16 v0, v21
42460 - iput-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42461 + if-ne v3, v0, :cond_20a
42463 - goto/16 :goto_135
42464 + new-instance v20, Ljava/util/Random;
42466 - :pswitch_1be
42467 - move-object/from16 v0, p2
42468 + invoke-direct/range {v20 .. v20}, Ljava/util/Random;-><init>()V
42470 - iget-object v3, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
42471 + move-object/from16 v0, p0
42473 - check-cast v3, [Ljava/lang/String;
42474 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
42476 - move-object v12, v3
42477 + invoke-virtual/range {v20 .. v20}, Ljava/util/Random;->nextInt()I
42479 - check-cast v12, [Ljava/lang/String;
42480 + move-result v4
42482 - if-eqz v12, :cond_265
42483 + invoke-virtual/range {v20 .. v20}, Ljava/util/Random;->nextInt()I
42485 - array-length v3, v12
42486 + move-result v5
42488 - const/16 v19, 0x3
42489 + invoke-virtual/range {v20 .. v20}, Ljava/util/Random;->nextInt()I
42491 - move/from16 v0, v19
42492 + move-result v6
42494 - if-lt v3, v0, :cond_265
42495 + invoke-virtual/range {v20 .. v20}, Ljava/util/Random;->nextInt()I
42497 - const/4 v3, 0x2
42498 + move-result v7
42500 - aget-object v3, v12, v3
42501 + invoke-virtual/range {v20 .. v20}, Ljava/util/Random;->nextInt()I
42503 - if-eqz v3, :cond_1f0
42504 + move-result v8
42506 - const/4 v3, 0x2
42507 + invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
42509 - aget-object v3, v12, v3
42510 + goto/16 :goto_157
42512 - invoke-virtual {v3}, Ljava/lang/String;->length()I
42513 + :cond_20a
42514 + move-object/from16 v0, p0
42516 - move-result v3
42517 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
42519 - const/16 v19, 0x5
42520 + invoke-virtual/range {v3 .. v8}, Landroid/telephony/cdma/CdmaCellLocation;->setCellLocationData(IIIII)V
42522 - move/from16 v0, v19
42523 + goto/16 :goto_157
42525 - if-lt v3, v0, :cond_1f0
42526 + :cond_213
42527 + const/4 v3, 0x1
42529 - const-string v3, "00000"
42530 + if-ne v14, v3, :cond_21e
42532 - const/16 v19, 0x2
42533 + const-string v3, "Authentication Failure"
42535 - aget-object v19, v12, v19
42536 + move-object/from16 v0, p0
42538 - move-object/from16 v0, v19
42539 + iput-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42541 - invoke-virtual {v3, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
42542 + goto/16 :goto_15f
42544 - move-result v3
42545 + :cond_21e
42546 + const-string v3, ""
42548 + move-object/from16 v0, p0
42550 + iput-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRegistrationDeniedReason:Ljava/lang/String;
42552 + goto/16 :goto_15f
42554 + :pswitch_226
42555 + move-object/from16 v0, p2
42557 + iget-object v3, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
42559 - if-eqz v3, :cond_22b
42560 + check-cast v3, [Ljava/lang/String;
42562 + move-object v12, v3
42564 + check-cast v12, [Ljava/lang/String;
42566 + if-eqz v12, :cond_313
42568 + array-length v3, v12
42570 + const/16 v21, 0x3
42572 + move/from16 v0, v21
42574 + if-lt v3, v0, :cond_313
42576 - :cond_1f0
42577 const/4 v3, 0x2
42579 - sget-object v19, Lcom/android/internal/telephony/cdma/CDMAPhone;->PROPERTY_CDMA_HOME_OPERATOR_NUMERIC:Ljava/lang/String;
42580 + aget-object v3, v12, v3
42582 + if-eqz v3, :cond_258
42584 - const-string v20, "00000"
42585 + const/4 v3, 0x2
42587 - invoke-static/range {v19 .. v20}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
42588 + aget-object v3, v12, v3
42590 - move-result-object v19
42591 + invoke-virtual {v3}, Ljava/lang/String;->length()I
42593 + move-result v3
42595 + const/16 v21, 0x5
42597 + move/from16 v0, v21
42599 + if-lt v3, v0, :cond_258
42601 + const-string v3, "00000"
42603 + const/16 v21, 0x2
42605 + aget-object v21, v12, v21
42607 + move-object/from16 v0, v21
42609 + invoke-virtual {v3, v0}, Ljava/lang/String;->equals(Ljava/lang/Object;)Z
42611 + move-result v3
42613 + if-eqz v3, :cond_293
42615 + :cond_258
42616 + const/4 v3, 0x2
42618 + sget-object v21, Lcom/android/internal/telephony/cdma/CDMAPhone;->PROPERTY_CDMA_HOME_OPERATOR_NUMERIC:Ljava/lang/String;
42620 + const-string v22, "00000"
42622 + invoke-static/range {v21 .. v22}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
42624 + move-result-object v21
42626 - aput-object v19, v12, v3
42627 + aput-object v21, v12, v3
42629 new-instance v3, Ljava/lang/StringBuilder;
42631 invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
42633 - const-string v19, "RIL_REQUEST_OPERATOR.response[2], the numeric, is bad. Using SystemProperties \'"
42634 + const-string v21, "RIL_REQUEST_OPERATOR.response[2], the numeric, is bad. Using SystemProperties \'"
42636 - move-object/from16 v0, v19
42637 + move-object/from16 v0, v21
42639 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42641 move-result-object v3
42643 - sget-object v19, Lcom/android/internal/telephony/cdma/CDMAPhone;->PROPERTY_CDMA_HOME_OPERATOR_NUMERIC:Ljava/lang/String;
42644 + sget-object v21, Lcom/android/internal/telephony/cdma/CDMAPhone;->PROPERTY_CDMA_HOME_OPERATOR_NUMERIC:Ljava/lang/String;
42646 - move-object/from16 v0, v19
42647 + move-object/from16 v0, v21
42649 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42651 move-result-object v3
42653 - const-string v19, "\'= "
42654 + const-string v21, "\'= "
42656 - move-object/from16 v0, v19
42657 + move-object/from16 v0, v21
42659 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42661 move-result-object v3
42663 - const/16 v19, 0x2
42664 + const/16 v21, 0x2
42666 - aget-object v19, v12, v19
42667 + aget-object v21, v12, v21
42669 - move-object/from16 v0, v19
42670 + move-object/from16 v0, v21
42672 invoke-virtual {v3, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42674 @@ -5807,77 +6039,147 @@
42676 invoke-virtual {v0, v3}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->log(Ljava/lang/String;)V
42678 - :cond_22b
42679 + :cond_293
42680 move-object/from16 v0, p0
42682 iget-boolean v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->isSubscriptionFromRuim:Z
42684 - if-nez v3, :cond_24a
42685 + if-nez v3, :cond_2d5
42687 + move-object/from16 v0, p0
42689 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
42691 + if-eqz v3, :cond_2bc
42693 + if-eqz v17, :cond_2bc
42695 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
42697 + move-result v3
42699 + if-eqz v3, :cond_2bc
42701 move-object/from16 v0, p0
42703 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42705 - const/16 v19, 0x0
42706 + const/16 v21, 0x0
42708 - const/16 v20, 0x1
42709 + const-string v22, ""
42711 - aget-object v20, v12, v20
42712 + const-string v23, ""
42714 - const/16 v21, 0x2
42715 + move-object/from16 v0, v21
42717 - aget-object v21, v12, v21
42718 + move-object/from16 v1, v22
42720 - move-object/from16 v0, v19
42721 + move-object/from16 v2, v23
42723 - move-object/from16 v1, v20
42724 + invoke-virtual {v3, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
42726 - move-object/from16 v2, v21
42727 + goto/16 :goto_22
42729 + :cond_2bc
42730 + move-object/from16 v0, p0
42732 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42734 + const/16 v21, 0x0
42736 + const/16 v22, 0x1
42738 + aget-object v22, v12, v22
42740 + const/16 v23, 0x2
42742 + aget-object v23, v12, v23
42744 + move-object/from16 v0, v21
42746 + move-object/from16 v1, v22
42748 + move-object/from16 v2, v23
42750 invoke-virtual {v3, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
42752 - goto/16 :goto_a
42753 + goto/16 :goto_22
42755 + :cond_2d5
42756 + move-object/from16 v0, p0
42758 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
42760 + if-eqz v3, :cond_2f8
42762 + if-eqz v17, :cond_2f8
42764 + invoke-virtual/range {v17 .. v17}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
42766 + move-result v3
42768 + if-eqz v3, :cond_2f8
42770 - :cond_24a
42771 move-object/from16 v0, p0
42773 iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42775 - const/16 v19, 0x0
42776 + const-string v21, ""
42778 - aget-object v19, v12, v19
42779 + const-string v22, ""
42781 - const/16 v20, 0x1
42782 + const-string v23, ""
42784 - aget-object v20, v12, v20
42785 + move-object/from16 v0, v21
42787 - const/16 v21, 0x2
42788 + move-object/from16 v1, v22
42790 + move-object/from16 v2, v23
42792 + invoke-virtual {v3, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
42794 + goto/16 :goto_22
42796 + :cond_2f8
42797 + move-object/from16 v0, p0
42799 + iget-object v3, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42801 + const/16 v21, 0x0
42803 aget-object v21, v12, v21
42805 - move-object/from16 v0, v19
42806 + const/16 v22, 0x1
42808 - move-object/from16 v1, v20
42809 + aget-object v22, v12, v22
42811 - move-object/from16 v2, v21
42812 + const/16 v23, 0x2
42814 + aget-object v23, v12, v23
42816 + move-object/from16 v0, v21
42818 + move-object/from16 v1, v22
42820 + move-object/from16 v2, v23
42822 invoke-virtual {v3, v0, v1, v2}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
42824 - goto/16 :goto_a
42825 + goto/16 :goto_22
42827 - :cond_265
42828 + :cond_313
42829 const-string v3, "EVENT_POLL_STATE_OPERATOR_CDMA: error parsing opNames"
42831 move-object/from16 v0, p0
42833 invoke-virtual {v0, v3}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->log(Ljava/lang/String;)V
42835 - goto/16 :goto_a
42836 + goto/16 :goto_22
42838 - :pswitch_data_26e
42839 + :pswitch_data_31c
42840 .packed-switch 0x18
42841 - :pswitch_b
42842 - :pswitch_1be
42843 + :pswitch_23
42844 + :pswitch_226
42845 .end packed-switch
42846 .end method
42848 @@ -6492,57 +6794,57 @@
42849 .end method
42851 .method protected pollStateDone()V
42852 - .registers 28
42853 + .registers 29
42855 - new-instance v23, Ljava/lang/StringBuilder;
42856 + new-instance v24, Ljava/lang/StringBuilder;
42858 - invoke-direct/range {v23 .. v23}, Ljava/lang/StringBuilder;-><init>()V
42859 + invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;-><init>()V
42861 - const-string/jumbo v24, "pollStateDone: oldSS=["
42862 + const-string/jumbo v25, "pollStateDone: oldSS=["
42864 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42865 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42867 - move-result-object v23
42868 + move-result-object v24
42870 move-object/from16 v0, p0
42872 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
42874 - move-object/from16 v24, v0
42875 + move-object/from16 v25, v0
42877 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
42878 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
42880 - move-result-object v23
42881 + move-result-object v24
42883 - const-string v24, "] newSS=["
42884 + const-string v25, "] newSS=["
42886 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42887 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42889 - move-result-object v23
42890 + move-result-object v24
42892 move-object/from16 v0, p0
42894 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42896 - move-object/from16 v24, v0
42897 + move-object/from16 v25, v0
42899 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
42900 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
42902 - move-result-object v23
42903 + move-result-object v24
42905 - const-string v24, "]"
42906 + const-string v25, "]"
42908 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42909 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
42911 - move-result-object v23
42912 + move-result-object v24
42914 - invoke-virtual/range {v23 .. v23}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
42915 + invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
42917 - move-result-object v23
42918 + move-result-object v24
42920 move-object/from16 v0, p0
42922 - move-object/from16 v1, v23
42923 + move-object/from16 v1, v24
42925 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->log(Ljava/lang/String;)V
42927 @@ -6550,25 +6852,25 @@
42929 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
42931 - move-object/from16 v23, v0
42932 + move-object/from16 v24, v0
42934 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
42935 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
42937 - move-result v23
42938 + move-result v24
42940 - if-eqz v23, :cond_315
42941 + if-eqz v24, :cond_333
42943 move-object/from16 v0, p0
42945 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42947 - move-object/from16 v23, v0
42948 + move-object/from16 v24, v0
42950 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
42951 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
42953 - move-result v23
42954 + move-result v24
42956 - if-nez v23, :cond_315
42957 + if-nez v24, :cond_333
42959 const/4 v14, 0x1
42961 @@ -6577,25 +6879,25 @@
42963 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
42965 - move-object/from16 v23, v0
42966 + move-object/from16 v24, v0
42968 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
42969 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
42971 - move-result v23
42972 + move-result v24
42974 - if-nez v23, :cond_318
42975 + if-nez v24, :cond_336
42977 move-object/from16 v0, p0
42979 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
42981 - move-object/from16 v23, v0
42982 + move-object/from16 v24, v0
42984 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
42985 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
42987 - move-result v23
42988 + move-result v24
42990 - if-eqz v23, :cond_318
42991 + if-eqz v24, :cond_336
42993 const/4 v11, 0x1
42995 @@ -6604,17 +6906,17 @@
42997 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDataConnectionState:I
42999 - move/from16 v23, v0
43000 + move/from16 v24, v0
43002 - if-eqz v23, :cond_31b
43003 + if-eqz v24, :cond_339
43005 move-object/from16 v0, p0
43007 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43009 - move/from16 v23, v0
43010 + move/from16 v24, v0
43012 - if-nez v23, :cond_31b
43013 + if-nez v24, :cond_339
43015 const/4 v7, 0x1
43017 @@ -6623,17 +6925,17 @@
43019 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDataConnectionState:I
43021 - move/from16 v23, v0
43022 + move/from16 v24, v0
43024 - if-nez v23, :cond_31e
43025 + if-nez v24, :cond_33c
43027 move-object/from16 v0, p0
43029 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43031 - move/from16 v23, v0
43032 + move/from16 v24, v0
43034 - if-eqz v23, :cond_31e
43035 + if-eqz v24, :cond_33c
43037 const/4 v9, 0x1
43039 @@ -6642,19 +6944,19 @@
43041 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDataConnectionState:I
43043 - move/from16 v23, v0
43044 + move/from16 v24, v0
43046 move-object/from16 v0, p0
43048 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43050 - move/from16 v24, v0
43051 + move/from16 v25, v0
43053 - move/from16 v0, v23
43054 + move/from16 v0, v24
43056 - move/from16 v1, v24
43057 + move/from16 v1, v25
43059 - if-eq v0, v1, :cond_321
43060 + if-eq v0, v1, :cond_33f
43062 const/4 v8, 0x1
43064 @@ -6663,19 +6965,19 @@
43066 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRilRadioTechnology:I
43068 - move/from16 v23, v0
43069 + move/from16 v24, v0
43071 move-object/from16 v0, p0
43073 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewRilRadioTechnology:I
43075 - move/from16 v24, v0
43076 + move/from16 v25, v0
43078 - move/from16 v0, v23
43079 + move/from16 v0, v24
43081 - move/from16 v1, v24
43082 + move/from16 v1, v25
43084 - if-eq v0, v1, :cond_324
43085 + if-eq v0, v1, :cond_342
43087 const/4 v13, 0x1
43089 @@ -6684,19 +6986,19 @@
43091 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43093 - move-object/from16 v23, v0
43094 + move-object/from16 v24, v0
43096 move-object/from16 v0, p0
43098 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43100 - move-object/from16 v24, v0
43101 + move-object/from16 v25, v0
43103 - invoke-virtual/range {v23 .. v24}, Landroid/telephony/ServiceState;->equals(Ljava/lang/Object;)Z
43104 + invoke-virtual/range {v24 .. v25}, Landroid/telephony/ServiceState;->equals(Ljava/lang/Object;)Z
43106 - move-result v23
43107 + move-result v24
43109 - if-nez v23, :cond_327
43110 + if-nez v24, :cond_345
43112 const/4 v10, 0x1
43114 @@ -6705,25 +7007,25 @@
43116 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43118 - move-object/from16 v23, v0
43119 + move-object/from16 v24, v0
43121 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getRoaming()Z
43122 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getRoaming()Z
43124 - move-result v23
43125 + move-result v24
43127 - if-nez v23, :cond_32a
43128 + if-nez v24, :cond_348
43130 move-object/from16 v0, p0
43132 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43134 - move-object/from16 v23, v0
43135 + move-object/from16 v24, v0
43137 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getRoaming()Z
43138 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getRoaming()Z
43140 - move-result v23
43141 + move-result v24
43143 - if-eqz v23, :cond_32a
43144 + if-eqz v24, :cond_348
43146 const/16 v16, 0x1
43148 @@ -6732,25 +7034,25 @@
43150 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43152 - move-object/from16 v23, v0
43153 + move-object/from16 v24, v0
43155 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getRoaming()Z
43156 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getRoaming()Z
43158 - move-result v23
43159 + move-result v24
43161 - if-eqz v23, :cond_32e
43162 + if-eqz v24, :cond_34c
43164 move-object/from16 v0, p0
43166 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43168 - move-object/from16 v23, v0
43169 + move-object/from16 v24, v0
43171 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getRoaming()Z
43172 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getRoaming()Z
43174 - move-result v23
43175 + move-result v24
43177 - if-nez v23, :cond_32e
43178 + if-nez v24, :cond_34c
43180 const/4 v15, 0x1
43182 @@ -6759,19 +7061,19 @@
43184 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
43186 - move-object/from16 v23, v0
43187 + move-object/from16 v24, v0
43189 move-object/from16 v0, p0
43191 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
43193 - move-object/from16 v24, v0
43194 + move-object/from16 v25, v0
43196 - invoke-virtual/range {v23 .. v24}, Landroid/telephony/cdma/CdmaCellLocation;->equals(Ljava/lang/Object;)Z
43197 + invoke-virtual/range {v24 .. v25}, Landroid/telephony/cdma/CdmaCellLocation;->equals(Ljava/lang/Object;)Z
43199 - move-result v23
43200 + move-result v24
43202 - if-nez v23, :cond_331
43203 + if-nez v24, :cond_34f
43205 const/4 v12, 0x1
43207 @@ -6780,25 +7082,25 @@
43209 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43211 - move-object/from16 v23, v0
43212 + move-object/from16 v24, v0
43214 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
43215 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
43217 - move-result v23
43218 + move-result v24
43220 move-object/from16 v0, p0
43222 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43224 - move-object/from16 v24, v0
43225 + move-object/from16 v25, v0
43227 - invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
43228 + invoke-virtual/range {v25 .. v25}, Landroid/telephony/ServiceState;->getState()I
43230 - move-result v24
43231 + move-result v25
43233 - move/from16 v0, v23
43234 + move/from16 v0, v24
43236 - move/from16 v1, v24
43237 + move/from16 v1, v25
43239 if-ne v0, v1, :cond_136
43241 @@ -6806,117 +7108,117 @@
43243 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDataConnectionState:I
43245 - move/from16 v23, v0
43246 + move/from16 v24, v0
43248 move-object/from16 v0, p0
43250 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43252 - move/from16 v24, v0
43253 + move/from16 v25, v0
43255 - move/from16 v0, v23
43256 + move/from16 v0, v24
43258 - move/from16 v1, v24
43259 + move/from16 v1, v25
43261 if-eq v0, v1, :cond_184
43263 :cond_136
43264 - const v23, 0xc3c4
43265 + const v24, 0xc3c4
43267 - const/16 v24, 0x4
43268 + const/16 v25, 0x4
43270 - move/from16 v0, v24
43271 + move/from16 v0, v25
43273 new-array v0, v0, [Ljava/lang/Object;
43275 - move-object/from16 v24, v0
43276 + move-object/from16 v25, v0
43278 - const/16 v25, 0x0
43279 + const/16 v26, 0x0
43281 move-object/from16 v0, p0
43283 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43285 - move-object/from16 v26, v0
43286 + move-object/from16 v27, v0
43288 - invoke-virtual/range {v26 .. v26}, Landroid/telephony/ServiceState;->getState()I
43289 + invoke-virtual/range {v27 .. v27}, Landroid/telephony/ServiceState;->getState()I
43291 - move-result v26
43292 + move-result v27
43294 - invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43295 + invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43297 - move-result-object v26
43298 + move-result-object v27
43300 - aput-object v26, v24, v25
43301 + aput-object v27, v25, v26
43303 - const/16 v25, 0x1
43304 + const/16 v26, 0x1
43306 move-object/from16 v0, p0
43308 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDataConnectionState:I
43310 - move/from16 v26, v0
43311 + move/from16 v27, v0
43313 - invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43314 + invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43316 - move-result-object v26
43317 + move-result-object v27
43319 - aput-object v26, v24, v25
43320 + aput-object v27, v25, v26
43322 - const/16 v25, 0x2
43323 + const/16 v26, 0x2
43325 move-object/from16 v0, p0
43327 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43329 - move-object/from16 v26, v0
43330 + move-object/from16 v27, v0
43332 - invoke-virtual/range {v26 .. v26}, Landroid/telephony/ServiceState;->getState()I
43333 + invoke-virtual/range {v27 .. v27}, Landroid/telephony/ServiceState;->getState()I
43335 - move-result v26
43336 + move-result v27
43338 - invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43339 + invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43341 - move-result-object v26
43342 + move-result-object v27
43344 - aput-object v26, v24, v25
43345 + aput-object v27, v25, v26
43347 - const/16 v25, 0x3
43348 + const/16 v26, 0x3
43350 move-object/from16 v0, p0
43352 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43354 - move/from16 v26, v0
43355 + move/from16 v27, v0
43357 - invoke-static/range {v26 .. v26}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43358 + invoke-static/range {v27 .. v27}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
43360 - move-result-object v26
43361 + move-result-object v27
43363 - aput-object v26, v24, v25
43364 + aput-object v27, v25, v26
43366 - invoke-static/range {v23 .. v24}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
43367 + invoke-static/range {v24 .. v25}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
43369 :cond_184
43370 move-object/from16 v0, p0
43372 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43374 - move-object/from16 v22, v0
43375 + move-object/from16 v23, v0
43377 move-object/from16 v0, p0
43379 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43381 - move-object/from16 v23, v0
43382 + move-object/from16 v24, v0
43384 - move-object/from16 v0, v23
43385 + move-object/from16 v0, v24
43387 move-object/from16 v1, p0
43389 iput-object v0, v1, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43391 - move-object/from16 v0, v22
43392 + move-object/from16 v0, v23
43394 move-object/from16 v1, p0
43396 @@ -6926,29 +7228,29 @@
43398 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43400 - move-object/from16 v23, v0
43401 + move-object/from16 v24, v0
43403 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->setStateOutOfService()V
43404 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->setStateOutOfService()V
43406 move-object/from16 v0, p0
43408 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
43410 - move-object/from16 v21, v0
43411 + move-object/from16 v22, v0
43413 move-object/from16 v0, p0
43415 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newCellLoc:Landroid/telephony/cdma/CdmaCellLocation;
43417 - move-object/from16 v23, v0
43418 + move-object/from16 v24, v0
43420 - move-object/from16 v0, v23
43421 + move-object/from16 v0, v24
43423 move-object/from16 v1, p0
43425 iput-object v0, v1, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cellLoc:Landroid/telephony/cdma/CdmaCellLocation;
43427 - move-object/from16 v0, v21
43428 + move-object/from16 v0, v22
43430 move-object/from16 v1, p0
43432 @@ -6958,9 +7260,9 @@
43434 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewDataConnectionState:I
43436 - move/from16 v23, v0
43437 + move/from16 v24, v0
43439 - move/from16 v0, v23
43440 + move/from16 v0, v24
43442 move-object/from16 v1, p0
43444 @@ -6970,17 +7272,17 @@
43446 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNewRilRadioTechnology:I
43448 - move/from16 v23, v0
43449 + move/from16 v24, v0
43451 - move/from16 v0, v23
43452 + move/from16 v0, v24
43454 move-object/from16 v1, p0
43456 iput v0, v1, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRilRadioTechnology:I
43458 - const/16 v23, 0x0
43459 + const/16 v24, 0x0
43461 - move/from16 v0, v23
43462 + move/from16 v0, v24
43464 move-object/from16 v1, p0
43466 @@ -6990,9 +7292,9 @@
43468 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
43470 - move-object/from16 v23, v0
43471 + move-object/from16 v24, v0
43473 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->setStateOutOfService()V
43474 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->setStateOutOfService()V
43476 if-eqz v13, :cond_1fd
43478 @@ -7000,21 +7302,21 @@
43480 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43482 - move-object/from16 v23, v0
43483 + move-object/from16 v24, v0
43485 - const-string v24, "gsm.network.type"
43486 + const-string v25, "gsm.network.type"
43488 move-object/from16 v0, p0
43490 iget v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRilRadioTechnology:I
43492 - move/from16 v25, v0
43493 + move/from16 v26, v0
43495 - invoke-static/range {v25 .. v25}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
43496 + invoke-static/range {v26 .. v26}, Landroid/telephony/ServiceState;->rilRadioTechnologyToString(I)Ljava/lang/String;
43498 - move-result-object v25
43499 + move-result-object v26
43501 - invoke-virtual/range {v23 .. v25}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43502 + invoke-virtual/range {v24 .. v26}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43504 :cond_1fd
43505 if-eqz v14, :cond_208
43506 @@ -7023,96 +7325,126 @@
43508 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNetworkAttachedRegistrants:Landroid/os/RegistrantList;
43510 - move-object/from16 v23, v0
43511 + move-object/from16 v24, v0
43513 - invoke-virtual/range {v23 .. v23}, Landroid/os/RegistrantList;->notifyRegistrants()V
43514 + invoke-virtual/range {v24 .. v24}, Landroid/os/RegistrantList;->notifyRegistrants()V
43516 :cond_208
43517 - if-eqz v10, :cond_2ce
43518 + if-eqz v10, :cond_2ec
43520 move-object/from16 v0, p0
43522 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
43524 - move-object/from16 v23, v0
43525 + move-object/from16 v24, v0
43527 - invoke-interface/range {v23 .. v23}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
43528 + invoke-interface/range {v24 .. v24}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
43530 - move-result-object v23
43531 + move-result-object v24
43533 - invoke-virtual/range {v23 .. v23}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
43534 + invoke-virtual/range {v24 .. v24}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
43536 - move-result v23
43537 + move-result v24
43539 - if-eqz v23, :cond_243
43540 + if-eqz v24, :cond_261
43542 move-object/from16 v0, p0
43544 iget-boolean v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->isSubscriptionFromRuim:Z
43546 - move/from16 v23, v0
43547 + move/from16 v24, v0
43549 - if-nez v23, :cond_243
43550 + if-nez v24, :cond_261
43552 move-object/from16 v0, p0
43554 - iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43555 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
43557 - move-object/from16 v23, v0
43558 + move-object/from16 v24, v0
43560 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getState()I
43561 + move-object/from16 v0, p0
43563 - move-result v23
43564 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mContext:Landroid/content/Context;
43566 + move-object/from16 v25, v0
43568 - if-nez v23, :cond_334
43569 + invoke-virtual/range {v25 .. v25}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
43571 + move-result-object v25
43573 + const/16 v26, 0x0
43575 + invoke-virtual/range {v24 .. v26}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
43577 + move-result-object v21
43579 move-object/from16 v0, p0
43581 - iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43582 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
43584 - move-object/from16 v23, v0
43585 + move-object/from16 v24, v0
43587 - invoke-virtual/range {v23 .. v23}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getCdmaEriText()Ljava/lang/String;
43588 + if-eqz v24, :cond_369
43590 - move-result-object v5
43591 + if-eqz v21, :cond_369
43593 + invoke-virtual/range {v21 .. v21}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
43595 + move-result v24
43597 + if-eqz v24, :cond_369
43599 - :goto_238
43600 move-object/from16 v0, p0
43602 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43604 - move-object/from16 v23, v0
43605 + move-object/from16 v24, v0
43607 - move-object/from16 v0, v23
43608 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
43610 + move-result v24
43612 + if-nez v24, :cond_352
43614 + const-string v5, ""
43616 + :goto_256
43617 + move-object/from16 v0, p0
43619 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43621 + move-object/from16 v24, v0
43623 + move-object/from16 v0, v24
43625 invoke-virtual {v0, v5}, Landroid/telephony/ServiceState;->setOperatorAlphaLong(Ljava/lang/String;)V
43627 - :cond_243
43628 + :cond_261
43629 move-object/from16 v0, p0
43631 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43633 - move-object/from16 v23, v0
43634 + move-object/from16 v24, v0
43636 - const-string v24, "gsm.operator.alpha"
43637 + const-string v25, "gsm.operator.alpha"
43639 move-object/from16 v0, p0
43641 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43643 - move-object/from16 v25, v0
43644 + move-object/from16 v26, v0
43646 - invoke-virtual/range {v25 .. v25}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
43647 + invoke-virtual/range {v26 .. v26}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
43649 - move-result-object v25
43650 + move-result-object v26
43652 - invoke-virtual/range {v23 .. v25}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43653 + invoke-virtual/range {v24 .. v26}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43655 - const-string v23, "gsm.operator.numeric"
43656 + const-string v24, "gsm.operator.numeric"
43658 - const-string v24, ""
43659 + const-string v25, ""
43661 - invoke-static/range {v23 .. v24}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
43662 + invoke-static/range {v24 .. v25}, Landroid/os/SystemProperties;->get(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String;
43664 move-result-object v20
43666 @@ -7120,9 +7452,9 @@
43668 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43670 - move-object/from16 v23, v0
43671 + move-object/from16 v24, v0
43673 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
43674 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
43676 move-result-object v19
43678 @@ -7130,25 +7462,25 @@
43680 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43682 - move-object/from16 v23, v0
43683 + move-object/from16 v24, v0
43685 - const-string v24, "gsm.operator.numeric"
43686 + const-string v25, "gsm.operator.numeric"
43688 - move-object/from16 v0, v23
43689 + move-object/from16 v0, v24
43691 - move-object/from16 v1, v24
43692 + move-object/from16 v1, v25
43694 move-object/from16 v2, v19
43696 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43698 - if-nez v19, :cond_34b
43699 + if-nez v19, :cond_398
43701 - const-string/jumbo v23, "operatorNumeric is null"
43702 + const-string/jumbo v24, "operatorNumeric is null"
43704 move-object/from16 v0, p0
43706 - move-object/from16 v1, v23
43707 + move-object/from16 v1, v24
43709 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->log(Ljava/lang/String;)V
43711 @@ -7156,52 +7488,52 @@
43713 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43715 - move-object/from16 v23, v0
43716 + move-object/from16 v24, v0
43718 - const-string v24, "gsm.operator.iso-country"
43719 + const-string v25, "gsm.operator.iso-country"
43721 - const-string v25, ""
43722 + const-string v26, ""
43724 - invoke-virtual/range {v23 .. v25}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43725 + invoke-virtual/range {v24 .. v26}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43727 - const/16 v23, 0x0
43728 + const/16 v24, 0x0
43730 - move/from16 v0, v23
43731 + move/from16 v0, v24
43733 move-object/from16 v1, p0
43735 iput-boolean v0, v1, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mGotCountryCode:Z
43737 - :cond_29c
43738 - :goto_29c
43739 + :cond_2ba
43740 + :goto_2ba
43741 move-object/from16 v0, p0
43743 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43745 - move-object/from16 v24, v0
43746 + move-object/from16 v25, v0
43748 - const-string v25, "gsm.operator.isroaming"
43749 + const-string v26, "gsm.operator.isroaming"
43751 move-object/from16 v0, p0
43753 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43755 - move-object/from16 v23, v0
43756 + move-object/from16 v24, v0
43758 - invoke-virtual/range {v23 .. v23}, Landroid/telephony/ServiceState;->getRoaming()Z
43759 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getRoaming()Z
43761 - move-result v23
43762 + move-result v24
43764 - if-eqz v23, :cond_3ed
43765 + if-eqz v24, :cond_43a
43767 - const-string/jumbo v23, "true"
43768 + const-string/jumbo v24, "true"
43770 - :goto_2b3
43771 - move-object/from16 v0, v24
43772 + :goto_2d1
43773 + move-object/from16 v0, v25
43775 - move-object/from16 v1, v25
43776 + move-object/from16 v1, v26
43778 - move-object/from16 v2, v23
43779 + move-object/from16 v2, v24
43781 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
43783 @@ -7211,226 +7543,274 @@
43785 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43787 - move-object/from16 v23, v0
43788 + move-object/from16 v24, v0
43790 move-object/from16 v0, p0
43792 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43794 - move-object/from16 v24, v0
43795 + move-object/from16 v25, v0
43797 - invoke-virtual/range {v23 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyServiceStateChanged(Landroid/telephony/ServiceState;)V
43798 + invoke-virtual/range {v24 .. v25}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyServiceStateChanged(Landroid/telephony/ServiceState;)V
43800 - :cond_2ce
43801 - if-eqz v7, :cond_2d9
43802 + :cond_2ec
43803 + if-eqz v7, :cond_2f7
43805 move-object/from16 v0, p0
43807 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mAttachedRegistrants:Landroid/os/RegistrantList;
43809 - move-object/from16 v23, v0
43810 + move-object/from16 v24, v0
43812 - invoke-virtual/range {v23 .. v23}, Landroid/os/RegistrantList;->notifyRegistrants()V
43813 + invoke-virtual/range {v24 .. v24}, Landroid/os/RegistrantList;->notifyRegistrants()V
43815 - :cond_2d9
43816 - if-eqz v9, :cond_2e4
43817 + :cond_2f7
43818 + if-eqz v9, :cond_302
43820 move-object/from16 v0, p0
43822 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mDetachedRegistrants:Landroid/os/RegistrantList;
43824 - move-object/from16 v23, v0
43825 + move-object/from16 v24, v0
43827 - invoke-virtual/range {v23 .. v23}, Landroid/os/RegistrantList;->notifyRegistrants()V
43828 + invoke-virtual/range {v24 .. v24}, Landroid/os/RegistrantList;->notifyRegistrants()V
43830 - :cond_2e4
43831 - if-nez v8, :cond_2e8
43832 + :cond_302
43833 + if-nez v8, :cond_306
43835 - if-eqz v13, :cond_2f3
43836 + if-eqz v13, :cond_311
43838 - :cond_2e8
43839 + :cond_306
43840 move-object/from16 v0, p0
43842 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43844 - move-object/from16 v23, v0
43845 + move-object/from16 v24, v0
43847 - const/16 v24, 0x0
43848 + const/16 v25, 0x0
43850 - invoke-virtual/range {v23 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyDataConnection(Ljava/lang/String;)V
43851 + invoke-virtual/range {v24 .. v25}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyDataConnection(Ljava/lang/String;)V
43853 - :cond_2f3
43854 - if-eqz v16, :cond_2fe
43855 + :cond_311
43856 + if-eqz v16, :cond_31c
43858 move-object/from16 v0, p0
43860 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRoamingOnRegistrants:Landroid/os/RegistrantList;
43862 - move-object/from16 v23, v0
43863 + move-object/from16 v24, v0
43865 - invoke-virtual/range {v23 .. v23}, Landroid/os/RegistrantList;->notifyRegistrants()V
43866 + invoke-virtual/range {v24 .. v24}, Landroid/os/RegistrantList;->notifyRegistrants()V
43868 - :cond_2fe
43869 - if-eqz v15, :cond_309
43870 + :cond_31c
43871 + if-eqz v15, :cond_327
43873 move-object/from16 v0, p0
43875 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mRoamingOffRegistrants:Landroid/os/RegistrantList;
43877 - move-object/from16 v23, v0
43878 + move-object/from16 v24, v0
43880 - invoke-virtual/range {v23 .. v23}, Landroid/os/RegistrantList;->notifyRegistrants()V
43881 + invoke-virtual/range {v24 .. v24}, Landroid/os/RegistrantList;->notifyRegistrants()V
43883 - :cond_309
43884 - if-eqz v12, :cond_314
43885 + :cond_327
43886 + if-eqz v12, :cond_332
43888 move-object/from16 v0, p0
43890 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43892 - move-object/from16 v23, v0
43893 + move-object/from16 v24, v0
43895 - invoke-virtual/range {v23 .. v23}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyLocationChanged()V
43896 + invoke-virtual/range {v24 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->notifyLocationChanged()V
43898 - :cond_314
43899 + :cond_332
43900 return-void
43902 - :cond_315
43903 + :cond_333
43904 const/4 v14, 0x0
43906 goto/16 :goto_50
43908 - :cond_318
43909 + :cond_336
43910 const/4 v11, 0x0
43912 goto/16 :goto_69
43914 - :cond_31b
43915 + :cond_339
43916 const/4 v7, 0x0
43918 goto/16 :goto_7a
43920 - :cond_31e
43921 + :cond_33c
43922 const/4 v9, 0x0
43924 goto/16 :goto_8b
43926 - :cond_321
43927 + :cond_33f
43928 const/4 v8, 0x0
43930 goto/16 :goto_9e
43932 - :cond_324
43933 + :cond_342
43934 const/4 v13, 0x0
43936 goto/16 :goto_b1
43938 - :cond_327
43939 + :cond_345
43940 const/4 v10, 0x0
43942 goto/16 :goto_c4
43944 - :cond_32a
43945 + :cond_348
43946 const/16 v16, 0x0
43948 goto/16 :goto_de
43950 - :cond_32e
43951 + :cond_34c
43952 const/4 v15, 0x0
43954 goto/16 :goto_f7
43956 - :cond_331
43957 + :cond_34f
43958 const/4 v12, 0x0
43960 goto/16 :goto_10a
43962 - :cond_334
43963 + :cond_352
43964 move-object/from16 v0, p0
43966 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
43968 - move-object/from16 v23, v0
43969 + move-object/from16 v24, v0
43971 - invoke-virtual/range {v23 .. v23}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getContext()Landroid/content/Context;
43972 + invoke-virtual/range {v24 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getContext()Landroid/content/Context;
43974 - move-result-object v23
43975 + move-result-object v24
43977 - const v24, 0x104010a
43978 + const v25, 0x104010a
43980 - invoke-virtual/range {v23 .. v24}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
43981 + invoke-virtual/range {v24 .. v25}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
43983 - move-result-object v23
43984 + move-result-object v24
43986 - invoke-virtual/range {v23 .. v23}, Ljava/lang/Object;->toString()Ljava/lang/String;
43987 + invoke-virtual/range {v24 .. v24}, Ljava/lang/Object;->toString()Ljava/lang/String;
43989 move-result-object v5
43991 - goto/16 :goto_238
43992 + goto/16 :goto_256
43994 + :cond_369
43995 + move-object/from16 v0, p0
43997 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->ss:Landroid/telephony/ServiceState;
43999 + move-object/from16 v24, v0
44001 + invoke-virtual/range {v24 .. v24}, Landroid/telephony/ServiceState;->getState()I
44003 + move-result v24
44005 + if-nez v24, :cond_381
44007 + move-object/from16 v0, p0
44009 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
44011 - :cond_34b
44012 + move-object/from16 v24, v0
44014 + invoke-virtual/range {v24 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getCdmaEriText()Ljava/lang/String;
44016 + move-result-object v5
44018 + goto/16 :goto_256
44020 + :cond_381
44021 + move-object/from16 v0, p0
44023 + iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
44025 + move-object/from16 v24, v0
44027 + invoke-virtual/range {v24 .. v24}, Lcom/android/internal/telephony/cdma/CDMAPhone;->getContext()Landroid/content/Context;
44029 + move-result-object v24
44031 + const v25, 0x104010a
44033 + invoke-virtual/range {v24 .. v25}, Landroid/content/Context;->getText(I)Ljava/lang/CharSequence;
44035 + move-result-object v24
44037 + invoke-virtual/range {v24 .. v24}, Ljava/lang/Object;->toString()Ljava/lang/String;
44039 + move-result-object v5
44041 + goto/16 :goto_256
44043 + :cond_398
44044 const-string v17, ""
44046 - const/16 v23, 0x0
44047 + const/16 v24, 0x0
44049 - const/16 v24, 0x3
44050 + const/16 v25, 0x3
44052 move-object/from16 v0, v19
44054 - move/from16 v1, v23
44055 + move/from16 v1, v24
44057 - move/from16 v2, v24
44058 + move/from16 v2, v25
44060 invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
44062 move-result-object v18
44064 - const/16 v23, 0x0
44065 + const/16 v24, 0x0
44067 - const/16 v24, 0x3
44068 + const/16 v25, 0x3
44070 - :try_start_35f
44071 + :try_start_3ac
44072 move-object/from16 v0, v19
44074 - move/from16 v1, v23
44075 + move/from16 v1, v24
44077 - move/from16 v2, v24
44078 + move/from16 v2, v25
44080 invoke-virtual {v0, v1, v2}, Ljava/lang/String;->substring(II)Ljava/lang/String;
44082 - move-result-object v23
44083 + move-result-object v24
44085 - invoke-static/range {v23 .. v23}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
44086 + invoke-static/range {v24 .. v24}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
44088 - move-result v23
44089 + move-result v24
44091 - invoke-static/range {v23 .. v23}, Lcom/android/internal/telephony/MccTable;->countryCodeForMcc(I)Ljava/lang/String;
44092 - :try_end_370
44093 - .catch Ljava/lang/NumberFormatException; {:try_start_35f .. :try_end_370} :catch_3af
44094 - .catch Ljava/lang/StringIndexOutOfBoundsException; {:try_start_35f .. :try_end_370} :catch_3ce
44095 + invoke-static/range {v24 .. v24}, Lcom/android/internal/telephony/MccTable;->countryCodeForMcc(I)Ljava/lang/String;
44096 + :try_end_3bd
44097 + .catch Ljava/lang/NumberFormatException; {:try_start_3ac .. :try_end_3bd} :catch_3fc
44098 + .catch Ljava/lang/StringIndexOutOfBoundsException; {:try_start_3ac .. :try_end_3bd} :catch_41b
44100 move-result-object v17
44102 - :goto_371
44103 + :goto_3be
44104 move-object/from16 v0, p0
44106 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
44108 - move-object/from16 v23, v0
44109 + move-object/from16 v24, v0
44111 - const-string v24, "gsm.operator.iso-country"
44112 + const-string v25, "gsm.operator.iso-country"
44114 - move-object/from16 v0, v23
44115 + move-object/from16 v0, v24
44117 - move-object/from16 v1, v24
44118 + move-object/from16 v1, v25
44120 move-object/from16 v2, v17
44122 invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/cdma/CDMAPhone;->setSystemProperty(Ljava/lang/String;Ljava/lang/String;)V
44124 - const/16 v23, 0x1
44125 + const/16 v24, 0x1
44127 - move/from16 v0, v23
44128 + move/from16 v0, v24
44130 move-object/from16 v1, p0
44132 @@ -7440,29 +7820,29 @@
44134 iget-object v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->phone:Lcom/android/internal/telephony/cdma/CDMAPhone;
44136 - move-object/from16 v23, v0
44137 + move-object/from16 v24, v0
44139 move-object/from16 v0, p0
44141 iget-boolean v0, v0, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->mNeedFixZone:Z
44143 - move/from16 v24, v0
44144 + move/from16 v25, v0
44146 move-object/from16 v0, p0
44148 - move-object/from16 v1, v23
44149 + move-object/from16 v1, v24
44151 move-object/from16 v2, v19
44153 move-object/from16 v3, v20
44155 - move/from16 v4, v24
44156 + move/from16 v4, v25
44158 invoke-virtual {v0, v1, v2, v3, v4}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->shouldFixTimeZoneNow(Lcom/android/internal/telephony/PhoneBase;Ljava/lang/String;Ljava/lang/String;Z)Z
44160 - move-result v23
44161 + move-result v24
44163 - if-eqz v23, :cond_29c
44164 + if-eqz v24, :cond_2ba
44166 move-object/from16 v0, p0
44168 @@ -7470,74 +7850,74 @@
44170 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->fixTimeZone(Ljava/lang/String;)V
44172 - goto/16 :goto_29c
44173 + goto/16 :goto_2ba
44175 - :catch_3af
44176 + :catch_3fc
44177 move-exception v6
44179 - new-instance v23, Ljava/lang/StringBuilder;
44180 + new-instance v24, Ljava/lang/StringBuilder;
44182 - invoke-direct/range {v23 .. v23}, Ljava/lang/StringBuilder;-><init>()V
44183 + invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;-><init>()V
44185 - const-string/jumbo v24, "pollStateDone: countryCodeForMcc error"
44186 + const-string/jumbo v25, "pollStateDone: countryCodeForMcc error"
44188 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44189 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44191 - move-result-object v23
44192 + move-result-object v24
44194 - move-object/from16 v0, v23
44195 + move-object/from16 v0, v24
44197 invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
44199 - move-result-object v23
44200 + move-result-object v24
44202 - invoke-virtual/range {v23 .. v23}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44203 + invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44205 - move-result-object v23
44206 + move-result-object v24
44208 move-object/from16 v0, p0
44210 - move-object/from16 v1, v23
44211 + move-object/from16 v1, v24
44213 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->loge(Ljava/lang/String;)V
44215 - goto :goto_371
44216 + goto :goto_3be
44218 - :catch_3ce
44219 + :catch_41b
44220 move-exception v6
44222 - new-instance v23, Ljava/lang/StringBuilder;
44223 + new-instance v24, Ljava/lang/StringBuilder;
44225 - invoke-direct/range {v23 .. v23}, Ljava/lang/StringBuilder;-><init>()V
44226 + invoke-direct/range {v24 .. v24}, Ljava/lang/StringBuilder;-><init>()V
44228 - const-string/jumbo v24, "pollStateDone: countryCodeForMcc error"
44229 + const-string/jumbo v25, "pollStateDone: countryCodeForMcc error"
44231 - invoke-virtual/range {v23 .. v24}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44232 + invoke-virtual/range {v24 .. v25}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44234 - move-result-object v23
44235 + move-result-object v24
44237 - move-object/from16 v0, v23
44238 + move-object/from16 v0, v24
44240 invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
44242 - move-result-object v23
44243 + move-result-object v24
44245 - invoke-virtual/range {v23 .. v23}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44246 + invoke-virtual/range {v24 .. v24}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44248 - move-result-object v23
44249 + move-result-object v24
44251 move-object/from16 v0, p0
44253 - move-object/from16 v1, v23
44254 + move-object/from16 v1, v24
44256 invoke-virtual {v0, v1}, Lcom/android/internal/telephony/cdma/CdmaServiceStateTracker;->loge(Ljava/lang/String;)V
44258 - goto :goto_371
44259 + goto :goto_3be
44261 - :cond_3ed
44262 - const-string v23, "false"
44263 + :cond_43a
44264 + const-string v24, "false"
44266 - goto/16 :goto_2b3
44267 + goto/16 :goto_2d1
44268 .end method
44270 .method protected radioTechnologyToDataServiceState(I)I
44271 diff -Npru stock-framework/smali/com/android/internal/telephony/cdma/RuimSmsInterfaceManager.smali ext-framework/smali/com/android/internal/telephony/cdma/RuimSmsInterfaceManager.smali
44272 --- stock-framework/smali/com/android/internal/telephony/cdma/RuimSmsInterfaceManager.smali 2012-11-02 22:31:10.971986557 -0500
44273 +++ ext-framework/smali/com/android/internal/telephony/cdma/RuimSmsInterfaceManager.smali 2012-11-02 22:30:50.655885820 -0500
44274 @@ -4,6 +4,10 @@
44277 # static fields
44278 +.field protected static final ACCESS_TYPE_ICC:I = 0x1
44280 +.field protected static final ACCESS_TYPE_SMS_MMS:I = 0x0
44282 .field static final DBG:Z = true
44284 .field private static final EVENT_LOAD_DONE:I = 0x1
44285 @@ -12,6 +16,8 @@
44287 .field static final LOG_TAG:Ljava/lang/String; = "CDMA"
44289 +.field protected static final P_TAG:Ljava/lang/String; = "PrivacySMSInterfaceManager"
44292 # instance fields
44293 .field mHandler:Landroid/os/Handler;
44294 @@ -31,6 +37,8 @@
44296 .field private mSuccess:Z
44298 +.field protected pSetMan:Landroid/privacy/PrivacySettingsManager;
44301 # direct methods
44302 .method public constructor <init>(Lcom/android/internal/telephony/cdma/CDMAPhone;Lcom/android/internal/telephony/SMSDispatcher;)V
44303 @@ -102,52 +110,70 @@
44304 .method public copyMessageToIccEf(I[B[B)Z
44305 .registers 9
44307 - new-instance v2, Ljava/lang/StringBuilder;
44308 + const/4 v2, 0x0
44310 - invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
44311 + new-instance v3, Ljava/lang/StringBuilder;
44313 - const-string v3, "copyMessageToIccEf: status="
44314 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
44316 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44317 + const-string v4, "copyMessageToIccEf: status="
44319 - move-result-object v2
44320 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44322 - invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44323 + move-result-object v3
44325 - move-result-object v2
44326 + invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44328 - const-string v3, " ==> "
44329 + move-result-object v3
44331 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44332 + const-string v4, " ==> "
44334 - move-result-object v2
44335 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44337 + move-result-object v3
44339 - const-string/jumbo v3, "pdu=("
44340 + const-string/jumbo v4, "pdu=("
44342 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44343 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44345 - move-result-object v2
44346 + move-result-object v3
44348 invoke-static {p2}, Ljava/util/Arrays;->toString([B)Ljava/lang/String;
44350 + move-result-object v4
44352 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44354 move-result-object v3
44356 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44357 + const-string v4, ")"
44359 - move-result-object v2
44360 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44362 - const-string v3, ")"
44363 + move-result-object v3
44365 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44366 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44368 - move-result-object v2
44369 + move-result-object v3
44371 - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
44372 + invoke-virtual {p0, v3}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
44374 - move-result-object v2
44375 + invoke-virtual {p0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
44377 - invoke-virtual {p0, v2}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
44378 + move-result-object v3
44380 + const/4 v4, 0x1
44382 + invoke-virtual {p0, v3, v4}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
44384 + move-result v3
44386 + if-nez v3, :cond_3e
44388 + :goto_3d
44389 + return v2
44391 + :cond_3e
44392 const-string v2, "Copying message to RUIM"
44394 invoke-virtual {p0, v2}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->enforceReceiveAndSend(Ljava/lang/String;)V
44395 @@ -158,7 +184,7 @@
44397 const/4 v2, 0x0
44399 - :try_start_3a
44400 + :try_start_47
44401 iput-boolean v2, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mSuccess:Z
44403 iget-object v2, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
44404 @@ -178,43 +204,43 @@
44405 move-result-object v4
44407 invoke-interface {v2, p1, v4, v1}, Lcom/android/internal/telephony/CommandsInterface;->writeSmsToRuim(ILjava/lang/String;Landroid/os/Message;)V
44408 - :try_end_4e
44409 - .catchall {:try_start_3a .. :try_end_4e} :catchall_5e
44410 + :try_end_5b
44411 + .catchall {:try_start_47 .. :try_end_5b} :catchall_6b
44413 - :try_start_4e
44414 + :try_start_5b
44415 iget-object v2, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mLock:Ljava/lang/Object;
44417 invoke-virtual {v2}, Ljava/lang/Object;->wait()V
44418 - :try_end_53
44419 - .catchall {:try_start_4e .. :try_end_53} :catchall_5e
44420 - .catch Ljava/lang/InterruptedException; {:try_start_4e .. :try_end_53} :catch_57
44421 + :try_end_60
44422 + .catchall {:try_start_5b .. :try_end_60} :catchall_6b
44423 + .catch Ljava/lang/InterruptedException; {:try_start_5b .. :try_end_60} :catch_64
44425 - :goto_53
44426 - :try_start_53
44427 + :goto_60
44428 + :try_start_60
44429 monitor-exit v3
44430 - :try_end_54
44431 - .catchall {:try_start_53 .. :try_end_54} :catchall_5e
44432 + :try_end_61
44433 + .catchall {:try_start_60 .. :try_end_61} :catchall_6b
44435 iget-boolean v2, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mSuccess:Z
44437 - return v2
44438 + goto :goto_3d
44440 - :catch_57
44441 + :catch_64
44442 move-exception v0
44444 - :try_start_58
44445 + :try_start_65
44446 const-string v2, "interrupted while trying to update by index"
44448 invoke-virtual {p0, v2}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
44450 - goto :goto_53
44451 + goto :goto_60
44453 - :catchall_5e
44454 + :catchall_6b
44455 move-exception v2
44457 monitor-exit v3
44458 - :try_end_60
44459 - .catchall {:try_start_58 .. :try_end_60} :catchall_5e
44460 + :try_end_6d
44461 + .catchall {:try_start_65 .. :try_end_6d} :catchall_6b
44463 throw v2
44464 .end method
44465 @@ -322,10 +348,30 @@
44467 .end annotation
44469 + const/4 v4, 0x1
44471 const-string v3, "getAllMessagesFromEF"
44473 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
44475 + invoke-virtual {p0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
44477 + move-result-object v3
44479 + invoke-virtual {p0, v3, v4}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
44481 + move-result v3
44483 + if-nez v3, :cond_16
44485 + new-instance v3, Ljava/util/ArrayList;
44487 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
44489 + :goto_15
44490 + return-object v3
44492 + :cond_16
44493 iget-object v3, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mPhone:Lcom/android/internal/telephony/PhoneBase;
44495 invoke-virtual {v3}, Lcom/android/internal/telephony/PhoneBase;->getContext()Landroid/content/Context;
44496 @@ -342,7 +388,7 @@
44498 monitor-enter v4
44500 - :try_start_15
44501 + :try_start_26
44502 iget-object v3, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
44504 const/4 v5, 0x1
44505 @@ -360,47 +406,360 @@
44506 const/16 v5, 0x6f3c
44508 invoke-virtual {v3, v5, v2}, Lcom/android/internal/telephony/IccFileHandler;->loadEFLinearFixedAll(ILandroid/os/Message;)V
44509 - :try_end_27
44510 - .catchall {:try_start_15 .. :try_end_27} :catchall_37
44511 + :try_end_38
44512 + .catchall {:try_start_26 .. :try_end_38} :catchall_48
44514 - :try_start_27
44515 + :try_start_38
44516 iget-object v3, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mLock:Ljava/lang/Object;
44518 invoke-virtual {v3}, Ljava/lang/Object;->wait()V
44519 - :try_end_2c
44520 - .catchall {:try_start_27 .. :try_end_2c} :catchall_37
44521 - .catch Ljava/lang/InterruptedException; {:try_start_27 .. :try_end_2c} :catch_30
44522 + :try_end_3d
44523 + .catchall {:try_start_38 .. :try_end_3d} :catchall_48
44524 + .catch Ljava/lang/InterruptedException; {:try_start_38 .. :try_end_3d} :catch_41
44526 - :goto_2c
44527 - :try_start_2c
44528 + :goto_3d
44529 + :try_start_3d
44530 monitor-exit v4
44531 - :try_end_2d
44532 - .catchall {:try_start_2c .. :try_end_2d} :catchall_37
44533 + :try_end_3e
44534 + .catchall {:try_start_3d .. :try_end_3e} :catchall_48
44536 iget-object v3, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mSms:Ljava/util/List;
44538 - return-object v3
44539 + goto :goto_15
44541 - :catch_30
44542 + :catch_41
44543 move-exception v1
44545 - :try_start_31
44546 + :try_start_42
44547 const-string v3, "interrupted while trying to load from the RUIM"
44549 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
44551 - goto :goto_2c
44552 + goto :goto_3d
44554 - :catchall_37
44555 + :catchall_48
44556 move-exception v3
44558 monitor-exit v4
44559 - :try_end_39
44560 - .catchall {:try_start_31 .. :try_end_39} :catchall_37
44561 + :try_end_4a
44562 + .catchall {:try_start_42 .. :try_end_4a} :catchall_48
44564 throw v3
44565 .end method
44567 +.method protected getPackageName()[Ljava/lang/String;
44568 + .registers 4
44570 + iget-object v2, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mContext:Landroid/content/Context;
44572 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
44574 + move-result-object v1
44576 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
44578 + move-result v2
44580 + invoke-virtual {v1, v2}, Landroid/content/pm/PackageManager;->getPackagesForUid(I)[Ljava/lang/String;
44582 + move-result-object v0
44584 + return-object v0
44585 +.end method
44587 +.method protected isAllowed([Ljava/lang/String;I)Z
44588 + .registers 12
44590 + const/4 v8, -0x1
44592 + const/4 v4, 0x1
44594 + const/4 v3, 0x0
44596 + packed-switch p2, :pswitch_data_e8
44598 + const/4 v5, 0x0
44600 + :try_start_7
44601 + aget-object v5, p1, v5
44603 + const/4 v6, 0x0
44605 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44607 + move v3, v4
44609 + :goto_e
44610 + return v3
44612 + :pswitch_f
44613 + const/4 v2, 0x0
44615 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44617 + if-nez v5, :cond_27
44619 + new-instance v5, Landroid/privacy/PrivacySettingsManager;
44621 + const/4 v6, 0x0
44623 + const-string/jumbo v7, "privacy"
44625 + invoke-static {v7}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
44627 + move-result-object v7
44629 + invoke-static {v7}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
44631 + move-result-object v7
44633 + invoke-direct {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
44635 + iput-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44637 + :cond_27
44638 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44640 + if-eqz v5, :cond_7f
44642 + if-eqz p1, :cond_7f
44644 + const/4 v1, 0x0
44646 + :goto_2e
44647 + array-length v5, p1
44649 + if-ge v1, v5, :cond_76
44651 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44653 + aget-object v6, p1, v1
44655 + const/4 v7, -0x1
44657 + invoke-virtual {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
44659 + move-result-object v2
44661 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44663 + if-eqz v5, :cond_72
44665 + if-eqz v2, :cond_72
44667 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getSmsSendSetting()B
44669 + move-result v5
44671 + if-eqz v5, :cond_72
44673 + aget-object v5, p1, v1
44675 + const/4 v6, 0x1
44677 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44678 + :try_end_4c
44679 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_4c} :catch_4d
44681 + goto :goto_e
44683 + :catch_4d
44684 + move-exception v0
44686 + const-string v5, "PrivacySMSInterfaceManager"
44688 + const-string v6, "Got exception while checking for sms or ICC acess permission"
44690 + invoke-static {v5, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
44692 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
44694 + if-eqz p1, :cond_70
44696 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44698 + if-eqz v5, :cond_70
44700 + array-length v5, p1
44702 + if-lez v5, :cond_70
44704 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44706 + aget-object v6, p1, v3
44708 + invoke-virtual {v5, v6, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
44710 + move-result-object v2
44712 + if-eqz v2, :cond_70
44714 + aget-object v5, p1, v3
44716 + invoke-virtual {p0, p2, v5, v3}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44718 + :cond_70
44719 + move v3, v4
44721 + goto :goto_e
44723 + :cond_72
44724 + const/4 v2, 0x0
44726 + add-int/lit8 v1, v1, 0x1
44728 + goto :goto_2e
44730 + :cond_76
44731 + const/4 v5, 0x0
44733 + :try_start_77
44734 + aget-object v5, p1, v5
44736 + const/4 v6, 0x0
44738 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44740 + move v3, v4
44742 + goto :goto_e
44744 + :cond_7f
44745 + if-eqz p1, :cond_8b
44747 + array-length v5, p1
44749 + if-lez v5, :cond_8b
44751 + const/4 v5, 0x0
44753 + aget-object v5, p1, v5
44755 + const/4 v6, 0x0
44757 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44759 + :cond_8b
44760 + move v3, v4
44762 + goto :goto_e
44764 + :pswitch_8d
44765 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44767 + if-nez v5, :cond_a4
44769 + new-instance v5, Landroid/privacy/PrivacySettingsManager;
44771 + const/4 v6, 0x0
44773 + const-string/jumbo v7, "privacy"
44775 + invoke-static {v7}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
44777 + move-result-object v7
44779 + invoke-static {v7}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
44781 + move-result-object v7
44783 + invoke-direct {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
44785 + iput-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44787 + :cond_a4
44788 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44790 + if-eqz v5, :cond_d9
44792 + if-eqz p1, :cond_d9
44794 + const/4 v1, 0x0
44796 + :goto_ab
44797 + array-length v5, p1
44799 + if-ge v1, v5, :cond_cf
44801 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44803 + aget-object v6, p1, v1
44805 + const/4 v7, -0x1
44807 + invoke-virtual {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
44809 + move-result-object v2
44811 + iget-object v5, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44813 + if-eqz v5, :cond_cb
44815 + if-eqz v2, :cond_cb
44817 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getIccAccessSetting()B
44819 + move-result v5
44821 + if-eqz v5, :cond_cb
44823 + aget-object v5, p1, v1
44825 + const/4 v6, 0x1
44827 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44829 + goto/16 :goto_e
44831 + :cond_cb
44832 + const/4 v2, 0x0
44834 + add-int/lit8 v1, v1, 0x1
44836 + goto :goto_ab
44838 + :cond_cf
44839 + const/4 v5, 0x0
44841 + aget-object v5, p1, v5
44843 + const/4 v6, 0x0
44845 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44847 + move v3, v4
44849 + goto/16 :goto_e
44851 + :cond_d9
44852 + if-eqz p1, :cond_e5
44854 + array-length v5, p1
44856 + if-lez v5, :cond_e5
44858 + const/4 v5, 0x0
44860 + aget-object v5, p1, v5
44862 + const/4 v6, 0x0
44864 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
44865 + :try_end_e5
44866 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_e5} :catch_4d
44868 + :cond_e5
44869 + move v3, v4
44871 + goto/16 :goto_e
44873 + :pswitch_data_e8
44874 + .packed-switch 0x0
44875 + :pswitch_f
44876 + :pswitch_8d
44877 + .end packed-switch
44878 +.end method
44880 .method protected log(Ljava/lang/String;)V
44881 .registers 5
44883 @@ -429,61 +788,128 @@
44884 return-void
44885 .end method
44887 +.method protected notify(ILjava/lang/String;B)V
44888 + .registers 11
44890 + const/4 v2, 0x0
44892 + const/4 v5, 0x0
44894 + packed-switch p1, :pswitch_data_1c
44896 + :goto_5
44897 + return-void
44899 + :pswitch_6
44900 + iget-object v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44902 + const-string v4, "SmsSend"
44904 + move-object v1, p2
44906 + move v3, p3
44908 + move-object v6, v5
44910 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
44912 + goto :goto_5
44914 + :pswitch_11
44915 + iget-object v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
44917 + const-string v4, "iccAccess"
44919 + move-object v1, p2
44921 + move v3, p3
44923 + move-object v6, v5
44925 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
44927 + goto :goto_5
44929 + :pswitch_data_1c
44930 + .packed-switch 0x0
44931 + :pswitch_6
44932 + :pswitch_11
44933 + .end packed-switch
44934 +.end method
44936 .method public updateMessageOnIccEf(II[B)Z
44937 .registers 12
44939 - new-instance v0, Ljava/lang/StringBuilder;
44940 + const/4 v0, 0x0
44942 - invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
44943 + new-instance v1, Ljava/lang/StringBuilder;
44945 - const-string/jumbo v1, "updateMessageOnIccEf: index="
44946 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
44948 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44949 + const-string/jumbo v2, "updateMessageOnIccEf: index="
44951 - move-result-object v0
44952 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44954 - invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44955 + move-result-object v1
44957 - move-result-object v0
44958 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44960 - const-string v1, " status="
44961 + move-result-object v1
44963 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44964 + const-string v2, " status="
44966 - move-result-object v0
44967 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44969 - invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44970 + move-result-object v1
44972 - move-result-object v0
44973 + invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
44975 - const-string v1, " ==> "
44976 + move-result-object v1
44978 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44979 + const-string v2, " ==> "
44981 - move-result-object v0
44982 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44984 - const-string v1, "("
44985 + move-result-object v1
44987 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44988 + const-string v2, "("
44990 - move-result-object v0
44991 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
44993 - invoke-virtual {v0, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
44994 + move-result-object v1
44996 - move-result-object v0
44997 + invoke-virtual {v1, p3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
44999 - const-string v1, ")"
45000 + move-result-object v1
45002 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45003 + const-string v2, ")"
45005 - move-result-object v0
45006 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45008 - invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45009 + move-result-object v1
45011 - move-result-object v0
45012 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45014 - invoke-virtual {p0, v0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
45015 + move-result-object v1
45017 + invoke-virtual {p0, v1}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
45019 + invoke-virtual {p0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
45021 + move-result-object v1
45023 + const/4 v2, 0x1
45025 + invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
45027 + move-result v1
45029 + if-nez v1, :cond_44
45031 + :goto_43
45032 + return v0
45034 + :cond_44
45035 const-string v0, "Updating message on RUIM"
45037 invoke-virtual {p0, v0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->enforceReceiveAndSend(Ljava/lang/String;)V
45038 @@ -494,7 +920,7 @@
45040 const/4 v0, 0x0
45042 - :try_start_40
45043 + :try_start_4d
45044 iput-boolean v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mSuccess:Z
45046 iget-object v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
45047 @@ -505,37 +931,37 @@
45049 move-result-object v5
45051 - if-nez p2, :cond_5b
45052 + if-nez p2, :cond_68
45054 iget-object v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mPhone:Lcom/android/internal/telephony/PhoneBase;
45056 iget-object v0, v0, Lcom/android/internal/telephony/PhoneBase;->mCM:Lcom/android/internal/telephony/CommandsInterface;
45058 invoke-interface {v0, p1, v5}, Lcom/android/internal/telephony/CommandsInterface;->deleteSmsOnRuim(ILandroid/os/Message;)V
45059 - :try_end_52
45060 - .catchall {:try_start_40 .. :try_end_52} :catchall_6d
45061 + :try_end_5f
45062 + .catchall {:try_start_4d .. :try_end_5f} :catchall_7a
45064 - :goto_52
45065 - :try_start_52
45066 + :goto_5f
45067 + :try_start_5f
45068 iget-object v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mLock:Ljava/lang/Object;
45070 invoke-virtual {v0}, Ljava/lang/Object;->wait()V
45071 - :try_end_57
45072 - .catchall {:try_start_52 .. :try_end_57} :catchall_6d
45073 - .catch Ljava/lang/InterruptedException; {:try_start_52 .. :try_end_57} :catch_70
45074 + :try_end_64
45075 + .catchall {:try_start_5f .. :try_end_64} :catchall_7a
45076 + .catch Ljava/lang/InterruptedException; {:try_start_5f .. :try_end_64} :catch_7d
45078 - :goto_57
45079 - :try_start_57
45080 + :goto_64
45081 + :try_start_64
45082 monitor-exit v7
45083 - :try_end_58
45084 - .catchall {:try_start_57 .. :try_end_58} :catchall_6d
45085 + :try_end_65
45086 + .catchall {:try_start_64 .. :try_end_65} :catchall_7a
45088 iget-boolean v0, p0, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->mSuccess:Z
45090 - return v0
45091 + goto :goto_43
45093 - :cond_5b
45094 - :try_start_5b
45095 + :cond_68
45096 + :try_start_68
45097 invoke-virtual {p0, p2, p3}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->makeSmsRecordData(I[B)[B
45099 move-result-object v3
45100 @@ -554,26 +980,26 @@
45102 invoke-virtual/range {v0 .. v5}, Lcom/android/internal/telephony/IccFileHandler;->updateEFLinearFixed(II[BLjava/lang/String;Landroid/os/Message;)V
45104 - goto :goto_52
45105 + goto :goto_5f
45107 - :catchall_6d
45108 + :catchall_7a
45109 move-exception v0
45111 monitor-exit v7
45112 - :try_end_6f
45113 - .catchall {:try_start_5b .. :try_end_6f} :catchall_6d
45114 + :try_end_7c
45115 + .catchall {:try_start_68 .. :try_end_7c} :catchall_7a
45117 throw v0
45119 - :catch_70
45120 + :catch_7d
45121 move-exception v6
45123 - :try_start_71
45124 + :try_start_7e
45125 const-string v0, "interrupted while trying to update by index"
45127 invoke-virtual {p0, v0}, Lcom/android/internal/telephony/cdma/RuimSmsInterfaceManager;->log(Ljava/lang/String;)V
45128 - :try_end_76
45129 - .catchall {:try_start_71 .. :try_end_76} :catchall_6d
45130 + :try_end_83
45131 + .catchall {:try_start_7e .. :try_end_83} :catchall_7a
45133 - goto :goto_57
45134 + goto :goto_64
45135 .end method
45136 diff -Npru stock-framework/smali/com/android/internal/telephony/gsm/GSMPhone.smali ext-framework/smali/com/android/internal/telephony/gsm/GSMPhone.smali
45137 --- stock-framework/smali/com/android/internal/telephony/gsm/GSMPhone.smali 2012-11-02 22:31:10.995986676 -0500
45138 +++ ext-framework/smali/com/android/internal/telephony/gsm/GSMPhone.smali 2012-11-02 22:30:49.087878035 -0500
45139 @@ -3158,7 +3158,7 @@
45140 return-void
45141 .end method
45143 -.method notifyLocationChanged()V
45144 +.method public notifyLocationChanged()V
45145 .registers 2
45147 iget-object v0, p0, Lcom/android/internal/telephony/gsm/GSMPhone;->mNotifier:Lcom/android/internal/telephony/PhoneNotifier;
45148 @@ -3176,7 +3176,7 @@
45149 return-void
45150 .end method
45152 -.method notifyPhoneStateChanged()V
45153 +.method public notifyPhoneStateChanged()V
45154 .registers 2
45156 iget-object v0, p0, Lcom/android/internal/telephony/gsm/GSMPhone;->mNotifier:Lcom/android/internal/telephony/PhoneNotifier;
45157 diff -Npru stock-framework/smali/com/android/internal/telephony/gsm/GsmServiceStateTracker.smali ext-framework/smali/com/android/internal/telephony/gsm/GsmServiceStateTracker.smali
45158 --- stock-framework/smali/com/android/internal/telephony/gsm/GsmServiceStateTracker.smali 2012-11-02 22:31:11.039986884 -0500
45159 +++ ext-framework/smali/com/android/internal/telephony/gsm/GsmServiceStateTracker.smali 2012-11-02 22:30:50.715886106 -0500
45160 @@ -54,6 +54,8 @@
45162 .field private mAutoTimeZoneObserver:Landroid/database/ContentObserver;
45164 +.field private mContext:Landroid/content/Context;
45166 .field private mDataRoaming:Z
45168 .field private mEmergencyOnly:Z
45169 @@ -104,6 +106,8 @@
45171 .field private newGPRSState:I
45173 +.field private pSetMan:Landroid/privacy/PrivacySettingsManager;
45175 .field phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45178 @@ -354,6 +358,30 @@
45180 invoke-virtual {v3, v4, v1}, Landroid/content/Context;->registerReceiver(Landroid/content/BroadcastReceiver;Landroid/content/IntentFilter;)Landroid/content/Intent;
45182 + invoke-virtual {p1}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
45184 + move-result-object v3
45186 + iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
45188 + new-instance v3, Landroid/privacy/PrivacySettingsManager;
45190 + iget-object v4, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
45192 + const-string/jumbo v5, "privacy"
45194 + invoke-static {v5}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
45196 + move-result-object v5
45198 + invoke-static {v5}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
45200 + move-result-object v5
45202 + invoke-direct {v3, v4, v5}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
45204 + iput-object v3, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
45206 const/4 v3, 0x3
45208 invoke-virtual {p1, v3}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyOtaspChanged(I)V
45209 @@ -5986,1422 +6014,2004 @@
45210 .end method
45212 .method public handleMessage(Landroid/os/Message;)V
45213 - .registers 19
45214 + .registers 24
45216 move-object/from16 v0, p0
45218 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45219 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45221 - iget-boolean v13, v13, Lcom/android/internal/telephony/gsm/GSMPhone;->mIsTheCurrentActivePhone:Z
45222 + move-object/from16 v18, v0
45224 - if-nez v13, :cond_37
45225 + move-object/from16 v0, v18
45227 - const-string v13, "GSM"
45228 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mIsTheCurrentActivePhone:Z
45230 - new-instance v14, Ljava/lang/StringBuilder;
45231 + move/from16 v18, v0
45233 - invoke-direct {v14}, Ljava/lang/StringBuilder;-><init>()V
45234 + if-nez v18, :cond_41
45236 - const-string v15, "Received message "
45237 + const-string v18, "GSM"
45239 - invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45240 + new-instance v19, Ljava/lang/StringBuilder;
45242 - move-result-object v14
45243 + invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
45245 - move-object/from16 v0, p1
45246 + const-string v20, "Received message "
45248 + invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45250 + move-result-object v19
45252 + move-object/from16 v0, v19
45254 + move-object/from16 v1, p1
45256 - invoke-virtual {v14, v0}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
45257 + invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
45259 - move-result-object v14
45260 + move-result-object v19
45262 - const-string v15, "["
45263 + const-string v20, "["
45265 - invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45266 + invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45268 - move-result-object v14
45269 + move-result-object v19
45271 move-object/from16 v0, p1
45273 - iget v15, v0, Landroid/os/Message;->what:I
45274 + iget v0, v0, Landroid/os/Message;->what:I
45276 - invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
45277 + move/from16 v20, v0
45279 - move-result-object v14
45280 + invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
45282 - const-string v15, "] while being destroyed. Ignoring."
45283 + move-result-object v19
45285 - invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45286 + const-string v20, "] while being destroyed. Ignoring."
45288 - move-result-object v14
45289 + invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45291 - invoke-virtual {v14}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45292 + move-result-object v19
45294 - move-result-object v14
45295 + invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45297 - invoke-static {v13, v14}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
45298 + move-result-object v19
45300 - :cond_36
45301 - :goto_36
45302 - :pswitch_36
45303 + invoke-static/range {v18 .. v19}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
45305 + :cond_40
45306 + :goto_40
45307 + :pswitch_40
45308 return-void
45310 - :cond_37
45311 + :cond_41
45312 move-object/from16 v0, p1
45314 - iget v13, v0, Landroid/os/Message;->what:I
45315 + iget v0, v0, Landroid/os/Message;->what:I
45317 - packed-switch v13, :pswitch_data_272
45318 + move/from16 v18, v0
45320 - :pswitch_3e
45321 + packed-switch v18, :pswitch_data_390
45323 + :pswitch_4a
45324 invoke-super/range {p0 .. p1}, Lcom/android/internal/telephony/ServiceStateTracker;->handleMessage(Landroid/os/Message;)V
45326 - goto :goto_36
45327 + goto :goto_40
45329 - :pswitch_42
45330 + :pswitch_4e
45331 move-object/from16 v0, p0
45333 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45334 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45336 + move-object/from16 v18, v0
45338 - invoke-interface {v13}, Lcom/android/internal/telephony/CommandsInterface;->setCurrentPreferredNetworkType()V
45339 + invoke-interface/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface;->setCurrentPreferredNetworkType()V
45341 move-object/from16 v0, p0
45343 - iget-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
45344 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
45346 - if-eqz v13, :cond_62
45347 + move/from16 v18, v0
45349 + if-eqz v18, :cond_82
45351 move-object/from16 v0, p0
45353 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45354 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45356 + move-object/from16 v18, v0
45358 - iget-object v13, v13, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
45359 + move-object/from16 v0, v18
45361 - const/16 v14, 0x10
45362 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
45364 - const/4 v15, 0x0
45365 + move-object/from16 v18, v0
45367 - move-object/from16 v0, p0
45368 + const/16 v19, 0x10
45370 - invoke-virtual {v13, v0, v14, v15}, Lcom/android/internal/telephony/IccRecords;->registerForRecordsLoaded(Landroid/os/Handler;ILjava/lang/Object;)V
45371 + const/16 v20, 0x0
45373 - const/4 v13, 0x0
45374 + move-object/from16 v0, v18
45376 - move-object/from16 v0, p0
45377 + move-object/from16 v1, p0
45379 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
45380 + move/from16 v2, v19
45382 - :cond_62
45383 + move-object/from16 v3, v20
45385 + invoke-virtual {v0, v1, v2, v3}, Lcom/android/internal/telephony/IccRecords;->registerForRecordsLoaded(Landroid/os/Handler;ILjava/lang/Object;)V
45387 + const/16 v18, 0x0
45389 + move/from16 v0, v18
45391 + move-object/from16 v1, p0
45393 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNeedToRegForSimLoaded:Z
45395 + :cond_82
45396 move-object/from16 v0, p0
45398 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45399 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45401 - invoke-virtual {v13}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
45402 + move-object/from16 v18, v0
45404 - move-result-object v13
45405 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
45407 - invoke-virtual {v13}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
45408 + move-result-object v18
45410 - move-result-object v13
45411 + invoke-virtual/range {v18 .. v18}, Landroid/content/Context;->getResources()Landroid/content/res/Resources;
45413 - const v14, 0x111002f
45414 + move-result-object v18
45416 - invoke-virtual {v13, v14}, Landroid/content/res/Resources;->getBoolean(I)Z
45417 + const v19, 0x111002f
45419 - move-result v10
45420 + invoke-virtual/range {v18 .. v19}, Landroid/content/res/Resources;->getBoolean(I)Z
45422 + move-result v14
45424 - if-nez v10, :cond_7f
45425 + if-nez v14, :cond_a4
45427 move-object/from16 v0, p0
45429 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45430 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45432 + move-object/from16 v18, v0
45434 - const/4 v14, 0x0
45435 + const/16 v19, 0x0
45437 - invoke-virtual {v13, v14}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
45438 + invoke-virtual/range {v18 .. v19}, Lcom/android/internal/telephony/gsm/GSMPhone;->restoreSavedNetworkSelection(Landroid/os/Message;)V
45440 - :cond_7f
45441 + :cond_a4
45442 invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
45444 invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
45446 - goto :goto_36
45447 + goto :goto_40
45449 - :pswitch_86
45450 + :pswitch_ab
45451 invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setPowerStateToDesired()V
45453 invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
45455 - goto :goto_36
45456 + goto :goto_40
45458 - :pswitch_8d
45459 + :pswitch_b2
45460 invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollState()V
45462 - goto :goto_36
45463 + goto :goto_40
45465 - :pswitch_91
45466 + :pswitch_b6
45467 move-object/from16 v0, p0
45469 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45470 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45472 - invoke-interface {v13}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
45473 + move-object/from16 v18, v0
45475 - move-result-object v13
45476 + invoke-interface/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
45478 - invoke-virtual {v13}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
45479 + move-result-object v18
45481 - move-result v13
45482 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
45484 - if-eqz v13, :cond_36
45485 + move-result v18
45487 + if-eqz v18, :cond_40
45489 move-object/from16 v0, p1
45491 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45492 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45494 - check-cast v1, Landroid/os/AsyncResult;
45495 + check-cast v4, Landroid/os/AsyncResult;
45497 move-object/from16 v0, p0
45499 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
45500 + invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
45502 invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->queueNextSignalStrengthPoll()V
45504 - goto :goto_36
45505 + goto/16 :goto_40
45507 - :pswitch_ae
45508 + :pswitch_d6
45509 move-object/from16 v0, p1
45511 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45512 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45514 - check-cast v1, Landroid/os/AsyncResult;
45515 + check-cast v4, Landroid/os/AsyncResult;
45517 - iget-object v13, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
45518 + iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
45520 - if-nez v13, :cond_101
45521 + move-object/from16 v18, v0
45523 - iget-object v13, v1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
45524 + if-nez v18, :cond_16b
45526 - check-cast v13, [Ljava/lang/String;
45527 + iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
45529 - move-object v11, v13
45530 + move-object/from16 v18, v0
45532 - check-cast v11, [Ljava/lang/String;
45533 + check-cast v18, [Ljava/lang/String;
45535 - const/4 v4, -0x1
45536 + move-object/from16 v15, v18
45538 - const/4 v2, -0x1
45539 + check-cast v15, [Ljava/lang/String;
45541 + const/4 v7, -0x1
45543 - array-length v13, v11
45544 + const/4 v5, -0x1
45546 - const/4 v14, 0x3
45547 + array-length v0, v15
45549 - if-lt v13, v14, :cond_f3
45550 + move/from16 v18, v0
45552 - const/4 v13, 0x1
45553 + const/16 v19, 0x3
45555 - :try_start_c6
45556 - aget-object v13, v11, v13
45557 + move/from16 v0, v18
45559 - if-eqz v13, :cond_dc
45560 + move/from16 v1, v19
45562 - const/4 v13, 0x1
45563 + if-lt v0, v1, :cond_12d
45565 - aget-object v13, v11, v13
45566 + const/16 v18, 0x1
45568 + :try_start_fb
45569 + aget-object v18, v15, v18
45571 - invoke-virtual {v13}, Ljava/lang/String;->length()I
45572 + if-eqz v18, :cond_113
45574 - move-result v13
45575 + const/16 v18, 0x1
45577 - if-lez v13, :cond_dc
45578 + aget-object v18, v15, v18
45580 - const/4 v13, 0x1
45581 + invoke-virtual/range {v18 .. v18}, Ljava/lang/String;->length()I
45583 - aget-object v13, v11, v13
45584 + move-result v18
45586 - const/16 v14, 0x10
45587 + if-lez v18, :cond_113
45589 - invoke-static {v13, v14}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
45590 + const/16 v18, 0x1
45592 - move-result v4
45593 + aget-object v18, v15, v18
45595 - :cond_dc
45596 - const/4 v13, 0x2
45597 + const/16 v19, 0x10
45599 - aget-object v13, v11, v13
45600 + invoke-static/range {v18 .. v19}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
45602 - if-eqz v13, :cond_f3
45603 + move-result v7
45605 - const/4 v13, 0x2
45606 + :cond_113
45607 + const/16 v18, 0x2
45609 - aget-object v13, v11, v13
45610 + aget-object v18, v15, v18
45612 - invoke-virtual {v13}, Ljava/lang/String;->length()I
45613 + if-eqz v18, :cond_12d
45615 - move-result v13
45616 + const/16 v18, 0x2
45618 - if-lez v13, :cond_f3
45619 + aget-object v18, v15, v18
45621 - const/4 v13, 0x2
45622 + invoke-virtual/range {v18 .. v18}, Ljava/lang/String;->length()I
45624 - aget-object v13, v11, v13
45625 + move-result v18
45627 - const/16 v14, 0x10
45628 + if-lez v18, :cond_12d
45630 - invoke-static {v13, v14}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
45631 - :try_end_f2
45632 - .catch Ljava/lang/NumberFormatException; {:try_start_c6 .. :try_end_f2} :catch_106
45633 + const/16 v18, 0x2
45635 - move-result v2
45636 + aget-object v18, v15, v18
45638 - :cond_f3
45639 - :goto_f3
45640 - move-object/from16 v0, p0
45641 + const/16 v19, 0x10
45643 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
45644 + invoke-static/range {v18 .. v19}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
45645 + :try_end_12c
45646 + .catch Ljava/lang/NumberFormatException; {:try_start_fb .. :try_end_12c} :catch_170
45648 - invoke-virtual {v13, v4, v2}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
45649 + move-result v5
45651 + :cond_12d
45652 + :goto_12d
45653 move-object/from16 v0, p0
45655 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45656 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
45658 - invoke-virtual {v13}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
45660 - :cond_101
45661 - invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->disableSingleLocationUpdate()V
45662 + move-object/from16 v18, v0
45664 - goto/16 :goto_36
45665 + move-object/from16 v0, p0
45667 - :catch_106
45668 - move-exception v3
45669 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
45671 - const-string v13, "GSM"
45672 + move-object/from16 v19, v0
45674 - new-instance v14, Ljava/lang/StringBuilder;
45675 + invoke-virtual/range {v19 .. v19}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
45677 - invoke-direct {v14}, Ljava/lang/StringBuilder;-><init>()V
45678 + move-result-object v19
45680 - const-string v15, "error parsing location: "
45681 + const/16 v20, 0x0
45683 - invoke-virtual {v14, v15}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45684 + invoke-virtual/range {v18 .. v20}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
45686 - move-result-object v14
45687 + move-result-object v13
45689 - invoke-virtual {v14, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
45690 + move-object/from16 v0, p0
45692 - move-result-object v14
45693 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
45695 - invoke-virtual {v14}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45696 + move-object/from16 v18, v0
45698 - move-result-object v14
45699 + if-eqz v18, :cond_18c
45701 - invoke-static {v13, v14}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
45702 + if-eqz v13, :cond_18c
45704 - goto :goto_f3
45705 + invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
45707 - :pswitch_120
45708 - move-object/from16 v0, p1
45709 + move-result v18
45711 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45712 + const/16 v19, 0x1
45714 - check-cast v1, Landroid/os/AsyncResult;
45715 + move/from16 v0, v18
45717 - move-object/from16 v0, p1
45718 + move/from16 v1, v19
45720 - iget v13, v0, Landroid/os/Message;->what:I
45721 + if-ne v0, v1, :cond_18c
45723 move-object/from16 v0, p0
45725 - invoke-virtual {v0, v13, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handlePollStateResult(ILandroid/os/AsyncResult;)V
45726 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
45728 + move-object/from16 v18, v0
45730 - goto/16 :goto_36
45731 + invoke-virtual/range {v18 .. v18}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
45733 - :pswitch_131
45734 move-object/from16 v0, p0
45736 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45737 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45739 - const/4 v14, 0x3
45740 + move-object/from16 v18, v0
45742 - move-object/from16 v0, p0
45743 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
45745 - invoke-virtual {v0, v14}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
45746 + :cond_16b
45747 + :goto_16b
45748 + invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->disableSingleLocationUpdate()V
45750 - move-result-object v14
45751 + goto/16 :goto_40
45753 - invoke-interface {v13, v14}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
45754 + :catch_170
45755 + move-exception v6
45757 - goto/16 :goto_36
45758 + const-string v18, "GSM"
45760 - :pswitch_141
45761 - move-object/from16 v0, p1
45762 + new-instance v19, Ljava/lang/StringBuilder;
45764 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45765 + invoke-direct/range {v19 .. v19}, Ljava/lang/StringBuilder;-><init>()V
45767 - check-cast v1, Landroid/os/AsyncResult;
45768 + const-string v20, "error parsing location: "
45770 - iget-object v13, v1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
45771 + invoke-virtual/range {v19 .. v20}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
45773 - check-cast v13, [Ljava/lang/Object;
45774 + move-result-object v19
45776 - check-cast v13, [Ljava/lang/Object;
45777 + move-object/from16 v0, v19
45779 - const/4 v14, 0x0
45780 + invoke-virtual {v0, v6}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
45782 - aget-object v9, v13, v14
45783 + move-result-object v19
45785 - check-cast v9, Ljava/lang/String;
45786 + invoke-virtual/range {v19 .. v19}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
45788 - iget-object v13, v1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
45789 + move-result-object v19
45791 - check-cast v13, [Ljava/lang/Object;
45792 + invoke-static/range {v18 .. v19}, Landroid/util/Log;->w(Ljava/lang/String;Ljava/lang/String;)I
45794 - check-cast v13, [Ljava/lang/Object;
45795 + goto :goto_12d
45797 - const/4 v14, 0x1
45798 + :cond_18c
45799 + move-object/from16 v0, p0
45801 - aget-object v13, v13, v14
45802 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
45804 - check-cast v13, Ljava/lang/Long;
45805 + move-object/from16 v18, v0
45807 - invoke-virtual {v13}, Ljava/lang/Long;->longValue()J
45808 + if-eqz v18, :cond_1c2
45810 - move-result-wide v7
45811 + if-eqz v13, :cond_1c2
45813 - move-object/from16 v0, p0
45814 + invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
45816 - invoke-direct {v0, v9, v7, v8}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setTimeFromNITZString(Ljava/lang/String;J)V
45817 + move-result v18
45819 - goto/16 :goto_36
45820 + const/16 v19, 0x3
45822 - :pswitch_168
45823 - move-object/from16 v0, p1
45824 + move/from16 v0, v18
45826 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45827 + move/from16 v1, v19
45829 - check-cast v1, Landroid/os/AsyncResult;
45830 + if-ne v0, v1, :cond_1c2
45832 - const/4 v13, 0x1
45833 + new-instance v17, Ljava/util/Random;
45835 + invoke-direct/range {v17 .. v17}, Ljava/util/Random;-><init>()V
45837 move-object/from16 v0, p0
45839 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
45840 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
45842 - move-object/from16 v0, p0
45843 + move-object/from16 v18, v0
45845 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
45846 + invoke-virtual/range {v17 .. v17}, Ljava/util/Random;->nextInt()I
45848 - goto/16 :goto_36
45849 + move-result v19
45851 - :pswitch_17a
45852 - invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateSpnDisplay()V
45853 + invoke-virtual/range {v17 .. v17}, Ljava/util/Random;->nextInt()I
45855 - goto/16 :goto_36
45856 + move-result v20
45858 - :pswitch_17f
45859 - move-object/from16 v0, p1
45860 + invoke-virtual/range {v18 .. v20}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
45862 + move-object/from16 v0, p0
45864 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45865 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45867 - check-cast v1, Landroid/os/AsyncResult;
45868 + move-object/from16 v18, v0
45870 - iget-object v13, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
45871 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
45873 - if-nez v13, :cond_36
45874 + goto :goto_16b
45876 + :cond_1c2
45877 move-object/from16 v0, p0
45879 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45880 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cellLoc:Landroid/telephony/gsm/GsmCellLocation;
45882 - const/16 v14, 0xf
45883 + move-object/from16 v18, v0
45885 - const/4 v15, 0x0
45886 + move-object/from16 v0, v18
45888 + invoke-virtual {v0, v7, v5}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
45890 move-object/from16 v0, p0
45892 - invoke-virtual {v0, v14, v15}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
45893 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
45895 - move-result-object v14
45896 + move-object/from16 v18, v0
45898 - invoke-interface {v13, v14}, Lcom/android/internal/telephony/CommandsInterface;->getVoiceRegistrationState(Landroid/os/Message;)V
45899 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->notifyLocationChanged()V
45901 - goto/16 :goto_36
45902 + goto :goto_16b
45904 - :pswitch_19b
45905 + :pswitch_1d7
45906 move-object/from16 v0, p1
45908 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45909 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45911 + check-cast v4, Landroid/os/AsyncResult;
45913 - check-cast v1, Landroid/os/AsyncResult;
45914 + move-object/from16 v0, p1
45916 - const/16 v13, 0x15
45917 + iget v0, v0, Landroid/os/Message;->what:I
45919 - iget-object v14, v1, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
45920 + move/from16 v18, v0
45922 move-object/from16 v0, p0
45924 - invoke-virtual {v0, v13, v14}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
45926 - move-result-object v6
45927 + move/from16 v1, v18
45929 - move-object/from16 v0, p0
45930 + invoke-virtual {v0, v1, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->handlePollStateResult(ILandroid/os/AsyncResult;)V
45932 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45933 + goto/16 :goto_40
45935 + :pswitch_1ec
45936 move-object/from16 v0, p0
45938 - iget v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
45939 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
45941 - invoke-interface {v13, v14, v6}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
45942 + move-object/from16 v18, v0
45944 - goto/16 :goto_36
45945 + const/16 v19, 0x3
45947 - :pswitch_1b8
45948 - move-object/from16 v0, p1
45949 + move-object/from16 v0, p0
45951 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45952 + move/from16 v1, v19
45954 - check-cast v1, Landroid/os/AsyncResult;
45955 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(I)Landroid/os/Message;
45957 - iget-object v13, v1, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
45958 + move-result-object v19
45960 - if-eqz v13, :cond_36
45961 + invoke-interface/range {v18 .. v19}, Lcom/android/internal/telephony/CommandsInterface;->getSignalStrength(Landroid/os/Message;)V
45963 - iget-object v13, v1, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
45964 + goto/16 :goto_40
45966 - check-cast v13, Landroid/os/Message;
45967 + :pswitch_201
45968 + move-object/from16 v0, p1
45970 - invoke-static {v13}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
45971 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45973 - move-result-object v13
45974 + check-cast v4, Landroid/os/AsyncResult;
45976 - iget-object v14, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
45977 + iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
45979 - iput-object v14, v13, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
45980 + move-object/from16 v18, v0
45982 - iget-object v13, v1, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
45983 + check-cast v18, [Ljava/lang/Object;
45985 - check-cast v13, Landroid/os/Message;
45986 + check-cast v18, [Ljava/lang/Object;
45988 - invoke-virtual {v13}, Landroid/os/Message;->sendToTarget()V
45989 + const/16 v19, 0x0
45991 - goto/16 :goto_36
45992 + aget-object v12, v18, v19
45994 - :pswitch_1d7
45995 - move-object/from16 v0, p1
45996 + check-cast v12, Ljava/lang/String;
45998 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
45999 + iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
46001 - check-cast v1, Landroid/os/AsyncResult;
46002 + move-object/from16 v18, v0
46004 - iget-object v13, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46005 + check-cast v18, [Ljava/lang/Object;
46007 - if-nez v13, :cond_202
46008 + check-cast v18, [Ljava/lang/Object;
46010 - iget-object v13, v1, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
46011 + const/16 v19, 0x1
46013 - check-cast v13, [I
46014 + aget-object v18, v18, v19
46016 - check-cast v13, [I
46017 + check-cast v18, Ljava/lang/Long;
46019 - const/4 v14, 0x0
46020 + invoke-virtual/range {v18 .. v18}, Ljava/lang/Long;->longValue()J
46022 - aget v13, v13, v14
46023 + move-result-wide v10
46025 move-object/from16 v0, p0
46027 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
46028 + invoke-direct {v0, v12, v10, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->setTimeFromNITZString(Ljava/lang/String;J)V
46030 - :goto_1ee
46031 - const/16 v13, 0x14
46032 + goto/16 :goto_40
46034 - iget-object v14, v1, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46035 + :pswitch_22e
46036 + move-object/from16 v0, p1
46038 - move-object/from16 v0, p0
46039 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46041 - invoke-virtual {v0, v13, v14}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
46042 + check-cast v4, Landroid/os/AsyncResult;
46044 - move-result-object v6
46045 + const/16 v18, 0x1
46047 - const/4 v12, 0x7
46048 + move/from16 v0, v18
46050 - move-object/from16 v0, p0
46051 + move-object/from16 v1, p0
46053 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46054 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->dontPollSignalStrength:Z
46056 - invoke-interface {v13, v12, v6}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
46057 + move-object/from16 v0, p0
46059 - goto/16 :goto_36
46060 + invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onSignalStrengthResult(Landroid/os/AsyncResult;)V
46062 - :cond_202
46063 - const/4 v13, 0x7
46064 + goto/16 :goto_40
46066 - move-object/from16 v0, p0
46067 + :pswitch_243
46068 + invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->updateSpnDisplay()V
46070 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
46071 + goto/16 :goto_40
46073 - goto :goto_1ee
46074 + :pswitch_248
46075 + move-object/from16 v0, p1
46077 - :pswitch_208
46078 - move-object/from16 v0, p0
46079 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46081 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46082 + check-cast v4, Landroid/os/AsyncResult;
46084 - if-eqz v13, :cond_255
46085 + iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46087 - move-object/from16 v0, p0
46088 + move-object/from16 v18, v0
46090 - iget v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
46091 + if-nez v18, :cond_40
46093 move-object/from16 v0, p0
46095 - iget-object v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46096 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46098 - invoke-virtual {v14}, Landroid/telephony/ServiceState;->getState()I
46099 + move-object/from16 v18, v0
46101 - move-result v14
46102 + const/16 v19, 0xf
46104 + const/16 v20, 0x0
46106 move-object/from16 v0, p0
46108 - invoke-direct {v0, v13, v14}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
46109 + move/from16 v1, v19
46111 - move-result v13
46112 + move-object/from16 v2, v20
46114 - if-nez v13, :cond_255
46115 + invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
46117 - move-object/from16 v0, p0
46118 + move-result-object v19
46120 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
46121 + invoke-interface/range {v18 .. v19}, Lcom/android/internal/telephony/CommandsInterface;->getVoiceRegistrationState(Landroid/os/Message;)V
46123 - invoke-virtual {v13}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
46124 + goto/16 :goto_40
46126 - move-result-object v5
46127 + :pswitch_26d
46128 + move-object/from16 v0, p1
46130 - check-cast v5, Landroid/telephony/gsm/GsmCellLocation;
46131 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46133 - const v14, 0xc3bb
46134 + check-cast v4, Landroid/os/AsyncResult;
46136 - const/4 v13, 0x2
46137 + const/16 v18, 0x15
46139 - new-array v15, v13, [Ljava/lang/Object;
46140 + iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46142 - const/4 v13, 0x0
46143 + move-object/from16 v19, v0
46145 move-object/from16 v0, p0
46147 - iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46148 + move/from16 v1, v18
46150 - move-object/from16 v16, v0
46151 + move-object/from16 v2, v19
46153 - invoke-virtual/range {v16 .. v16}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
46154 + invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
46156 - move-result-object v16
46157 + move-result-object v9
46159 - aput-object v16, v15, v13
46160 + move-object/from16 v0, p0
46162 - const/16 v16, 0x1
46163 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46165 - if-eqz v5, :cond_25c
46166 + move-object/from16 v18, v0
46168 - invoke-virtual {v5}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
46169 + move-object/from16 v0, p0
46171 - move-result v13
46172 + iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
46174 - :goto_247
46175 - invoke-static {v13}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
46176 + move/from16 v19, v0
46178 - move-result-object v13
46179 + move-object/from16 v0, v18
46181 - aput-object v13, v15, v16
46182 + move/from16 v1, v19
46184 - invoke-static {v14, v15}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
46185 + invoke-interface {v0, v1, v9}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
46187 - const/4 v13, 0x1
46188 + goto/16 :goto_40
46190 - move-object/from16 v0, p0
46191 + :pswitch_298
46192 + move-object/from16 v0, p1
46194 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
46195 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46197 - :cond_255
46198 - const/4 v13, 0x0
46199 + check-cast v4, Landroid/os/AsyncResult;
46201 - move-object/from16 v0, p0
46202 + iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46204 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
46205 + move-object/from16 v18, v0
46207 - goto/16 :goto_36
46208 + if-eqz v18, :cond_40
46210 - :cond_25c
46211 - const/4 v13, -0x1
46212 + iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46214 - goto :goto_247
46215 + move-object/from16 v18, v0
46217 - :pswitch_25e
46218 - const-string v13, "EVENT_RESTRICTED_STATE_CHANGED"
46219 + check-cast v18, Landroid/os/Message;
46221 - move-object/from16 v0, p0
46222 + invoke-static/range {v18 .. v18}, Landroid/os/AsyncResult;->forMessage(Landroid/os/Message;)Landroid/os/AsyncResult;
46224 - invoke-virtual {v0, v13}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
46225 + move-result-object v18
46227 - move-object/from16 v0, p1
46228 + iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46230 - iget-object v1, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46231 + move-object/from16 v19, v0
46233 - check-cast v1, Landroid/os/AsyncResult;
46234 + move-object/from16 v0, v19
46236 - move-object/from16 v0, p0
46237 + move-object/from16 v1, v18
46239 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onRestrictedStateChanged(Landroid/os/AsyncResult;)V
46240 + iput-object v0, v1, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46242 - goto/16 :goto_36
46243 + iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46245 - :pswitch_data_272
46246 - .packed-switch 0x1
46247 - :pswitch_86
46248 - :pswitch_8d
46249 - :pswitch_91
46250 - :pswitch_120
46251 - :pswitch_120
46252 - :pswitch_120
46253 - :pswitch_3e
46254 - :pswitch_3e
46255 - :pswitch_3e
46256 - :pswitch_131
46257 - :pswitch_141
46258 - :pswitch_168
46259 - :pswitch_36
46260 - :pswitch_120
46261 - :pswitch_ae
46262 - :pswitch_17a
46263 - :pswitch_42
46264 - :pswitch_17f
46265 - :pswitch_1d7
46266 - :pswitch_19b
46267 - :pswitch_1b8
46268 - :pswitch_208
46269 - :pswitch_25e
46270 - .end packed-switch
46271 -.end method
46272 + move-object/from16 v18, v0
46274 -.method protected handlePollStateResult(ILandroid/os/AsyncResult;)V
46275 - .registers 20
46276 + check-cast v18, Landroid/os/Message;
46278 - move-object/from16 v0, p2
46279 + invoke-virtual/range {v18 .. v18}, Landroid/os/Message;->sendToTarget()V
46281 - iget-object v13, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46282 + goto/16 :goto_40
46284 - move-object/from16 v0, p0
46285 + :pswitch_2c3
46286 + move-object/from16 v0, p1
46288 - iget-object v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46289 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46291 - if-eq v13, v14, :cond_b
46292 + check-cast v4, Landroid/os/AsyncResult;
46294 - :cond_a
46295 - :goto_a
46296 - return-void
46297 + iget-object v0, v4, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46299 - :cond_b
46300 - move-object/from16 v0, p2
46301 + move-object/from16 v18, v0
46303 - iget-object v13, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46304 + if-nez v18, :cond_302
46306 - if-eqz v13, :cond_af
46307 + iget-object v0, v4, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
46309 - const/4 v2, 0x0
46310 + move-object/from16 v18, v0
46312 - move-object/from16 v0, p2
46313 + check-cast v18, [I
46315 - iget-object v13, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46316 + check-cast v18, [I
46318 - instance-of v13, v13, Lcom/android/internal/telephony/CommandException;
46319 + const/16 v19, 0x0
46321 - if-eqz v13, :cond_26
46322 + aget v18, v18, v19
46324 - move-object/from16 v0, p2
46325 + move/from16 v0, v18
46327 - iget-object v13, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46328 + move-object/from16 v1, p0
46330 - check-cast v13, Lcom/android/internal/telephony/CommandException;
46331 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
46333 - check-cast v13, Lcom/android/internal/telephony/CommandException;
46334 + :goto_2e1
46335 + const/16 v18, 0x14
46337 - invoke-virtual {v13}, Lcom/android/internal/telephony/CommandException;->getCommandError()Lcom/android/internal/telephony/CommandException$Error;
46338 + iget-object v0, v4, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46340 - move-result-object v2
46341 + move-object/from16 v19, v0
46343 - :cond_26
46344 - sget-object v13, Lcom/android/internal/telephony/CommandException$Error;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/CommandException$Error;
46345 + move-object/from16 v0, p0
46347 - if-ne v2, v13, :cond_2e
46348 + move/from16 v1, v18
46350 - invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
46351 + move-object/from16 v2, v19
46353 + invoke-virtual {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->obtainMessage(ILjava/lang/Object;)Landroid/os/Message;
46355 + move-result-object v9
46357 - goto :goto_a
46358 + const/16 v16, 0x7
46360 - :cond_2e
46361 move-object/from16 v0, p0
46363 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46364 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46366 - invoke-interface {v13}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
46367 + move-object/from16 v18, v0
46369 - move-result-object v13
46370 + move-object/from16 v0, v18
46372 - invoke-virtual {v13}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
46373 + move/from16 v1, v16
46375 - move-result v13
46376 + invoke-interface {v0, v1, v9}, Lcom/android/internal/telephony/CommandsInterface;->setPreferredNetworkType(ILandroid/os/Message;)V
46378 - if-nez v13, :cond_40
46379 + goto/16 :goto_40
46381 - invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
46382 + :cond_302
46383 + const/16 v18, 0x7
46385 - goto :goto_a
46386 + move/from16 v0, v18
46388 - :cond_40
46389 - sget-object v13, Lcom/android/internal/telephony/CommandException$Error;->OP_NOT_ALLOWED_BEFORE_REG_NW:Lcom/android/internal/telephony/CommandException$Error;
46390 + move-object/from16 v1, p0
46392 - if-eq v2, v13, :cond_60
46393 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mPreferredNetworkType:I
46395 - new-instance v13, Ljava/lang/StringBuilder;
46396 + goto :goto_2e1
46398 - invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
46399 + :pswitch_30b
46400 + move-object/from16 v0, p0
46402 - const-string v14, "RIL implementation has returned an error where it must succeed"
46403 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46405 - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
46406 + move-object/from16 v18, v0
46408 - move-result-object v13
46409 + if-eqz v18, :cond_36d
46411 - move-object/from16 v0, p2
46412 + move-object/from16 v0, p0
46414 - iget-object v14, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46415 + iget v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->gprsState:I
46417 - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
46418 + move/from16 v18, v0
46420 - move-result-object v13
46421 + move-object/from16 v0, p0
46423 - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
46424 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46426 - move-result-object v13
46427 + move-object/from16 v19, v0
46429 - move-object/from16 v0, p0
46430 + invoke-virtual/range {v19 .. v19}, Landroid/telephony/ServiceState;->getState()I
46432 - invoke-virtual {v0, v13}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
46433 + move-result v19
46435 - :cond_60
46436 - :goto_60
46437 move-object/from16 v0, p0
46439 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46440 + move/from16 v1, v18
46442 - const/4 v14, 0x0
46443 + move/from16 v2, v19
46445 - aget v15, v13, v14
46446 + invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isGprsConsistent(II)Z
46448 - add-int/lit8 v15, v15, -0x1
46449 + move-result v18
46451 - aput v15, v13, v14
46452 + if-nez v18, :cond_36d
46454 move-object/from16 v0, p0
46456 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46457 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
46459 - const/4 v14, 0x0
46460 + move-object/from16 v18, v0
46462 - aget v13, v13, v14
46463 + invoke-virtual/range {v18 .. v18}, Lcom/android/internal/telephony/gsm/GSMPhone;->getCellLocation()Landroid/telephony/CellLocation;
46465 - if-nez v13, :cond_a
46466 + move-result-object v8
46468 - move-object/from16 v0, p0
46469 + check-cast v8, Landroid/telephony/gsm/GsmCellLocation;
46471 - iget-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46472 + const v19, 0xc3bb
46474 - if-nez v13, :cond_80
46475 + const/16 v18, 0x2
46477 - move-object/from16 v0, p0
46478 + move/from16 v0, v18
46480 - iget-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
46481 + new-array v0, v0, [Ljava/lang/Object;
46483 - if-eqz v13, :cond_25f
46484 + move-object/from16 v20, v0
46486 - :cond_80
46487 - const/4 v10, 0x1
46488 + const/16 v18, 0x0
46490 - :goto_81
46491 move-object/from16 v0, p0
46493 - iget-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46494 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
46496 - if-eqz v13, :cond_98
46497 + move-object/from16 v21, v0
46499 - move-object/from16 v0, p0
46500 + invoke-virtual/range {v21 .. v21}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
46502 - iget-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46503 + move-result-object v21
46505 - move-object/from16 v0, p0
46506 + aput-object v21, v20, v18
46508 - iget-object v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46509 + const/16 v21, 0x1
46511 - move-object/from16 v0, p0
46512 + if-eqz v8, :cond_377
46514 - invoke-direct {v0, v13, v14}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
46515 + invoke-virtual {v8}, Landroid/telephony/gsm/GsmCellLocation;->getCid()I
46517 - move-result v13
46518 + move-result v18
46520 - if-nez v13, :cond_98
46521 + :goto_35c
46522 + invoke-static/range {v18 .. v18}, Ljava/lang/Integer;->valueOf(I)Ljava/lang/Integer;
46524 - const/4 v10, 0x0
46525 + move-result-object v18
46527 - :cond_98
46528 - move-object/from16 v0, p0
46529 + aput-object v18, v20, v21
46531 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46532 + invoke-static/range {v19 .. v20}, Landroid/util/EventLog;->writeEvent(I[Ljava/lang/Object;)I
46534 - invoke-virtual {v13, v10}, Landroid/telephony/ServiceState;->setRoaming(Z)V
46535 + const/16 v18, 0x1
46537 - move-object/from16 v0, p0
46538 + move/from16 v0, v18
46540 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46541 + move-object/from16 v1, p0
46543 - move-object/from16 v0, p0
46544 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mReportedGprsNoReg:Z
46546 - iget-boolean v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
46547 + :cond_36d
46548 + const/16 v18, 0x0
46550 - invoke-virtual {v13, v14}, Landroid/telephony/ServiceState;->setEmergencyOnly(Z)V
46551 + move/from16 v0, v18
46553 - invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
46554 + move-object/from16 v1, p0
46556 - goto/16 :goto_a
46557 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mStartedGprsRegCheck:Z
46559 - :cond_af
46560 - sparse-switch p1, :sswitch_data_262
46561 + goto/16 :goto_40
46563 - goto :goto_60
46564 + :cond_377
46565 + const/16 v18, -0x1
46567 - :sswitch_b3
46568 - :try_start_b3
46569 - move-object/from16 v0, p2
46570 + goto :goto_35c
46572 - iget-object v13, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
46573 + :pswitch_37a
46574 + const-string v18, "EVENT_RESTRICTED_STATE_CHANGED"
46576 - check-cast v13, [Ljava/lang/String;
46577 + move-object/from16 v0, p0
46579 - move-object v0, v13
46580 + move-object/from16 v1, v18
46582 - check-cast v0, [Ljava/lang/String;
46583 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
46585 - move-object v11, v0
46586 + move-object/from16 v0, p1
46588 - const/4 v5, -0x1
46589 + iget-object v4, v0, Landroid/os/Message;->obj:Ljava/lang/Object;
46591 - const/4 v1, -0x1
46592 + check-cast v4, Landroid/os/AsyncResult;
46594 - const/4 v9, -0x1
46595 + move-object/from16 v0, p0
46597 - const/4 v8, -0x1
46598 + invoke-direct {v0, v4}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->onRestrictedStateChanged(Landroid/os/AsyncResult;)V
46600 - const/4 v7, -0x1
46601 + goto/16 :goto_40
46603 - array-length v13, v11
46604 - :try_end_c3
46605 - .catch Ljava/lang/RuntimeException; {:try_start_b3 .. :try_end_c3} :catch_159
46606 + :pswitch_data_390
46607 + .packed-switch 0x1
46608 + :pswitch_ab
46609 + :pswitch_b2
46610 + :pswitch_b6
46611 + :pswitch_1d7
46612 + :pswitch_1d7
46613 + :pswitch_1d7
46614 + :pswitch_4a
46615 + :pswitch_4a
46616 + :pswitch_4a
46617 + :pswitch_1ec
46618 + :pswitch_201
46619 + :pswitch_22e
46620 + :pswitch_40
46621 + :pswitch_1d7
46622 + :pswitch_d6
46623 + :pswitch_243
46624 + :pswitch_4e
46625 + :pswitch_248
46626 + :pswitch_2c3
46627 + :pswitch_26d
46628 + :pswitch_298
46629 + :pswitch_30b
46630 + :pswitch_37a
46631 + .end packed-switch
46632 +.end method
46634 - if-lez v13, :cond_11d
46635 +.method protected handlePollStateResult(ILandroid/os/AsyncResult;)V
46636 + .registers 24
46638 - const/4 v13, 0x0
46639 + move-object/from16 v0, p2
46641 - :try_start_c6
46642 - aget-object v13, v11, v13
46643 + iget-object v0, v0, Landroid/os/AsyncResult;->userObj:Ljava/lang/Object;
46645 - invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
46646 + move-object/from16 v17, v0
46648 - move-result v9
46649 + move-object/from16 v0, p0
46651 - array-length v13, v11
46652 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46654 - const/4 v14, 0x3
46655 + move-object/from16 v18, v0
46657 - if-lt v13, v14, :cond_fe
46658 + move-object/from16 v0, v17
46660 - const/4 v13, 0x1
46661 + move-object/from16 v1, v18
46663 - aget-object v13, v11, v13
46664 + if-eq v0, v1, :cond_13
46666 - if-eqz v13, :cond_e7
46667 + :cond_12
46668 + :goto_12
46669 + return-void
46671 - const/4 v13, 0x1
46672 + :cond_13
46673 + move-object/from16 v0, p2
46675 + iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46677 + move-object/from16 v17, v0
46679 + if-eqz v17, :cond_e7
46681 + const/4 v4, 0x0
46683 + move-object/from16 v0, p2
46685 + iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46687 + move-object/from16 v17, v0
46689 + move-object/from16 v0, v17
46691 + instance-of v0, v0, Lcom/android/internal/telephony/CommandException;
46693 + move/from16 v17, v0
46695 + if-eqz v17, :cond_38
46697 + move-object/from16 v0, p2
46699 + iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46701 + move-object/from16 v17, v0
46703 + check-cast v17, Lcom/android/internal/telephony/CommandException;
46705 + check-cast v17, Lcom/android/internal/telephony/CommandException;
46707 + invoke-virtual/range {v17 .. v17}, Lcom/android/internal/telephony/CommandException;->getCommandError()Lcom/android/internal/telephony/CommandException$Error;
46709 + move-result-object v4
46711 + :cond_38
46712 + sget-object v17, Lcom/android/internal/telephony/CommandException$Error;->RADIO_NOT_AVAILABLE:Lcom/android/internal/telephony/CommandException$Error;
46714 + move-object/from16 v0, v17
46716 + if-ne v4, v0, :cond_42
46718 + invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
46720 + goto :goto_12
46722 + :cond_42
46723 + move-object/from16 v0, p0
46725 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
46727 + move-object/from16 v17, v0
46729 + invoke-interface/range {v17 .. v17}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
46731 + move-result-object v17
46733 + invoke-virtual/range {v17 .. v17}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
46735 + move-result v17
46737 + if-nez v17, :cond_56
46739 + invoke-virtual/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cancelPollState()V
46741 + goto :goto_12
46743 + :cond_56
46744 + sget-object v17, Lcom/android/internal/telephony/CommandException$Error;->OP_NOT_ALLOWED_BEFORE_REG_NW:Lcom/android/internal/telephony/CommandException$Error;
46746 + move-object/from16 v0, v17
46748 + if-eq v4, v0, :cond_7c
46750 + new-instance v17, Ljava/lang/StringBuilder;
46752 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
46754 + const-string v18, "RIL implementation has returned an error where it must succeed"
46756 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
46758 + move-result-object v17
46760 + move-object/from16 v0, p2
46762 + iget-object v0, v0, Landroid/os/AsyncResult;->exception:Ljava/lang/Throwable;
46764 + move-object/from16 v18, v0
46766 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
46768 + move-result-object v17
46770 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
46772 + move-result-object v17
46774 + move-object/from16 v0, p0
46776 + move-object/from16 v1, v17
46778 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
46780 + :cond_7c
46781 + :goto_7c
46782 + move-object/from16 v0, p0
46784 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46786 + move-object/from16 v17, v0
46788 + const/16 v18, 0x0
46790 + aget v19, v17, v18
46792 + add-int/lit8 v19, v19, -0x1
46794 + aput v19, v17, v18
46796 + move-object/from16 v0, p0
46798 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollingContext:[I
46800 + move-object/from16 v17, v0
46802 + const/16 v18, 0x0
46804 + aget v17, v17, v18
46806 + if-nez v17, :cond_12
46808 + move-object/from16 v0, p0
46810 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46812 + move/from16 v17, v0
46814 + if-nez v17, :cond_a6
46816 + move-object/from16 v0, p0
46818 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
46820 + move/from16 v17, v0
46822 + if-eqz v17, :cond_3c7
46824 + :cond_a6
46825 + const/4 v12, 0x1
46827 + :goto_a7
46828 + move-object/from16 v0, p0
46830 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46832 + move/from16 v17, v0
46834 + if-eqz v17, :cond_c8
46836 + move-object/from16 v0, p0
46838 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
46840 + move/from16 v17, v0
46842 + move-object/from16 v0, p0
46844 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46846 + move-object/from16 v18, v0
46848 + move-object/from16 v0, p0
46850 + move/from16 v1, v17
46852 + move-object/from16 v2, v18
46854 + invoke-direct {v0, v1, v2}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->isRoamingBetweenOperators(ZLandroid/telephony/ServiceState;)Z
46856 + move-result v17
46858 + if-nez v17, :cond_c8
46860 + const/4 v12, 0x0
46862 + :cond_c8
46863 + move-object/from16 v0, p0
46865 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46867 + move-object/from16 v17, v0
46869 + move-object/from16 v0, v17
46871 + invoke-virtual {v0, v12}, Landroid/telephony/ServiceState;->setRoaming(Z)V
46873 + move-object/from16 v0, p0
46875 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
46877 + move-object/from16 v17, v0
46879 + move-object/from16 v0, p0
46881 + iget-boolean v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
46883 + move/from16 v18, v0
46885 + invoke-virtual/range {v17 .. v18}, Landroid/telephony/ServiceState;->setEmergencyOnly(Z)V
46887 + invoke-direct/range {p0 .. p0}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pollStateDone()V
46889 + goto/16 :goto_12
46891 + :cond_e7
46892 + :try_start_e7
46893 + move-object/from16 v0, p0
46895 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
46897 + move-object/from16 v17, v0
46899 + move-object/from16 v0, p0
46901 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
46903 + move-object/from16 v18, v0
46905 + invoke-virtual/range {v18 .. v18}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
46907 + move-result-object v18
46909 + const/16 v19, 0x0
46911 + invoke-virtual/range {v17 .. v19}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
46913 + move-result-object v13
46915 + sparse-switch p1, :sswitch_data_3ca
46917 + goto/16 :goto_7c
46919 + :sswitch_102
46920 + move-object/from16 v0, p2
46922 + iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
46924 + move-object/from16 v17, v0
46926 + check-cast v17, [Ljava/lang/String;
46928 + move-object/from16 v0, v17
46930 + check-cast v0, [Ljava/lang/String;
46932 + move-object v14, v0
46934 + const/4 v7, -0x1
46936 + const/4 v3, -0x1
46938 + const/4 v11, -0x1
46940 + const/4 v10, -0x1
46942 + const/4 v9, -0x1
46944 + array-length v0, v14
46946 + move/from16 v17, v0
46947 + :try_end_117
46948 + .catch Ljava/lang/RuntimeException; {:try_start_e7 .. :try_end_117} :catch_1ec
46950 + if-lez v17, :cond_185
46952 + const/16 v17, 0x0
46954 + :try_start_11b
46955 + aget-object v17, v14, v17
46957 + invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
46959 + move-result v11
46961 + array-length v0, v14
46963 + move/from16 v17, v0
46965 + const/16 v18, 0x3
46967 + move/from16 v0, v17
46969 + move/from16 v1, v18
46971 + if-lt v0, v1, :cond_160
46973 + const/16 v17, 0x1
46975 + aget-object v17, v14, v17
46977 + if-eqz v17, :cond_146
46979 + const/16 v17, 0x1
46981 + aget-object v17, v14, v17
46983 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
46985 + move-result v17
46987 + if-lez v17, :cond_146
46989 + const/16 v17, 0x1
46991 + aget-object v17, v14, v17
46993 + const/16 v18, 0x10
46995 + invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
46997 + move-result v7
46999 + :cond_146
47000 + const/16 v17, 0x2
47002 + aget-object v17, v14, v17
47004 + if-eqz v17, :cond_160
47006 + const/16 v17, 0x2
47008 + aget-object v17, v14, v17
47010 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
47012 + move-result v17
47014 + if-lez v17, :cond_160
47016 + const/16 v17, 0x2
47018 + aget-object v17, v14, v17
47020 + const/16 v18, 0x10
47022 + invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
47024 + move-result v3
47026 + :cond_160
47027 + array-length v0, v14
47029 + move/from16 v17, v0
47031 + const/16 v18, 0xe
47033 + move/from16 v0, v17
47035 + move/from16 v1, v18
47037 + if-le v0, v1, :cond_185
47039 + const/16 v17, 0xe
47041 + aget-object v17, v14, v17
47043 + if-eqz v17, :cond_185
47045 + const/16 v17, 0xe
47047 + aget-object v17, v14, v17
47049 + invoke-virtual/range {v17 .. v17}, Ljava/lang/String;->length()I
47051 + move-result v17
47053 + if-lez v17, :cond_185
47055 + const/16 v17, 0xe
47057 + aget-object v17, v14, v17
47059 + const/16 v18, 0x10
47061 + invoke-static/range {v17 .. v18}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
47062 + :try_end_184
47063 + .catch Ljava/lang/NumberFormatException; {:try_start_11b .. :try_end_184} :catch_20b
47064 + .catch Ljava/lang/RuntimeException; {:try_start_11b .. :try_end_184} :catch_1ec
47066 + move-result v9
47068 + :cond_185
47069 + :goto_185
47070 + :try_start_185
47071 + move-object/from16 v0, p0
47073 + invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
47075 + move-result v17
47077 + move/from16 v0, v17
47079 + move-object/from16 v1, p0
47081 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
47083 + move-object/from16 v0, p0
47085 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47087 + move-object/from16 v17, v0
47089 + move-object/from16 v0, p0
47091 + invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
47093 - aget-object v13, v11, v13
47094 + move-result v18
47096 - invoke-virtual {v13}, Ljava/lang/String;->length()I
47097 + invoke-virtual/range {v17 .. v18}, Landroid/telephony/ServiceState;->setState(I)V
47099 - move-result v13
47100 + const/16 v17, 0xa
47102 - if-lez v13, :cond_e7
47103 + move/from16 v0, v17
47105 - const/4 v13, 0x1
47106 + if-eq v11, v0, :cond_1b8
47108 - aget-object v13, v11, v13
47109 + const/16 v17, 0xc
47111 - const/16 v14, 0x10
47112 + move/from16 v0, v17
47114 - invoke-static {v13, v14}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
47115 + if-eq v11, v0, :cond_1b8
47117 - move-result v5
47118 + const/16 v17, 0xd
47120 - :cond_e7
47121 - const/4 v13, 0x2
47122 + move/from16 v0, v17
47124 - aget-object v13, v11, v13
47125 + if-eq v11, v0, :cond_1b8
47127 - if-eqz v13, :cond_fe
47128 + const/16 v17, 0xe
47130 - const/4 v13, 0x2
47131 + move/from16 v0, v17
47133 - aget-object v13, v11, v13
47134 + if-ne v11, v0, :cond_22a
47136 - invoke-virtual {v13}, Ljava/lang/String;->length()I
47137 + :cond_1b8
47138 + const/16 v17, 0x1
47140 - move-result v13
47141 + move/from16 v0, v17
47143 - if-lez v13, :cond_fe
47144 + move-object/from16 v1, p0
47146 - const/4 v13, 0x2
47147 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
47149 - aget-object v13, v11, v13
47150 + :goto_1c0
47151 + move-object/from16 v0, p0
47153 - const/16 v14, 0x10
47154 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
47156 - invoke-static {v13, v14}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
47157 + move-object/from16 v17, v0
47159 - move-result v1
47160 + if-eqz v17, :cond_233
47162 - :cond_fe
47163 - array-length v13, v11
47164 + if-eqz v13, :cond_233
47166 - const/16 v14, 0xe
47167 + invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
47169 - if-le v13, v14, :cond_11d
47170 + move-result v17
47172 + const/16 v18, 0x1
47174 + move/from16 v0, v17
47176 + move/from16 v1, v18
47178 + if-ne v0, v1, :cond_233
47180 + move-object/from16 v0, p0
47182 - const/16 v13, 0xe
47183 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47185 - aget-object v13, v11, v13
47186 + move-object/from16 v17, v0
47188 - if-eqz v13, :cond_11d
47189 + invoke-virtual/range {v17 .. v17}, Landroid/telephony/gsm/GsmCellLocation;->setStateInvalid()V
47191 - const/16 v13, 0xe
47192 + move-object/from16 v0, p0
47194 - aget-object v13, v11, v13
47195 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47197 - invoke-virtual {v13}, Ljava/lang/String;->length()I
47198 + move-object/from16 v17, v0
47200 - move-result v13
47201 + move-object/from16 v0, v17
47203 - if-lez v13, :cond_11d
47204 + invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
47205 + :try_end_1ea
47206 + .catch Ljava/lang/RuntimeException; {:try_start_185 .. :try_end_1ea} :catch_1ec
47208 - const/16 v13, 0xe
47209 + goto/16 :goto_7c
47211 - aget-object v13, v11, v13
47212 + :catch_1ec
47213 + move-exception v5
47215 - const/16 v14, 0x10
47216 + new-instance v17, Ljava/lang/StringBuilder;
47218 - invoke-static {v13, v14}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;I)I
47219 - :try_end_11c
47220 - .catch Ljava/lang/NumberFormatException; {:try_start_c6 .. :try_end_11c} :catch_174
47221 - .catch Ljava/lang/RuntimeException; {:try_start_c6 .. :try_end_11c} :catch_159
47222 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
47224 - move-result v7
47225 + const-string v18, "Exception while polling service state. Probably malformed RIL response."
47227 - :cond_11d
47228 - :goto_11d
47229 - :try_start_11d
47230 - move-object/from16 v0, p0
47231 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47233 - invoke-direct {v0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
47234 + move-result-object v17
47236 - move-result v13
47237 + move-object/from16 v0, v17
47239 - move-object/from16 v0, p0
47240 + invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47242 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mGsmRoaming:Z
47243 + move-result-object v17
47245 - move-object/from16 v0, p0
47246 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47248 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47249 + move-result-object v17
47251 move-object/from16 v0, p0
47253 - invoke-direct {v0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
47254 + move-object/from16 v1, v17
47256 - move-result v14
47257 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47259 - invoke-virtual {v13, v14}, Landroid/telephony/ServiceState;->setState(I)V
47260 + goto/16 :goto_7c
47262 - const/16 v13, 0xa
47263 + :catch_20b
47264 + move-exception v5
47266 - if-eq v9, v13, :cond_144
47267 + :try_start_20c
47268 + new-instance v17, Ljava/lang/StringBuilder;
47270 - const/16 v13, 0xc
47271 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
47273 - if-eq v9, v13, :cond_144
47274 + const-string v18, "error parsing RegistrationState: "
47276 - const/16 v13, 0xd
47277 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47279 - if-eq v9, v13, :cond_144
47280 + move-result-object v17
47282 - const/16 v13, 0xe
47283 + move-object/from16 v0, v17
47285 - if-ne v9, v13, :cond_18e
47286 + invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47288 - :cond_144
47289 - const/4 v13, 0x1
47290 + move-result-object v17
47292 - move-object/from16 v0, p0
47293 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47295 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
47296 + move-result-object v17
47298 - :goto_149
47299 move-object/from16 v0, p0
47301 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47302 + move-object/from16 v1, v17
47304 - invoke-virtual {v13, v5, v1}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
47305 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47307 - move-object/from16 v0, p0
47308 + goto/16 :goto_185
47310 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47311 + :cond_22a
47312 + const/16 v17, 0x0
47314 - invoke-virtual {v13, v7}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
47315 - :try_end_157
47316 - .catch Ljava/lang/RuntimeException; {:try_start_11d .. :try_end_157} :catch_159
47317 + move/from16 v0, v17
47319 - goto/16 :goto_60
47320 + move-object/from16 v1, p0
47322 - :catch_159
47323 - move-exception v3
47324 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
47326 - new-instance v13, Ljava/lang/StringBuilder;
47327 + goto :goto_1c0
47329 - invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
47330 + :cond_233
47331 + move-object/from16 v0, p0
47333 - const-string v14, "Exception while polling service state. Probably malformed RIL response."
47334 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
47336 - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47337 + move-object/from16 v17, v0
47339 - move-result-object v13
47340 + if-eqz v17, :cond_26c
47342 - invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47343 + if-eqz v13, :cond_26c
47345 - move-result-object v13
47346 + invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getLocationNetworkSetting()B
47348 + move-result v17
47350 - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47351 + const/16 v18, 0x3
47353 - move-result-object v13
47354 + move/from16 v0, v17
47356 + move/from16 v1, v18
47358 + if-ne v0, v1, :cond_26c
47360 + new-instance v16, Ljava/util/Random;
47362 + invoke-direct/range {v16 .. v16}, Ljava/util/Random;-><init>()V
47364 move-object/from16 v0, p0
47366 - invoke-virtual {v0, v13}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47367 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47369 - goto/16 :goto_60
47370 + move-object/from16 v17, v0
47372 - :catch_174
47373 - move-exception v3
47374 + invoke-virtual/range {v16 .. v16}, Ljava/util/Random;->nextInt()I
47376 - :try_start_175
47377 - new-instance v13, Ljava/lang/StringBuilder;
47378 + move-result v18
47380 - invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
47381 + invoke-virtual/range {v16 .. v16}, Ljava/util/Random;->nextInt()I
47383 - const-string v14, "error parsing RegistrationState: "
47384 + move-result v19
47386 - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47387 + invoke-virtual/range {v17 .. v19}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
47389 - move-result-object v13
47390 + move-object/from16 v0, p0
47392 - invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47393 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47395 - move-result-object v13
47396 + move-object/from16 v17, v0
47398 + move-object/from16 v0, v17
47400 - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47401 + invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
47403 - move-result-object v13
47404 + goto/16 :goto_7c
47406 + :cond_26c
47407 move-object/from16 v0, p0
47409 - invoke-virtual {v0, v13}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47410 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47412 + move-object/from16 v17, v0
47414 - goto :goto_11d
47415 + move-object/from16 v0, v17
47417 - :cond_18e
47418 - const/4 v13, 0x0
47419 + invoke-virtual {v0, v7, v3}, Landroid/telephony/gsm/GsmCellLocation;->setLacAndCid(II)V
47421 move-object/from16 v0, p0
47423 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
47424 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newCellLoc:Landroid/telephony/gsm/GsmCellLocation;
47426 + move-object/from16 v17, v0
47428 + move-object/from16 v0, v17
47430 + invoke-virtual {v0, v9}, Landroid/telephony/gsm/GsmCellLocation;->setPsc(I)V
47432 - goto :goto_149
47433 + goto/16 :goto_7c
47435 - :sswitch_194
47436 + :sswitch_284
47437 move-object/from16 v0, p2
47439 - iget-object v13, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47440 + iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47442 + move-object/from16 v17, v0
47444 - check-cast v13, [Ljava/lang/String;
47445 + check-cast v17, [Ljava/lang/String;
47447 - move-object v0, v13
47448 + move-object/from16 v0, v17
47450 check-cast v0, [Ljava/lang/String;
47452 - move-object v11, v0
47453 + move-object v14, v0
47455 - const/4 v12, 0x0
47456 + const/4 v15, 0x0
47458 - const/4 v9, -0x1
47459 + const/4 v11, -0x1
47461 - const/4 v13, -0x1
47462 + const/16 v17, -0x1
47464 - move-object/from16 v0, p0
47465 + move/from16 v0, v17
47467 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
47468 + move-object/from16 v1, p0
47470 - const/4 v13, 0x1
47471 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
47473 - move-object/from16 v0, p0
47474 + const/16 v17, 0x1
47476 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
47477 + move/from16 v0, v17
47479 - array-length v13, v11
47480 - :try_end_1ab
47481 - .catch Ljava/lang/RuntimeException; {:try_start_175 .. :try_end_1ab} :catch_159
47482 + move-object/from16 v1, p0
47484 - if-lez v13, :cond_1e5
47485 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
47487 - const/4 v13, 0x0
47488 + array-length v0, v14
47490 - :try_start_1ae
47491 - aget-object v13, v11, v13
47492 + move/from16 v17, v0
47493 + :try_end_2a6
47494 + .catch Ljava/lang/RuntimeException; {:try_start_20c .. :try_end_2a6} :catch_1ec
47496 - invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47497 + if-lez v17, :cond_301
47499 - move-result v9
47500 + const/16 v17, 0x0
47502 - array-length v13, v11
47503 + :try_start_2aa
47504 + aget-object v17, v14, v17
47506 - const/4 v14, 0x4
47507 + invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47509 - if-lt v13, v14, :cond_1c4
47510 + move-result v11
47512 - const/4 v13, 0x3
47513 + array-length v0, v14
47515 - aget-object v13, v11, v13
47516 + move/from16 v17, v0
47518 - if-eqz v13, :cond_1c4
47519 + const/16 v18, 0x4
47521 - const/4 v13, 0x3
47522 + move/from16 v0, v17
47524 - aget-object v13, v11, v13
47525 + move/from16 v1, v18
47527 - invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47528 + if-lt v0, v1, :cond_2c9
47530 - move-result v12
47531 + const/16 v17, 0x3
47533 - :cond_1c4
47534 - array-length v13, v11
47535 + aget-object v17, v14, v17
47537 - const/4 v14, 0x5
47538 + if-eqz v17, :cond_2c9
47540 - if-lt v13, v14, :cond_1d6
47541 + const/16 v17, 0x3
47543 - const/4 v13, 0x3
47544 + aget-object v17, v14, v17
47546 - if-ne v9, v13, :cond_1d6
47547 + invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47549 - const/4 v13, 0x4
47550 + move-result v15
47552 - aget-object v13, v11, v13
47553 + :cond_2c9
47554 + array-length v0, v14
47556 - invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47557 + move/from16 v17, v0
47559 - move-result v13
47560 + const/16 v18, 0x5
47562 - move-object/from16 v0, p0
47563 + move/from16 v0, v17
47565 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
47566 + move/from16 v1, v18
47568 - :cond_1d6
47569 - array-length v13, v11
47570 + if-lt v0, v1, :cond_2e8
47572 - const/4 v14, 0x6
47573 + const/16 v17, 0x3
47575 - if-lt v13, v14, :cond_1e5
47576 + move/from16 v0, v17
47578 - const/4 v13, 0x5
47579 + if-ne v11, v0, :cond_2e8
47581 - aget-object v13, v11, v13
47582 + const/16 v17, 0x4
47584 - invoke-static {v13}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47585 + aget-object v17, v14, v17
47587 - move-result v13
47588 + invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47590 - move-object/from16 v0, p0
47591 + move-result v17
47593 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
47594 - :try_end_1e5
47595 - .catch Ljava/lang/NumberFormatException; {:try_start_1ae .. :try_end_1e5} :catch_206
47596 - .catch Ljava/lang/RuntimeException; {:try_start_1ae .. :try_end_1e5} :catch_159
47597 + move/from16 v0, v17
47599 - :cond_1e5
47600 - :goto_1e5
47601 - :try_start_1e5
47602 - move-object/from16 v0, p0
47603 + move-object/from16 v1, p0
47605 - invoke-direct {v0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
47606 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewReasonDataDenied:I
47608 - move-result v13
47609 + :cond_2e8
47610 + array-length v0, v14
47612 - move-object/from16 v0, p0
47613 + move/from16 v17, v0
47615 + const/16 v18, 0x6
47617 + move/from16 v0, v17
47619 + move/from16 v1, v18
47621 + if-lt v0, v1, :cond_301
47623 - iput v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
47624 + const/16 v17, 0x5
47626 + aget-object v17, v14, v17
47628 + invoke-static/range {v17 .. v17}, Ljava/lang/Integer;->parseInt(Ljava/lang/String;)I
47630 + move-result v17
47632 + move/from16 v0, v17
47634 + move-object/from16 v1, p0
47636 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewMaxDataCalls:I
47637 + :try_end_301
47638 + .catch Ljava/lang/NumberFormatException; {:try_start_2aa .. :try_end_301} :catch_32a
47639 + .catch Ljava/lang/RuntimeException; {:try_start_2aa .. :try_end_301} :catch_1ec
47641 + :cond_301
47642 + :goto_301
47643 + :try_start_301
47644 move-object/from16 v0, p0
47646 - invoke-direct {v0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
47647 + invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeToServiceState(I)I
47649 - move-result v13
47650 + move-result v17
47652 + move/from16 v0, v17
47654 + move-object/from16 v1, p0
47656 + iput v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newGPRSState:I
47658 move-object/from16 v0, p0
47660 - iput-boolean v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
47661 + invoke-direct {v0, v11}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->regCodeIsRoaming(I)Z
47663 + move-result v17
47665 + move/from16 v0, v17
47667 + move-object/from16 v1, p0
47669 + iput-boolean v0, v1, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mDataRoaming:Z
47671 move-object/from16 v0, p0
47673 - iput v12, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
47674 + iput v15, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mNewRilRadioTechnology:I
47676 move-object/from16 v0, p0
47678 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47679 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47681 - invoke-virtual {v13, v12}, Landroid/telephony/ServiceState;->setRadioTechnology(I)V
47682 + move-object/from16 v17, v0
47684 - goto/16 :goto_60
47685 + move-object/from16 v0, v17
47687 - :catch_206
47688 - move-exception v3
47689 + invoke-virtual {v0, v15}, Landroid/telephony/ServiceState;->setRadioTechnology(I)V
47691 - new-instance v13, Ljava/lang/StringBuilder;
47692 + goto/16 :goto_7c
47694 - invoke-direct {v13}, Ljava/lang/StringBuilder;-><init>()V
47695 + :catch_32a
47696 + move-exception v5
47698 - const-string v14, "error parsing GprsRegistrationState: "
47699 + new-instance v17, Ljava/lang/StringBuilder;
47701 - invoke-virtual {v13, v14}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47702 + invoke-direct/range {v17 .. v17}, Ljava/lang/StringBuilder;-><init>()V
47704 - move-result-object v13
47705 + const-string v18, "error parsing GprsRegistrationState: "
47707 - invoke-virtual {v13, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47708 + invoke-virtual/range {v17 .. v18}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
47710 - move-result-object v13
47711 + move-result-object v17
47713 - invoke-virtual {v13}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47714 + move-object/from16 v0, v17
47716 - move-result-object v13
47717 + invoke-virtual {v0, v5}, Ljava/lang/StringBuilder;->append(Ljava/lang/Object;)Ljava/lang/StringBuilder;
47719 + move-result-object v17
47721 + invoke-virtual/range {v17 .. v17}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
47723 + move-result-object v17
47725 move-object/from16 v0, p0
47727 - invoke-virtual {v0, v13}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47728 + move-object/from16 v1, v17
47730 + invoke-virtual {v0, v1}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->loge(Ljava/lang/String;)V
47732 - goto :goto_1e5
47733 + goto :goto_301
47735 - :sswitch_220
47736 + :sswitch_348
47737 move-object/from16 v0, p2
47739 - iget-object v13, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47740 + iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47742 + move-object/from16 v17, v0
47744 - check-cast v13, [Ljava/lang/String;
47745 + check-cast v17, [Ljava/lang/String;
47747 - move-object v0, v13
47748 + move-object/from16 v0, v17
47750 check-cast v0, [Ljava/lang/String;
47752 - move-object v6, v0
47753 + move-object v8, v0
47755 + if-eqz v8, :cond_7c
47757 - if-eqz v6, :cond_60
47758 + array-length v0, v8
47760 - array-length v13, v6
47761 + move/from16 v17, v0
47763 - const/4 v14, 0x3
47764 + const/16 v18, 0x3
47766 - if-lt v13, v14, :cond_60
47767 + move/from16 v0, v17
47769 + move/from16 v1, v18
47771 + if-lt v0, v1, :cond_7c
47773 move-object/from16 v0, p0
47775 - iget-object v13, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47776 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
47778 - const/4 v14, 0x0
47779 + move-object/from16 v17, v0
47781 - aget-object v14, v6, v14
47782 + if-eqz v17, :cond_383
47784 - const/4 v15, 0x1
47785 + if-eqz v13, :cond_383
47787 + invoke-virtual {v13}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
47789 + move-result v17
47791 + if-eqz v17, :cond_383
47793 + move-object/from16 v0, p0
47795 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47797 + move-object/from16 v17, v0
47799 + const-string v18, ""
47801 + const-string v19, ""
47803 + const-string v20, ""
47805 + invoke-virtual/range {v17 .. v20}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
47807 + goto/16 :goto_7c
47809 + :cond_383
47810 + move-object/from16 v0, p0
47812 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47814 + move-object/from16 v17, v0
47816 + const/16 v18, 0x0
47818 - aget-object v15, v6, v15
47819 + aget-object v18, v8, v18
47821 - const/16 v16, 0x2
47822 + const/16 v19, 0x1
47824 + aget-object v19, v8, v19
47826 - aget-object v16, v6, v16
47827 + const/16 v20, 0x2
47829 - invoke-virtual/range {v13 .. v16}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
47830 + aget-object v20, v8, v20
47832 - goto/16 :goto_60
47833 + invoke-virtual/range {v17 .. v20}, Landroid/telephony/ServiceState;->setOperatorName(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V
47835 - :sswitch_243
47836 + goto/16 :goto_7c
47838 + :sswitch_39a
47839 move-object/from16 v0, p2
47841 - iget-object v13, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47842 + iget-object v0, v0, Landroid/os/AsyncResult;->result:Ljava/lang/Object;
47844 + move-object/from16 v17, v0
47846 - check-cast v13, [I
47847 + check-cast v17, [I
47849 - move-object v0, v13
47850 + move-object/from16 v0, v17
47852 check-cast v0, [I
47854 - move-object v4, v0
47855 + move-object v6, v0
47857 move-object/from16 v0, p0
47859 - iget-object v14, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47860 + iget-object v0, v0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->newSS:Landroid/telephony/ServiceState;
47862 - const/4 v13, 0x0
47863 + move-object/from16 v18, v0
47865 - aget v13, v4, v13
47866 + const/16 v17, 0x0
47868 - const/4 v15, 0x1
47869 + aget v17, v6, v17
47871 - if-ne v13, v15, :cond_25d
47872 + const/16 v19, 0x1
47874 - const/4 v13, 0x1
47875 + move/from16 v0, v17
47877 - :goto_258
47878 - invoke-virtual {v14, v13}, Landroid/telephony/ServiceState;->setIsManualSelection(Z)V
47879 - :try_end_25b
47880 - .catch Ljava/lang/RuntimeException; {:try_start_1e5 .. :try_end_25b} :catch_159
47881 + move/from16 v1, v19
47883 - goto/16 :goto_60
47884 + if-ne v0, v1, :cond_3c4
47886 - :cond_25d
47887 - const/4 v13, 0x0
47888 + const/16 v17, 0x1
47890 - goto :goto_258
47891 + :goto_3bb
47892 + move-object/from16 v0, v18
47894 - :cond_25f
47895 - const/4 v10, 0x0
47896 + move/from16 v1, v17
47898 + invoke-virtual {v0, v1}, Landroid/telephony/ServiceState;->setIsManualSelection(Z)V
47899 + :try_end_3c2
47900 + .catch Ljava/lang/RuntimeException; {:try_start_301 .. :try_end_3c2} :catch_1ec
47902 + goto/16 :goto_7c
47904 + :cond_3c4
47905 + const/16 v17, 0x0
47907 + goto :goto_3bb
47909 + :cond_3c7
47910 + const/4 v12, 0x0
47912 - goto/16 :goto_81
47913 + goto/16 :goto_a7
47915 - :sswitch_data_262
47916 + :sswitch_data_3ca
47917 .sparse-switch
47918 - 0x4 -> :sswitch_b3
47919 - 0x5 -> :sswitch_194
47920 - 0x6 -> :sswitch_220
47921 - 0xe -> :sswitch_243
47922 + 0x4 -> :sswitch_102
47923 + 0x5 -> :sswitch_284
47924 + 0x6 -> :sswitch_348
47925 + 0xe -> :sswitch_39a
47926 .end sparse-switch
47927 .end method
47929 @@ -7584,257 +8194,287 @@
47930 .end method
47932 .method protected updateSpnDisplay()V
47933 - .registers 13
47934 + .registers 14
47936 - const/4 v11, 0x2
47937 + const/4 v12, 0x2
47939 - const/4 v7, 0x0
47940 + const/4 v7, 0x1
47942 - const/4 v6, 0x1
47943 + const/4 v8, 0x0
47945 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
47946 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
47948 - iget-object v8, v8, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
47949 + iget-object v9, v9, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
47951 - iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
47952 + iget-object v10, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
47954 - invoke-virtual {v9}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
47955 + invoke-virtual {v10}, Landroid/telephony/ServiceState;->getOperatorNumeric()Ljava/lang/String;
47957 - move-result-object v9
47958 + move-result-object v10
47960 - invoke-virtual {v8, v9}, Lcom/android/internal/telephony/IccRecords;->getDisplayRule(Ljava/lang/String;)I
47961 + invoke-virtual {v9, v10}, Lcom/android/internal/telephony/IccRecords;->getDisplayRule(Ljava/lang/String;)I
47963 move-result v2
47965 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
47966 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
47968 - iget-object v8, v8, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
47969 + iget-object v10, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mContext:Landroid/content/Context;
47971 - invoke-virtual {v8}, Lcom/android/internal/telephony/IccRecords;->getServiceProviderName()Ljava/lang/String;
47972 + invoke-virtual {v10}, Landroid/content/Context;->getPackageName()Ljava/lang/String;
47974 - move-result-object v5
47975 + move-result-object v10
47977 + invoke-virtual {v9, v10, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
47979 + move-result-object v3
47981 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->pSetMan:Landroid/privacy/PrivacySettingsManager;
47983 + if-eqz v9, :cond_108
47985 + if-eqz v3, :cond_108
47987 + invoke-virtual {v3}, Landroid/privacy/PrivacySettings;->getNetworkInfoSetting()B
47989 + move-result v9
47991 + if-eqz v9, :cond_108
47993 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
47994 + const-string v6, ""
47996 - invoke-virtual {v8}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
47997 + :goto_2b
47998 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->ss:Landroid/telephony/ServiceState;
48000 + invoke-virtual {v9}, Landroid/telephony/ServiceState;->getOperatorAlphaLong()Ljava/lang/String;
48002 move-result-object v1
48004 - iget-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48005 + iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48007 - if-eqz v8, :cond_5b
48008 + if-eqz v9, :cond_6d
48010 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
48011 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->cm:Lcom/android/internal/telephony/CommandsInterface;
48013 - invoke-interface {v8}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
48014 + invoke-interface {v9}, Lcom/android/internal/telephony/CommandsInterface;->getRadioState()Lcom/android/internal/telephony/CommandsInterface$RadioState;
48016 - move-result-object v8
48017 + move-result-object v9
48019 - invoke-virtual {v8}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
48020 + invoke-virtual {v9}, Lcom/android/internal/telephony/CommandsInterface$RadioState;->isOn()Z
48022 - move-result v8
48023 + move-result v9
48025 - if-eqz v8, :cond_5b
48026 + if-eqz v9, :cond_6d
48028 invoke-static {}, Landroid/content/res/Resources;->getSystem()Landroid/content/res/Resources;
48030 - move-result-object v8
48031 + move-result-object v9
48033 - const v9, 0x104031e
48034 + const v10, 0x104031e
48036 - invoke-virtual {v8, v9}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
48037 + invoke-virtual {v9, v10}, Landroid/content/res/Resources;->getText(I)Ljava/lang/CharSequence;
48039 - move-result-object v8
48040 + move-result-object v9
48042 - invoke-virtual {v8}, Ljava/lang/Object;->toString()Ljava/lang/String;
48043 + invoke-virtual {v9}, Ljava/lang/Object;->toString()Ljava/lang/String;
48045 move-result-object v1
48047 - new-instance v8, Ljava/lang/StringBuilder;
48048 + new-instance v9, Ljava/lang/StringBuilder;
48050 - invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
48051 + invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
48053 - const-string/jumbo v9, "updateSpnDisplay: emergency only and radio is on plmn=\'"
48054 + const-string/jumbo v10, "updateSpnDisplay: emergency only and radio is on plmn=\'"
48056 - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48057 + invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48059 - move-result-object v8
48060 + move-result-object v9
48062 - invoke-virtual {v8, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48063 + invoke-virtual {v9, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48065 - move-result-object v8
48066 + move-result-object v9
48068 - const-string v9, "\'"
48069 + const-string v10, "\'"
48071 - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48072 + invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48074 - move-result-object v8
48075 + move-result-object v9
48077 - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48078 + invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48080 - move-result-object v8
48081 + move-result-object v9
48083 - invoke-virtual {p0, v8}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
48084 + invoke-virtual {p0, v9}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
48086 - :cond_5b
48087 - iget v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
48088 + :cond_6d
48089 + iget v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
48091 - if-ne v2, v8, :cond_6f
48092 + if-ne v2, v9, :cond_81
48094 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
48095 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
48097 - invoke-static {v5, v8}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
48098 + invoke-static {v6, v9}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
48100 - move-result v8
48101 + move-result v9
48103 - if-eqz v8, :cond_6f
48104 + if-eqz v9, :cond_81
48106 - iget-object v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
48107 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
48109 - invoke-static {v1, v8}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
48110 + invoke-static {v1, v9}, Landroid/text/TextUtils;->equals(Ljava/lang/CharSequence;Ljava/lang/CharSequence;)Z
48112 - move-result v8
48113 + move-result v9
48115 - if-nez v8, :cond_ef
48116 + if-nez v9, :cond_101
48118 - :cond_6f
48119 - iget-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48120 + :cond_81
48121 + iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48123 - if-nez v8, :cond_f6
48124 + if-nez v9, :cond_112
48126 - invoke-static {v5}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
48127 + invoke-static {v6}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
48129 - move-result v8
48130 + move-result v9
48132 - if-nez v8, :cond_f6
48133 + if-nez v9, :cond_112
48135 - and-int/lit8 v8, v2, 0x1
48136 + and-int/lit8 v9, v2, 0x1
48138 - if-ne v8, v6, :cond_f6
48139 + if-ne v9, v7, :cond_112
48141 - move v4, v6
48142 + move v5, v7
48144 - :goto_7e
48145 + :goto_90
48146 invoke-static {v1}, Landroid/text/TextUtils;->isEmpty(Ljava/lang/CharSequence;)Z
48148 - move-result v8
48149 + move-result v9
48151 - if-nez v8, :cond_f8
48152 + if-nez v9, :cond_115
48154 - iget-boolean v8, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48155 + iget-boolean v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->mEmergencyOnly:Z
48157 - if-nez v8, :cond_8c
48158 + if-nez v9, :cond_9e
48160 - and-int/lit8 v8, v2, 0x2
48161 + and-int/lit8 v9, v2, 0x2
48163 - if-ne v8, v11, :cond_f8
48164 + if-ne v9, v12, :cond_115
48166 - :cond_8c
48167 - move v3, v6
48168 + :cond_9e
48169 + move v4, v7
48171 - :goto_8d
48172 - new-instance v8, Ljava/lang/StringBuilder;
48173 + :goto_9f
48174 + new-instance v9, Ljava/lang/StringBuilder;
48176 - invoke-direct {v8}, Ljava/lang/StringBuilder;-><init>()V
48177 + invoke-direct {v9}, Ljava/lang/StringBuilder;-><init>()V
48179 - const-string/jumbo v9, "updateSpnDisplay: changed sending intent rule="
48180 + const-string/jumbo v10, "updateSpnDisplay: changed sending intent rule="
48182 - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48183 + invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48185 - move-result-object v8
48186 + move-result-object v9
48188 - invoke-virtual {v8, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
48189 + invoke-virtual {v9, v2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
48191 - move-result-object v8
48192 + move-result-object v9
48194 - const-string v9, " showPlmn=\'%b\' plmn=\'%s\' showSpn=\'%b\' spn=\'%s\'"
48195 + const-string v10, " showPlmn=\'%b\' plmn=\'%s\' showSpn=\'%b\' spn=\'%s\'"
48197 - invoke-virtual {v8, v9}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48198 + invoke-virtual {v9, v10}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48200 - move-result-object v8
48201 + move-result-object v9
48203 - invoke-virtual {v8}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48204 + invoke-virtual {v9}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48206 - move-result-object v8
48207 + move-result-object v9
48209 - const/4 v9, 0x4
48210 + const/4 v10, 0x4
48212 - new-array v9, v9, [Ljava/lang/Object;
48213 + new-array v10, v10, [Ljava/lang/Object;
48215 - invoke-static {v3}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
48216 + invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
48218 - move-result-object v10
48219 + move-result-object v11
48221 - aput-object v10, v9, v7
48222 + aput-object v11, v10, v8
48224 - aput-object v1, v9, v6
48225 + aput-object v1, v10, v7
48227 - invoke-static {v4}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
48228 + invoke-static {v5}, Ljava/lang/Boolean;->valueOf(Z)Ljava/lang/Boolean;
48230 - move-result-object v6
48231 + move-result-object v7
48233 - aput-object v6, v9, v11
48234 + aput-object v7, v10, v12
48236 - const/4 v6, 0x3
48237 + const/4 v7, 0x3
48239 - aput-object v5, v9, v6
48240 + aput-object v6, v10, v7
48242 - invoke-static {v8, v9}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
48243 + invoke-static {v9, v10}, Ljava/lang/String;->format(Ljava/lang/String;[Ljava/lang/Object;)Ljava/lang/String;
48245 - move-result-object v6
48246 + move-result-object v7
48248 - invoke-virtual {p0, v6}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
48249 + invoke-virtual {p0, v7}, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->log(Ljava/lang/String;)V
48251 new-instance v0, Landroid/content/Intent;
48253 - const-string v6, "android.provider.Telephony.SPN_STRINGS_UPDATED"
48254 + const-string v7, "android.provider.Telephony.SPN_STRINGS_UPDATED"
48256 - invoke-direct {v0, v6}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
48257 + invoke-direct {v0, v7}, Landroid/content/Intent;-><init>(Ljava/lang/String;)V
48259 - const/high16 v6, 0x2000
48260 + const/high16 v7, 0x2000
48262 - invoke-virtual {v0, v6}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
48263 + invoke-virtual {v0, v7}, Landroid/content/Intent;->addFlags(I)Landroid/content/Intent;
48265 - const-string/jumbo v6, "showSpn"
48266 + const-string/jumbo v7, "showSpn"
48268 - invoke-virtual {v0, v6, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
48269 + invoke-virtual {v0, v7, v5}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
48271 - const-string/jumbo v6, "spn"
48272 + const-string/jumbo v7, "spn"
48274 - invoke-virtual {v0, v6, v5}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
48275 + invoke-virtual {v0, v7, v6}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
48277 - const-string/jumbo v6, "showPlmn"
48278 + const-string/jumbo v7, "showPlmn"
48280 - invoke-virtual {v0, v6, v3}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
48281 + invoke-virtual {v0, v7, v4}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Z)Landroid/content/Intent;
48283 - const-string/jumbo v6, "plmn"
48284 + const-string/jumbo v7, "plmn"
48286 - invoke-virtual {v0, v6, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
48287 + invoke-virtual {v0, v7, v1}, Landroid/content/Intent;->putExtra(Ljava/lang/String;Ljava/lang/String;)Landroid/content/Intent;
48289 - iget-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
48290 + iget-object v7, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
48292 - invoke-virtual {v6}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
48293 + invoke-virtual {v7}, Lcom/android/internal/telephony/gsm/GSMPhone;->getContext()Landroid/content/Context;
48295 - move-result-object v6
48296 + move-result-object v7
48298 - invoke-virtual {v6, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
48299 + invoke-virtual {v7, v0}, Landroid/content/Context;->sendStickyBroadcast(Landroid/content/Intent;)V
48301 - :cond_ef
48302 + :cond_101
48303 iput v2, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpnRule:I
48305 - iput-object v5, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
48306 + iput-object v6, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curSpn:Ljava/lang/String;
48308 iput-object v1, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->curPlmn:Ljava/lang/String;
48310 return-void
48312 - :cond_f6
48313 - move v4, v7
48314 + :cond_108
48315 + iget-object v9, p0, Lcom/android/internal/telephony/gsm/GsmServiceStateTracker;->phone:Lcom/android/internal/telephony/gsm/GSMPhone;
48317 + iget-object v9, v9, Lcom/android/internal/telephony/gsm/GSMPhone;->mIccRecords:Lcom/android/internal/telephony/IccRecords;
48319 + invoke-virtual {v9}, Lcom/android/internal/telephony/IccRecords;->getServiceProviderName()Ljava/lang/String;
48321 + move-result-object v6
48323 + goto/16 :goto_2b
48325 + :cond_112
48326 + move v5, v8
48328 - goto :goto_7e
48329 + goto/16 :goto_90
48331 - :cond_f8
48332 - move v3, v7
48333 + :cond_115
48334 + move v4, v8
48336 - goto :goto_8d
48337 + goto :goto_9f
48338 .end method
48339 diff -Npru stock-framework/smali/com/android/internal/telephony/gsm/SimSmsInterfaceManager.smali ext-framework/smali/com/android/internal/telephony/gsm/SimSmsInterfaceManager.smali
48340 --- stock-framework/smali/com/android/internal/telephony/gsm/SimSmsInterfaceManager.smali 2012-11-02 22:31:11.047986931 -0500
48341 +++ ext-framework/smali/com/android/internal/telephony/gsm/SimSmsInterfaceManager.smali 2012-11-02 22:30:50.723886151 -0500
48342 @@ -12,6 +12,10 @@
48345 # static fields
48346 +.field protected static final ACCESS_TYPE_ICC:I = 0x1
48348 +.field protected static final ACCESS_TYPE_SMS_MMS:I = 0x0
48350 .field static final DBG:Z = true
48352 .field private static final EVENT_LOAD_DONE:I = 0x1
48353 @@ -24,6 +28,8 @@
48355 .field static final LOG_TAG:Ljava/lang/String; = "GSM"
48357 +.field protected static final P_TAG:Ljava/lang/String; = "PrivacySMSInterfaceManager"
48359 .field private static final SMS_CB_CODE_SCHEME_MAX:I = 0xff
48361 .field private static final SMS_CB_CODE_SCHEME_MIN:I
48362 @@ -63,6 +69,8 @@
48364 .field private mSuccess:Z
48366 +.field protected pSetMan:Landroid/privacy/PrivacySettingsManager;
48369 # direct methods
48370 .method public constructor <init>(Lcom/android/internal/telephony/gsm/GSMPhone;Lcom/android/internal/telephony/SMSDispatcher;)V
48371 @@ -342,66 +350,84 @@
48372 .method public copyMessageToIccEf(I[B[B)Z
48373 .registers 10
48375 - new-instance v2, Ljava/lang/StringBuilder;
48376 + const/4 v2, 0x0
48378 - invoke-direct {v2}, Ljava/lang/StringBuilder;-><init>()V
48379 + new-instance v3, Ljava/lang/StringBuilder;
48381 - const-string v3, "copyMessageToIccEf: status="
48382 + invoke-direct {v3}, Ljava/lang/StringBuilder;-><init>()V
48384 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48385 + const-string v4, "copyMessageToIccEf: status="
48387 - move-result-object v2
48388 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48390 - invoke-virtual {v2, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
48391 + move-result-object v3
48393 - move-result-object v2
48394 + invoke-virtual {v3, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
48396 - const-string v3, " ==> "
48397 + move-result-object v3
48399 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48400 + const-string v4, " ==> "
48402 - move-result-object v2
48403 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48405 - const-string/jumbo v3, "pdu=("
48406 + move-result-object v3
48408 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48409 + const-string/jumbo v4, "pdu=("
48411 - move-result-object v2
48412 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48414 + move-result-object v3
48416 invoke-static {p2}, Ljava/util/Arrays;->toString([B)Ljava/lang/String;
48418 - move-result-object v3
48419 + move-result-object v4
48421 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48422 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48424 - move-result-object v2
48425 + move-result-object v3
48427 - const-string v3, "), smsm=("
48428 + const-string v4, "), smsm=("
48430 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48431 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48433 - move-result-object v2
48434 + move-result-object v3
48436 invoke-static {p3}, Ljava/util/Arrays;->toString([B)Ljava/lang/String;
48438 + move-result-object v4
48440 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48442 move-result-object v3
48444 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48445 + const-string v4, ")"
48447 - move-result-object v2
48448 + invoke-virtual {v3, v4}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48450 - const-string v3, ")"
48451 + move-result-object v3
48453 - invoke-virtual {v2, v3}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
48454 + invoke-virtual {v3}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48456 - move-result-object v2
48457 + move-result-object v3
48459 - invoke-virtual {v2}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
48460 + invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
48462 - move-result-object v2
48463 + invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
48465 - invoke-virtual {p0, v2}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
48466 + move-result-object v3
48468 + const/4 v4, 0x1
48470 + invoke-virtual {p0, v3, v4}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
48472 + move-result v3
48474 + if-nez v3, :cond_4c
48476 + :goto_4b
48477 + return v2
48479 + :cond_4c
48480 const-string v2, "Copying message to SIM"
48482 invoke-virtual {p0, v2}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->enforceReceiveAndSend(Ljava/lang/String;)V
48483 @@ -412,7 +438,7 @@
48485 const/4 v2, 0x0
48487 - :try_start_48
48488 + :try_start_55
48489 iput-boolean v2, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mSuccess:Z
48491 iget-object v2, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
48492 @@ -436,43 +462,43 @@
48493 move-result-object v5
48495 invoke-interface {v2, p1, v4, v5, v1}, Lcom/android/internal/telephony/CommandsInterface;->writeSmsToSim(ILjava/lang/String;Ljava/lang/String;Landroid/os/Message;)V
48496 - :try_end_60
48497 - .catchall {:try_start_48 .. :try_end_60} :catchall_70
48498 + :try_end_6d
48499 + .catchall {:try_start_55 .. :try_end_6d} :catchall_7d
48501 - :try_start_60
48502 + :try_start_6d
48503 iget-object v2, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mLock:Ljava/lang/Object;
48505 invoke-virtual {v2}, Ljava/lang/Object;->wait()V
48506 - :try_end_65
48507 - .catchall {:try_start_60 .. :try_end_65} :catchall_70
48508 - .catch Ljava/lang/InterruptedException; {:try_start_60 .. :try_end_65} :catch_69
48509 + :try_end_72
48510 + .catchall {:try_start_6d .. :try_end_72} :catchall_7d
48511 + .catch Ljava/lang/InterruptedException; {:try_start_6d .. :try_end_72} :catch_76
48513 - :goto_65
48514 - :try_start_65
48515 + :goto_72
48516 + :try_start_72
48517 monitor-exit v3
48518 - :try_end_66
48519 - .catchall {:try_start_65 .. :try_end_66} :catchall_70
48520 + :try_end_73
48521 + .catchall {:try_start_72 .. :try_end_73} :catchall_7d
48523 iget-boolean v2, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mSuccess:Z
48525 - return v2
48526 + goto :goto_4b
48528 - :catch_69
48529 + :catch_76
48530 move-exception v0
48532 - :try_start_6a
48533 + :try_start_77
48534 const-string v2, "interrupted while trying to update by index"
48536 invoke-virtual {p0, v2}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
48538 - goto :goto_65
48539 + goto :goto_72
48541 - :catchall_70
48542 + :catchall_7d
48543 move-exception v2
48545 monitor-exit v3
48546 - :try_end_72
48547 - .catchall {:try_start_6a .. :try_end_72} :catchall_70
48548 + :try_end_7f
48549 + .catchall {:try_start_77 .. :try_end_7f} :catchall_7d
48551 throw v2
48552 .end method
48553 @@ -834,10 +860,30 @@
48555 .end annotation
48557 + const/4 v4, 0x1
48559 const-string v3, "getAllMessagesFromEF"
48561 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
48563 + invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
48565 + move-result-object v3
48567 + invoke-virtual {p0, v3, v4}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
48569 + move-result v3
48571 + if-nez v3, :cond_16
48573 + new-instance v3, Ljava/util/ArrayList;
48575 + invoke-direct {v3}, Ljava/util/ArrayList;-><init>()V
48577 + :goto_15
48578 + return-object v3
48580 + :cond_16
48581 iget-object v3, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mPhone:Lcom/android/internal/telephony/PhoneBase;
48583 invoke-virtual {v3}, Lcom/android/internal/telephony/PhoneBase;->getContext()Landroid/content/Context;
48584 @@ -854,7 +900,7 @@
48586 monitor-enter v4
48588 - :try_start_15
48589 + :try_start_26
48590 iget-object v3, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
48592 const/4 v5, 0x1
48593 @@ -872,47 +918,360 @@
48594 const/16 v5, 0x6f3c
48596 invoke-virtual {v3, v5, v2}, Lcom/android/internal/telephony/IccFileHandler;->loadEFLinearFixedAll(ILandroid/os/Message;)V
48597 - :try_end_27
48598 - .catchall {:try_start_15 .. :try_end_27} :catchall_37
48599 + :try_end_38
48600 + .catchall {:try_start_26 .. :try_end_38} :catchall_48
48602 - :try_start_27
48603 + :try_start_38
48604 iget-object v3, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mLock:Ljava/lang/Object;
48606 invoke-virtual {v3}, Ljava/lang/Object;->wait()V
48607 - :try_end_2c
48608 - .catchall {:try_start_27 .. :try_end_2c} :catchall_37
48609 - .catch Ljava/lang/InterruptedException; {:try_start_27 .. :try_end_2c} :catch_30
48610 + :try_end_3d
48611 + .catchall {:try_start_38 .. :try_end_3d} :catchall_48
48612 + .catch Ljava/lang/InterruptedException; {:try_start_38 .. :try_end_3d} :catch_41
48614 - :goto_2c
48615 - :try_start_2c
48616 + :goto_3d
48617 + :try_start_3d
48618 monitor-exit v4
48619 - :try_end_2d
48620 - .catchall {:try_start_2c .. :try_end_2d} :catchall_37
48621 + :try_end_3e
48622 + .catchall {:try_start_3d .. :try_end_3e} :catchall_48
48624 iget-object v3, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mSms:Ljava/util/List;
48626 - return-object v3
48627 + goto :goto_15
48629 - :catch_30
48630 + :catch_41
48631 move-exception v1
48633 - :try_start_31
48634 + :try_start_42
48635 const-string v3, "interrupted while trying to load from the SIM"
48637 invoke-virtual {p0, v3}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
48639 - goto :goto_2c
48640 + goto :goto_3d
48642 - :catchall_37
48643 + :catchall_48
48644 move-exception v3
48646 monitor-exit v4
48647 - :try_end_39
48648 - .catchall {:try_start_31 .. :try_end_39} :catchall_37
48649 + :try_end_4a
48650 + .catchall {:try_start_42 .. :try_end_4a} :catchall_48
48652 throw v3
48653 .end method
48655 +.method protected getPackageName()[Ljava/lang/String;
48656 + .registers 4
48658 + iget-object v2, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mContext:Landroid/content/Context;
48660 + invoke-virtual {v2}, Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager;
48662 + move-result-object v1
48664 + invoke-static {}, Landroid/os/Binder;->getCallingUid()I
48666 + move-result v2
48668 + invoke-virtual {v1, v2}, Landroid/content/pm/PackageManager;->getPackagesForUid(I)[Ljava/lang/String;
48670 + move-result-object v0
48672 + return-object v0
48673 +.end method
48675 +.method protected isAllowed([Ljava/lang/String;I)Z
48676 + .registers 12
48678 + const/4 v8, -0x1
48680 + const/4 v4, 0x1
48682 + const/4 v3, 0x0
48684 + packed-switch p2, :pswitch_data_e8
48686 + const/4 v5, 0x0
48688 + :try_start_7
48689 + aget-object v5, p1, v5
48691 + const/4 v6, 0x0
48693 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48695 + move v3, v4
48697 + :goto_e
48698 + return v3
48700 + :pswitch_f
48701 + const/4 v2, 0x0
48703 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48705 + if-nez v5, :cond_27
48707 + new-instance v5, Landroid/privacy/PrivacySettingsManager;
48709 + const/4 v6, 0x0
48711 + const-string/jumbo v7, "privacy"
48713 + invoke-static {v7}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
48715 + move-result-object v7
48717 + invoke-static {v7}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
48719 + move-result-object v7
48721 + invoke-direct {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
48723 + iput-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48725 + :cond_27
48726 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48728 + if-eqz v5, :cond_7f
48730 + if-eqz p1, :cond_7f
48732 + const/4 v1, 0x0
48734 + :goto_2e
48735 + array-length v5, p1
48737 + if-ge v1, v5, :cond_76
48739 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48741 + aget-object v6, p1, v1
48743 + const/4 v7, -0x1
48745 + invoke-virtual {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
48747 + move-result-object v2
48749 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48751 + if-eqz v5, :cond_72
48753 + if-eqz v2, :cond_72
48755 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getSmsSendSetting()B
48757 + move-result v5
48759 + if-eqz v5, :cond_72
48761 + aget-object v5, p1, v1
48763 + const/4 v6, 0x1
48765 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48766 + :try_end_4c
48767 + .catch Ljava/lang/Exception; {:try_start_7 .. :try_end_4c} :catch_4d
48769 + goto :goto_e
48771 + :catch_4d
48772 + move-exception v0
48774 + const-string v5, "PrivacySMSInterfaceManager"
48776 + const-string v6, "Got exception while checking for sms or ICC acess permission"
48778 + invoke-static {v5, v6}, Landroid/util/Log;->e(Ljava/lang/String;Ljava/lang/String;)I
48780 + invoke-virtual {v0}, Ljava/lang/Exception;->printStackTrace()V
48782 + if-eqz p1, :cond_70
48784 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48786 + if-eqz v5, :cond_70
48788 + array-length v5, p1
48790 + if-lez v5, :cond_70
48792 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48794 + aget-object v6, p1, v3
48796 + invoke-virtual {v5, v6, v8}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
48798 + move-result-object v2
48800 + if-eqz v2, :cond_70
48802 + aget-object v5, p1, v3
48804 + invoke-virtual {p0, p2, v5, v3}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48806 + :cond_70
48807 + move v3, v4
48809 + goto :goto_e
48811 + :cond_72
48812 + const/4 v2, 0x0
48814 + add-int/lit8 v1, v1, 0x1
48816 + goto :goto_2e
48818 + :cond_76
48819 + const/4 v5, 0x0
48821 + :try_start_77
48822 + aget-object v5, p1, v5
48824 + const/4 v6, 0x0
48826 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48828 + move v3, v4
48830 + goto :goto_e
48832 + :cond_7f
48833 + if-eqz p1, :cond_8b
48835 + array-length v5, p1
48837 + if-lez v5, :cond_8b
48839 + const/4 v5, 0x0
48841 + aget-object v5, p1, v5
48843 + const/4 v6, 0x0
48845 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48847 + :cond_8b
48848 + move v3, v4
48850 + goto :goto_e
48852 + :pswitch_8d
48853 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48855 + if-nez v5, :cond_a4
48857 + new-instance v5, Landroid/privacy/PrivacySettingsManager;
48859 + const/4 v6, 0x0
48861 + const-string/jumbo v7, "privacy"
48863 + invoke-static {v7}, Landroid/os/ServiceManager;->getService(Ljava/lang/String;)Landroid/os/IBinder;
48865 + move-result-object v7
48867 + invoke-static {v7}, Landroid/privacy/IPrivacySettingsManager$Stub;->asInterface(Landroid/os/IBinder;)Landroid/privacy/IPrivacySettingsManager;
48869 + move-result-object v7
48871 + invoke-direct {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;-><init>(Landroid/content/Context;Landroid/privacy/IPrivacySettingsManager;)V
48873 + iput-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48875 + :cond_a4
48876 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48878 + if-eqz v5, :cond_d9
48880 + if-eqz p1, :cond_d9
48882 + const/4 v1, 0x0
48884 + :goto_ab
48885 + array-length v5, p1
48887 + if-ge v1, v5, :cond_cf
48889 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48891 + aget-object v6, p1, v1
48893 + const/4 v7, -0x1
48895 + invoke-virtual {v5, v6, v7}, Landroid/privacy/PrivacySettingsManager;->getSettings(Ljava/lang/String;I)Landroid/privacy/PrivacySettings;
48897 + move-result-object v2
48899 + iget-object v5, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48901 + if-eqz v5, :cond_cb
48903 + if-eqz v2, :cond_cb
48905 + invoke-virtual {v2}, Landroid/privacy/PrivacySettings;->getIccAccessSetting()B
48907 + move-result v5
48909 + if-eqz v5, :cond_cb
48911 + aget-object v5, p1, v1
48913 + const/4 v6, 0x1
48915 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48917 + goto/16 :goto_e
48919 + :cond_cb
48920 + const/4 v2, 0x0
48922 + add-int/lit8 v1, v1, 0x1
48924 + goto :goto_ab
48926 + :cond_cf
48927 + const/4 v5, 0x0
48929 + aget-object v5, p1, v5
48931 + const/4 v6, 0x0
48933 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48935 + move v3, v4
48937 + goto/16 :goto_e
48939 + :cond_d9
48940 + if-eqz p1, :cond_e5
48942 + array-length v5, p1
48944 + if-lez v5, :cond_e5
48946 + const/4 v5, 0x0
48948 + aget-object v5, p1, v5
48950 + const/4 v6, 0x0
48952 + invoke-virtual {p0, p2, v5, v6}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->notify(ILjava/lang/String;B)V
48953 + :try_end_e5
48954 + .catch Ljava/lang/Exception; {:try_start_77 .. :try_end_e5} :catch_4d
48956 + :cond_e5
48957 + move v3, v4
48959 + goto/16 :goto_e
48961 + :pswitch_data_e8
48962 + .packed-switch 0x0
48963 + :pswitch_f
48964 + :pswitch_8d
48965 + .end packed-switch
48966 +.end method
48968 .method protected log(Ljava/lang/String;)V
48969 .registers 5
48971 @@ -941,65 +1300,132 @@
48972 return-void
48973 .end method
48975 +.method protected notify(ILjava/lang/String;B)V
48976 + .registers 11
48978 + const/4 v2, 0x0
48980 + const/4 v5, 0x0
48982 + packed-switch p1, :pswitch_data_1c
48984 + :goto_5
48985 + return-void
48987 + :pswitch_6
48988 + iget-object v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
48990 + const-string v4, "SmsSend"
48992 + move-object v1, p2
48994 + move v3, p3
48996 + move-object v6, v5
48998 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
49000 + goto :goto_5
49002 + :pswitch_11
49003 + iget-object v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->pSetMan:Landroid/privacy/PrivacySettingsManager;
49005 + const-string v4, "iccAccess"
49007 + move-object v1, p2
49009 + move v3, p3
49011 + move-object v6, v5
49013 + invoke-virtual/range {v0 .. v6}, Landroid/privacy/PrivacySettingsManager;->notification(Ljava/lang/String;IBLjava/lang/String;Ljava/lang/String;Landroid/privacy/PrivacySettings;)V
49015 + goto :goto_5
49017 + :pswitch_data_1c
49018 + .packed-switch 0x0
49019 + :pswitch_6
49020 + :pswitch_11
49021 + .end packed-switch
49022 +.end method
49024 .method public updateMessageOnIccEf(II[B)Z
49025 .registers 12
49027 - new-instance v0, Ljava/lang/StringBuilder;
49028 + const/4 v0, 0x0
49030 - invoke-direct {v0}, Ljava/lang/StringBuilder;-><init>()V
49031 + new-instance v1, Ljava/lang/StringBuilder;
49033 - const-string/jumbo v1, "updateMessageOnIccEf: index="
49034 + invoke-direct {v1}, Ljava/lang/StringBuilder;-><init>()V
49036 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49037 + const-string/jumbo v2, "updateMessageOnIccEf: index="
49039 - move-result-object v0
49040 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49042 - invoke-virtual {v0, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
49043 + move-result-object v1
49045 - move-result-object v0
49046 + invoke-virtual {v1, p1}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
49048 - const-string v1, " status="
49049 + move-result-object v1
49051 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49052 + const-string v2, " status="
49054 - move-result-object v0
49055 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49057 - invoke-virtual {v0, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
49058 + move-result-object v1
49060 - move-result-object v0
49061 + invoke-virtual {v1, p2}, Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder;
49063 - const-string v1, " ==> "
49064 + move-result-object v1
49066 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49067 + const-string v2, " ==> "
49069 - move-result-object v0
49070 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49072 - const-string v1, "("
49073 + move-result-object v1
49075 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49076 + const-string v2, "("
49078 - move-result-object v0
49079 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49081 + move-result-object v1
49083 invoke-static {p3}, Ljava/util/Arrays;->toString([B)Ljava/lang/String;
49085 + move-result-object v2
49087 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49089 move-result-object v1
49091 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49092 + const-string v2, ")"
49094 - move-result-object v0
49095 + invoke-virtual {v1, v2}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49097 - const-string v1, ")"
49098 + move-result-object v1
49100 - invoke-virtual {v0, v1}, Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder;
49101 + invoke-virtual {v1}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
49103 - move-result-object v0
49104 + move-result-object v1
49106 - invoke-virtual {v0}, Ljava/lang/StringBuilder;->toString()Ljava/lang/String;
49107 + invoke-virtual {p0, v1}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
49109 - move-result-object v0
49110 + invoke-virtual {p0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->getPackageName()[Ljava/lang/String;
49112 - invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
49113 + move-result-object v1
49115 + const/4 v2, 0x1
49117 + invoke-virtual {p0, v1, v2}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->isAllowed([Ljava/lang/String;I)Z
49119 + move-result v1
49121 + if-nez v1, :cond_48
49123 + :goto_47
49124 + return v0
49126 + :cond_48
49127 const-string v0, "Updating message on SIM"
49129 invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->enforceReceiveAndSend(Ljava/lang/String;)V
49130 @@ -1010,7 +1436,7 @@
49132 const/4 v0, 0x0
49134 - :try_start_44
49135 + :try_start_51
49136 iput-boolean v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mSuccess:Z
49138 iget-object v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mHandler:Landroid/os/Handler;
49139 @@ -1021,37 +1447,37 @@
49141 move-result-object v5
49143 - if-nez p2, :cond_5f
49144 + if-nez p2, :cond_6c
49146 iget-object v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mPhone:Lcom/android/internal/telephony/PhoneBase;
49148 iget-object v0, v0, Lcom/android/internal/telephony/PhoneBase;->mCM:Lcom/android/internal/telephony/CommandsInterface;
49150 invoke-interface {v0, p1, v5}, Lcom/android/internal/telephony/CommandsInterface;->deleteSmsOnSim(ILandroid/os/Message;)V
49151 - :try_end_56
49152 - .catchall {:try_start_44 .. :try_end_56} :catchall_71
49153 + :try_end_63
49154 + .catchall {:try_start_51 .. :try_end_63} :catchall_7e
49156 - :goto_56
49157 - :try_start_56
49158 + :goto_63
49159 + :try_start_63
49160 iget-object v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mLock:Ljava/lang/Object;
49162 invoke-virtual {v0}, Ljava/lang/Object;->wait()V
49163 - :try_end_5b
49164 - .catchall {:try_start_56 .. :try_end_5b} :catchall_71
49165 - .catch Ljava/lang/InterruptedException; {:try_start_56 .. :try_end_5b} :catch_74
49166 + :try_end_68
49167 + .catchall {:try_start_63 .. :try_end_68} :catchall_7e
49168 + .catch Ljava/lang/InterruptedException; {:try_start_63 .. :try_end_68} :catch_81
49170 - :goto_5b
49171 - :try_start_5b
49172 + :goto_68
49173 + :try_start_68
49174 monitor-exit v7
49175 - :try_end_5c
49176 - .catchall {:try_start_5b .. :try_end_5c} :catchall_71
49177 + :try_end_69
49178 + .catchall {:try_start_68 .. :try_end_69} :catchall_7e
49180 iget-boolean v0, p0, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->mSuccess:Z
49182 - return v0
49183 + goto :goto_47
49185 - :cond_5f
49186 - :try_start_5f
49187 + :cond_6c
49188 + :try_start_6c
49189 invoke-virtual {p0, p2, p3}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->makeSmsRecordData(I[B)[B
49191 move-result-object v3
49192 @@ -1070,26 +1496,26 @@
49194 invoke-virtual/range {v0 .. v5}, Lcom/android/internal/telephony/IccFileHandler;->updateEFLinearFixed(II[BLjava/lang/String;Landroid/os/Message;)V
49196 - goto :goto_56
49197 + goto :goto_63
49199 - :catchall_71
49200 + :catchall_7e
49201 move-exception v0
49203 monitor-exit v7
49204 - :try_end_73
49205 - .catchall {:try_start_5f .. :try_end_73} :catchall_71
49206 + :try_end_80
49207 + .catchall {:try_start_6c .. :try_end_80} :catchall_7e
49209 throw v0
49211 - :catch_74
49212 + :catch_81
49213 move-exception v6
49215 - :try_start_75
49216 + :try_start_82
49217 const-string v0, "interrupted while trying to update by index"
49219 invoke-virtual {p0, v0}, Lcom/android/internal/telephony/gsm/SimSmsInterfaceManager;->log(Ljava/lang/String;)V
49220 - :try_end_7a
49221 - .catchall {:try_start_75 .. :try_end_7a} :catchall_71
49222 + :try_end_87
49223 + .catchall {:try_start_82 .. :try_end_87} :catchall_7e
49225 - goto :goto_5b
49226 + goto :goto_68
49227 .end method
49228 diff -Npru stock-framework/smali/com/android/internal/telephony/PhoneFactory.smali ext-framework/smali/com/android/internal/telephony/PhoneFactory.smali
49229 --- stock-framework/smali/com/android/internal/telephony/PhoneFactory.smali 2012-11-02 22:31:10.803985728 -0500
49230 +++ ext-framework/smali/com/android/internal/telephony/PhoneFactory.smali 2012-11-02 22:30:50.515885125 -0500
49231 @@ -64,7 +64,7 @@
49233 packed-switch v1, :pswitch_data_26
49235 - new-instance v0, Lcom/android/internal/telephony/cdma/CDMAPhone;
49236 + new-instance v0, Landroid/privacy/surrogate/PrivacyCDMAPhone;
49238 sget-object v1, Lcom/android/internal/telephony/PhoneFactory;->sContext:Landroid/content/Context;
49240 @@ -72,7 +72,7 @@
49242 sget-object v4, Lcom/android/internal/telephony/PhoneFactory;->sPhoneNotifier:Lcom/android/internal/telephony/PhoneNotifier;
49244 - invoke-direct {v0, v1, v3, v4}, Lcom/android/internal/telephony/cdma/CDMAPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49245 + invoke-direct {v0, v1, v3, v4}, Landroid/privacy/surrogate/PrivacyCDMAPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49247 :goto_15
49248 monitor-exit v2
49249 @@ -80,7 +80,7 @@
49250 return-object v0
49252 :pswitch_17
49253 - new-instance v0, Lcom/android/internal/telephony/cdma/CDMALTEPhone;
49254 + new-instance v0, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;
49256 sget-object v1, Lcom/android/internal/telephony/PhoneFactory;->sContext:Landroid/content/Context;
49258 @@ -88,7 +88,7 @@
49260 sget-object v4, Lcom/android/internal/telephony/PhoneFactory;->sPhoneNotifier:Lcom/android/internal/telephony/PhoneNotifier;
49262 - invoke-direct {v0, v1, v3, v4}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49263 + invoke-direct {v0, v1, v3, v4}, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49265 goto :goto_15
49267 @@ -153,7 +153,7 @@
49268 monitor-enter v2
49270 :try_start_3
49271 - new-instance v0, Lcom/android/internal/telephony/gsm/GSMPhone;
49272 + new-instance v0, Landroid/privacy/surrogate/PrivacyGSMPhone;
49274 sget-object v1, Lcom/android/internal/telephony/PhoneFactory;->sContext:Landroid/content/Context;
49276 @@ -161,7 +161,7 @@
49278 sget-object v4, Lcom/android/internal/telephony/PhoneFactory;->sPhoneNotifier:Lcom/android/internal/telephony/PhoneNotifier;
49280 - invoke-direct {v0, v1, v3, v4}, Lcom/android/internal/telephony/gsm/GSMPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49281 + invoke-direct {v0, v1, v3, v4}, Landroid/privacy/surrogate/PrivacyGSMPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49283 monitor-exit v2
49285 @@ -238,7 +238,7 @@
49286 :try_start_3
49287 sget-boolean v16, Lcom/android/internal/telephony/PhoneFactory;->sMadeDefaults:Z
49289 - if-nez v16, :cond_185
49290 + if-nez v16, :cond_187
49292 invoke-static {}, Landroid/os/Looper;->myLooper()Landroid/os/Looper;
49294 @@ -293,10 +293,10 @@
49295 invoke-direct {v0, v1}, Landroid/net/LocalServerSocket;-><init>(Ljava/lang/String;)V
49296 :try_end_31
49297 .catchall {:try_start_26 .. :try_end_31} :catchall_1f
49298 - .catch Ljava/io/IOException; {:try_start_26 .. :try_end_31} :catch_187
49299 + .catch Ljava/io/IOException; {:try_start_26 .. :try_end_31} :catch_189
49301 :goto_31
49302 - if-nez v9, :cond_18b
49303 + if-nez v9, :cond_18d
49305 :try_start_33
49306 new-instance v16, Lcom/android/internal/telephony/DefaultPhoneNotifier;
49307 @@ -379,7 +379,7 @@
49309 move-result v10
49311 - packed-switch v10, :pswitch_data_236
49312 + packed-switch v10, :pswitch_data_23c
49314 invoke-virtual/range {p0 .. p0}, Landroid/content/Context;->getContentResolver()Landroid/content/ContentResolver;
49316 @@ -580,7 +580,7 @@
49317 sput-object v16, Lcom/android/internal/telephony/PhoneFactory;->sCommandsInterface:Lcom/android/internal/telephony/CommandsInterface;
49318 :try_end_150
49319 .catchall {:try_start_ed .. :try_end_150} :catchall_1f
49320 - .catch Ljava/lang/Exception; {:try_start_ed .. :try_end_150} :catch_1c3
49321 + .catch Ljava/lang/Exception; {:try_start_ed .. :try_end_150} :catch_1c5
49323 :try_start_150
49324 invoke-static {v11}, Lcom/android/internal/telephony/PhoneFactory;->getPhoneType(I)I
49325 @@ -591,7 +591,7 @@
49327 move/from16 v0, v16
49329 - if-ne v12, v0, :cond_1d7
49330 + if-ne v12, v0, :cond_1d9
49332 const-string v16, "PHONE"
49334 @@ -603,9 +603,9 @@
49336 invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
49338 - new-instance v16, Lcom/android/internal/telephony/PhoneProxy;
49339 + new-instance v16, Landroid/privacy/surrogate/PrivacyPhoneProxy;
49341 - new-instance v18, Lcom/android/internal/telephony/gsm/GSMPhone;
49342 + new-instance v18, Landroid/privacy/surrogate/PrivacyGSMPhone;
49344 sget-object v19, Lcom/android/internal/telephony/PhoneFactory;->sCommandsInterface:Lcom/android/internal/telephony/CommandsInterface;
49346 @@ -619,40 +619,42 @@
49348 move-object/from16 v3, v20
49350 - invoke-direct {v0, v1, v2, v3}, Lcom/android/internal/telephony/gsm/GSMPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49351 + invoke-direct {v0, v1, v2, v3}, Landroid/privacy/surrogate/PrivacyGSMPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49353 move-object/from16 v0, v16
49355 move-object/from16 v1, v18
49357 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/PhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;)V
49358 + move-object/from16 v2, p0
49360 + invoke-direct {v0, v1, v2}, Landroid/privacy/surrogate/PrivacyPhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;Landroid/content/Context;)V
49362 sput-object v16, Lcom/android/internal/telephony/PhoneFactory;->sProxyPhone:Lcom/android/internal/telephony/Phone;
49364 - :cond_181
49365 - :goto_181
49366 + :cond_183
49367 + :goto_183
49368 const/16 v16, 0x1
49370 sput-boolean v16, Lcom/android/internal/telephony/PhoneFactory;->sMadeDefaults:Z
49372 - :cond_185
49373 + :cond_187
49374 monitor-exit v17
49376 return-void
49378 - :catch_187
49379 + :catch_189
49380 move-exception v8
49382 const/4 v9, 0x1
49384 goto/16 :goto_31
49386 - :cond_18b
49387 + :cond_18d
49388 const/16 v16, 0x3
49390 move/from16 v0, v16
49392 - if-le v14, v0, :cond_19d
49393 + if-le v14, v0, :cond_19f
49395 new-instance v16, Ljava/lang/RuntimeException;
49397 @@ -665,29 +667,29 @@
49398 invoke-direct {v0, v1}, Ljava/lang/RuntimeException;-><init>(Ljava/lang/String;)V
49400 throw v16
49401 - :try_end_19d
49402 - .catchall {:try_start_150 .. :try_end_19d} :catchall_1f
49403 + :try_end_19f
49404 + .catchall {:try_start_150 .. :try_end_19f} :catchall_1f
49406 - :cond_19d
49407 + :cond_19f
49408 const-wide/16 v18, 0x7d0
49410 - :try_start_19f
49411 + :try_start_1a1
49412 invoke-static/range {v18 .. v19}, Ljava/lang/Thread;->sleep(J)V
49413 - :try_end_1a2
49414 - .catchall {:try_start_19f .. :try_end_1a2} :catchall_1f
49415 - .catch Ljava/lang/InterruptedException; {:try_start_19f .. :try_end_1a2} :catch_1a4
49416 + :try_end_1a4
49417 + .catchall {:try_start_1a1 .. :try_end_1a4} :catchall_1f
49418 + .catch Ljava/lang/InterruptedException; {:try_start_1a1 .. :try_end_1a4} :catch_1a6
49420 goto/16 :goto_23
49422 - :catch_1a4
49423 + :catch_1a6
49424 move-exception v16
49426 goto/16 :goto_23
49428 - :pswitch_1a7
49429 + :pswitch_1a9
49430 const/4 v4, 0x1
49432 - :try_start_1a8
49433 + :try_start_1aa
49434 const-string v16, "PHONE"
49436 const-string v18, "lteOnCdma is 0 use SUBSCRIPTION_FROM_NV"
49437 @@ -700,7 +702,7 @@
49439 goto/16 :goto_a4
49441 - :pswitch_1b5
49442 + :pswitch_1b7
49443 const/4 v4, 0x0
49445 const-string v16, "PHONE"
49446 @@ -715,7 +717,7 @@
49448 goto/16 :goto_a4
49450 - :catch_1c3
49451 + :catch_1c5
49452 move-exception v7
49454 const-string v16, "PHONE"
49455 @@ -736,18 +738,18 @@
49457 throw v16
49459 - :cond_1d7
49460 + :cond_1d9
49461 const/16 v16, 0x2
49463 move/from16 v0, v16
49465 - if-ne v12, v0, :cond_181
49466 + if-ne v12, v0, :cond_183
49468 invoke-static {}, Lcom/android/internal/telephony/BaseCommands;->getLteOnCdmaModeStatic()I
49470 move-result v16
49472 - packed-switch v16, :pswitch_data_23e
49473 + packed-switch v16, :pswitch_data_244
49475 const-string v16, "PHONE"
49477 @@ -759,9 +761,9 @@
49479 invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
49481 - new-instance v16, Lcom/android/internal/telephony/PhoneProxy;
49482 + new-instance v16, Landroid/privacy/surrogate/PrivacyPhoneProxy;
49484 - new-instance v18, Lcom/android/internal/telephony/cdma/CDMAPhone;
49485 + new-instance v18, Landroid/privacy/surrogate/PrivacyCDMAPhone;
49487 sget-object v19, Lcom/android/internal/telephony/PhoneFactory;->sCommandsInterface:Lcom/android/internal/telephony/CommandsInterface;
49489 @@ -775,19 +777,21 @@
49491 move-object/from16 v3, v20
49493 - invoke-direct {v0, v1, v2, v3}, Lcom/android/internal/telephony/cdma/CDMAPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49494 + invoke-direct {v0, v1, v2, v3}, Landroid/privacy/surrogate/PrivacyCDMAPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49496 move-object/from16 v0, v16
49498 move-object/from16 v1, v18
49500 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/PhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;)V
49501 + move-object/from16 v2, p0
49503 + invoke-direct {v0, v1, v2}, Landroid/privacy/surrogate/PrivacyPhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;Landroid/content/Context;)V
49505 sput-object v16, Lcom/android/internal/telephony/PhoneFactory;->sProxyPhone:Lcom/android/internal/telephony/Phone;
49507 - goto/16 :goto_181
49508 + goto/16 :goto_183
49510 - :pswitch_20d
49511 + :pswitch_211
49512 const-string v16, "PHONE"
49514 const-string v18, "Creating CDMALTEPhone"
49515 @@ -798,9 +802,9 @@
49517 invoke-static {v0, v1}, Landroid/util/Log;->i(Ljava/lang/String;Ljava/lang/String;)I
49519 - new-instance v16, Lcom/android/internal/telephony/PhoneProxy;
49520 + new-instance v16, Landroid/privacy/surrogate/PrivacyPhoneProxy;
49522 - new-instance v18, Lcom/android/internal/telephony/cdma/CDMALTEPhone;
49523 + new-instance v18, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;
49525 sget-object v19, Lcom/android/internal/telephony/PhoneFactory;->sCommandsInterface:Lcom/android/internal/telephony/CommandsInterface;
49527 @@ -814,29 +818,31 @@
49529 move-object/from16 v3, v20
49531 - invoke-direct {v0, v1, v2, v3}, Lcom/android/internal/telephony/cdma/CDMALTEPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49532 + invoke-direct {v0, v1, v2, v3}, Landroid/privacy/surrogate/PrivacyCDMALTEPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/CommandsInterface;Lcom/android/internal/telephony/PhoneNotifier;)V
49534 move-object/from16 v0, v16
49536 move-object/from16 v1, v18
49538 - invoke-direct {v0, v1}, Lcom/android/internal/telephony/PhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;)V
49539 + move-object/from16 v2, p0
49541 + invoke-direct {v0, v1, v2}, Landroid/privacy/surrogate/PrivacyPhoneProxy;-><init>(Lcom/android/internal/telephony/Phone;Landroid/content/Context;)V
49543 sput-object v16, Lcom/android/internal/telephony/PhoneFactory;->sProxyPhone:Lcom/android/internal/telephony/Phone;
49544 - :try_end_234
49545 - .catchall {:try_start_1a8 .. :try_end_234} :catchall_1f
49546 + :try_end_23a
49547 + .catchall {:try_start_1aa .. :try_end_23a} :catchall_1f
49549 - goto/16 :goto_181
49550 + goto/16 :goto_183
49552 - :pswitch_data_236
49553 + :pswitch_data_23c
49554 .packed-switch 0x0
49555 - :pswitch_1a7
49556 - :pswitch_1b5
49557 + :pswitch_1a9
49558 + :pswitch_1b7
49559 .end packed-switch
49561 - :pswitch_data_23e
49562 + :pswitch_data_244
49563 .packed-switch 0x1
49564 - :pswitch_20d
49565 + :pswitch_211
49566 .end packed-switch
49567 .end method
49569 diff -Npru stock-framework/smali/com/android/internal/telephony/sip/SipPhoneFactory.smali ext-framework/smali/com/android/internal/telephony/sip/SipPhoneFactory.smali
49570 --- stock-framework/smali/com/android/internal/telephony/sip/SipPhoneFactory.smali 2012-11-02 22:31:11.071987050 -0500
49571 +++ ext-framework/smali/com/android/internal/telephony/sip/SipPhoneFactory.smali 2012-11-02 22:30:50.747886265 -0500
49572 @@ -24,9 +24,9 @@
49574 move-result-object v1
49576 - new-instance v2, Lcom/android/internal/telephony/sip/SipPhone;
49577 + new-instance v2, Landroid/privacy/surrogate/PrivacySipPhone;
49579 - invoke-direct {v2, p1, p2, v1}, Lcom/android/internal/telephony/sip/SipPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
49580 + invoke-direct {v2, p1, p2, v1}, Landroid/privacy/surrogate/PrivacySipPhone;-><init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
49581 :try_end_e
49582 .catch Ljava/text/ParseException; {:try_start_0 .. :try_end_e} :catch_f
49584 diff -Npru stock-framework/smali/com/android/internal/telephony/sip/SipPhone.smali ext-framework/smali/com/android/internal/telephony/sip/SipPhone.smali
49585 --- stock-framework/smali/com/android/internal/telephony/sip/SipPhone.smali 2012-11-02 22:31:11.071987050 -0500
49586 +++ ext-framework/smali/com/android/internal/telephony/sip/SipPhone.smali 2012-11-02 22:30:49.107878137 -0500
49587 @@ -39,7 +39,7 @@
49590 # direct methods
49591 -.method constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
49592 +.method public constructor <init>(Landroid/content/Context;Lcom/android/internal/telephony/PhoneNotifier;Landroid/net/sip/SipProfile;)V
49593 .registers 8
49595 const/4 v3, 0x0