【发布时间】:2012-12-20 16:01:12
【问题描述】:
我用两个参数开始一个新活动。
Intent intent = new Intent(WebTestActivity.this, MainActivity.class);
intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP | Intent.FLAG_ACTIVITY_CLEAR_TOP);
Uri uri = Uri.parse(url);
intent.setData(uri);
startActivity(intent);
并在onNewIntent 方法中捕获uri。
@Override
public void onNewIntent(Intent intent) { //calls twice
super.onNewIntent(intent);
Uri uri = intent.getData();
new AsynkTask().execute(uri);
}
但onNewIntent 方法被调用了两次,原因不明,似乎不正确。
【问题讨论】:
-
什么是 AsynkTask().start ?
-
你想要的只是意图..?解析意图..
-
Igor,你能告诉我你在什么设备上发现了这个问题吗?我只能在 Genymotion 模拟器上重现它,但不能在任何其他设备上重现它(S3、S4、运行 4.0.4 的 Galaxy Nexus、运行 4.3 的 Nexus 7)
-
这个问题还有效吗?
-
它与从自身内部调用 onNewIntent 方法有什么关系吗?