540 KB
/home/fdroid/fdroiddata/tmp/naman14.timber_14.apk vs.
/home/fdroid/fdroiddata/tmp/sigcp_naman14.timber_14.apk
136 KB
zipinfo /dev/stdin
Max report size reached
126 KB
classes.dex
126 KB
classes.jar
12.1 KB
zipinfo /dev/stdin
Max report size reached
2.19 KB
zipnote {}
Max report size reached
474 B
android/support/annotation/VisibleForTesting.class
374 B
procyon -ec {}
Offset 1, 7 lines modifiedOffset 1, 13 lines modified
  
1 package·​android.​support.​annotation;​1 package·​android.​support.​annotation;​
  
2 import·​java.​lang.​annotation.​Annotation;​2 import·​java.​lang.​annotation.​Annotation;​
  
3 public·​@interface·​VisibleForTesting·​{3 public·​@interface·​VisibleForTesting·​{
 4 ····​public·​static·​final·​int·​NONE·​=·​5;​
 5 ····​public·​static·​final·​int·​PACKAGE_PRIVATE·​=·​3;​
 6 ····​public·​static·​final·​int·​PRIVATE·​=·​2;​
 7 ····​public·​static·​final·​int·​PROTECTED·​=·​4;​
 8 ····
 9 ····​int·​otherwise()​;​
4 }10 }
1.24 KB
com/android/vending/billing/IInAppBillingService.class
1.13 KB
procyon -ec {}
Max report size reached
3.28 KB
com/anjlab/android/iab/v3/BillingBase.class
3.2 KB
procyon -ec {}
Max report size reached
1.44 KB
com/anjlab/android/iab/v3/BillingProcessor$1.class
1.34 KB
procyon -ec {}
Max report size reached
556 B
com/anjlab/android/iab/v3/BuildConfig.class
470 B
procyon -ec {}
Max report size reached
3.98 KB
com/anjlab/android/iab/v3/Constants.class
3.9 KB
procyon -ec {}
Max report size reached
7.13 KB
com/anjlab/android/iab/v3/PurchaseInfo.class
7.05 KB
procyon -ec {}
Max report size reached
6.04 KB
com/anjlab/android/iab/v3/SkuDetails.class
5.96 KB
procyon -ec {}
Max report size reached
3.25 KB
com/anjlab/android/iab/v3/TransactionDetails.class
3.15 KB
procyon -ec {}
Max report size reached
5.19 KB
com/android/vending/billing/IInAppBillingService$Stub$Proxy.class
5.06 KB
procyon -ec {}
Max report size reached
4.5 KB
com/android/vending/billing/IInAppBillingService$Stub.class
4.38 KB
procyon -ec {}
Max report size reached
2.27 KB
com/anjlab/android/iab/v3/BillingCache.class
2.18 KB
procyon -ec {}
Max report size reached
69.2 KB
com/anjlab/android/iab/v3/BillingProcessor.class
69.1 KB
procyon -ec {}
Max report size reached
1.38 KB
com/anjlab/android/iab/v3/PurchaseInfo$PurchaseState.class vs.
com/anjlab/android/iab/v3/PurchaseState.class
Files similar despite different names (score: 54, lower is more similar)
1.2 KB
procyon -ec {}
Max report size reached
2.12 KB
com/anjlab/android/iab/v3/PurchaseInfo$ResponseData.class vs.
com/anjlab/android/iab/v3/PurchaseData.class
Files similar despite different names (score: 53, lower is more similar)
1.95 KB
procyon -ec {}
Max report size reached
716 B
smali/android/support/annotation/Dimension.smali
Offset 9, 20 lines modifiedOffset 9, 14 lines modified
9 #·​annotations9 #·​annotations
10 .​annotation·​system·​Ldalvik/​annotation/​AnnotationDefault;​10 .​annotation·​system·​Ldalvik/​annotation/​AnnotationDefault;​
11 ····​value·​=·​.​subannotation·​Landroid/​support/​annotation/​Dimension;​11 ····​value·​=·​.​subannotation·​Landroid/​support/​annotation/​Dimension;​
12 ········​unit·​=·​0x112 ········​unit·​=·​0x1
13 ····​.​end·​subannotation13 ····​.​end·​subannotation
14 .​end·​annotation14 .​end·​annotation
  
15 .​annotation·​system·​Ldalvik/​annotation/​MemberClasses;​ 
16 ····​value·​=·​{ 
17 ········​Landroid/​support/​annotation/​Dimension$Unit;​ 
18 ····​} 
19 .​end·​annotation 
  
20 .​annotation·​runtime·​Ljava/​lang/​annotation/​Documented;​15 .​annotation·​runtime·​Ljava/​lang/​annotation/​Documented;​
21 .​end·​annotation16 .​end·​annotation
  
22 .​annotation·​runtime·​Ljava/​lang/​annotation/​Retention;​17 .​annotation·​runtime·​Ljava/​lang/​annotation/​Retention;​
23 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​18 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​
24 .​end·​annotation19 .​end·​annotation
  
900 B
smali/android/support/annotation/Nullable.smali
Offset 14, 10 lines modifiedOffset 14, 12 lines modified
14 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​14 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​
15 .​end·​annotation15 .​end·​annotation
  
16 .​annotation·​runtime·​Ljava/​lang/​annotation/​Target;​16 .​annotation·​runtime·​Ljava/​lang/​annotation/​Target;​
17 ····​value·​=·​{17 ····​value·​=·​{
18 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>METHOD:​Ljava/​lang/​annotation/​ElementType;​,​18 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>METHOD:​Ljava/​lang/​annotation/​ElementType;​,​
19 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PARAMETER:​Ljava/​lang/​annotation/​ElementType;​,​19 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PARAMETER:​Ljava/​lang/​annotation/​ElementType;​,​
20 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>FIELD:​Ljava/​lang/​annotation/​ElementType;​20 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>FIELD:​Ljava/​lang/​annotation/​ElementType;​,​
 21 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>ANNOTATION_TYPE:​Ljava/​lang/​annotation/​ElementType;​,​
 22 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PACKAGE:​Ljava/​lang/​annotation/​ElementType;​
21 ····​}23 ····​}
22 .​end·​annotation24 .​end·​annotation
906 B
smali/android/support/annotation/VisibleForTesting.smali
Offset 3, 10 lines modifiedOffset 3, 31 lines modified
3 .​source·​"VisibleForTesting.​java"3 .​source·​"VisibleForTesting.​java"
  
4 #·​interfaces4 #·​interfaces
5 .​implements·​Ljava/​lang/​annotation/​Annotation;​5 .​implements·​Ljava/​lang/​annotation/​Annotation;​
  
  
6 #·​annotations6 #·​annotations
 7 .​annotation·​system·​Ldalvik/​annotation/​AnnotationDefault;​
 8 ····​value·​=·​.​subannotation·​Landroid/​support/​annotation/​VisibleForTesting;​
 9 ········​otherwise·​=·​0x2
 10 ····​.​end·​subannotation
 11 .​end·​annotation
  
7 .​annotation·​runtime·​Ljava/​lang/​annotation/​Retention;​12 .​annotation·​runtime·​Ljava/​lang/​annotation/​Retention;​
8 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​13 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​
9 .​end·​annotation14 .​end·​annotation
  
  
 15 #·​static·​fields
 16 .​field·​public·​static·​final·​NONE:​I·​=·​0x5
  
 17 .​field·​public·​static·​final·​PACKAGE_PRIVATE:​I·​=·​0x3
  
 18 .​field·​public·​static·​final·​PRIVATE:​I·​=·​0x2
  
 19 .​field·​public·​static·​final·​PROTECTED:​I·​=·​0x4
  
  
 20 #·​virtual·​methods
 21 .​method·​public·​abstract·​otherwise()​I
 22 .​end·​method
898 B
smali/android/support/annotation/NonNull.smali
Offset 14, 10 lines modifiedOffset 14, 12 lines modified
14 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​14 ····​value·​=·​.​enum·​Ljava/​lang/​annotation/​RetentionPolicy;​-​>CLASS:​Ljava/​lang/​annotation/​RetentionPolicy;​
15 .​end·​annotation15 .​end·​annotation
  
16 .​annotation·​runtime·​Ljava/​lang/​annotation/​Target;​16 .​annotation·​runtime·​Ljava/​lang/​annotation/​Target;​
17 ····​value·​=·​{17 ····​value·​=·​{
18 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>METHOD:​Ljava/​lang/​annotation/​ElementType;​,​18 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>METHOD:​Ljava/​lang/​annotation/​ElementType;​,​
19 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PARAMETER:​Ljava/​lang/​annotation/​ElementType;​,​19 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PARAMETER:​Ljava/​lang/​annotation/​ElementType;​,​
20 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>FIELD:​Ljava/​lang/​annotation/​ElementType;​20 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>FIELD:​Ljava/​lang/​annotation/​ElementType;​,​
 21 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>ANNOTATION_TYPE:​Ljava/​lang/​annotation/​ElementType;​,​
 22 ········​.​enum·​Ljava/​lang/​annotation/​ElementType;​-​>PACKAGE:​Ljava/​lang/​annotation/​ElementType;​
21 ····​}23 ····​}
22 .​end·​annotation24 .​end·​annotation
1.65 KB
smali/com/anjlab/android/iab/v3/SkuDetails$1.smali
Offset 28, 62 lines modifiedOffset 28, 62 lines modified
  
  
28 #·​direct·​methods28 #·​direct·​methods
29 .​method·​constructor·​<init>()​V29 .​method·​constructor·​<init>()​V
30 ····​.​locals·​030 ····​.​locals·​0
  
