如何从NotificationManager获取活动结果?
换句话说,我需要从PendingIntent获取resultCode。
public void test(Context context){
Notification notification = new Notification(null, "text", System.currentTimeMillis());
Intent intent = new Intent(Intent.ACTION_VIEW);
intent.setData(Uri.parse("http://www.example.com"));
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
notification.setLatestEventInfo(context, "text", "text", pendingIntent);
notificationManager.notify(0, notification);
}
我希望在浏览器活动结束时收到通知。
OBS:此代码在活动之外,这就是它收到的原因 上下文作为参数
答案 0 :(得分:3)
假设您有A
设置PendingIntent
的活动。此PendingIntent
调用活动B
。您希望收到B
的结果。
您可以通过引入代理活动来完成此操作:A
- > PendingIntent
- > ProxyActivity
- > startActivityForResult
- > B
。这样,您就会从B
活动收到ProxyActivity
的结果。
请注意,您应该在startActivityForResult()
中致电ProxyActivity.onCreate()
。
答案 1 :(得分:1)
让我们以简单的方式看待, 在活动A:
intet.putStringExtra("from notification") ;
在活动B中:
if (getintent().getStringExtra("from notification") !=null ){
//TODO do what u want !
}