Java 操作\u电源\u已在Android后台服务上断开连接
我正在尝试创建一个服务,它在我插入电池充电器时启动,在拔下充电器时停止。问题是,当我拔下充电器时,我的服务不会停止,而当我拔下充电器时,一切正常 这是我的代码:Java 操作\u电源\u已在Android后台服务上断开连接,java,android,service,Java,Android,Service,我正在尝试创建一个服务,它在我插入电池充电器时启动,在拔下充电器时停止。问题是,当我拔下充电器时,我的服务不会停止,而当我拔下充电器时,一切正常 这是我的代码: public class PowerConnectionReceiver extends BroadcastReceiver { @Override public void onReceive(Context context, Intent intent) { if (in
public class PowerConnectionReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_POWER_CONNECTED)){
Intent i = new Intent(context,MyService.class);
context.startService(i);
}
if (intent.getAction().equals(Intent.ACTION_POWER_DISCONNECTED)){
Intent j = new Intent(context,MyService.class);
context.stopService(j);
}
}
}
<receiver android:name=".PowerConnectionReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
</intent-filter>
</receiver>
这是我的清单:
public class PowerConnectionReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals(Intent.ACTION_POWER_CONNECTED)){
Intent i = new Intent(context,MyService.class);
context.startService(i);
}
if (intent.getAction().equals(Intent.ACTION_POWER_DISCONNECTED)){
Intent j = new Intent(context,MyService.class);
context.stopService(j);
}
}
}
<receiver android:name=".PowerConnectionReceiver">
<intent-filter>
<action android:name="android.intent.action.ACTION_POWER_CONNECTED"/>
<action android:name="android.intent.action.ACTION_POWER_DISCONNECTED"/>
</intent-filter>
</receiver>
它是否实际收到该操作?您是如何注册此接收人的?请共享您声明接收人的清单文件,该文件用清单更新了我的问题。代码看起来不错。你怎么知道服务没有停止?我将GPS坐标等数据存储到firebase。因此,我想知道何时拔下充电器,我的服务停止,也停止向基站发送数据。但事实上,这并没有发生,我知道我的服务仍在运行。