https://stackoverflow.com/a/47020822/12620073我試圖在我的代碼中使用這個解決方案來檢查手機是否正在充電。然而在這一行——
BatteryManager myBatteryManager = (BatteryManager) context.getSystemService(Context.BATTERY_SERVICE);
我不明白“背景關系”一詞的類別應該是什么,也不明白它到底是什么。如果有人向我解釋這一點,我將不勝感激。
uj5u.com熱心網友回復:
背景關系是從Context類派生的任何類。3 種主要型別是活動、應用程式和服務。因此,如果您在 Activity 中運行該代碼,它將是this.getSystemService(). 如果在另一個類中運行它,則需要將背景關系傳遞給該類。通常,它將是您的 Activity 或您的應用程式(通常使用 訪問activity.getApplicationContext())。對于 getSystemService,可以在任何方便的 Context 上運行它。
通常,在將背景關系傳遞給方法時,更喜歡傳遞應用程式背景關系。這是為了防止該類保存背景關系的實體,因為在某些情況下對 Activity 執行此操作會導致記憶體泄漏。
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/362161.html
