我需要制作一个确定电池电量的应用程序,如果它低于15%,我会制造一些东西。
这是我的BroadCast:
public class BatteryChecker extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
int level = intent.getIntExtra("level", 0);
Toast.makeText(context,"Battery : "+level+"%",Toast.LENGTH_LONG).show();
}
}
但是当我在清单中注册接收器时它不起作用
<receiver android:name=".BatteryChecker">
<intent-filter>
<action android:name="android.intent.action.BATTERY_CHANGED"></action>
</intent-filter>
</receiver>
当我以编程方式注册它时,它可以工作,但我需要通过清单
注册它答案 0 :(得分:1)
但我需要通过清单
注册
这是不可能的。 Android会将某些广播(例如ACTION_BATTERY_CHANGED
)限制为通过registerReceiver()
注册的接收方。
你可以在清单中注册ACTION_BATTERY_LOW
,这可以更有效地找出电池电量不足的时间。