广播接收器是否在静态定义(清单中)的后台运行。有人能解释一下吗?另外,如何在api 26(oreo)和更高版本的后台运行broadcastreceiver。
<receiver android:name=".ScreenOnOffReceiver"
android:enabled="true"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MY_PACKAGE_REPLACED"/>
<action android:name="android.intent.action.BOOT_COMPLETED"/>
<action android:name="myintent"/>
</intent-filter>
</receiver>
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public class ScreenOnOffReceiver extends BroadcastReceiver {
public final static String SCREEN_TOGGLE_TAG = "SCREEN_TOGGLE_TAG";
@Override
public void onReceive(Context context, Intent intent) {
String action = intent.getAction();
Log.d(SCREEN_TOGGLE_TAG, " action name : " + action);
}
}
非常感谢。