package Ġcom . example . first _ flutter čĊč Ċ import Ġandroid . content . Context č Ċ import Ġandroid . os . Battery Manager č Ċ import Ġandroid . util . Log č Ċ import Ġio . flutter . embedding . android . Flutter Activity č Ċ import Ġio . flutter . embedding . engine . Flutter Engine č Ċ import Ġio . flutter . plugin . common . Method Channel čĊč Ċ class ĠMainActivity Ġ: ĠFlutter Activity () Ġ{ čĊčĊĠĠĠ Ġprivate Ġval Ġm Channel Name Ġ= Ġ" my App / battery " čĊĠĠĠ Ġprivate Ġval Ġm MethodName Ġ= Ġ" get Battery " čĊčĊĠĠĠ Ġoverride Ġfun Ġconfigure Flutter Engine ( flutter Engine : ĠFlutter Engine ) Ġ{ čĊĠĠĠĠĠĠĠ Ġsuper . configure Flutter Engine ( flutter Engine ) čĊčĊĠĠĠĠĠĠĠ ĠLog . i (" First Flutter ", Ġ" configure Flutter Engine ") čĊčĊĠĠĠĠĠĠĠ Ġ// Ġ 1 . åĪĽå»º Method Channel å¯¹è±¡ čĊĠĠĠĠĠĠĠ Ġval Ġmethod Channel Ġ= ĠMethod Channel ( flutter Engine . dart Executor . binary Messenger , Ġm Channel Name ) čĊčĊĠĠĠĠĠĠĠ Ġ/// Ġ 2 . æ·»åĬł è°ĥçĶ¨ æĸ¹æ³ķ çļĦ åĽŀè°ĥ čĊĠĠĠĠĠĠĠ Ġmethod Channel . set MethodCall Handler Ġ{ Ġcall , Ġresult Ġ-> čĊčĊĠĠĠĠĠĠĠĠĠĠĠ ĠLog . i (" First Flutter ", Ġ" MethodCall Handler , Ġmethod Ġ= Ġ${ call . method }") čĊčĊĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 2 . 1 . å¦Ĥæŀľ Flutter ç«¯ è°ĥçĶ¨ çļĦæĸ¹æ³ķ åĲį æĺ¯ get Battery čĊĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( call . method Ġ== Ġm MethodName ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 2 . 1 . 1 . è°ĥçĶ¨ Android ç«¯ æĸ¹æ³ķ è¿ĶåĽŀ çĶµ éĩı ä¿¡æģ¯ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġval Ġbattery Level Ġ= Ġget Battery Info () čĊčĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 2 . 1 . 2 . åĪ¤æĸŃ æĺ¯åĲ¦ æŃ£å¸¸ èİ·åıĸ åĪ° čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġif Ġ( battery Level Ġ!= Ġ- 1 ) Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġèİ·åıĸ åĪ° è¿ĶåĽŀ ç»ĵæŀľ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . success ( battery Level ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġèİ·åıĸ ä¸įåĪ° æĬĽ åĩº å¼Ĥå¸¸ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . error (" UNKNOWN ", Ġ" Battery Ġinfo Ġis Ġunknown .", Ġnull ) čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} Ġelse Ġ{ čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ// Ġ 2 . 2 . å¦Ĥæŀľ Flutter ç«¯ è°ĥçĶ¨ çļĦæĸ¹æ³ķ åĲį ä¸įæĺ¯ get Battery čĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġresult . not Implemented () čĊĠĠĠĠĠĠĠĠĠĠĠ Ġ} čĊĠĠĠĠĠĠĠ Ġ} čĊĠĠĠ Ġ} čĊčĊčĊĠĠĠ Ġprivate Ġfun Ġget Battery Info (): ĠInt Ġ{ čĊĠĠĠĠĠĠĠ ĠLog . i (" First Flutter ", Ġ" get Battery Info ") čĊĠĠĠĠĠĠĠ Ġval Ġbattery Manager Ġ= Ġget System Service ( Context . B ATTER Y _ SERVICE ) Ġas ĠB attery Manager čĊĠĠĠĠĠĠĠ Ġreturn Ġbattery Manager . getInt Property ( Battery Manager . B ATTER Y _ PROPERTY _ CAP ACITY ) čĊĠĠĠ Ġ} čĊč Ċ } čĊ