嗨,我正在开发 android 应用程序,我在其中定义了一个广播接收器。我正在从我的活动中调用接收器。我正在定义这样的广播接收器:
public class MyScheduleReceiver extends BroadcastReceiver {
private static final long REPEAT_TIME = 100 * 5;
@Override
public void onReceive(Context context, Intent intent) {
Log.i("RRRRRRRRRRRRRRRRRRRRRRRR", "on receive");
}
}
在android清单文件中,我定义如下:
<receiver android:name="abc.xyz.MyScheduleReceiver" >
<intent-filter>
<action android:name="android.intent.action.BOOT_COMPLETED" />
</intent-filter>
</receiver>
在主要活动中,我这样称呼我的广播接收器:
//in activity oncreate
startService(new Intent(this, MyScheduleReceiver.class));
我的问题是,当调用启动服务时,它实际上并没有启动我的服务。但是当我重新启动设备时,它会启动我的服务,因为我给了意图过滤器“BOOT_COMPLETED”。当我调用启动服务时,我实际上想做的是我的服务必须启动,
难道我做错了什么。如何解决这个问题呢?