我MainActivity有lauchMode="singleTask"
现在我想从具有特殊意图数据的通知开始活动.在MainActivity.onResume我访问给定的意图数据...
问题是:当活动已经存在,并且我点击通知时,活动进入前台,但是onResume没有调用该方法,我无法访问意图数据.
我尝试了旗帜FLAG_ACTIVITY_CLEAR_TASK,这适用于Honeycomb,但不适用于Gingerbread.
这是我从通知开始活动的方式:
Intent intent = new Intent();
intent.setClass(this, MainActivity.class);
intent.putExtra("triggerid", triggerid);
startActivity(intent);
Run Code Online (Sandbox Code Playgroud)
onResume()如果活动不在前台,则始终调用.但是,您可能看到的getIntent()是返回启动活动的意图,而不是最近发送给它的意图.
要解决此问题,您应该覆盖onNewIntent().这将收到发送给它的新意图.然后,您可以setIntent()使用收到的意图进行调用,这将导致getIntent()在使用时返回新意图onResume().
| 归档时间: |
|
| 查看次数: |
3814 次 |
| 最近记录: |