说明 我正在使用 Firebase Messaging 服务来处理推送通知在点击通知时 Intent OnHandleIntent 方法调用我试图启动启动画面的活动它适用于 Android 10 但不适用于 Android 13 设备。
无论应用程序处于前台、后台还是终止模式,我都会在所有模式下收到通知。
但是当应用程序处于后台或终止模式时,我点击了通知,它没有做任何事情。我将其调试为后台模式,并在 Tapped 通知上到达 onHandleIntent 方法,在该方法中我创建了启动画面的新意图并启动了活动,但该活动没有运行应用程序没有进入前台或调用启动活动代码
通知活动
protected override async void OnHandleIntent(Intent intent)
{
try
{
var notificationManager = (NotificationManager)GetSystemService(Context.NotificationService);
notificationManager.Cancel(0);
var action = intent.Extras.GetString("action");
if (string.IsNullOrWhiteSpace(action))
{
action = "default";
}
var newIntent = new Intent(this, typeof(SplashActivity));
if (intent?.Extras != null)
{
newIntent.PutExtras(intent.Extras);
}
newIntent.AddFlags(ActivityFlags.NewTask);
StartActivity(newIntent);
}
catch (System.Exception ex)
{
}
}
飞溅活动
public override void OnCreate(Bundle savedInstanceState, PersistableBundle persistentState)
{
base.OnCreate(savedInstanceState, persistentState);
}
protected override void OnResume()
{
base.OnResume();
var mainActivity = new Android.Content.Intent(Application.Context, typeof(MainActivity));
if (Intent?.Extras != null)
{
mainActivity.PutExtras(Intent.Extras);
}
StartActivity(mainActivity);
}
它应该运行将运行主要活动的启动活动,相同的代码适用于 Android 10 设备但不适用于 Android 13
OnHandleIntent Start Activity 没有为 Android 13 设备运行任何活动