stripe-android icon indicating copy to clipboard operation
stripe-android copied to clipboard

Properly attribute `product_usage` tokens in `PaymentAnalyticsRequestFactory`.

Open samer-stripe opened this issue 1 year ago • 1 comments

Summary

Overrides the base createRequest parameter to add product usage tokens when needed.

Motivation

Resolves RUN_MOBILESDK-2978

Helps properly attribute PaymentSheet analytics events (mc_) to the used product (PaymentSheet or FlowController).

Testing

  • [x] Added tests
  • [ ] Modified tests
  • [ ] Manually verified

samer-stripe avatar May 06 '24 16:05 samer-stripe

Diffuse output:

OLD: paymentsheet-example-release-master.apk (signature: V1, V2)
NEW: paymentsheet-example-release-pr.apk (signature: V1, V2)

          │          compressed           │          uncompressed          
          ├───────────┬───────────┬───────┼───────────┬───────────┬────────
 APK      │ old       │ new       │ diff  │ old       │ new       │ diff   
──────────┼───────────┼───────────┼───────┼───────────┼───────────┼────────
      dex │     4 MiB │     4 MiB │ +52 B │   8.8 MiB │   8.8 MiB │ +140 B 
     arsc │   2.3 MiB │   2.3 MiB │   0 B │   2.3 MiB │   2.3 MiB │    0 B 
 manifest │   5.1 KiB │   5.1 KiB │   0 B │  25.6 KiB │  25.6 KiB │    0 B 
      res │ 932.5 KiB │ 932.5 KiB │   0 B │   1.5 MiB │   1.5 MiB │    0 B 
   native │   2.6 MiB │   2.6 MiB │   0 B │     6 MiB │     6 MiB │    0 B 
    asset │   2.9 MiB │   2.9 MiB │ -13 B │   2.9 MiB │   2.9 MiB │  -13 B 
    other │ 195.8 KiB │ 195.8 KiB │ +11 B │ 430.3 KiB │ 430.3 KiB │    0 B 
──────────┼───────────┼───────────┼───────┼───────────┼───────────┼────────
    total │  12.9 MiB │  12.9 MiB │ +50 B │    22 MiB │    22 MiB │ +127 B 

 DEX     │ old   │ new   │ diff       
─────────┼───────┼───────┼────────────
   files │     1 │     1 │  0         
 strings │ 43943 │ 43943 │  0 (+1 -1) 
   types │ 15190 │ 15190 │  0 (+0 -0) 
 classes │ 12827 │ 12827 │  0 (+0 -0) 
 methods │ 62787 │ 62788 │ +1 (+1 -0) 
  fields │ 41308 │ 41308 │  0 (+0 -0) 

 ARSC    │ old  │ new  │ diff 
─────────┼──────┼──────┼──────
 configs │  242 │  242 │  0   
 entries │ 6068 │ 6068 │  0
APK
    compressed    │    uncompressed    │                                           
──────────┬───────┼───────────┬────────┤                                           
 size     │ diff  │ size      │ diff   │ path                                      
──────────┼───────┼───────────┼────────┼───────────────────────────────────────────
    4 MiB │ +52 B │   8.8 MiB │ +140 B │ ∆ classes.dex                             
  7.3 KiB │ -13 B │   7.2 KiB │  -13 B │ ∆ assets/dexopt/baseline.prof             
 53.3 KiB │  +8 B │ 118.1 KiB │    0 B │ ∆ META-INF/CERT.SF                        
    272 B │  +2 B │     120 B │    0 B │ ∆ META-INF/version-control-info.textproto 
  1.2 KiB │  +2 B │   1.2 KiB │    0 B │ ∆ META-INF/CERT.RSA                       
 50.1 KiB │  -1 B │ 118.1 KiB │    0 B │ ∆ META-INF/MANIFEST.MF                    
──────────┼───────┼───────────┼────────┼───────────────────────────────────────────
  4.1 MiB │ +50 B │   9.1 MiB │ +127 B │ (total)
DEX
STRINGS:

   old   │ new   │ diff      
  ───────┼───────┼───────────
   43943 │ 43943 │ 0 (+1 -1) 
  
  + ~~R8{backend:dex,compilation-mode:release,has-checksums:false,min-api:21,pg-map-id:5b79389,r8-mode:full,version:8.3.37}
  
  - ~~R8{backend:dex,compilation-mode:release,has-checksums:false,min-api:21,pg-map-id:f6b027a,r8-mode:full,version:8.3.37}
  

METHODS:

   old   │ new   │ diff       
  ───────┼───────┼────────────
   62787 │ 62788 │ +1 (+1 -0) 
  
  + r6.g a(a, Map) → b

github-actions[bot] avatar May 06 '24 17:05 github-actions[bot]