| | | | |
| Offset 36, 18 lines modified | Offset 36, 97 lines modified |
| | |
| 36 | ····.line·43 | 36 | ····.line·43 |
| 37 | ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V | 37 | ····invoke-direct·{p0},·Ljava/lang/Object;-><init>()V |
| | |
| 38 | ····return-void | 38 | ····return-void |
| 39 | .end·method | 39 | .end·method |
| | |
| | 40 | .method·private·static·checkAppOp(Landroid/content/Context;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z |
| | 41 | ····.locals·6 |
| | |
| | 42 | ····.line·245 |
| | 43 | ····const-class·v0,·Landroid/app/AppOpsManager; |
| | |
| | 44 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| | 45 | ····move-result-object·p0 |
| | |
| | 46 | ····move-object·v0,·p0 |
| | |
| | 47 | ····check-cast·v0,·Landroid/app/AppOpsManager; |
| | |
| | 48 | ····move-object·v1,·p1 |
| | |
| | 49 | ····move·v2,·p2 |
| | |
| | 50 | ····move-object·v3,·p3 |
| | |
| | 51 | ····move-object·v4,·p4 |
| | |
| | 52 | ····move-object·v5,·p5 |
| | |
| | 53 | ····.line·246 |
| | 54 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I |
| | |
| | 55 | ····move-result·p0 |
| | |
| | 56 | ····const/4·p2,·0x1 |
| | |
| | 57 | ····if-eqz·p0,·:cond_2 |
| | |
| | 58 | ····if-eq·p0,·p2,·:cond_1 |
| | |
| | 59 | ····const/4·p2,·0x2 |
| | |
| | 60 | ····if-eq·p0,·p2,·:cond_1 |
| | |
| | 61 | ····const/4·p2,·0x3 |
| | |
| | 62 | ····if-ne·p0,·p2,·:cond_0 |
| | |
| | 63 | ····goto·:goto_0 |
| | |
| | 64 | ····.line·255 |
| | 65 | ····:cond_0 |
| | 66 | ····new-instance·p2,·Ljava/lang/IllegalStateException; |
| | |
| | 67 | ····new-instance·p3,·Ljava/lang/StringBuilder; |
| | |
| | 68 | ····invoke-direct·{p3},·Ljava/lang/StringBuilder;-><init>()V |
| | |
| | 69 | ····invoke-virtual·{p3,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; |
| | |
| | 70 | ····const-string·p1,·"·has·unknown·mode·" |
| | |
| | 71 | ····invoke-virtual·{p3,·p1},·Ljava/lang/StringBuilder;->append(Ljava/lang/String;)Ljava/lang/StringBuilder; |
| | |
| | 72 | ····invoke-virtual·{p3,·p0},·Ljava/lang/StringBuilder;->append(I)Ljava/lang/StringBuilder; |
| | |
| | 73 | ····invoke-virtual·{p3},·Ljava/lang/StringBuilder;->toString()Ljava/lang/String; |
| | |
| | 74 | ····move-result-object·p0 |
| | |
| | 75 | ····invoke-direct·{p2,·p0},·Ljava/lang/IllegalStateException;-><init>(Ljava/lang/String;)V |
| | |
| | 76 | ····throw·p2 |
| | |
| | 77 | ····:cond_1 |
| | 78 | ····:goto_0 |
| | 79 | ····const/4·p0,·0x0 |
| | |
| | 80 | ····return·p0 |
| | |
| | 81 | ····:cond_2 |
| | 82 | ····return·p2 |
| | 83 | .end·method |
| | |
| 40 | .method·private·static·checkAppOpAllowingLegacy(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z | 84 | .method·private·static·checkAppOpAllowingLegacy(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z |
| 41 | ····.locals·6 | 85 | ····.locals·6 |
| | |
| 42 | ····.line·231 | 86 | ····.line·266 |
| 43 | ····const-class·p2,·Landroid/app/AppOpsManager; | 87 | ····const-class·p2,·Landroid/app/AppOpsManager; |
| | |
| 44 | ····invoke-virtual·{p0,·p2},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; | 88 | ····invoke-virtual·{p0,·p2},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| 45 | ····move-result-object·p0 | 89 | ····move-result-object·p0 |
| | |
| 46 | ····check-cast·p0,·Landroid/app/AppOpsManager; | 90 | ····check-cast·p0,·Landroid/app/AppOpsManager; |
| Offset 60, 15 lines modified | Offset 139, 15 lines modified |
| | |
| 60 | ····move-object·v3,·p4 | 139 | ····move-object·v3,·p4 |
| | |
| 61 | ····move-object·v4,·p5 | 140 | ····move-object·v4,·p5 |
| | |
| 62 | ····move-object·v5,·p6 | 141 | ····move-object·v5,·p6 |
| | |
| 63 | ····.line·232 | 142 | ····.line·267 |
| 64 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I | 143 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I |
| | |
| 65 | ····move-result·p2 | 144 | ····move-result·p2 |
| | |
| 66 | ····const/4·p5,·0x1 | 145 | ····const/4·p5,·0x1 |
| | |
| 67 | ····if-eqz·p2,·:cond_3 | 146 | ····if-eqz·p2,·:cond_3 |
| Offset 81, 15 lines modified | Offset 160, 15 lines modified |
| | |
| 81 | ····const/4·p6,·0x3 | 160 | ····const/4·p6,·0x3 |
| | |
| 82 | ····if-ne·p2,·p6,·:cond_0 | 161 | ····if-ne·p2,·p6,·:cond_0 |
| | |
| 83 | ····goto·:goto_0 | 162 | ····goto·:goto_0 |
| | |
| 84 | ····.line·246 | 163 | ····.line·281 |
| 85 | ····:cond_0 | 164 | ····:cond_0 |
| 86 | ····new-instance·p0,·Ljava/lang/IllegalStateException; | 165 | ····new-instance·p0,·Ljava/lang/IllegalStateException; |
| | |
| 87 | ····new-instance·p3,·Ljava/lang/StringBuilder; | 166 | ····new-instance·p3,·Ljava/lang/StringBuilder; |
| | |
| 88 | ····invoke-direct·{p3},·Ljava/lang/StringBuilder;-><init>()V | 167 | ····invoke-direct·{p3},·Ljava/lang/StringBuilder;-><init>()V |
| | |
| Offset 109, 15 lines modified | Offset 188, 15 lines modified |
| | |
| 109 | ····throw·p0 | 188 | ····throw·p0 |
| | |
| 110 | ····:cond_1 | 189 | ····:cond_1 |
| 111 | ····:goto_0 | 190 | ····:goto_0 |
| 112 | ····const-string·p1,·"android:legacy_storage" | 191 | ····const-string·p1,·"android:legacy_storage" |
| | |
| 113 | ····.line·241 | 192 | ····.line·276 |
| 114 | ····invoke-virtual·{p0,·p1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I | 193 | ····invoke-virtual·{p0,·p1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I |
| | |
| 115 | ····move-result·p0 | 194 | ····move-result·p0 |
| | |
| 116 | ····if-nez·p0,·:cond_2 | 195 | ····if-nez·p0,·:cond_2 |
| | |
| 117 | ····return·p5 | 196 | ····return·p5 |
| Offset 130, 28 lines modified | Offset 209, 28 lines modified |
| 130 | ····:cond_3 | 209 | ····:cond_3 |
| 131 | ····return·p5 | 210 | ····return·p5 |
| 132 | .end·method | 211 | .end·method |
| | |
| 133 | .method·private·static·checkAppOpPermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 212 | .method·private·static·checkAppOpPermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| 134 | ····.locals·7 | 213 | ····.locals·7 |
| | |
| 135 | ····.line·364 | 214 | ····.line·399 |
| 136 | ····invoke-static·{p1},·Landroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; | 215 | ····invoke-static·{p1},·Landroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; |
| | |
| 137 | ····move-result-object·v1 | 216 | ····move-result-object·v1 |
| | |
| 138 | ····const/4·v6,·0x0 | 217 | ····const/4·v6,·0x0 |
| | |
| 139 | ····if-eqz·v1,·:cond_5 | 218 | ····if-eqz·v1,·:cond_5 |
| | |
| 140 | ····if-nez·p4,·:cond_0 | 219 | ····if-nez·p4,·:cond_0 |
| | |
| 141 | ····goto·:goto_1 | 220 | ····goto·:goto_1 |
| | |
| 142 | ····.line·369 | 221 | ····.line·404 |
| 143 | ····:cond_0 | 222 | ····:cond_0 |
| 144 | ····const-class·v0,·Landroid/app/AppOpsManager; | 223 | ····const-class·v0,·Landroid/app/AppOpsManager; |
| | |
| 145 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; | 224 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| 146 | ····move-result-object·v0 | 225 | ····move-result-object·v0 |
| | |
| Offset 163, 22 lines modified | Offset 242, 22 lines modified |
| | |
| 163 | ····move-object·v3,·p4 | 242 | ····move-object·v3,·p4 |
| | |
| 164 | ····move-object·v4,·p5 | 243 | ····move-object·v4,·p5 |
| | |
| 165 | ····move-object·v5,·p6 | 244 | ····move-object·v5,·p6 |
| | |
| 166 | ····.line·371 | 245 | ····.line·406 |
| 167 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I | 246 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I |
| | |
| 168 | ····move-result·p4 | 247 | ····move-result·p4 |
| | |
| 169 | ····goto·:goto_0 | 248 | ····goto·:goto_0 |
| | |
| 170 | ····.line·372 | 249 | ····.line·407 |
| 171 | ····:cond_1 | 250 | ····:cond_1 |
| 172 | ····invoke-virtual·{v0,·v1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(Ljava/lang/String;ILjava/lang/String;)I | 251 | ····invoke-virtual·{v0,·v1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(Ljava/lang/String;ILjava/lang/String;)I |
| | |
| 173 | ····move-result·p4 | 252 | ····move-result·p4 |
| | |
| 174 | ····:goto_0 | 253 | ····:goto_0 |
| 175 | ····const/4·p5,·0x1 | 254 | ····const/4·p5,·0x1 |
| Offset 191, 15 lines modified | Offset 270, 15 lines modified |
| | |
| 191 | ····const/4·p0,·0x4 | 270 | ····const/4·p0,·0x4 |
| | |
| 192 | ····if-eq·p4,·p0,·:cond_4 | 271 | ····if-eq·p4,·p0,·:cond_4 |
| | |
| 193 | ····return·v6 | 272 | ····return·v6 |
| | |
| 194 | ····.line·379 | 273 | ····.line·414 |
| 195 | ····:cond_2 | 274 | ····:cond_2 |
| 196 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I | 275 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I |
| | |
| 197 | ····move-result·p0 | 276 | ····move-result·p0 |
| | |
| 198 | ····if-nez·p0,·:cond_3 | 277 | ····if-nez·p0,·:cond_3 |
| | |
| Offset 247, 41 lines modified | Offset 326, 41 lines modified |
| 247 | ····:goto_0 | 326 | ····:goto_0 |
| 248 | ····return·p0 | 327 | ····return·p0 |
| 249 | .end·method | 328 | .end·method |
| | |
| 250 | .method·static·checkNoIsolatedStorageGranted(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;)Z | 329 | .method·static·checkNoIsolatedStorageGranted(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;)Z |
| 251 | ····.locals·6 | 330 | ····.locals·6 |
| | |
| 252 | ····.line·191 | 331 | ····.line·205 |
| 253 | ····const-class·v0,·Landroid/app/AppOpsManager; | 332 | ····const-class·v0,·Landroid/app/AppOpsManager; |
| | |
| 254 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; | 333 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| 255 | ····move-result-object·p0 | 334 | ····move-result-object·p0 |
| | |
| 256 | ····move-object·v0,·p0 | 335 | ····move-object·v0,·p0 |
| | |
| 257 | ····check-cast·v0,·Landroid/app/AppOpsManager; | 336 | ····check-cast·v0,·Landroid/app/AppOpsManager; |
| | |
| 258 | ····const-string·p0,·"am·instrument·--no-isolated-storage" | 337 | ····const-string·p0,·"am·instrument·--no-isolated-storage" |
| | |
| 259 | ····.line·193 | 338 | ····.line·207 |
| 260 | ····invoke-static·{p2,·p0},·Lcom/android/providers/media/util/PermissionUtils;->generateAppOpMessage(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; | 339 | ····invoke-static·{p2,·p0},·Lcom/android/providers/media/util/PermissionUtils;->generateAppOpMessage(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; |
| | |
| 261 | ····move-result-object·v5 | 340 | ····move-result-object·v5 |
| | |
| 262 | ····const-string·v1,·"android:no_isolated_storage" | 341 | ····const-string·v1,·"android:no_isolated_storage" |
| | |
| 263 | ····move·v2,·p1 | 342 | ····move·v2,·p1 |
| | |
| 264 | ····move-object·v3,·p2 | 343 | ····move-object·v3,·p2 |
| | |
| 265 | ····move-object·v4,·p3 | 344 | ····move-object·v4,·p3 |
| | |
| 266 | ····.line·192 | 345 | ····.line·206 |
| 267 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I | 346 | ····invoke-virtual/range·{v0·..·v5},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I |
| | |
| 268 | ····move-result·p0 | 347 | ····move-result·p0 |
| | |
| 269 | ····if-nez·p0,·:cond_0 | 348 | ····if-nez·p0,·:cond_0 |
| | |
| 270 | ····const/4·p0,·0x1 | 349 | ····const/4·p0,·0x1 |
| Offset 294, 37 lines modified | Offset 373, 37 lines modified |
| 294 | ····:goto_0 | 373 | ····:goto_0 |
| 295 | ····return·p0 | 374 | ····return·p0 |
| 296 | .end·method | 375 | .end·method |
| | |
| 297 | .method·private·static·checkPermissionAllowingNonLegacy(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;)Z | 376 | .method·private·static·checkPermissionAllowingNonLegacy(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;)Z |
| 298 | ····.locals·2 | 377 | ····.locals·2 |
| | |
| 299 | ····.line·215 | 378 | ····.line·229 |
| 300 | ····const-class·v0,·Landroid/app/AppOpsManager; | 379 | ····const-class·v0,·Landroid/app/AppOpsManager; |
| | |
| 301 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; | 380 | ····invoke-virtual·{p0,·v0},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| 302 | ····move-result-object·v0 | 381 | ····move-result-object·v0 |
| | |
| 303 | ····check-cast·v0,·Landroid/app/AppOpsManager; | 382 | ····check-cast·v0,·Landroid/app/AppOpsManager; |
| | |
| 304 | ····const-string·v1,·"android:legacy_storage" | 383 | ····const-string·v1,·"android:legacy_storage" |
| | |
| 305 | ····.line·218 | 384 | ····.line·232 |
| 306 | ····invoke-virtual·{v0,·v1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I | 385 | ····invoke-virtual·{v0,·v1,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpNoThrow(Ljava/lang/String;ILjava/lang/String;)I |
| | |
| 307 | ····move-result·v0 | 386 | ····move-result·v0 |
| | |
| 308 | ····if-eqz·v0,·:cond_0 | 387 | ····if-eqz·v0,·:cond_0 |
| | |
| 309 | ····const/4·p0,·0x1 | 388 | ····const/4·p0,·0x1 |
| | |
| 310 | ····return·p0 | 389 | ····return·p0 |
| | |
| 311 | ····.line·222 | 390 | ····.line·236 |
| 312 | ····:cond_0 | 391 | ····:cond_0 |
| 313 | ····invoke-static·{p0,·p1,·p2,·p3,·p4},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionForPreflight(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;)Z | 392 | ····invoke-static·{p0,·p1,·p2,·p3,·p4},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionForPreflight(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;)Z |
| | |
| 314 | ····move-result·p0 | 393 | ····move-result·p0 |
| | |
| 315 | ····return·p0 | 394 | ····return·p0 |
| 316 | .end·method | 395 | .end·method |
| Offset 332, 46 lines modified | Offset 411, 46 lines modified |
| 332 | .method·private·static·checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 411 | .method·private·static·checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| 333 | ····.locals·10 | 412 | ····.locals·10 |
| | |
| 334 | ····const/4·v0,·0x0 | 413 | ····const/4·v0,·0x0 |
| | |
| 335 | ····if-nez·p4,·:cond_0 | 414 | ····if-nez·p4,·:cond_0 |
| | |
| 336 | ····.line·327 | 415 | ····.line·362 |
| 337 | ····invoke-virtual·{p0},·Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager; | 416 | ····invoke-virtual·{p0},·Landroid/content/Context;->getPackageManager()Landroid/content/pm/PackageManager; |
| | |
| 338 | ····move-result-object·v1 | 417 | ····move-result-object·v1 |
| | |
| 339 | ····move·v5,·p3 | 418 | ····move·v5,·p3 |
| | |
| 340 | ····invoke-virtual·{v1,·p3},·Landroid/content/pm/PackageManager;->getPackagesForUid(I)[Ljava/lang/String; | 419 | ····invoke-virtual·{v1,·p3},·Landroid/content/pm/PackageManager;->getPackagesForUid(I)[Ljava/lang/String; |
| | |
| 341 | ····move-result-object·v1 | 420 | ····move-result-object·v1 |
| | |
| 342 | ····if-eqz·v1,·:cond_1 | 421 | ····if-eqz·v1,·:cond_1 |
| | |
| 343 | ····.line·328 | 422 | ····.line·363 |
| 344 | ····array-length·v2,·v1 | 423 | ····array-length·v2,·v1 |
| | |
| 345 | ····if-lez·v2,·:cond_1 | 424 | ····if-lez·v2,·:cond_1 |
| | |
| 346 | ····.line·329 | 425 | ····.line·364 |
| 347 | ····aget-object·v1,·v1,·v0 | 426 | ····aget-object·v1,·v1,·v0 |
| | |
| 348 | ····move-object·v6,·v1 | 427 | ····move-object·v6,·v1 |
| | |
| 349 | ····goto·:goto_0 | 428 | ····goto·:goto_0 |
| | |
| 350 | ····:cond_0 | 429 | ····:cond_0 |
| 351 | ····move·v5,·p3 | 430 | ····move·v5,·p3 |
| | |
| 352 | ····:cond_1 | 431 | ····:cond_1 |
| 353 | ····move-object·v6,·p4 | 432 | ····move-object·v6,·p4 |
| | |
| 354 | ····.line·333 | 433 | ····.line·368 |
| 355 | ····:goto_0 | 434 | ····:goto_0 |
| 356 | ····invoke-static·{p1},·Lcom/android/providers/media/util/PermissionUtils;->isAppOpPermission(Ljava/lang/String;)Z | 435 | ····invoke-static·{p1},·Lcom/android/providers/media/util/PermissionUtils;->isAppOpPermission(Ljava/lang/String;)Z |
| | |
| 357 | ····move-result·v1 | 436 | ····move-result·v1 |
| | |
| 358 | ····if-eqz·v1,·:cond_2 | 437 | ····if-eqz·v1,·:cond_2 |
| | |
| Offset 385, 22 lines modified | Offset 464, 22 lines modified |
| | |
| 385 | ····move-object·v7,·p5 | 464 | ····move-object·v7,·p5 |
| | |
| 386 | ····move-object/from16·v8,·p6 | 465 | ····move-object/from16·v8,·p6 |
| | |
| 387 | ····move/from16·v9,·p7 | 466 | ····move/from16·v9,·p7 |
| | |
| 388 | ····.line·334 | 467 | ····.line·369 |
| 389 | ····invoke-static/range·{v2·..·v9},·Lcom/android/providers/media/util/PermissionUtils;->checkAppOpPermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 468 | ····invoke-static/range·{v2·..·v9},·Lcom/android/providers/media/util/PermissionUtils;->checkAppOpPermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| | |
| 390 | ····move-result·v0 | 469 | ····move-result·v0 |
| | |
| 391 | ····return·v0 | 470 | ····return·v0 |
| | |
| 392 | ····.line·337 | 471 | ····.line·372 |
| 393 | ····:cond_2 | 472 | ····:cond_2 |
| 394 | ····invoke-static·{p1},·Lcom/android/providers/media/util/PermissionUtils;->isRuntimePermission(Ljava/lang/String;)Z | 473 | ····invoke-static·{p1},·Lcom/android/providers/media/util/PermissionUtils;->isRuntimePermission(Ljava/lang/String;)Z |
| | |
| 395 | ····move-result·v1 | 474 | ····move-result·v1 |
| | |
| 396 | ····if-eqz·v1,·:cond_3 | 475 | ····if-eqz·v1,·:cond_3 |
| | |
| Offset 414, 22 lines modified | Offset 493, 22 lines modified |
| | |
| 414 | ····move-object·v7,·p5 | 493 | ····move-object·v7,·p5 |
| | |
| 415 | ····move-object/from16·v8,·p6 | 494 | ····move-object/from16·v8,·p6 |
| | |
| 416 | ····move/from16·v9,·p7 | 495 | ····move/from16·v9,·p7 |
| | |
| 417 | ····.line·338 | 496 | ····.line·373 |
| 418 | ····invoke-static/range·{v2·..·v9},·Lcom/android/providers/media/util/PermissionUtils;->checkRuntimePermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 497 | ····invoke-static/range·{v2·..·v9},·Lcom/android/providers/media/util/PermissionUtils;->checkRuntimePermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| | |
| 419 | ····move-result·v0 | 498 | ····move-result·v0 |
| | |
| 420 | ····return·v0 | 499 | ····return·v0 |
| | |
| 421 | ····.line·341 | 500 | ····.line·376 |
| 422 | ····:cond_3 | 501 | ····:cond_3 |
| 423 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I | 502 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I |
| | |
| 424 | ····move-result·v1 | 503 | ····move-result·v1 |
| | |
| 425 | ····if-nez·v1,·:cond_4 | 504 | ····if-nez·v1,·:cond_4 |
| | |
| Offset 490, 15 lines modified | Offset 569, 15 lines modified |
| | |
| 490 | ····move-object·v4,·p4 | 569 | ····move-object·v4,·p4 |
| | |
| 491 | ····move-object·v5,·p5 | 570 | ····move-object·v5,·p5 |
| | |
| 492 | ····move-object·v6,·p6 | 571 | ····move-object·v6,·p6 |
| | |
| 493 | ····.line·319 | 572 | ····.line·354 |
| 494 | ····invoke-static/range·{v0·..·v7},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 573 | ····invoke-static/range·{v0·..·v7},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| | |
| 495 | ····move-result·p0 | 574 | ····move-result·p0 |
| | |
| 496 | ····return·p0 | 575 | ····return·p0 |
| 497 | .end·method | 576 | .end·method |
| | |
| Offset 517, 15 lines modified | Offset 596, 15 lines modified |
| | |
| 517 | ····move·v2,·p2 | 596 | ····move·v2,·p2 |
| | |
| 518 | ····move·v3,·p3 | 597 | ····move·v3,·p3 |
| | |
| 519 | ····move-object·v4,·p4 | 598 | ····move-object·v4,·p4 |
| | |
| 520 | ····.line·281 | 599 | ····.line·316 |
| 521 | ····invoke-static/range·{v0·..·v7},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 600 | ····invoke-static/range·{v0·..·v7},·Lcom/android/providers/media/util/PermissionUtils;->checkPermissionCommon(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| | |
| 522 | ····move-result·p0 | 601 | ····move-result·p0 |
| | |
| 523 | ····return·p0 | 602 | ····return·p0 |
| 524 | .end·method | 603 | .end·method |
| | |
| Offset 997, 42 lines modified | Offset 1076, 42 lines modified |
| | |
| 997 | ····return·p0 | 1076 | ····return·p0 |
| 998 | .end·method | 1077 | .end·method |
| | |
| 999 | .method·private·static·checkRuntimePermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z | 1078 | .method·private·static·checkRuntimePermission(Landroid/content/Context;Ljava/lang/String;IILjava/lang/String;Ljava/lang/String;Ljava/lang/String;Z)Z |
| 1000 | ····.locals·8 | 1079 | ····.locals·8 |
| | |
| 1001 | ····.line·388 | 1080 | ····.line·423 |
| 1002 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I | 1081 | ····invoke-virtual·{p0,·p1,·p2,·p3},·Landroid/content/Context;->checkPermission(Ljava/lang/String;II)I |
| | |
| 1003 | ····move-result·p2 | 1082 | ····move-result·p2 |
| | |
| 1004 | ····const/4·v0,·0x0 | 1083 | ····const/4·v0,·0x0 |
| | |
| 1005 | ····const/4·v1,·-0x1 | 1084 | ····const/4·v1,·-0x1 |
| | |
| 1006 | ····if-ne·p2,·v1,·:cond_0 | 1085 | ····if-ne·p2,·v1,·:cond_0 |
| | |
| 1007 | ····return·v0 | 1086 | ····return·v0 |
| | |
| 1008 | ····.line·392 | 1087 | ····.line·427 |
| 1009 | ····:cond_0 | 1088 | ····:cond_0 |
| 1010 | ····invoke-static·{p1},·Landroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; | 1089 | ····invoke-static·{p1},·Landroid/app/AppOpsManager;->permissionToOp(Ljava/lang/String;)Ljava/lang/String; |
| | |
| 1011 | ····move-result-object·v3 | 1090 | ····move-result-object·v3 |
| | |
| 1012 | ····const/4·p1,·0x1 | 1091 | ····const/4·p1,·0x1 |
| | |
| 1013 | ····if-eqz·v3,·:cond_3 | 1092 | ····if-eqz·v3,·:cond_3 |
| | |
| 1014 | ····if-nez·p4,·:cond_1 | 1093 | ····if-nez·p4,·:cond_1 |
| | |
| 1015 | ····goto·:goto_1 | 1094 | ····goto·:goto_1 |
| | |
| 1016 | ····.line·397 | 1095 | ····.line·432 |
| 1017 | ····:cond_1 | 1096 | ····:cond_1 |
| 1018 | ····const-class·p2,·Landroid/app/AppOpsManager; | 1097 | ····const-class·p2,·Landroid/app/AppOpsManager; |
| | |
| 1019 | ····invoke-virtual·{p0,·p2},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; | 1098 | ····invoke-virtual·{p0,·p2},·Landroid/content/Context;->getSystemService(Ljava/lang/Class;)Ljava/lang/Object; |
| | |
| 1020 | ····move-result-object·p0 | 1099 | ····move-result-object·p0 |
| | |
| Offset 1046, 22 lines modified | Offset 1125, 22 lines modified |
| | |
| 1046 | ····move-object·v5,·p4 | 1125 | ····move-object·v5,·p4 |
| | |
| 1047 | ····move-object·v6,·p5 | 1126 | ····move-object·v6,·p5 |
| | |
| 1048 | ····move-object·v7,·p6 | 1127 | ····move-object·v7,·p6 |
| | |
| 1049 | ····.line·399 | 1128 | ····.line·434 |
| 1050 | ····invoke-virtual/range·{v2·..·v7},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I | 1129 | ····invoke-virtual/range·{v2·..·v7},·Landroid/app/AppOpsManager;->noteOpNoThrow(Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)I |
| | |
| 1051 | ····move-result·p0 | 1130 | ····move-result·p0 |
| | |
| 1052 | ····goto·:goto_0 | 1131 | ····goto·:goto_0 |
| | |
| 1053 | ····.line·400 | 1132 | ····.line·435 |
| 1054 | ····:cond_2 | 1133 | ····:cond_2 |
| 1055 | ····invoke-virtual·{v2,·v3,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(Ljava/lang/String;ILjava/lang/String;)I | 1134 | ····invoke-virtual·{v2,·v3,·p3,·p4},·Landroid/app/AppOpsManager;->unsafeCheckOpRawNoThrow(Ljava/lang/String;ILjava/lang/String;)I |
| | |
| 1056 | ····move-result·p0 | 1135 | ····move-result·p0 |
| | |
| 1057 | ····:goto_0 | 1136 | ····:goto_0 |
| 1058 | ····if-eqz·p0,·:cond_3 | 1137 | ····if-eqz·p0,·:cond_3 |
| Offset 1073, 14 lines modified | Offset 1152, 93 lines modified |
| 1073 | ····return·v0 | 1152 | ····return·v0 |
| | |
| 1074 | ····:cond_3 | 1153 | ····:cond_3 |
| 1075 | ····:goto_1 | 1154 | ····:goto_1 |
| 1076 | ····return·p1 | 1155 | ····return·p1 |
| 1077 | .end·method | 1156 | .end·method |
| | |
| | 1157 | .method·public·static·checkWriteImagesOrVideoAppOps(Landroid/content/Context;ILjava/lang/String;Ljava/lang/String;)Z |
| | 1158 | ····.locals·7 |
| | |
| | 1159 | ····.line·194 |
| | 1160 | ····sget-object·v0,·Lcom/android/providers/media/util/PermissionUtils;->sOpDescription:Ljava/lang/ThreadLocal; |
| | |
| | 1161 | ····.line·196 |
| | 1162 | ····invoke-virtual·{v0},·Ljava/lang/ThreadLocal;->get()Ljava/lang/Object; |
| | |
| | 1163 | ····move-result-object·v0 |
| | |
| | 1164 | ····check-cast·v0,·Ljava/lang/String; |
| | |
| | 1165 | ····invoke-static·{p2,·v0},·Lcom/android/providers/media/util/PermissionUtils;->generateAppOpMessage(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; |
| | |
| | 1166 | ····move-result-object·v6 |
| | |
| | 1167 | ····const-string·v2,·"android:write_media_images" |
| | |
| | 1168 | ····move-object·v1,·p0 |
| | |
| | 1169 | ····move·v3,·p1 |
| | |
| | 1170 | ····move-object·v4,·p2 |
| | |
| | 1171 | ····move-object·v5,·p3 |
| | |
| | 1172 | ····.line·194 |
| | 1173 | ····invoke-static/range·{v1·..·v6},·Lcom/android/providers/media/util/PermissionUtils;->checkAppOp(Landroid/content/Context;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z |
| | |
| | 1174 | ····move-result·v0 |
| | |
| | 1175 | ····if-nez·v0,·:cond_1 |
| | |
| | 1176 | ····sget-object·v0,·Lcom/android/providers/media/util/PermissionUtils;->sOpDescription:Ljava/lang/ThreadLocal; |
| | |
| | 1177 | ····.line·199 |
| | 1178 | ····invoke-virtual·{v0},·Ljava/lang/ThreadLocal;->get()Ljava/lang/Object; |
| | |
| | 1179 | ····move-result-object·v0 |
| | |
| | 1180 | ····check-cast·v0,·Ljava/lang/String; |
| | |
| | 1181 | ····invoke-static·{p2,·v0},·Lcom/android/providers/media/util/PermissionUtils;->generateAppOpMessage(Ljava/lang/String;Ljava/lang/String;)Ljava/lang/String; |
| | |
| | 1182 | ····move-result-object·v6 |
| | |
| | 1183 | ····const-string·v2,·"android:write_media_video" |
| | |
| | 1184 | ····move-object·v1,·p0 |
| | |
| | 1185 | ····move·v3,·p1 |
| | |
| | 1186 | ····move-object·v4,·p2 |
| | |
| | 1187 | ····move-object·v5,·p3 |
| | |
| | 1188 | ····.line·197 |
| | 1189 | ····invoke-static/range·{v1·..·v6},·Lcom/android/providers/media/util/PermissionUtils;->checkAppOp(Landroid/content/Context;Ljava/lang/String;ILjava/lang/String;Ljava/lang/String;Ljava/lang/String;)Z |
| | |
| | 1190 | ····move-result·p0 |
| | |
| | 1191 | ····if-eqz·p0,·:cond_0 |
| | |
| | 1192 | ····goto·:goto_0 |
| | |
| | 1193 | ····:cond_0 |
| | 1194 | ····const/4·p0,·0x0 |
| | |
| | 1195 | ····goto·:goto_1 |
| | |
| | 1196 | ····:cond_1 |
| | 1197 | ····:goto_0 |
| | 1198 | ····const/4·p0,·0x1 |
| | |
| | 1199 | ····:goto_1 |
| | 1200 | ····return·p0 |
| | 1201 | .end·method |
| | |
| 1078 | .method·public·static·clearOpDescription()V | 1202 | .method·public·static·clearOpDescription()V |
| 1079 | ····.locals·2 | 1203 | ····.locals·2 |
| | |
| 1080 | ····.line·57 | 1204 | ····.line·57 |
| 1081 | ····sget-object·v0,·Lcom/android/providers/media/util/PermissionUtils;->sOpDescription:Ljava/lang/ThreadLocal; | 1205 | ····sget-object·v0,·Lcom/android/providers/media/util/PermissionUtils;->sOpDescription:Ljava/lang/ThreadLocal; |
| | |
| 1082 | ····const/4·v1,·0x0 | 1206 | ····const/4·v1,·0x0 |
| Offset 1095, 15 lines modified | Offset 1253, 15 lines modified |
| | |
| 1095 | ····if-nez·p1,·:cond_0 | 1253 | ····if-nez·p1,·:cond_0 |
| | |
| 1096 | ····const/4·p0,·0x0 | 1254 | ····const/4·p0,·0x0 |
| | |
| 1097 | ····return-object·p0 | 1255 | ····return-object·p0 |
| | |
| 1098 | ····.line·206 | 1256 | ····.line·220 |
| 1099 | ····:cond_0 | 1257 | ····:cond_0 |
| 1100 | ····new-instance·v0,·Ljava/lang/StringBuilder; | 1258 | ····new-instance·v0,·Ljava/lang/StringBuilder; |
| | |
| 1101 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V | 1259 | ····invoke-direct·{v0},·Ljava/lang/StringBuilder;-><init>()V |
| | |
| 1102 | ····const-string·v1,·"Package:·" | 1260 | ····const-string·v1,·"Package:·" |
| | |
| Offset 1127, 15 lines modified | Offset 1285, 15 lines modified |
| | |
| 1127 | ····return-object·p0 | 1285 | ····return-object·p0 |
| 1128 | .end·method | 1286 | .end·method |
| | |
| 1129 | .method·private·static·isAppOpPermission(Ljava/lang/String;)Z | 1287 | .method·private·static·isAppOpPermission(Ljava/lang/String;)Z |
| 1130 | ····.locals·3 | 1288 | ····.locals·3 |
| | |
| 1131 | ····.line·345 | 1289 | ····.line·380 |
| 1132 | ····invoke-virtual·{p0},·Ljava/lang/String;->hashCode()I | 1290 | ····invoke-virtual·{p0},·Ljava/lang/String;->hashCode()I |
| | |
| 1133 | ····move-result·v0 | 1291 | ····move-result·v0 |
| | |
| 1134 | ····const/4·v1,·0x0 | 1292 | ····const/4·v1,·0x0 |
| | |
| 1135 | ····const·v2,·-0x6c1165bf | 1293 | ····const·v2,·-0x6c1165bf |
| Offset 1171, 15 lines modified | Offset 1329, 15 lines modified |
| | |
| 1171 | ····return·p0 | 1329 | ····return·p0 |
| 1172 | .end·method | 1330 | .end·method |
| | |
| 1173 | .method·private·static·isRuntimePermission(Ljava/lang/String;)Z | 1331 | .method·private·static·isRuntimePermission(Ljava/lang/String;)Z |
| 1174 | ····.locals·4 | 1332 | ····.locals·4 |
| | |
| 1175 | ····.line·353 | 1333 | ····.line·388 |
| 1176 | ····invoke-virtual·{p0},·Ljava/lang/String;->hashCode()I | 1334 | ····invoke-virtual·{p0},·Ljava/lang/String;->hashCode()I |
| | |
| 1177 | ····move-result·v0 | 1335 | ····move-result·v0 |
| | |
| 1178 | ····const·v1,·-0x1833add0 | 1336 | ····const·v1,·-0x1833add0 |
| | |
| 1179 | ····const/4·v2,·0x0 | 1337 | ····const/4·v2,·0x0 |