/* Ċ Ġ* ĠCopyright ĠÂ© Ġ 2 0 2 0 ĠBy ĠG eek s ĠEmp ire . Ċ Ġ* Ċ Ġ* ĠCreated Ġby ĠE li as ĠF azel Ċ Ġ* ĠLast Ġmodified Ġ 8 / 2 6 / 2 0 Ġ 4 : 5 8 ĠAM Ċ Ġ* Ċ Ġ* ĠLicensed ĠUnder ĠMIT ĠLicense . Ċ Ġ* Ġhttps :// opensource . org / licenses / MIT Ċ Ġ*/ Ċ Ċ package Ġnet . ge ek st ools . float short . PRO . Utils . Functions Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . Intent Ċ import Ġandroid . content . pm . PackageManager Ċ Ċ class ĠApplications Data ( var Ġcontext : ĠContext ) Ġ{ ĊĊĠĠĠ Ġfun Ġapp Is Installed ( packageName : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpackage Manager : ĠPackage Manager Ġ= Ġcontext . package Manager ĊĠĠĠĠĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġpackage Manager . get Package Info ( packageName , Ġ 0 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtrue ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠPackage Manager . Name NotFoundException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġis System Application ( packageName : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpackage Manager Ġ= Ġcontext . package Manager ĊĊĠĠĠĠĠĠĠ Ġreturn Ġ Ġtry Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġtarget Pkg Info Ġ= Ġpackage Manager . get Package Info ( packageName , ĠPackage Manager . GET _ SIGNATURE S ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġsys Ġ= Ġpackage Manager . get Package Info ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ" android ", ĠPackage Manager . GET _ SIGNATURE S ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġtarget Pkg Info ?. signatures Ġ!= Ġnull Ġ&& Ġ( sys . signatures [ 0 ] Ġ== Ġtarget Pkg Info . signatures [ 0 ]) ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠPackage Manager . Name NotFoundException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġe . printStackTrace () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġis Default Launcher ( packageName : ĠString ): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġintent Ġ= ĠIntent ( Intent . ACTION _ MAIN ) ĊĠĠĠĠĠĠĠ Ġintent . add Category ( Intent . CATEGORY _ HOME ) ĊĠĠĠĠĠĠĠ Ġval Ġdefault Launcher Ġ= Ġcontext . package Manager . resolve Activity ( intent , ĠPackage Manager . MATCH _ DEFAULT _ ONLY ) ĊĠĠĠĠĠĠĠ Ġval Ġdefault Launcher PackageName Ġ= Ġdefault Launcher ?. activity Info ?. packageName ĊĠĠĠĠĠĠĠ Ġreturn Ġ( default Launcher PackageName Ġ== ĠpackageName ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġfun Ġcan Launch ( packageName : ĠString ?): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn Ġcontext . package Manager . get Launch Intent For Package ( packageName !! ) Ġ!= Ġnull ĊĠĠĠ Ġ} Ċ }