自定义广播需动态注册 系统广播可静态注册
BroadcastDispatcher 来源
import com.android.systemui.broadcast.BroadcastDispatcher;
private class DismissReceiver extends BroadcastReceiver {
private final IntentFilter INTENT_FILTER = new IntentFilter();
{
INTENT_FILTER.addAction("com.android.sustemui.SHOW_STATUS");
}
private boolean mRegistered;
private final BroadcastDispatcher mBroadcastDispatcher;
DismissReceiver() {
mBroadcastDispatcher = Dependency.get(BroadcastDispatcher.class);
}
void register() {
mBroadcastDispatcher.registerReceiver(this, INTENT_FILTER, null, UserHandle.CURRENT);
mRegistered = true;
}
void unregister() {
if (mRegistered) {
mBroadcastDispatcher.unregisterReceiver(this);
mRegistered = false;
}
}
@Override
public void onReceive(Context context, Intent intent) {
}
}
Intent intent = new Intent();
intent.setAction("com.android.sustemui.SHOW_STATUS");
getContext().sendBroadcast(intent);