Android广播的坑
2020-11-03 本文已影响0人
旺仔_100
一、背景
最近做推送的通知点击,通知是直接用的系统通知,点击需要跳转到Flutter对应的界面。正常的都是使用Intent去跳转Activity。但是Flutter的跳转并没有使用自己的Activity。所以只能通过Intent发广播,然后在广播里面去跳转到Flutter界面。
二、广播遇到的坑
正常来说写个广播不是太简单了么,7.0之后广播不能静态注册,那就动态注册一波。
IntentFilter intentFilter = new IntentFilter();
intentFilter.addAction("xxx");
mContext.registerReceiver(new NotificationBroadcastReceiver(),intentFilter);
然后写个广播回调类。PendingIntent使用PendingIntent.getBroadcast。Intent的常见如下:
Intent intent1 = new Intent();
intent.setAction("xxx");
GameOver,信心满满的运行一波。结果并没有收到广播的回调。各种查找资料尝试之后发现。添加Actiion不能使用 intent.setAction,要直接把action放到创建Intent里面,如下
Intent intent = new Intent("xxx");
好了,就是个小坑记录。