package Ġcom . mem fault . b ort . parsers Ċ Ċ import Ġorg . junit . jupiter . api . Assertions . assertEquals Ċ import Ġorg . junit . jupiter . api . Test Ċ Ċ class ĠPackage Manager Report Parser Test Ġ{ ĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġreal Fixture () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġreport Ġ= ĠPackage Manager Report Parser ( PACKAGE _ MANAGER _ REPORT . byte InputStream ()). parse () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPackage ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġid Ġ= Ġ" com . mem fault . us ag ere port er ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠuserId Ġ= Ġ 1 0 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcode Path Ġ= Ġ"/ data / app / com . mem fault . us ag ere port er - Nx ic U Qw H lk q Af Ou 6 1 AT Y IQ ==", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Code Ġ= Ġ 2 0 7 0 1 0 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġversion Name Ġ= Ġ" 2 . 7 . 1 + 0 - DEV - 1 4 4 c 8 b 0 6 b ", ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreport . packages ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġ@ Test ĊĠĠĠ Ġfun Ġmultiple Packages () Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġfixture Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ""" Packages : ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ ĠPackage Ġ[ com . a ] Ġ( 4 c 9 3 b 1 6 ): ĊĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ| Ġ ĠPackage Ġ[ com . b ] Ġ( 4 c 9 3 b 1 6 ): ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ""" . trim Margin () ĊĠĠĠĠĠĠĠ Ġval Ġreport Ġ= ĠPackage Manager Report Parser ( fixture . byte InputStream ()). parse () ĊĠĠĠĠĠĠĠ ĠassertEquals ( ĊĠĠĠĠĠĠĠĠĠĠĠ ĠlistOf ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPackage ( id Ġ= Ġ" com . a "), ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠPackage ( id Ġ= Ġ" com . b "), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ), ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreport . packages ĊĠĠĠĠĠĠĠ Ġ) ĊĠĠĠ Ġ} Ċ } Ċ Ċ // ĠOutput Ġof Ġ` dump sys Ġpackage Ġcom . mem fault . us ag ere port er ` Ġ( pared Ġdown Ġsome Ġof Ġthe Ġpermissions Ġlists ) Ċ private Ġval ĠPACK AGE _ MANAGER _ REPORT Ġ= ĊĠĠĠ Ġ""" Receiver ĠResolver ĠTable : ĊĠĠĠĠĠ Ġ| Ġ ĠNon - Data ĠActions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġcom . mem fault . intent . action . BUG _ REPORT _ START : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠ Ġd cb 0 cb 5 Ġcom . mem fault . us ag ere port er /. Bug Report Start Receiver Ġfilter Ġ 7 4 2 3 0 1 f ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠĠĠ ĠAction : Ġ" com . mem fault . intent . action . BUG _ REPORT _ START " ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Permissions : ĊĠĠĠĠĠ Ġ| Ġ ĠPermission Ġ[ com . mem fault . us ag ere port er . permission . REPORT ER _ ACCESS ] Ġ( 8 5 2 f 6 1 a ): ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsource Package = com . mem fault . us ag ere port er ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġuid = 1 0 0 0 Ġg ids = null Ġtype = 0 Ġprot = signature | priv ileged ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġperm = Permission { 6 5 1 bf 4 a Ġcom . mem fault . us ag ere port er . permission . REPORT ER _ ACCESS } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpackage Setting = Package Setting { 4 c 9 3 b 1 6 Ġcom . mem fault . us ag ere port er / 1 0 0 0 } ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Key ĠSet ĠManager : ĊĠĠĠĠĠ Ġ| Ġ Ġ[ com . mem fault . us ag ere port er ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ ĠSign ing ĠKey Sets : Ġ 1 ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Packages : ĊĠĠĠĠĠ Ġ| Ġ ĠPackage Ġ[ com . mem fault . us ag ere port er ] Ġ( 4 c 9 3 b 1 6 ): ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠuserId = 1 0 0 0 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġshared User = Shared User Setting { bea 6 4 b Ġandroid . uid . system / 1 0 0 0 } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpkg = Package { ca fe 8 c 0 Ġcom . mem fault . us ag ere port er } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġcode Path =/ data / app / com . mem fault . us ag ere port er - Nx ic U Qw H lk q Af Ou 6 1 AT Y IQ == ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġresource Path =/ data / app / com . mem fault . us ag ere port er - Nx ic U Qw H lk q Af Ou 6 1 AT Y IQ == ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġlegacy Native Library Dir =/ data / app / com . mem fault . us ag ere port er - Nx ic U Qw H lk q Af Ou 6 1 AT Y IQ == / lib ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġprimary Cpu Ab i = null ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsecondary Cpu Ab i = null ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġversion Code = 2 0 7 0 1 0 0 Ġmin Sdk = 2 6 Ġtarget Sdk = 2 6 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġversion Name = 2 . 7 . 1 + 0 - DEV - 1 4 4 c 8 b 0 6 b ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsplits =[ base ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġapk Signing Version = 3 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġapplication Info = Application Info { 4 5 0 c 9 f 9 Ġcom . mem fault . us ag ere port er } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġflags =[ ĠSYSTEM ĠHAS _ CODE ĠALLOW _ CLEAR _ USER _ DATA ĠUP D ATED _ SYSTEM _ APP Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġprivate Flags =[ ĠPRIVATE _ FLAG _ ACTIV ITIES _ RE SIZE _ MODE _ RE SIZE ABLE _ V IA _ SDK _ VERSION ĠPRIV ILE GED Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġdata Dir =/ data / user / 0 / com . mem fault . us ag ere port er ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsupports Scre ens =[ small , Ġmedium , Ġlarge , Ġx large , Ġresize able , Ġany Density ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġuses Libraries : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġorg . apache . http . legacy ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġuses Library Files : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġ/ system / framework / org . apache . http . legacy . boot . jar ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġtime Stamp = 2 0 2 0 - 1 1 - 1 2 Ġ 1 1 : 3 6 : 3 3 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġfirst Install Time = 2 0 2 0 - 1 1 - 1 2 Ġ 0 6 : 2 2 : 2 9 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġlast UpdateTime = 2 0 2 0 - 1 1 - 1 2 Ġ 1 1 : 3 6 : 3 3 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsignatures = Package Signatures { 2 5 dfa 0 7 Ġversion : 3 , Ġsignatures :[ b 4 add b 2 9 ], Ġpast Ġsignatures : []} ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġinstall Permissions Fixed = true ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpkg Flags =[ ĠSYSTEM ĠHAS _ CODE ĠALLOW _ CLEAR _ USER _ DATA ĠUP D ATED _ SYSTEM _ APP Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġdeclared Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġcom . mem fault . us ag ere port er . permission . REPORT ER _ ACCESS : Ġprot = signature | priv ileged , ĠINST ALLED ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġrequested Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . READ _ LOG S ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . PACKAGE _ USAGE _ STATS ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . INTER ACT _ AC ROSS _ USERS ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġinstall Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . BIND _ IN CALL _ SERVICE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . WRITE _ SETTINGS : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . CONFIGURE _ WIFI _ DISPLAY : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . CONFIGURE _ DISPLAY _ COLOR _ MODE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . ACCESS _ WI MAX _ STATE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠUser Ġ 0 : Ġce Data In ode =- 4 2 9 4 8 3 5 8 4 3 Ġinstalled = true Ġhidden = false Ġsus pended = false Ġstopped = false Ġnot La unched = false Ġenabled = 0 Ġinstant = false Ġvirtual = false ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Hidden Ġsystem Ġpackages : ĊĠĠĠĠĠ Ġ| Ġ ĠPackage Ġ[ com . mem fault . us ag ere port er ] Ġ( 3 5 9 9 9 cf ): ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠuserId = 1 0 0 0 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġshared User = Shared User Setting { bea 6 4 b Ġandroid . uid . system / 1 0 0 0 } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpkg = Package { f 5 4 9 c 2 1 Ġcom . mem fault . us ag ere port er } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġcode Path =/ system / priv - app / Mem fault Usage Reporter ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġresource Path =/ system / priv - app / Mem fault Usage Reporter ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġlegacy Native Library Dir =/ system / priv - app / Mem fault Usage Reporter / lib ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġprimary Cpu Ab i = x 8 6 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsecondary Cpu Ab i = null ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġversion Code = 2 0 7 0 1 0 0 Ġmin Sdk = 2 6 Ġtarget Sdk = 2 6 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġversion Name = 2 . 7 . 1 + 0 - DEV - 6 6 d 7 c 5 a 3 8 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsplits =[ base ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġapk Signing Version = 3 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġapplication Info = Application Info { 1 1 eb 8 4 6 Ġcom . mem fault . us ag ere port er } ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġflags =[ ĠSYSTEM ĠHAS _ CODE ĠALLOW _ CLEAR _ USER _ DATA ĠUP D ATED _ SYSTEM _ APP Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġprivate Flags =[ ĠPRIVATE _ FLAG _ ACTIV ITIES _ RE SIZE _ MODE _ RE SIZE ABLE _ V IA _ SDK _ VERSION ĠPRIV ILE GED Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġdata Dir =/ data / user / 0 / com . mem fault . us ag ere port er ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsupports Scre ens =[ small , Ġmedium , Ġlarge , Ġx large , Ġresize able , Ġany Density ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġuses Libraries : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġorg . apache . http . legacy ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġuses Library Files : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġ/ system / framework / org . apache . http . legacy . boot . jar ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġtime Stamp = 2 0 2 0 - 1 1 - 1 2 Ġ 0 6 : 2 2 : 2 9 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġfirst Install Time = 2 0 2 0 - 1 1 - 1 2 Ġ 0 6 : 2 2 : 2 9 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġlast UpdateTime = 2 0 2 0 - 1 1 - 1 2 Ġ 0 6 : 2 2 : 2 9 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġsignatures = Package Signatures { 2 5 dfa 0 7 Ġversion : 3 , Ġsignatures :[ b 4 add b 2 9 ], Ġpast Ġsignatures : []} ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġinstall Permissions Fixed = true ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpkg Flags =[ ĠSYSTEM ĠHAS _ CODE ĠALLOW _ CLEAR _ USER _ DATA Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġdeclared Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġcom . mem fault . us ag ere port er . permission . REPORT ER _ ACCESS : Ġprot = signature | priv ileged , ĠINST ALLED ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġrequested Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . READ _ LOG S ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . PACKAGE _ USAGE _ STATS ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . INTER ACT _ AC ROSS _ USERS ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġinstall Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . BIND _ IN CALL _ SERVICE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . WRITE _ SETTINGS : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . CONFIGURE _ WIFI _ DISPLAY : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . CONFIGURE _ DISPLAY _ COLOR _ MODE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . ACCESS _ WI MAX _ STATE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . USE _ CRED ENTIAL S : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . MO DIFY _ AUDIO _ SETTINGS : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠUser Ġ 0 : Ġce Data In ode =- 4 2 9 4 8 3 5 8 4 3 Ġinstalled = true Ġhidden = false Ġsus pended = false Ġstopped = false Ġnot La unched = false Ġenabled = 0 Ġinstant = false Ġvirtual = false ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Shared Ġusers : ĊĠĠĠĠĠ Ġ| Ġ ĠShared User Ġ[ android . uid . system ] Ġ( bea 6 4 b ): ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠuserId = 1 0 0 0 ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġinstall Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . BIND _ IN CALL _ SERVICE : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . WRITE _ SETTINGS : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġandroid . permission . CONFIGURE _ WIFI _ DISPLAY : Ġgranted = true ĊĠĠĠĠĠ Ġ| ĠĠĠ ĠUser Ġ 0 : ĠĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġg ids =[ 1 0 6 5 , Ġ 3 0 0 2 , Ġ 1 0 2 3 , Ġ 3 0 0 3 , Ġ 3 0 0 1 , Ġ 1 0 0 7 ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġruntime Ġpermissions : ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠ Ġandroid . permission . READ _ CALL _ LOG : Ġgranted = true , Ġflags =[ ĠSYSTEM _ FIXED ĠG RAN TED _ BY _ DEFAULT Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠ Ġandroid . permission . ACCESS _ F INE _ LOCATION : Ġgranted = true , Ġflags =[ ĠSYSTEM _ FIXED ĠG RAN TED _ BY _ DEFAULT Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠ Ġandroid . permission . READ _ EXTERNAL _ STORAGE : Ġgranted = true , Ġflags =[ ĠSYSTEM _ FIXED ĠG RAN TED _ BY _ DEFAULT Ġ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠĠĠ Ġandroid . permission . ACCESS _ CO AR SE _ LOCATION : Ġgranted = true , Ġflags =[ ĠSYSTEM _ FIXED ĠG RAN TED _ BY _ DEFAULT Ġ] ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Package ĠChanges : ĊĠĠĠĠĠ Ġ| Ġ ĠSequence Ġnumber = 1 7 ĊĠĠĠĠĠ Ġ| Ġ ĠUser Ġ 0 : ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġseq = 1 0 , Ġpackage = com . mem fault . us ag ere port er ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġseq = 1 6 , Ġpackage = com . mem fault . smart f ridge . b ort ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Dex opt Ġstate : ĊĠĠĠĠĠ Ġ| Ġ Ġ[ com . mem fault . us ag ere port er ] ĊĠĠĠĠĠ Ġ| ĠĠĠ Ġpath : Ġ/ data / app / com . mem fault . us ag ere port er - Nx ic U Qw H lk q Af Ou 6 1 AT Y IQ == / base . apk ĊĠĠĠĠĠ Ġ| ĠĠĠĠĠ Ġx 8 6 : Ġ[ status = speed - profile ] Ġ[ reason = install ] ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| ĊĠĠĠĠĠ Ġ| Compiler Ġstats : ĊĠĠĠĠĠ Ġ| Ġ Ġ[ com . mem fault . us ag ere port er ] ĊĠĠĠĠĠ Ġ| ĠĠĠĠ Ġbase . apk Ġ- Ġ 6 9 4 ĊĠĠĠĠĠ Ġ| """. trim Margin () Ċ