Я пытаюсь получить широковещательную рассылку из внешнего приложения в моем настраиваемом классе BroadcasterReceiver. Однако я не получаю его, несмотря на то, что выполняю все правильные шаги (насколько я могу судить). Как минимум, все, что у меня есть, должно соответствовать это сообщение SO. Ниже представлена установка:
<application>
<receiver
android:name = ".MyReceiver"
android:exported = "true">
<intent-filter>
<action android:name = "UPDATE_ASSET_REQUEST"/>
</intent-filter>
</receiver>
</application>
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
if (intent != null) {
String action = intent.getAction();
if (action != null && action.equals("UPDATE_ASSET_REQUEST")) {
Log.d(TAG, "intent recevied");
// ...
}
}
}
}
public void sendUpdateAssetBroadcasts() {
try {
Log.d(TAG, "Sending Update Asset Broadcasts...");
Intent prfIntent = new Intent("UPDATE_ASSET_REQUEST");
prfIntent = buildDeviceInfoForBroadcast(prfIntent, "WEARABLE");
sendBroadcast(prfIntent);
} catch (Exception ex) {
Log.d(TAG, "Failed to send broadcast for asset update: " + ex.getMessage());
}
}
Неявные трансляции (трансляции неявных объектов
Intent) были запрещены с Android 8.0.