31 ····​.​prologue31 ····​.​prologue
32 ····​.​line·​11532 ····​.​line·​189
33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V
  
34 ····​return-​void34 ····​return-​void
35 .​end·​method35 .​end·​method
  
  
36 #·​virtual·​methods36 #·​virtual·​methods
37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
38 ····​.​locals·​138 ····​.​locals·​1
39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​
  
40 ····​.​prologue40 ····​.​prologue
41 ····​.​line·​11741 ····​.​line·​192
42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
  
43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​-​><init>(Landroid/​os/​Parcel;​)​V43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​-​><init>(Landroid/​os/​Parcel;​)​V
  
44 ····​return-​object·​v044 ····​return-​object·​v0
45 .​end·​method45 .​end·​method
  
46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​
47 ····​.​locals·​147 ····​.​locals·​1
  
48 ····​.​prologue48 ····​.​prologue
49 ····​.​line·​11549 ····​.​line·​189
50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
  
51 ····​move-​result-​object·​v051 ····​move-​result-​object·​v0
  
52 ····​return-​object·​v052 ····​return-​object·​v0
53 .​end·​method53 .​end·​method
  
54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
55 ····​.​locals·​155 ····​.​locals·​1
56 ····​.​param·​p1,​·​"size"····​#·​I56 ····​.​param·​p1,​·​"size"····​#·​I
  
57 ····​.​prologue57 ····​.​prologue
58 ····​.​line·​12158 ····​.​line·​197
59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
  
60 ····​return-​object·​v060 ····​return-​object·​v0
61 .​end·​method61 .​end·​method
  
62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​
63 ····​.​locals·​163 ····​.​locals·​1
  
64 ····​.​prologue64 ····​.​prologue
65 ····​.​line·​11565 ····​.​line·​189
66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​SkuDetails$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​SkuDetails;​
  
67 ····​move-​result-​object·​v067 ····​move-​result-​object·​v0
  
68 ····​return-​object·​v068 ····​return-​object·​v0
69 .​end·​method69 .​end·​method
1.03 KB
smali/com/anjlab/android/iab/v3/BillingProcessor$IBillingHandler.smali
Offset 12, 17 lines modifiedOffset 12, 29 lines modified
12 ····​accessFlags·​=·​0x60912 ····​accessFlags·​=·​0x609
13 ····​name·​=·​"IBillingHandler"13 ····​name·​=·​"IBillingHandler"
14 .​end·​annotation14 .​end·​annotation
  
  
15 #·​virtual·​methods15 #·​virtual·​methods
16 .​method·​public·​abstract·​onBillingError(ILjava​/​lang/​Throwable;​)​V16 .​method·​public·​abstract·​onBillingError(ILjava​/​lang/​Throwable;​)​V
 17 ····​.​param·​p2····​#·​Ljava/​lang/​Throwable;​
 18 ········​.​annotation·​build·​Landroid/​support/​annotation/​Nullable;​
 19 ········​.​end·​annotation
 20 ····​.​end·​param
17 .​end·​method21 .​end·​method
  
18 .​method·​public·​abstract·​onBillingInitialized(​)​V22 .​method·​public·​abstract·​onBillingInitialized(​)​V
19 .​end·​method23 .​end·​method
  
20 .​method·​public·​abstract·​onProductPurchased(Lj​ava/​lang/​String;​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​)​V24 .​method·​public·​abstract·​onProductPurchased(Lj​ava/​lang/​String;​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​)​V
 25 ····​.​param·​p1····​#·​Ljava/​lang/​String;​
 26 ········​.​annotation·​build·​Landroid/​support/​annotation/​NonNull;​
 27 ········​.​end·​annotation
 28 ····​.​end·​param
 29 ····​.​param·​p2····​#·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
 30 ········​.​annotation·​build·​Landroid/​support/​annotation/​Nullable;​
 31 ········​.​end·​annotation
 32 ····​.​end·​param
21 .​end·​method33 .​end·​method
  
22 .​method·​public·​abstract·​onPurchaseHistoryRest​ored()​V34 .​method·​public·​abstract·​onPurchaseHistoryRest​ored()​V
23 .​end·​method35 .​end·​method
21.4 KB
smali/com/anjlab/android/iab/v3/SkuDetails.smali
Max report size reached
4.21 KB
smali/com/anjlab/android/iab/v3/Constants.smali
Offset 1, 19 lines modifiedOffset 1, 26 lines modified
1 .​class·​public·​Lcom/​anjlab/​android/​iab/​v3/​Constants;​1 .​class·​public·​Lcom/​anjlab/​android/​iab/​v3/​Constants;​
2 .​super·​Ljava/​lang/​Object;​2 .​super·​Ljava/​lang/​Object;​
3 .​source·​"Constants.​java"3 .​source·​"Constants.​java"
  
  
4 #·​static·​fields4 #·​static·​fields
 5 .​field·​public·​static·​final·​BILLING_ERROR_BIND_PL​AY_STORE_FAILED:​I·​=·​0x71
  
5 .​field·​public·​static·​final·​BILLING_ERROR_CONSUME​_FAILED:​I·​=·​0x6f6 .​field·​public·​static·​final·​BILLING_ERROR_CONSUME​_FAILED:​I·​=·​0x6f
  
6 .​field·​public·​static·​final·​BILLING_ERROR_FAILED_​LOAD_PURCHASES:​I·​=·​0x647 .​field·​public·​static·​final·​BILLING_ERROR_FAILED_​LOAD_PURCHASES:​I·​=·​0x64
  
7 .​field·​public·​static·​final·​BILLING_ERROR_FAILED_​TO_INITIALIZE_PURCHAS​E:​I·​=·​0x658 .​field·​public·​static·​final·​BILLING_ERROR_FAILED_​TO_INITIALIZE_PURCHAS​E:​I·​=·​0x65
  
 9 .​field·​public·​static·​final·​BILLING_ERROR_INVALID​_DEVELOPER_PAYLOAD:​I·​=·​0x69
 10 ····​.​annotation·​runtime·​Ljava/​lang/​Deprecated;​
 11 ····​.​end·​annotation
 12 .​end·​field
  
8 .​field·​public·​static·​final·​BILLING_ERROR_INVALID​_MERCHANT_ID:​I·​=·​0x6813 .​field·​public·​static·​final·​BILLING_ERROR_INVALID​_MERCHANT_ID:​I·​=·​0x68
  
9 .​field·​public·​static·​final·​BILLING_ERROR_INVALID​_SIGNATURE:​I·​=·​0x6614 .​field·​public·​static·​final·​BILLING_ERROR_INVALID​_SIGNATURE:​I·​=·​0x66
  
10 .​field·​public·​static·​final·​BILLING_ERROR_LOST_CO​NTEXT:​I·​=·​0x6715 .​field·​public·​static·​final·​BILLING_ERROR_LOST_CO​NTEXT:​I·​=·​0x67
  
11 .​field·​public·​static·​final·​BILLING_ERROR_OTHER_E​RROR:​I·​=·​0x6e16 .​field·​public·​static·​final·​BILLING_ERROR_OTHER_E​RROR:​I·​=·​0x6e
Offset 38, 52 lines modifiedOffset 45, 76 lines modified
  
38 .​field·​public·​static·​final·​BILLING_RESPONSE_RESU​LT_USER_CANCELED:​I·​=·​0x145 .​field·​public·​static·​final·​BILLING_RESPONSE_RESU​LT_USER_CANCELED:​I·​=·​0x1
  
39 .​field·​public·​static·​final·​BUY_INTENT:​Ljava/​lang/​String;​·​=·​"BUY_INTENT"46 .​field·​public·​static·​final·​BUY_INTENT:​Ljava/​lang/​String;​·​=·​"BUY_INTENT"
  
40 .​field·​public·​static·​final·​DETAILS_LIST:​Ljava/​lang/​String;​·​=·​"DETAILS_LIST"47 .​field·​public·​static·​final·​DETAILS_LIST:​Ljava/​lang/​String;​·​=·​"DETAILS_LIST"
  
 48 .​field·​public·​static·​final·​EXTRA_PARAMS_KEY_SKU_​TO_REPLACE:​Ljava/​lang/​String;​·​=·​"skusToReplace"
  
 49 .​field·​public·​static·​final·​EXTRA_PARAMS_KEY_VR:​Ljava/​lang/​String;​·​=·​"vr"
  
41 .​field·​public·​static·​final·​GOOGLE_API_SUBSCRIPTI​ON_CHANGE_VERSION:​I·​=·​0x550 .​field·​public·​static·​final·​GOOGLE_API_SUBSCRIPTI​ON_CHANGE_VERSION:​I·​=·​0x5
  
42 .​field·​public·​static·​final·​GOOGLE_API_VERSION:​I·​=·​0x351 .​field·​public·​static·​final·​GOOGLE_API_VERSION:​I·​=·​0x3
  
 52 .​field·​public·​static·​final·​GOOGLE_API_VR_SUPPORT​ED_VERSION:​I·​=·​0x7
  
43 .​field·​public·​static·​final·​INAPP_DATA_SIGNATURE_​LIST:​Ljava/​lang/​String;​·​=·​"INAPP_DATA_SIGNATURE​_LIST"53 .​field·​public·​static·​final·​INAPP_DATA_SIGNATURE_​LIST:​Ljava/​lang/​String;​·​=·​"INAPP_DATA_SIGNATURE​_LIST"
  
