package Ġdev . mag icle on 9 4 . flutter _ h ms _ gms _ checker Ċ Ċ import Ġandroidx . annotation . NonNull Ċ import Ġio . flutter . embedding . engine . plugins . Flutter Plugin Ċ import Ġio . flutter . plugin . common . MethodCall Ċ import Ġio . flutter . plugin . common . Method Channel Ċ import Ġio . flutter . plugin . common . Method Channel . MethodCall Handler Ċ import Ġio . flutter . plugin . common . Method Channel . Result Ċ import Ġandroid . content . Context Ċ import Ġcom . hu awei . h ms . api . Hu awei Api Availability Ċ import Ġcom . google . android . gms . common . Google Api Availability Ċ Ċ /** ĠFlutter H ms G ms Checker Plugin Ġ*/ Ċ class ĠFlutter H ms G ms Checker Plugin Ġ: ĠFlutter Plugin , ĠMethod Call Handler Ġ{ ĊĊĊĠĠĠ Ġprivate Ġvar Ġcontext : ĠContext ? Ġ= Ġnull ĊĊĠĠĠ Ġoverride Ġfun Ġon Attached To Engine (@ NonNull Ġflutter Plugin Binding : ĠFlutter Plugin . Flutter Plugin Binding ) Ġ{ ĊĠĠĠĠĠĠĠ Ġval Ġchannel Ġ= ĠMethod Channel ( flutter Plugin Binding . binary Messenger , Ġ" flutter _ h ms _ gms _ checker ") ĊĠĠĠĠĠĠĠ Ġcontext Ġ= Ġflutter Plugin Binding . application Context ĊĠĠĠĠĠĠĠ Ġchannel . set MethodCall Handler ( this ) ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon Detached From Engine (@ NonNull Ġbinding : ĠFlutter Plugin . Flutter Plugin Binding ) Ġ{ ĊĠĠĠĠĠĠĠ Ġ// Ġdo Ġnothing ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġoverride Ġfun Ġon MethodCall (@ NonNull Ġcall : ĠMethod Call , Ġ@ NonNull Ġresult : ĠResult ) Ġ{ ĊĠĠĠĠĠĠĠ Ġwhen Ġ( call . method ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" is H ms Available " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( is H ms Available ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ" is G ms Available " Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( is G ms Available ()) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġelse Ġ-> Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . not Implemented () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis H ms Available (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġis Available Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult Ġ= ĠHu awei Api Availability . getInstance (). is Hu awei Mobile Services Available ( context ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Available Ġ= Ġcom . hu awei . h ms . api . Connection Result . SUCCESS Ġ== Ġresult ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġis Available ĊĠĠĠ Ġ} ĊĊĠĠĠ Ġprivate Ġfun Ġis G ms Available (): ĠBoolean Ġ{ ĊĠĠĠĠĠĠĠ Ġvar Ġis Available Ġ= Ġfalse ĊĠĠĠĠĠĠĠ Ġif Ġ( context Ġ!= Ġnull ) Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġresult : ĠInt Ġ= ĠGoogle Api Availability . getInstance (). is Google Play Services Available ( context !! ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġis Available Ġ= Ġcom . google . android . gms . common . Connection Result . SUCCESS Ġ== Ġresult ĊĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠ Ġreturn Ġis Available ĊĠĠĠ Ġ} Ċ Ċ } Ċ