Android 为什么服务销毁时不注销?

Android 为什么服务销毁时不注销?,android,broadcastreceiver,Android,Broadcastreceiver,我在服务中注册我的(广播接收器),当我的主要活动关闭我的服务时,我的(广播接收器)接收器工作正常吗 我的问题是如何保持(广播接收器)在背景中 我的解决方案是好主意 我的服务代码: public class MyService extends Service{ @Override public IBinder onBind(Intent intent) { return null; } @Override public int onStartCommand(Intent intent

我在服务中注册我的(广播接收器),当我的主要活动关闭我的服务时,我的(广播接收器)接收器工作正常吗


我的问题是如何保持(广播接收器)在背景中

我的解决方案是好主意

我的服务代码:

public class MyService extends Service{ 

@Override
public IBinder onBind(Intent intent) {
    return null;
}

@Override
public int onStartCommand(Intent intent, int flags, int startId) {

IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction(Const.LOCATION_LOGGER_ACTION);
intentFilter.addAction(Intent.ACTION_NEW_OUTGOING_CALL);

registerReceiver(new BroadcastReceivers(), intentFilter);
return START_STICKY;

}

}

onReceive检查服务正在运行



onReceive check服务正在运行

前面的答案是正确的。从那里将代码添加到清单文件中, 然后创建新的java类:

public class MyReciever extends BroadcastReceiver{
@Override
    public void onReceive(Context context, Intent intent) {
//Do what you need to do when broadcast is received
}
}

先前的答案是正确的。从那里将代码添加到清单文件中, 然后创建新的java类:

public class MyReciever extends BroadcastReceiver{
@Override
    public void onReceive(Context context, Intent intent) {
//Do what you need to do when broadcast is received
}
}

在代码(活动或服务)中创建
BroadcastReceiver
时,
BroadcastReceiver
应由活动或服务本身管理

否则,若您在清单中声明
广播接收器
,若您的应用程序未运行,系统将自动为您的接收器创建新进程。这在应用程序不可用时非常有用,例如
bootcompled


在代码(活动或服务)中创建
BroadcastReceiver
时,
BroadcastReceiver
应由活动或服务本身管理

否则,若您在清单中声明
广播接收器
,若您的应用程序未运行,系统将自动为您的接收器创建新进程。这在应用程序不可用时非常有用,例如
bootcompled



我的问题是如何将(广播接收器)保持在后台?将此代码添加到清单文件中。当你的接收者收到信息时。onReceive将运行。我的问题是如何将(广播接收器)保持在后台?将此代码添加到清单文件中。当你的接收者收到信息时。onReceive将运行。您可以在服务的
onDestroy()
中注销它。您可以在服务的
onDestroy()
中注销它。
 <receiver android:name=".CustomReceiver">
            <intent-filter>
                <action android:name="android.intent.action.NEW_OUTGOING_CALL" />
            </intent-filter>
 </receiver>