44 .​field·​public·​static·​final·​INAPP_PURCHASE_DATA:​Ljava/​lang/​String;​·​=·​"INAPP_PURCHASE_DATA"​54 .​field·​public·​static·​final·​INAPP_PURCHASE_DATA:​Ljava/​lang/​String;​·​=·​"INAPP_PURCHASE_DATA"​
  
45 .​field·​public·​static·​final·​INAPP_PURCHASE_DATA_L​IST:​Ljava/​lang/​String;​·​=·​"INAPP_PURCHASE_DATA_​LIST"55 .​field·​public·​static·​final·​INAPP_PURCHASE_DATA_L​IST:​Ljava/​lang/​String;​·​=·​"INAPP_PURCHASE_DATA_​LIST"
  
46 .​field·​public·​static·​final·​PRODUCTS_LIST:​Ljava/​lang/​String;​·​=·​"ITEM_ID_LIST"56 .​field·​public·​static·​final·​PRODUCTS_LIST:​Ljava/​lang/​String;​·​=·​"ITEM_ID_LIST"
  
47 .​field·​public·​static·​final·​PRODUCT_TYPE_MANAGED:​Ljava/​lang/​String;​·​=·​"inapp"57 .​field·​public·​static·​final·​PRODUCT_TYPE_MANAGED:​Ljava/​lang/​String;​·​=·​"inapp"
  
48 .​field·​public·​static·​final·​PRODUCT_TYPE_SUBSCRIP​TION:​Ljava/​lang/​String;​·​=·​"subs"58 .​field·​public·​static·​final·​PRODUCT_TYPE_SUBSCRIP​TION:​Ljava/​lang/​String;​·​=·​"subs"
  
 59 .​field·​public·​static·​final·​RESPONSE_AUTO_RENEWIN​G:​Ljava/​lang/​String;​·​=·​"autoRenewing"
  
49 .​field·​public·​static·​final·​RESPONSE_CODE:​Ljava/​lang/​String;​·​=·​"RESPONSE_CODE"60 .​field·​public·​static·​final·​RESPONSE_CODE:​Ljava/​lang/​String;​·​=·​"RESPONSE_CODE"
  
50 .​field·​public·​static·​final·​RESPONSE_DESCRIPTION:​Ljava/​lang/​String;​·​=·​"description"61 .​field·​public·​static·​final·​RESPONSE_DESCRIPTION:​Ljava/​lang/​String;​·​=·​"description"
  
 62 .​field·​public·​static·​final·​RESPONSE_DEVELOPER_PA​YLOAD:​Ljava/​lang/​String;​·​=·​"developerPayload"
  
 63 .​field·​public·​static·​final·​RESPONSE_FREE_TRIAL_P​ERIOD:​Ljava/​lang/​String;​·​=·​"freeTrialPeriod"
  
51 .​field·​public·​static·​final·​RESPONSE_INAPP_SIGNAT​URE:​Ljava/​lang/​String;​·​=·​"INAPP_DATA_SIGNATURE​"64 .​field·​public·​static·​final·​RESPONSE_INAPP_SIGNAT​URE:​Ljava/​lang/​String;​·​=·​"INAPP_DATA_SIGNATURE​"
  
 65 .​field·​public·​static·​final·​RESPONSE_INTRODUCTORY​_PRICE:​Ljava/​lang/​String;​·​=·​"introductoryPrice"
  
 66 .​field·​public·​static·​final·​RESPONSE_INTRODUCTORY​_PRICE_CYCLES:​Ljava/​lang/​String;​·​=·​"introductoryPriceCyc​les"
  
 67 .​field·​public·​static·​final·​RESPONSE_INTRODUCTORY​_PRICE_MICROS:​Ljava/​lang/​String;​·​=·​"introductoryPriceAmo​untMicros"
  
 68 .​field·​public·​static·​final·​RESPONSE_INTRODUCTORY​_PRICE_PERIOD:​Ljava/​lang/​String;​·​=·​"introductoryPricePer​iod"
  
52 .​field·​public·​static·​final·​RESPONSE_ORDER_ID:​Ljava/​lang/​String;​·​=·​"orderId"69 .​field·​public·​static·​final·​RESPONSE_ORDER_ID:​Ljava/​lang/​String;​·​=·​"orderId"
  
53 .​field·​public·​static·​final·​RESPONSE_PAYLOAD:​Ljava/​lang/​String;​·​=·​"developerPayload"70 .​field·​public·​static·​final·​RESPONSE_PACKAGE_NAME​:​Ljava/​lang/​String;​·​=·​"packageName"
  
54 .​field·​public·​static·​final·​RESPONSE_PRICE:​Ljava/​lang/​String;​·​=·​"price"71 .​field·​public·​static·​final·​RESPONSE_PRICE:​Ljava/​lang/​String;​·​=·​"price"
  
55 .​field·​public·​static·​final·​RESPONSE_PRICE_CURREN​CY:​Ljava/​lang/​String;​·​=·​"price_currency_code"​72 .​field·​public·​static·​final·​RESPONSE_PRICE_CURREN​CY:​Ljava/​lang/​String;​·​=·​"price_currency_code"​
  
56 .​field·​public·​static·​final·​RESPONSE_PRICE_MICROS​:​Ljava/​lang/​String;​·​=·​"price_amount_micros"​73 .​field·​public·​static·​final·​RESPONSE_PRICE_MICROS​:​Ljava/​lang/​String;​·​=·​"price_amount_micros"​
  
57 .​field·​public·​static·​final·​RESPONSE_PRODUCT_ID:​Ljava/​lang/​String;​·​=·​"productId"74 .​field·​public·​static·​final·​RESPONSE_PRODUCT_ID:​Ljava/​lang/​String;​·​=·​"productId"
  
 75 .​field·​public·​static·​final·​RESPONSE_PURCHASE_STA​TE:​Ljava/​lang/​String;​·​=·​"purchaseState"
  
58 .​field·​public·​static·​final·​RESPONSE_PURCHASE_TIM​E:​Ljava/​lang/​String;​·​=·​"purchaseTime"76 .​field·​public·​static·​final·​RESPONSE_PURCHASE_TIM​E:​Ljava/​lang/​String;​·​=·​"purchaseTime"
  
59 .​field·​public·​static·​final·​RESPONSE_PURCHASE_TOK​EN:​Ljava/​lang/​String;​·​=·​"purchaseToken"77 .​field·​public·​static·​final·​RESPONSE_PURCHASE_TOK​EN:​Ljava/​lang/​String;​·​=·​"purchaseToken"
  
 78 .​field·​public·​static·​final·​RESPONSE_SUBSCRIPTION​_PERIOD:​Ljava/​lang/​String;​·​=·​"subscriptionPeriod"
  
60 .​field·​public·​static·​final·​RESPONSE_TITLE:​Ljava/​lang/​String;​·​=·​"title"79 .​field·​public·​static·​final·​RESPONSE_TITLE:​Ljava/​lang/​String;​·​=·​"title"
  
61 .​field·​public·​static·​final·​RESPONSE_TYPE:​Ljava/​lang/​String;​·​=·​"type"80 .​field·​public·​static·​final·​RESPONSE_TYPE:​Ljava/​lang/​String;​·​=·​"type"
  
  
62 #·​direct·​methods81 #·​direct·​methods
63 .​method·​public·​constructor·​<init>()​V82 .​method·​public·​constructor·​<init>()​V
9.28 KB
smali/com/anjlab/android/iab/v3/BillingBase.smali
Offset 1, 121 lines modifiedOffset 1, 78 lines modified
1 .​class·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​1 .​class·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​
2 .​super·​Ljava/​lang/​Object;​2 .​super·​Ljava/​lang/​Object;​
3 .​source·​"BillingBase.​java"3 .​source·​"BillingBase.​java"
  
  
4 #·​instance·​fields4 #·​instance·​fields
5 .​field·​private·​contextReference:​Ljava/​lang/​ref/​WeakReference;​5 .​field·​private·​context:​Landroid/​content/​Context;​
6 ····​.​annotation·​system·​Ldalvik/​annotation/​Signature;​ 
7 ········​value·​=·​{ 
8 ············​"Ljava/​lang/​ref/​WeakReference",​ 
9 ············​"<",​ 
10 ············​"Landroid/​content/​Context;​",​ 
11 ············​">;​" 
12 ········​} 
13 ····​.​end·​annotation 
14 .​end·​field 
  
  
15 #·​direct·​methods6 #·​direct·​methods
16 .​method·public·constructor·​<init>(Landroid/​content/​Context;​)​V7 .​method·​constructor·​<init>(Landroid/​content/​Context;​)​V
17 ····​.​locals·18 ····​.​locals·0
18 ····​.​param·​p1,​·​"context"····​#·​Landroid/​content/​Context;​9 ····​.​param·​p1,​·​"context"····​#·​Landroid/​content/​Context;​
  
19 ····​.​prologue10 ····​.​prologue
20 ····​.​line·​2811 ····​.​line·​27
21 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V12 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V
  
22 ····​.​line·​2913 ····​.​line·​28
23 ····new-​instance·v0,​·​Ljava/​lang/​ref/​WeakReference;​14 ····iput-​object·​p1,​·p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>context:​Landroid/​content/​Context;​
  
