package Ġcom . wr bug . developer helper . x posed Ċ Ċ import Ġandroid . os . Process Ċ import Ġcom . j ared rum ml er . android . shell . Shell Ċ import Ġcom . wr bug . developer helper . common util . Process Util Ċ import Ġcom . wr bug . developer helper . common util . Shell Utils Ċ import Ġcom . wr bug . developer helper . common util . toJson Ċ import Ġcom . wr bug . developer helper . ipc . proces ssh are . manager . App X posed Process DataManager Ċ import Ġcom . wr bug . developer helper . ipc . proces ssh are . manager . Global Config Process DataManager Ċ import Ġcom . wr bug . developer helper . x posed . developer helper . Developer Helper Ċ import Ġcom . wr bug . developer helper . x posed . dump dex . Dump Ċ import Ġcom . wr bug . developer helper . x posed . util . Application Helper Ċ import Ġde . rob v . android . x posed . IX posed Hook Load Package Ċ import Ġde . rob v . android . x posed . X posed Bridge Ċ import Ġde . rob v . android . x posed . callbacks . XC _ Load Package Ċ import Ġjava . io . File Ċ Ċ /** Ċ Ġ* ĠX posed Init Ċ Ġ* Ċ Ġ* Ġ@ author Ġwr bug Ċ Ġ* Ġ@ since Ġ 2 0 1 8 / 3 / 2 0 Ċ Ġ*/ Ċ class ĠX posed Init Ġ: ĠIX posed Hook Load Package Ġ{ ĊĊĠĠĠ Ġoverride Ġfun Ġhandle Load Package ( lp param : ĠX C _ Load Package . Load Package Param ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval ĠpackageName Ġ= Ġlp param . packageName ĊĠĠĠĠĠĠĠ Ġif Ġ( packageName Ġ== ĠS ELF _ PACKAGE _ NAME ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" hook Ġ æĺĵ å¼Ģåıĳ ". x posed Log () ĊĠĠĠĠĠĠĠĠĠĠĠ ĠDeveloper Helper . init ( lp param ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} Ċ // ĠĠĠĠĠĠĠ Ġ(" è¿Ľç¨ĭ ï¼ļ ${ Process . my Pid ()}, Ġ${ Process Util . read Proc Name ()}, Ġ${ Shell . SH . run (" cat Ġ/ data / data / com . wr bug . developer helper / shared _ prefs / ipc _ app _ x posed _ config . xml "). toJson () }" Ġ+ Ċ // ĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ", Ġ${ Shell . SU . run (" cat Ġ/ data / data / com . wr bug . developer helper / shared _ prefs / ipc _ app _ x posed _ config . xml "). toJson ()} "). x posed Log ( Ċ // ĠĠĠĠĠĠĠĠĠĠĠ Ġ" X POSE D _ PROCESS " Ċ // ĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠ Ġif Ġ( Global Config Process DataManager . instance . is X posed Open ()) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" x posed å·² åħ³éĹŃ ". x posed Log () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġif Ġ(! App X posed Process DataManager . instance . is App X posed Opened ( packageName )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" åºĶçĶ¨ ${ packageName }:${ lp param . process Name } æľª å¼ĢåĲ¯ x posed ". x posed Log () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠApplication Helper . hook ( lp param ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" hook ed Ġ${ java Class . name }". x posed Log () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠDump . init ( lp param ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġcompanion Ġobject Ġ{ ĊĠĠĠĠĠĠĠ Ġconst Ġval ĠS ELF _ PACKAGE _ NAME Ġ= Ġ" com . wr bug . developer helper " ĊĠĠĠĠĠĠĠ Ġfun Ġlog ( t : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠX posed Bridge . log ( t ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