package Ġcom . rocket . android . core . data . map . extensions Ċ Ċ import Ġandroid . content . Context Ċ import Ġandroid . content . pm . Package Info Ċ import Ġandroid . content . pm . PackageManager Ċ import Ġandroid . graphics . Bitmap Ċ import Ġandroid . graphics . Bitmap Factory Ċ import Ġandroid . graphics . Canvas Ċ import Ġandroid . util . Log Ċ import Ġandroidx . annotation . Drawable Res Ċ import Ġandroidx . annotation . Style Res Ċ import Ġandroidx . appcompat . view . Context Theme Wrapper Ċ import Ġandroidx . core . content . Context Compat Ċ import Ġandroidx . core . content . pm . Package Info Compat Ċ import Ġandroidx . vect ord raw able . graphics . drawable . Vector Drawable Compat Ċ import Ġcom . google . android . gms . common . Connection Result Ċ import Ġcom . google . android . gms . common . Google Api Availability Ċ import Ġcom . hu awei . h ms . api . Hu awei Api Availability Ċ import Ġcom . rocket . android . core . data . map . model . Bitmap Descriptor Ċ import Ġcom . rocket . android . core . data . map . model . to Bitmap Description Ċ import Ġjava . net . URL Ċ import Ġcom . google . android . gms . maps . model . Bitmap Descriptor Ġas ĠBitmap Descriptor G MS Ċ import Ġcom . google . android . gms . maps . model . Bitmap Descriptor Factory Ġas ĠBitmap Descriptor Factory G MS Ċ import Ġcom . hu awei . h ms . maps . model . Bitmap Descriptor Ġas ĠBitmap Descriptor H MS Ċ import Ġcom . hu awei . h ms . maps . model . Bitmap Descriptor Factory Ġas ĠBitmap Descriptor Factory H MS Ċ Ċ fun Ġbitmap Descriptor From Vector G MS ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġ@ Drawable Res Ġvector Res Id : ĠInt , ĊĠĠĠ Ġ@ Style Res Ġtheme Res Id : ĠInt Ċ ): ĠBitmap Descriptor G MS ? Ġ{ ĊĠĠĠ Ġif Ġ( theme Res Id Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( context , Ġtheme Res Id ) ĊĠĠĠĠĠĠĠ Ġval Ġvector Drawable Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVector Drawable Compat . create ( context . resources , Ġvector Res Id , Ġwrapper . theme ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( vector Drawable Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . setBounds ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Height ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĠBitmap . create Bitmap ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . Config . ARGB _ 8 8 8 8 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcanvas Ġ= ĠCanvas ( bitmap ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . draw ( canvas ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . get Drawable ( context , Ġvector Res Id )?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Bounds ( 0 , Ġ 0 , Ġintr insic Width , Ġintr insic Height ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . create Bitmap ( intrinsic Width , Ġintr insic Height , ĠBitmap . Config . ARGB _ 8 8 8 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw ( Canvas ( bitmap )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠContext Compat . get Drawable ( context , Ġvector Res Id )?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Bounds ( 0 , Ġ 0 , Ġintr insic Width , Ġintr insic Height ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . create Bitmap ( intrinsic Width , Ġintr insic Height , ĠBitmap . Config . ARGB _ 8 8 8 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdraw ( Canvas ( bitmap )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġbitmap Descriptor From Vector H MS ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġ@ Drawable Res Ġvector Res Id : ĠInt , ĊĠĠĠ Ġ@ Style Res Ġtheme Res Id : ĠInt Ċ ): ĠBitmap Descriptor H MS ? Ġ{ ĊĠĠĠ Ġif Ġ( theme Res Id Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġwrapper Ġ= ĠContext Theme Wrapper ( context , Ġtheme Res Id ) ĊĠĠĠĠĠĠĠ Ġval Ġvector Drawable Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠ ĠVector Drawable Compat . create ( context . resources , Ġvector Res Id , Ġwrapper . theme ) ĊĊĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( vector Drawable Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . setBounds ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ 0 , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Height ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĠBitmap . create Bitmap ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Width , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . intrinsic Height , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . Config . ARGB _ 8 8 8 8 ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġcanvas Ġ= ĠCanvas ( bitmap ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġvector Drawable . draw ( canvas ) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory H MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠContext Compat . get Drawable ( context , Ġvector Res Id )?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġset Bounds ( 0 , Ġ 0 , Ġintr insic Width , Ġintr insic Height ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . create Bitmap ( intrinsic Width , Ġintr insic Height , ĠBitmap . Config . ARGB _ 8 8 8 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdraw ( Canvas ( bitmap )) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory H MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠ Ġreturn ĠContext Compat . get Drawable ( context , Ġvector Res Id )?. run Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġset Bounds ( 0 , Ġ 0 , Ġintr insic Width , Ġintr insic Height ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbitmap Ġ= ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap . create Bitmap ( intrinsic Width , Ġintr insic Height , ĠBitmap . Config . ARGB _ 8 8 8 8 ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġdraw ( Canvas ( bitmap )) ĊĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory H MS . from Bitmap ( bitmap ) ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ Ċ } Ċ Ċ fun Ġbitmap Descriptor From Vector ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġ@ Drawable Res Ġvector Res Id : ĠInt , ĊĠĠĠ Ġ@ Style Res Ġtheme Res Id : ĠInt Ċ ): ĠBitmap Descriptor ? Ġ{ ĊĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠ ĠHu awei Api Availability . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Hu awei Mobile Services Available ( context ) Ġ== Ġcom . hu awei . h ms . api . Connection Result . SUCCESS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġif Ġ( is H ms Core Version Available ( context Ġ= Ġcontext )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap Descriptor From Vector H MS ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Res Id Ġ= Ġvector Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtheme Res Id Ġ= Ġtheme Res Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ?. to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap Descriptor From Vector G MS ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Res Id Ġ= Ġvector Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtheme Res Id Ġ= Ġtheme Res Id ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ) ?. to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ ĠGoogle Api Availability . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Google Play Services Available ( context ) Ġ== ĠConnection Result . SUCCESS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġbitmap Descriptor From Vector G MS ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Res Id Ġ= Ġvector Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtheme Res Id Ġ= Ġtheme Res Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ?. to Bitmap Description () ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġreturn Ġbitmap Descriptor From Vector G MS ( ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġcontext Ġ= Ġcontext , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġvector Res Id Ġ= Ġvector Res Id , ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtheme Res Id Ġ= Ġtheme Res Id ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ) ?. to Bitmap Description () ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ċ } Ċ Ċ fun Ġbitmap Descriptor From Url ( ĊĠĠĠ Ġcontext : ĠContext , ĊĠĠĠ Ġicon Url : ĠString , ĊĠĠĠ Ġwidth : ĠInt Ġ= Ġ- 1 , ĊĠĠĠ Ġheight : ĠInt Ġ= Ġ- 1 Ċ ): ĠBitmap Descriptor ? Ġ= ĊĠĠĠ Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġurl Ġ= ĠURL ( icon Url ) ĊĠĠĠĠĠĠĠ Ġvar Ġbitmap Ġ= ĠBitmap Factory . decode Stream ( url . open Connection (). getInputStream ()) ĊĊĠĠĠĠĠĠĠ Ġif Ġ( width Ġ!= Ġ- 1 Ġ&& Ġheight Ġ!= Ġ- 1 ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġbitmap Ġ= ĠBitmap . create Scaled Bitmap ( bitmap , Ġwidth , Ġheight , Ġfalse ) ĊĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠ Ġwhen Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ ĠHu awei Api Availability . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Hu awei Mobile Services Available ( context ) Ġ== Ġcom . hu awei . h ms . api . Connection Result . SUCCESS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( is H ms Core Version Available ( context Ġ= Ġcontext )) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory H MS . from Bitmap ( bitmap ). to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ). to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ ĠGoogle Api Availability . getInstance () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. is Google Play Services Available ( context ) Ġ== ĠConnection Result . SUCCESS Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ). to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠBitmap Descriptor Factory G MS . from Bitmap ( bitmap ). to Bitmap Description () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} Ġcatch Ġ(_ : ĠThrowable ) Ġ{ ĊĠĠĠĠĠĠĠ Ġnull ĊĠĠĠ Ġ} Ċ Ċ fun Ġis H ms Core Version Available ( context : ĠContext ): ĠBoolean Ġ{ ĊĠĠĠ Ġreturn Ġtry Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġpm : ĠPackage Manager Ġ= Ġcontext . package Manager ĊĠĠĠĠĠĠĠ Ġval Ġpackage Info : ĠPackage Info Ġ= Ġpm . get Package Info (" com . hu awei . hw id ", Ġ 0 ) ĊĠĠĠĠĠĠĠ Ġval Ġversion : ĠLong Ġ= ĠPackage Info Compat . getLong Version Code ( package Info ) ĊĠĠĠĠĠĠĠ Ġversion Ġ>= Ġ 5 0 0 0 0 3 0 1 L ĊĠĠĠ Ġ} Ġcatch Ġ( e : ĠException ) Ġ{ ĊĠĠĠĠĠĠĠ Ġfalse ĊĠĠĠ Ġ} Ċ }