24 ····​invoke-​direct·​{v0,​·​p1},​·​Ljava/​lang/​ref/​WeakReference;​-​><init>(Ljava/​lang/​Object;​)​V 
  
25 ····​iput-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>contextReference:​Ljava/​lang/​ref/​WeakReference;​ 
  
26 ····​.​line·3015 ····​.​line·29
27 ····​return-​void16 ····​return-​void
28 .​end·​method17 .​end·​method
  
29 .​method·​private·​getPreferences()​Landroid/​content/​SharedPreferences;​18 .​method·​private·​getPreferences()​Landroid/​content/​SharedPreferences;​
30 ····​.​locals·​119 ····​.​locals·​1
  
31 ····​.​prologue20 ····​.​prologue
32 ····​.​line·​4121 ····​.​line·​43
33 ····​iget-​object·​v0,​·p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>contextReference:​Ljava/​lang/​ref/​WeakReference;​22 ····​invoke-​virtual·​{p0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>getContext()​Landroid/​content/​Context;​
  
34 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​ref/​WeakReference;​-​>get()​Ljava/​lang/​Object;​ 
  
35 ····​move-​result-​object·​v0 
  
36 ····​if-​eqz·​v0,​·​:​cond_0 
  
37 ····​.​line·​42 
38 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>contextReference:​Ljava/​lang/​ref/​WeakReference;​ 
  
39 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​ref/​WeakReference;​-​>get()​Ljava/​lang/​Object;​ 
  
40 ····​move-​result-​object·​v023 ····​move-​result-​object·​v0
  
41 ····​check-​cast·​v0,​·​Landroid/​content/​Context;​ 
  
42 ····​invoke-​static·​{v0},​·​Landroid/​preference/​PreferenceManager;​-​>getDefaultSharedPref​erences(Landroid/​content/​Context;​)​Landroid/​content/​SharedPreferences;​24 ····​invoke-​static·​{v0},​·​Landroid/​preference/​PreferenceManager;​-​>getDefaultSharedPref​erences(Landroid/​content/​Context;​)​Landroid/​content/​SharedPreferences;​
  
43 ····​move-​result-​object·​v025 ····​move-​result-​object·​v0
  
44 ····​.​line·​43 
45 ····​:​goto_0 
46 ····​return-​object·​v026 ····​return-​object·​v0
  
47 ····​:​cond_0 
48 ····​const/​4·​v0,​·​0x0 
  
49 ····​goto·​:​goto_0 
50 .​end·​method27 .​end·​method
  
  
51 #·​virtual·​methods28 #·​virtual·​methods
52 .​method·public·getContext()​Landroid/​content/​Context;​29 .​method·​getContext()​Landroid/​content/​Context;​
53 ····​.​locals·​130 ····​.​locals·​1
  
54 ····​.​prologue31 ····​.​prologue
55 ····​.​line·​3332 ····​.​line·​33
56 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>contextReference:​Ljava/​lang/​ref/​WeakReference;​33 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>context:​Landroid/​content/​Context;​
  
57 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​ref/​WeakReference;​-​>get()​Ljava/​lang/​Object;​ 
  
58 ····​move-​result-​object·​v0 
  
59 ····​check-​cast·​v0,​·​Landroid/​content/​Context;​ 
  
60 ····​return-​object·​v034 ····​return-​object·​v0
61 .​end·​method35 .​end·​method
  
62 .​method·protected·getPreferencesBaseKey​()​Ljava/​lang/​String;​36 .​method·​getPreferencesBaseKey​()​Ljava/​lang/​String;​
63 ····​.​locals·​237 ····​.​locals·​2
  
64 ····​.​prologue38 ····​.​prologue
65 ····​.​line·​3739 ····​.​line·​38
66 ····​new-​instance·​v1,​·​Ljava/​lang/​StringBuilder;​40 ····​new-​instance·​v0,​·​Ljava/​lang/​StringBuilder;​
  
67 ····​invoke-​direct·​{v1},​·​Ljava/​lang/​StringBuilder;​-​><init>()​V 
  
68 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>contextReference:​Ljava/​lang/​ref/​WeakReference;​41 ····​invoke-​direct·{v0},​·​Ljava/​lang/​StringBuilder;​-​><init>()​V
  
69 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​ref/​WeakReference;​-​>get()​Ljava/​lang/​Object;​42 ····​invoke-​virtual·​{p0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingBase;​-​>getContext()​Landroid/​content/​Context;​
  
70 ····​move-​result-​object·​v043 ····​move-​result-​object·​v1
  
71 ····​check-​cast·​v0,​·​Landroid/​content/​Context;​ 
  
72 ····​invoke-​virtual·​{v0},​·​Landroid/​content/​Context;​-​>getPackageName()​Ljava/​lang/​String;​44 ····​invoke-​virtual·​{v1},​·​Landroid/​content/​Context;​-​>getPackageName()​Ljava/​lang/​String;​
  
73 ····​move-​result-​object·​v045 ····​move-​result-​object·​v1
  
74 ····​invoke-​virtual·​{v1,​·​v0},​·​Ljava/​lang/​StringBuilder;​-​>append(Ljava/​lang/​String;​)​Ljava/​lang/​StringBuilder;​46 ····​invoke-​virtual·​{v0,​·​v1},​·​Ljava/​lang/​StringBuilder;​-​>append(Ljava/​lang/​String;​)​Ljava/​lang/​StringBuilder;​
  
75 ····​move-​result-​object·​v047 ····​move-​result-​object·​v0
  
76 ····​const-​string·​v1,​·​"_preferences"48 ····​const-​string·​v1,​·​"_preferences"
  
77 ····​invoke-​virtual·​{v0,​·​v1},​·​Ljava/​lang/​StringBuilder;​-​>append(Ljava/​lang/​String;​)​Ljava/​lang/​StringBuilder;​49 ····​invoke-​virtual·​{v0,​·​v1},​·​Ljava/​lang/​StringBuilder;​-​>append(Ljava/​lang/​String;​)​Ljava/​lang/​StringBuilder;​
  
Offset 124, 161 lines modifiedOffset 81, 142 lines modified
124 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​StringBuilder;​-​>toString()​Ljava/​lang/​String;​81 ····​invoke-​virtual·​{v0},​·​Ljava/​lang/​StringBuilder;​-​>toString()​Ljava/​lang/​String;​
  
125 ····​move-​result-​object·​v082 ····​move-​result-​object·​v0
  
126 ····​return-​object·​v083 ····​return-​object·​v0
Max diff block lines reached; 4858/9402 bytes (51.67%) of diff not shown.
1.73 KB
smali/com/anjlab/android/iab/v3/TransactionDetails$1.smali
Offset 28, 62 lines modifiedOffset 28, 62 lines modified
  
  
28 #·​direct·​methods28 #·​direct·​methods
29 .​method·​constructor·​<init>()​V29 .​method·​constructor·​<init>()​V
30 ····​.​locals·​030 ····​.​locals·​0
  
31 ····​.​prologue31 ····​.​prologue
32 ····​.​line·9132 ····​.​line·119
33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V
  
34 ····​return-​void34 ····​return-​void
35 .​end·​method35 .​end·​method
  
  
36 #·​virtual·​methods36 #·​virtual·​methods
37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
38 ····​.​locals·​138 ····​.​locals·​1
39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​
  
40 ····​.​prologue40 ····​.​prologue
41 ····​.​line·9341 ····​.​line·122
42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
  
43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​-​><init>(Landroid/​os/​Parcel;​)​V43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​-​><init>(Landroid/​os/​Parcel;​)​V
  
44 ····​return-​object·​v044 ····​return-​object·​v0
45 .​end·​method45 .​end·​method
  
46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​
47 ····​.​locals·​147 ····​.​locals·​1
  
48 ····​.​prologue48 ····​.​prologue
49 ····​.​line·9149 ····​.​line·119
50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
  
51 ····​move-​result-​object·​v051 ····​move-​result-​object·​v0
  
52 ····​return-​object·​v052 ····​return-​object·​v0
53 .​end·​method53 .​end·​method
  
54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
55 ····​.​locals·​155 ····​.​locals·​1
56 ····​.​param·​p1,​·​"size"····​#·​I56 ····​.​param·​p1,​·​"size"····​#·​I
  
57 ····​.​prologue57 ····​.​prologue
58 ····​.​line·9758 ····​.​line·127
59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
  
60 ····​return-​object·​v060 ····​return-​object·​v0
61 .​end·​method61 .​end·​method
  
62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​
63 ····​.​locals·​163 ····​.​locals·​1
  
64 ····​.​prologue64 ····​.​prologue
65 ····​.​line·9165 ····​.​line·119
66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​TransactionDetails;​
  
67 ····​move-​result-​object·​v067 ····​move-​result-​object·​v0
  
68 ····​return-​object·​v068 ····​return-​object·​v0
69 .​end·​method69 .​end·​method
14.9 KB
smali/com/anjlab/android/iab/v3/PurchaseInfo.smali
Max report size reached
16.0 KB
smali/com/anjlab/android/iab/v3/BillingCache.smali
Max report size reached
8.89 KB
smali/com/anjlab/android/iab/v3/Security.smali
Offset 23, 31 lines modifiedOffset 23, 31 lines modified
23 .​end·​method23 .​end·​method
  
24 .​method·​public·​static·​generatePublicKey(Lja​va/​lang/​String;​)​Ljava/​security/​PublicKey;​24 .​method·​public·​static·​generatePublicKey(Lja​va/​lang/​String;​)​Ljava/​security/​PublicKey;​
25 ····​.​locals·​525 ····​.​locals·​5
26 ····​.​param·​p0,​·​"encodedPublicKey"····​#·​Ljava/​lang/​String;​26 ····​.​param·​p0,​·​"encodedPublicKey"····​#·​Ljava/​lang/​String;​
  
27 ····​.​prologue27 ····​.​prologue
28 ····​.​line·8628 ····​.​line·94
29 ····​const/​4·​v3,​·​0x029 ····​const/​4·​v3,​·​0x0
  
30 ····​:​try_start_030 ····​:​try_start_0
31 ····​invoke-​static·​{p0,​·​v3},​·​Landroid/​util/​Base64;​-​>decode(Ljava/​lang/​String;​I)​[B31 ····​invoke-​static·​{p0,​·​v3},​·​Landroid/​util/​Base64;​-​>decode(Ljava/​lang/​String;​I)​[B
  
32 ····​move-​result-​object·​v032 ····​move-​result-​object·​v0
  
33 ····​.​line·8733 ····​.​line·95
34 ····​.​local·​v0,​·​"decodedKey":​[B34 ····​.​local·​v0,​·​"decodedKey":​[B
35 ····​const-​string·​v3,​·​"RSA"35 ····​const-​string·​v3,​·​"RSA"
  
36 ····​invoke-​static·​{v3},​·​Ljava/​security/​KeyFactory;​-​>getInstance(Ljava/​lang/​String;​)​Ljava/​security/​KeyFactory;​36 ····​invoke-​static·​{v3},​·​Ljava/​security/​KeyFactory;​-​>getInstance(Ljava/​lang/​String;​)​Ljava/​security/​KeyFactory;​
  
37 ····​move-​result-​object·​v237 ····​move-​result-​object·​v2
  
38 ····​.​line·8838 ····​.​line·96
39 ····​.​local·​v2,​·​"keyFactory":​Ljava/​security/​KeyFactory;​39 ····​.​local·​v2,​·​"keyFactory":​Ljava/​security/​KeyFactory;​
40 ····​new-​instance·​v3,​·​Ljava/​security/​spec/​X509EncodedKeySpec;​40 ····​new-​instance·​v3,​·​Ljava/​security/​spec/​X509EncodedKeySpec;​
  
41 ····​invoke-​direct·​{v3,​·​v0},​·​Ljava/​security/​spec/​X509EncodedKeySpec;​-​><init>([B)​V41 ····​invoke-​direct·​{v3,​·​v0},​·​Ljava/​security/​spec/​X509EncodedKeySpec;​-​><init>([B)​V
  
42 ····​invoke-​virtual·​{v2,​·​v3},​·​Ljava/​security/​KeyFactory;​-​>generatePublic(Ljava​/​security/​spec/​KeySpec;​)​Ljava/​security/​PublicKey;​42 ····​invoke-​virtual·​{v2,​·​v3},​·​Ljava/​security/​KeyFactory;​-​>generatePublic(Ljava​/​security/​spec/​KeySpec;​)​Ljava/​security/​PublicKey;​
43 ····​:​try_end_043 ····​:​try_end_0
Offset 55, 181 lines modifiedOffset 55, 181 lines modified
55 ····​.​catch·​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​·​{:​try_start_0·​.​.​·​:​try_end_0}·​:​catch_155 ····​.​catch·​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​·​{:​try_start_0·​.​.​·​:​try_end_0}·​:​catch_1
56 ····​.​catch·​Ljava/​lang/​IllegalArgumentExcept​ion;​·​{:​try_start_0·​.​.​·​:​try_end_0}·​:​catch_256 ····​.​catch·​Ljava/​lang/​IllegalArgumentExcept​ion;​·​{:​try_start_0·​.​.​·​:​try_end_0}·​:​catch_2
  
57 ····​move-​result-​object·​v357 ····​move-​result-​object·​v3
  
58 ····​return-​object·​v358 ····​return-​object·​v3
  
59 ····​.​line·8959 ····​.​line·98
60 ····​.​end·​local·​v0····​#·​"decodedKey":​[B60 ····​.​end·​local·​v0····​#·​"decodedKey":​[B
61 ····​.​end·​local·​v2····​#·​"keyFactory":​Ljava/​security/​KeyFactory;​61 ····​.​end·​local·​v2····​#·​"keyFactory":​Ljava/​security/​KeyFactory;​
62 ····​:​catch_062 ····​:​catch_0
63 ····​move-​exception·​v163 ····​move-​exception·​v1
  
64 ····​.​line·9064 ····​.​line·100
65 ····​.​local·​v1,​·​"e":​Ljava/​security/​NoSuchAlgorithmExcept​ion;​65 ····​.​local·​v1,​·​"e":​Ljava/​security/​NoSuchAlgorithmExcept​ion;​
66 ····​new-​instance·​v3,​·​Ljava/​lang/​RuntimeException;​66 ····​new-​instance·​v3,​·​Ljava/​lang/​RuntimeException;​
  
67 ····​invoke-​direct·​{v3,​·​v1},​·​Ljava/​lang/​RuntimeException;​-​><init>(Ljava/​lang/​Throwable;​)​V67 ····​invoke-​direct·​{v3,​·​v1},​·​Ljava/​lang/​RuntimeException;​-​><init>(Ljava/​lang/​Throwable;​)​V
  
68 ····​throw·​v368 ····​throw·​v3
  
69 ····​.​line·9169 ····​.​line·102
70 ····​.​end·​local·​v1····​#·​"e":​Ljava/​security/​NoSuchAlgorithmExcept​ion;​70 ····​.​end·​local·​v1····​#·​"e":​Ljava/​security/​NoSuchAlgorithmExcept​ion;​
71 ····​:​catch_171 ····​:​catch_1
72 ····​move-​exception·​v172 ····​move-​exception·​v1
  
73 ····​.​line·9273 ····​.​line·104
74 ····​.​local·​v1,​·​"e":​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​74 ····​.​local·​v1,​·​"e":​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​
75 ····​const-​string·​v3,​·​"IABUtil/​Security"75 ····​const-​string·​v3,​·​"IABUtil/​Security"
  
76 ····​const-​string·​v4,​·​"Invalid·​key·​specification.​"76 ····​const-​string·​v4,​·​"Invalid·​key·​specification.​"
  
77 ····​invoke-​static·​{v3,​·​v4},​·​Landroid/​util/​Log;​-​>e(Ljava/​lang/​String;​Ljava/​lang/​String;​)​I77 ····​invoke-​static·​{v3,​·​v4},​·​Landroid/​util/​Log;​-​>e(Ljava/​lang/​String;​Ljava/​lang/​String;​)​I
  
78 ····​.​line·9378 ····​.​line·105
79 ····​new-​instance·​v3,​·​Ljava/​lang/​IllegalArgumentExcept​ion;​79 ····​new-​instance·​v3,​·​Ljava/​lang/​IllegalArgumentExcept​ion;​
  
80 ····​invoke-​direct·​{v3,​·​v1},​·​Ljava/​lang/​IllegalArgumentExcept​ion;​-​><init>(Ljava/​lang/​Throwable;​)​V80 ····​invoke-​direct·​{v3,​·​v1},​·​Ljava/​lang/​IllegalArgumentExcept​ion;​-​><init>(Ljava/​lang/​Throwable;​)​V
  
81 ····​throw·​v381 ····​throw·​v3
  
82 ····​.​line·9482 ····​.​line·107
83 ····​.​end·​local·​v1····​#·​"e":​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​83 ····​.​end·​local·​v1····​#·​"e":​Ljava/​security/​spec/​InvalidKeySpecExcepti​on;​
84 ····​:​catch_284 ····​:​catch_2
85 ····​move-​exception·​v185 ····​move-​exception·​v1
  
86 ····​.​line·9586 ····​.​line·109
87 ····​.​local·​v1,​·​"e":​Ljava/​lang/​IllegalArgumentExcept​ion;​87 ····​.​local·​v1,​·​"e":​Ljava/​lang/​IllegalArgumentExcept​ion;​
88 ····​const-​string·​v3,​·​"IABUtil/​Security"88 ····​const-​string·​v3,​·​"IABUtil/​Security"
  
89 ····​const-​string·​v4,​·​"Base64·​decoding·​failed.​"89 ····​const-​string·​v4,​·​"Base64·​decoding·​failed.​"
  
90 ····​invoke-​static·​{v3,​·​v4},​·​Landroid/​util/​Log;​-​>e(Ljava/​lang/​String;​Ljava/​lang/​String;​)​I90 ····​invoke-​static·​{v3,​·​v4},​·​Landroid/​util/​Log;​-​>e(Ljava/​lang/​String;​Ljava/​lang/​String;​)​I
  
91 ····​.​line·9691 ····​.​line·110
92 ····​throw·​v192 ····​throw·​v1
93 .​end·​method93 .​end·​method
  
94 .​method·​public·​static·​verify(Ljava/​security/​PublicKey;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Z94 .​method·​public·​static·​verify(Ljava/​security/​PublicKey;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Z
95 ····​.​locals·​595 ····​.​locals·​5
96 ····​.​param·​p0,​·​"publicKey"····​#·​Ljava/​security/​PublicKey;​96 ····​.​param·​p0,​·​"publicKey"····​#·​Ljava/​security/​PublicKey;​
97 ····​.​param·​p1,​·​"signedData"····​#·​Ljava/​lang/​String;​97 ····​.​param·​p1,​·​"signedData"····​#·​Ljava/​lang/​String;​
98 ····​.​param·​p2,​·​"signature"····​#·​Ljava/​lang/​String;​98 ····​.​param·​p2,​·​"signature"····​#·​Ljava/​lang/​String;​
  
99 ····​.​prologue99 ····​.​prologue
100 ····​const/​4·​v2,​·​0x0100 ····​const/​4·​v2,​·​0x0
  
101 ····​.​line·​112101 ····​.​line·​128
102 ····​:​try_start_0102 ····​:​try_start_0
103 ····​const-​string·​v3,​·​"SHA1withRSA"103 ····​const-​string·​v3,​·​"SHA1withRSA"
  
104 ····​invoke-​static·​{v3},​·​Ljava/​security/​Signature;​-​>getInstance(Ljava/​lang/​String;​)​Ljava/​security/​Signature;​104 ····​invoke-​static·​{v3},​·​Ljava/​security/​Signature;​-​>getInstance(Ljava/​lang/​String;​)​Ljava/​security/​Signature;​
  
105 ····​move-​result-​object·​v1105 ····​move-​result-​object·​v1
  
106 ····​.​line·​113106 ····​.​line·​129
107 ····​.​local·​v1,​·​"sig":​Ljava/​security/​Signature;​107 ····​.​local·​v1,​·​"sig":​Ljava/​security/​Signature;​
108 ····​invoke-​virtual·​{v1,​·​p0},​·​Ljava/​security/​Signature;​-​>initVerify(Ljava/​security/​PublicKey;​)​V108 ····​invoke-​virtual·​{v1,​·​p0},​·​Ljava/​security/​Signature;​-​>initVerify(Ljava/​security/​PublicKey;​)​V
  
109 ····​.​line·​114109 ····​.​line·​130
110 ····​invoke-​virtual·​{p1},​·​Ljava/​lang/​String;​-​>getBytes()​[B110 ····​invoke-​virtual·​{p1},​·​Ljava/​lang/​String;​-​>getBytes()​[B
  
111 ····​move-​result-​object·​v3111 ····​move-​result-​object·​v3
  
112 ····​invoke-​virtual·​{v1,​·​v3},​·​Ljava/​security/​Signature;​-​>update([B)​V112 ····​invoke-​virtual·​{v1,​·​v3},​·​Ljava/​security/​Signature;​-​>update([B)​V
  
113 ····​.​line·​115113 ····​.​line·​131
114 ····​const/​4·​v3,​·​0x0114 ····​const/​4·​v3,​·​0x0
  
115 ····​invoke-​static·​{p2,​·​v3},​·​Landroid/​util/​Base64;​-​>decode(Ljava/​lang/​String;​I)​[B115 ····​invoke-​static·​{p2,​·​v3},​·​Landroid/​util/​Base64;​-​>decode(Ljava/​lang/​String;​I)​[B
  
116 ····​move-​result-​object·​v3116 ····​move-​result-​object·​v3
  
117 ····​invoke-​virtual·​{v1,​·​v3},​·​Ljava/​security/​Signature;​-​>verify([B)​Z117 ····​invoke-​virtual·​{v1,​·​v3},​·​Ljava/​security/​Signature;​-​>verify([B)​Z
  
Max diff block lines reached; 5067/9008 bytes (56.25%) of diff not shown.
1.67 KB
smali/com/anjlab/android/iab/v3/PurchaseInfo$1.smali
Offset 28, 62 lines modifiedOffset 28, 62 lines modified
  
  
28 #·​direct·​methods28 #·​direct·​methods
29 .​method·​constructor·​<init>()​V29 .​method·​constructor·​<init>()​V
30 ····​.​locals·​030 ····​.​locals·​0
  
31 ····​.​prologue31 ····​.​prologue
32 ····​.​line·​15632 ····​.​line·​105
33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V33 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V
  
34 ····​return-​void34 ····​return-​void
35 .​end·​method35 .​end·​method
  
  
36 #·​virtual·​methods36 #·​virtual·​methods
37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​37 .​method·​public·​createFromParcel(Land​roid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
38 ····​.​locals·​138 ····​.​locals·​1
39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​39 ····​.​param·​p1,​·​"source"····​#·​Landroid/​os/​Parcel;​
  
40 ····​.​prologue40 ····​.​prologue
41 ····​.​line·​15841 ····​.​line·​108
42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​42 ····​new-​instance·​v0,​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
  
43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​-​><init>(Landroid/​os/​Parcel;​)​V43 ····​invoke-​direct·​{v0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​-​><init>(Landroid/​os/​Parcel;​)​V
  
44 ····​return-​object·​v044 ····​return-​object·​v0
45 .​end·​method45 .​end·​method
  
46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​46 .​method·​public·​bridge·​synthetic·​createFromParcel(Land​roid/​os/​Parcel;​)​Ljava/​lang/​Object;​
47 ····​.​locals·​147 ····​.​locals·​1
  
48 ····​.​prologue48 ····​.​prologue
49 ····​.​line·​15649 ····​.​line·​105
50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​50 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo$1;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
  
51 ····​move-​result-​object·​v051 ····​move-​result-​object·​v0
  
52 ····​return-​object·​v052 ····​return-​object·​v0
53 .​end·​method53 .​end·​method
  
54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​54 .​method·​public·​newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
55 ····​.​locals·​155 ····​.​locals·​1
56 ····​.​param·​p1,​·​"size"····​#·​I56 ····​.​param·​p1,​·​"size"····​#·​I
  
57 ····​.​prologue57 ····​.​prologue
58 ····​.​line·​16258 ····​.​line·​113
59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​59 ····​new-​array·​v0,​·​p1,​·​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
  
60 ····​return-​object·​v060 ····​return-​object·​v0
61 .​end·​method61 .​end·​method
  
62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​62 .​method·​public·​bridge·​synthetic·​newArray(I)​[Ljava/​lang/​Object;​
63 ····​.​locals·​163 ····​.​locals·​1
  
64 ····​.​prologue64 ····​.​prologue
65 ····​.​line·​15665 ····​.​line·​105
66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​66 ····​invoke-​virtual·​{p0,​·​p1},​·​Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo$1;​-​>newArray(I)​[Lcom/​anjlab/​android/​iab/​v3/​PurchaseInfo;​
  
67 ····​move-​result-​object·​v067 ····​move-​result-​object·​v0
  
68 ····​return-​object·​v068 ····​return-​object·​v0
69 .​end·​method69 .​end·​method
116 KB
smali/com/anjlab/android/iab/v3/BillingProcessor.smali
Max report size reached
15.2 KB
smali/com/anjlab/android/iab/v3/TransactionDetails.smali
Max report size reached
6.62 KB
smali/com/anjlab/android/iab/v3/BillingProcessor$1.smali
Offset 23, 118 lines modifiedOffset 23, 68 lines modified
  
23 #·​direct·​methods23 #·​direct·​methods
24 .​method·​constructor·​<init>(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​V24 .​method·​constructor·​<init>(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​V
25 ····​.​locals·​025 ····​.​locals·​0
26 ····​.​param·​p1,​·​"this$0"····​#·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​26 ····​.​param·​p1,​·​"this$0"····​#·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​
  
27 ····​.​prologue27 ····​.​prologue
28 ····​.​line·7828 ····​.​line·127
29 ····​iput-​object·​p1,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​29 ····​iput-​object·​p1,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​
  
30 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V30 ····​invoke-​direct·​{p0},​·​Ljava/​lang/​Object;​-​><init>()​V
  
31 ····​return-​void31 ····​return-​void
32 .​end·​method32 .​end·​method
  
  
33 #·​virtual·​methods33 #·​virtual·​methods
34 .​method·​public·​onServiceConnected(La​ndroid/​content/​ComponentName;​Landroid/​os/​IBinder;​)​V34 .​method·​public·​onServiceConnected(La​ndroid/​content/​ComponentName;​Landroid/​os/​IBinder;​)​V
35 ····​.​locals·235 ····​.​locals·3
36 ····​.​param·​p1,​·​"name"····​#·​Landroid/​content/​ComponentName;​36 ····​.​param·​p1,​·​"name"····​#·​Landroid/​content/​ComponentName;​
37 ····​.​param·​p2,​·​"service"····​#·​Landroid/​os/​IBinder;​37 ····​.​param·​p2,​·​"service"····​#·​Landroid/​os/​IBinder;​
  
38 ····​.​prologue38 ····​.​prologue
39 ····​.​line·8639 ····​.​line·137
40 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​40 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​
  
41 ····​invoke-​static·​{p2},​·​Lcom/​android/​vending/​billing/​IInAppBillingService$​Stub;​-​>asInterface(Landroid​/​os/​IBinder;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​41 ····​invoke-​static·​{p2},​·​Lcom/​android/​vending/​billing/​IInAppBillingService$​Stub;​-​>asInterface(Landroid​/​os/​IBinder;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​
  
42 ····​move-​result-​object·​v142 ····​move-​result-​object·​v1
  
43 ····​#·​setter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>billingService:​Lcom/​android/​vending/​billing/​IInAppBillingService;​43 ····​#·​setter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>billingService:​Lcom/​android/​vending/​billing/​IInAppBillingService;​
44 ····​invoke-​static·​{v0,​·​v1},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$002(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​Lcom/​android/​vending/​billing/​IInAppBillingService;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​44 ····​invoke-​static·​{v0,​·​v1},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$302(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​Lcom/​android/​vending/​billing/​IInAppBillingService;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​
  
45 ····​.​line·​87 
46 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
47 ····​#·​invokes:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>isPurchaseHistoryRes​tored()​Z 
48 ····​invoke-​static·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$100(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​Z 
  
49 ····​move-​result·​v0 
  
50 ····​if-​nez·​v0,​·​:​cond_0 
  
51 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
52 ····​invoke-​virtual·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>loadOwnedPurchasesFr​omGoogle()​Z 
  
53 ····​move-​result·​v0 
  
54 ····​if-​eqz·​v0,​·​:​cond_0 
  
55 ····​.​line·​88 
56 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
57 ····​invoke-​virtual·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>setPurchaseHistoryRe​stored()​V 
  
58 ····​.​line·8945 ····​.​line·138
59 ····iget-​object·​v0,​·p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​46 ····new-​instance·v0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$Hist​oryInitializationTask​;​
  
60 ····​#·​getter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>eventHandler:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
61 ····​invoke-​static·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$200(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
  
62 ····​move-​result-​object·​v0 
  
63 ····​if-​eqz·​v0,​·​:​cond_0 
  
64 ····​.​line·​90 
65 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
66 ····​#·​getter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>eventHandler:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
67 ····​invoke-​static·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$200(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
  
68 ····​move-​result-​object·​v047 ····iget-​object·​v1,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​
  
69 ····invoke-​interface·{v0},​·Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​-​>onPurchaseHistoryRes​tored()​V48 ····const/​4·​v2,​·0x0
  
70 ····.​line·​9249 ····invoke-​direct·​{v0,​·​v1,​·​v2},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$Hist​oryInitializationTask​;​-​><init>(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​)​V
71 ····​:​cond_0 
72 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
73 ····​#·​getter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>eventHandler:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
74 ····​invoke-​static·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$200(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
  
75 ····​move-​result-​object·​v0 
  
76 ····​if-​eqz·​v0,​·​:​cond_1 
  
77 ····.​line·9350 ····const/​4·​v1,​·0x0
78 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​ 
  
79 ····​#·​getter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>eventHandler:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
80 ····​invoke-​static·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$200(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​)​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​ 
  
81 ····move-​result-​object·​v051 ····new-​array·​v1,​·​v1,​·​[Ljava/​lang/​Void;​
  
82 ····​invoke-​interface·​{v0},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$IBil​lingHandler;​-​>onBillingInitialized​()​V52 ····​invoke-​virtual·​{v0,​·​v1},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$Hist​oryInitializationTask​;​-​>execute([Ljava/​lang/​Object;​)​Landroid/​os/​AsyncTask;​
  
83 ····​.​line·9453 ····​.​line·139
84 ····​:​cond_1 
85 ····​return-​void54 ····​return-​void
86 .​end·​method55 .​end·​method
  
87 .​method·​public·​onServiceDisconnected​(Landroid/​content/​ComponentName;​)​V56 .​method·​public·​onServiceDisconnected​(Landroid/​content/​ComponentName;​)​V
88 ····​.​locals·​257 ····​.​locals·​2
89 ····​.​param·​p1,​·​"name"····​#·​Landroid/​content/​ComponentName;​58 ····​.​param·​p1,​·​"name"····​#·​Landroid/​content/​ComponentName;​
  
90 ····​.​prologue59 ····​.​prologue
91 ····​.​line·8160 ····​.​line·131
92 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​61 ····​iget-​object·​v0,​·​p0,​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor$1;​-​>this$0:​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​
  
93 ····​const/​4·​v1,​·​0x062 ····​const/​4·​v1,​·​0x0
  
94 ····​#·​setter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>billingService:​Lcom/​android/​vending/​billing/​IInAppBillingService;​63 ····​#·​setter·​for:​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>billingService:​Lcom/​android/​vending/​billing/​IInAppBillingService;​
95 ····​invoke-​static·​{v0,​·​v1},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$002(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​Lcom/​android/​vending/​billing/​IInAppBillingService;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​64 ····​invoke-​static·​{v0,​·​v1},​·​Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​-​>access$302(Lcom/​anjlab/​android/​iab/​v3/​BillingProcessor;​Lcom/​android/​vending/​billing/​IInAppBillingService;​)​Lcom/​android/​vending/​billing/​IInAppBillingService;​
  
96 ····​.​line·8265 ····​.​line·132
97 ····​return-​void66 ····​return-​void
98 .​end·​method67 .​end·​method
512 B
smali/com/anjlab/android/iab/v3/BuildConfig.smali
Offset 10, 15 lines modifiedOffset 10, 15 lines modified
  
10 .​field·​public·​static·​final·​DEBUG:​Z·​=·​false10 .​field·​public·​static·​final·​DEBUG:​Z·​=·​false
  
11 .​field·​public·​static·​final·​FLAVOR:​Ljava/​lang/​String;​·​=·​""11 .​field·​public·​static·​final·​FLAVOR:​Ljava/​lang/​String;​·​=·​""
  
12 .​field·​public·​static·​final·​VERSION_CODE:​I·​=·​0x112 .​field·​public·​static·​final·​VERSION_CODE:​I·​=·​0x1
  
13 .​field·​public·​static·​final·​VERSION_NAME:​Ljava/​lang/​String;​·​=·​"1.​0.​33"13 .​field·​public·​static·​final·​VERSION_NAME:​Ljava/​lang/​String;​·​=·​"1.​0.​44"
  
  
14 #·​direct·​methods14 #·​direct·​methods
15 .​method·​public·​constructor·​<init>()​V15 .​method·​public·​constructor·​<init>()​V
16 ····​.​locals·​016 ····​.​locals·​0
  
17 ····​.​prologue17 ····​.​prologue
2.33 KB
smali/com/android/vending/billing/IInAppBillingService.smali
Offset 27, 14 lines modifiedOffset 27, 22 lines modified
27 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​27 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
28 ········​value·​=·​{28 ········​value·​=·​{
29 ············​Landroid/​os/​RemoteException;​29 ············​Landroid/​os/​RemoteException;​
30 ········​}30 ········​}
31 ····​.​end·​annotation31 ····​.​end·​annotation
32 .​end·​method32 .​end·​method
  
 33 .​method·​public·​abstract·​getBuyIntentExtraPara​ms(ILjava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​Landroid/​os/​Bundle;​)​Landroid/​os/​Bundle;​
 34 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
 35 ········​value·​=·​{
 36 ············​Landroid/​os/​RemoteException;​
 37 ········​}
 38 ····​.​end·​annotation
 39 .​end·​method
  
33 .​method·​public·​abstract·​getBuyIntentToReplace​Skus(ILjava/​lang/​String;​Ljava/​util/​List;​Ljava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Landroid/​os/​Bundle;​40 .​method·​public·​abstract·​getBuyIntentToReplace​Skus(ILjava/​lang/​String;​Ljava/​util/​List;​Ljava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Landroid/​os/​Bundle;​
34 ····​.​annotation·​system·​Ldalvik/​annotation/​Signature;​41 ····​.​annotation·​system·​Ldalvik/​annotation/​Signature;​
35 ········​value·​=·​{42 ········​value·​=·​{
36 ············​"(I",​43 ············​"(I",​
37 ············​"Ljava/​lang/​String;​",​44 ············​"Ljava/​lang/​String;​",​
38 ············​"Ljava/​util/​List",​45 ············​"Ljava/​util/​List",​
39 ············​"<",​46 ············​"<",​
Offset 51, 14 lines modifiedOffset 59, 22 lines modified
51 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​59 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
52 ········​value·​=·​{60 ········​value·​=·​{
53 ············​Landroid/​os/​RemoteException;​61 ············​Landroid/​os/​RemoteException;​
54 ········​}62 ········​}
55 ····​.​end·​annotation63 ····​.​end·​annotation
56 .​end·​method64 .​end·​method
  
 65 .​method·​public·​abstract·​getPurchaseHistory(IL​java/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​Landroid/​os/​Bundle;​)​Landroid/​os/​Bundle;​
 66 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
 67 ········​value·​=·​{
 68 ············​Landroid/​os/​RemoteException;​
 69 ········​}
 70 ····​.​end·​annotation
 71 .​end·​method
  
57 .​method·​public·​abstract·​getPurchases(ILjava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Landroid/​os/​Bundle;​72 .​method·​public·​abstract·​getPurchases(ILjava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​)​Landroid/​os/​Bundle;​
58 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​73 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
59 ········​value·​=·​{74 ········​value·​=·​{
60 ············​Landroid/​os/​RemoteException;​75 ············​Landroid/​os/​RemoteException;​
61 ········​}76 ········​}
62 ····​.​end·​annotation77 ····​.​end·​annotation
63 .​end·​method78 .​end·​method
Offset 75, 14 lines modifiedOffset 91, 22 lines modified
75 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​91 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
76 ········​value·​=·​{92 ········​value·​=·​{
77 ············​Landroid/​os/​RemoteException;​93 ············​Landroid/​os/​RemoteException;​
78 ········​}94 ········​}
79 ····​.​end·​annotation95 ····​.​end·​annotation
80 .​end·​method96 .​end·​method
  
 97 .​method·​public·​abstract·​isBillingSupportedExt​raParams(ILjava/​lang/​String;​Ljava/​lang/​String;​Landroid/​os/​Bundle;​)​I
 98 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
 99 ········​value·​=·​{
 100 ············​Landroid/​os/​RemoteException;​
 101 ········​}
 102 ····​.​end·​annotation
 103 .​end·​method
  
81 .​method·​public·​abstract·​stub(ILjava/​lang/​String;​Ljava/​lang/​String;​)​I104 .​method·​public·​abstract·​stub(ILjava/​lang/​String;​Ljava/​lang/​String;​)​I
82 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​105 ····​.​annotation·​system·​Ldalvik/​annotation/​Throws;​
83 ········​value·​=·​{106 ········​value·​=·​{
84 ············​Landroid/​os/​RemoteException;​107 ············​Landroid/​os/​RemoteException;​
85 ········​}108 ········​}
86 ····​.​end·​annotation109 ····​.​end·​annotation
87 .​end·​method110 .​end·​method
10.5 KB
smali/com/android/vending/billing/IInAppBillingService$Stub.smali
Offset 26, 22 lines modifiedOffset 26, 28 lines modified
26 #·​static·​fields26 #·​static·​fields
27 .​field·​private·​static·​final·​DESCRIPTOR:​Ljava/​lang/​String;​·​=·​"com.​android.​vending.​billing.​IInAppBillingService"​27 .​field·​private·​static·​final·​DESCRIPTOR:​Ljava/​lang/​String;​·​=·​"com.​android.​vending.​billing.​IInAppBillingService"​
  
28 .​field·​static·​final·​TRANSACTION_consumePu​rchase:​I·​=·​0x528 .​field·​static·​final·​TRANSACTION_consumePu​rchase:​I·​=·​0x5
  
29 .​field·​static·​final·​TRANSACTION_getBuyInt​ent:​I·​=·​0x329 .​field·​static·​final·​TRANSACTION_getBuyInt​ent:​I·​=·​0x3
  
 30 .​field·​static·​final·​TRANSACTION_getBuyInt​entExtraParams:​I·​=·​0x8
  
30 .​field·​static·​final·​TRANSACTION_getBuyInt​entToReplaceSkus:​I·​=·​0x731 .​field·​static·​final·​TRANSACTION_getBuyInt​entToReplaceSkus:​I·​=·​0x7
  
 32 .​field·​static·​final·​TRANSACTION_getPurcha​seHistory:​I·​=·​0x9
  
31 .​field·​static·​final·​TRANSACTION_getPurcha​ses:​I·​=·​0x433 .​field·​static·​final·​TRANSACTION_getPurcha​ses:​I·​=·​0x4
  
32 .​field·​static·​final·​TRANSACTION_getSkuDet​ails:​I·​=·​0x234 .​field·​static·​final·​TRANSACTION_getSkuDet​ails:​I·​=·​0x2
  
33 .​field·​static·​final·​TRANSACTION_isBilling​Supported:​I·​=·​0x135 .​field·​static·​final·​TRANSACTION_isBilling​Supported:​I·​=·​0x1
  
 36 .​field·​static·​final·​TRANSACTION_isBilling​SupportedExtraParams:​I·​=·​0xa
  
34 .​field·​static·​final·​TRANSACTION_stub:​I·​=·​0x637 .​field·​static·​final·​TRANSACTION_stub:​I·​=·​0x6
  
  
35 #·​direct·​methods38 #·​direct·​methods
36 .​method·​public·​constructor·​<init>()​V39 .​method·​public·​constructor·​<init>()​V
37 ····​.​locals·​140 ····​.​locals·​1
  
Offset 126, 15 lines modifiedOffset 132, 15 lines modified
126 ········​}132 ········​}
127 ····​.​end·​annotation133 ····​.​end·​annotation
  
128 ····​.​prologue134 ····​.​prologue
129 ····​.​line·​63135 ····​.​line·​63
130 ····​sparse-​switch·​p1,​·​:​sswitch_data_0136 ····​sparse-​switch·​p1,​·​:​sswitch_data_0
  
131 ····​.​line·​212137 ····​.​line·​293
132 ····​invoke-​super/​range·​{p0·​.​.​·​p4},​·​Landroid/​os/​Binder;​-​>onTransact(ILandroid​/​os/​Parcel;​Landroid/​os/​Parcel;​I)​Z138 ····​invoke-​super/​range·​{p0·​.​.​·​p4},​·​Landroid/​os/​Binder;​-​>onTransact(ILandroid​/​os/​Parcel;​Landroid/​os/​Parcel;​I)​Z
  
133 ····​move-​result·​v1139 ····​move-​result·​v1
  
134 ····​:​goto_0140 ····​:​goto_0
135 ····​return·​v1141 ····​return·​v1
  
Offset 660, 22 lines modifiedOffset 666, 337 lines modified
  
660 ····​move-​object/​from16·​v0,​·​p3666 ····​move-​object/​from16·​v0,​·​p3
  
661 ····​invoke-​virtual·​{v0,​·​v1},​·​Landroid/​os/​Parcel;​-​>writeInt(I)​V667 ····​invoke-​virtual·​{v0,​·​v1},​·​Landroid/​os/​Parcel;​-​>writeInt(I)​V
  
662 ····​goto·​:​goto_5668 ····​goto·​:​goto_5
  
663 ····​.​line·63669 ····​.​line·213
664 ····​nop670 ····.​end·​local·​v2····​#·​"_arg0":​I
 671 ····​.​end·​local·​v3····​#·​"_arg1":​Ljava/​lang/​String;​
 672 ····​.​end·​local·​v5····​#·​"_arg3":​Ljava/​lang/​String;​
 673 ····​.​end·​local·​v6····​#·​"_arg4":​Ljava/​lang/​String;​
 674 ····​.​end·​local·​v10····​#·​"_arg2":​Ljava/​util/​List;​,​·​"Ljava/​util/​List<Ljava/​lang/​String;​>;​"
 675 ····​.​end·​local·​v13····​#·​"_arg5":​Ljava/​lang/​String;​
 676 ····​.​end·​local·​v14····​#·​"_result":​Landroid/​os/​Bundle;​
 677 ····​:​sswitch_8
 678 ····​const-​string·​v1,​·​"com.​android.​vending.​billing.​IInAppBillingService"​
  
 679 ····​move-​object/​from16·​v0,​·​p2
  
 680 ····​invoke-​virtual·​{v0,​·​v1},​·​Landroid/​os/​Parcel;​-​>enforceInterface(Lja​va/​lang/​String;​)​V
  
 681 ····​.​line·​215
 682 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readInt()​I
  
 683 ····​move-​result·​v2
  
 684 ····​.​line·​217
 685 ····​.​restart·​local·​v2····​#·​"_arg0":​I
 686 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readString()​Ljava/​lang/​String;​
  
 687 ····​move-​result-​object·​v3
  
 688 ····​.​line·​219
 689 ····​.​restart·​local·​v3····​#·​"_arg1":​Ljava/​lang/​String;​
 690 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readString()​Ljava/​lang/​String;​
  
 691 ····​move-​result-​object·​v4
  
 692 ····​.​line·​221
 693 ····​.​restart·​local·​v4····​#·​"_arg2":​Ljava/​lang/​String;​
 694 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readString()​Ljava/​lang/​String;​
  
 695 ····​move-​result-​object·​v5
  
 696 ····​.​line·​223
 697 ····​.​restart·​local·​v5····​#·​"_arg3":​Ljava/​lang/​String;​
 698 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readString()​Ljava/​lang/​String;​
  
 699 ····​move-​result-​object·​v6
  
 700 ····​.​line·​225
 701 ····​.​restart·​local·​v6····​#·​"_arg4":​Ljava/​lang/​String;​
 702 ····​invoke-​virtual/​range·​{p2·​.​.​·​p2},​·​Landroid/​os/​Parcel;​-​>readInt()​I
  
 703 ····​move-​result·​v1
  
 704 ····​if-​eqz·​v1,​·​:​cond_5
  
 705 ····​.​line·​226
 706 ····​sget-​object·​v1,​·​Landroid/​os/​Bundle;​-​>CREATOR:​Landroid/​os/​Parcelable$Creator;​
  
 707 ····​move-​object/​from16·​v0,​·​p2
  
 708 ····​invoke-​interface·​{v1,​·​v0},​·​Landroid/​os/​Parcelable$Creator;​-​>createFromParcel(Lan​droid/​os/​Parcel;​)​Ljava/​lang/​Object;​
  
 709 ····​move-​result-​object·​v13
  
 710 ····​check-​cast·​v13,​·​Landroid/​os/​Bundle;​
  
 711 ····​.​local·​v13,​·​"_arg5":​Landroid/​os/​Bundle;​
 712 ····​:​goto_6
 713 ····​move-​object·​v1,​·​p0
  
 714 ····​move-​object·​v7,​·​v13
  
 715 ····​.​line·​231
 716 ····​invoke-​virtual/​range·​{v1·​.​.​·​v7},​·​Lcom/​android/​vending/​billing/​IInAppBillingService$​Stub;​-​>getBuyIntentExtraPar​ams(ILjava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​Ljava/​lang/​String;​Landroid/​os/​Bundle;​)​Landroid/​os/​Bundle;​
  
 717 ····​move-​result-​object·​v14
  
 718 ····​.​line·​232
Max diff block lines reached; 361/10586 bytes (3.41%) of diff not shown.
30.7 KB
smali/com/android/vending/billing/IInAppBillingService$Stub$Proxy.smali
Max report size reached
10.5 KB
smali/com/anjlab/android/iab/v3/PurchaseInfo$ResponseData.smali vs.
smali/com/anjlab/android/iab/v3/PurchaseData.smali
Max report size reached