官方帮助文档中写到
从 Android 8.0(API 级别 26)开始,系统对清单声明的接收器施加了额外的限制。
如果您的应用以 Android 8.0 或更高版本为目标平台,那么对于大多数隐式广播(没有明确针对您的应用的广播),您不能使用清单来声明接收器。当用户正在活跃地使用您的应用时,您仍可使用上下文注册的接收器。
所以对静态广播,限制包名为自己应用的包名,即可正常收到广播
Log.d("Broadcast", "onClick: Broadcast");
Intent intent = new Intent("MyBroadcast");
intent.setPackage("com.android.broadcastreceiver"); # 包名为自己应用的包名
sendBroadcast(intent);