我正在处理我的应用程序中的深层链接。单击电子邮件中的链接后,它将在应用程序中打开相关活动。按下后,它可以返回到电子邮件或首页(最多使用我使用的意图标志)。 我需要它返回最新运行活动(如果在单击电子邮件中的链接之前正在使用该应用程序),或者(否则)请转到第一个活动以重新启动该应用程序。
更清晰:用户处于活动C 。电子邮件通知会出现,请检查并单击其中的链接。它打开活动E 。在这里,如果用户后按,我想结束当前任务并恢复活动C -如果活动C任务尚未被系统终止。如果被杀死,请转到活动A 。
没有意图标志,它创建一个新任务(第二个应用程序实例),然后按返回到电子邮件客户端。 带有NEW_TASK标志的新任务开始。如果我与此同时使用CLEAR_TASK标志,请按回去它。
清单
<intent-filter>
<action android:name="android.intent.action.VIEW" />
<category android:name="android.intent.category.DEFAULT" />
<category android:name="android.intent.category.BROWSABLE" />
<data
android:scheme="https"
android:host="www.mysite.com"
android:pathPattern="/mypath/*" />
</intent-filter>
FirstActivity
if(getIntent().getData().toString().contains("keyword")){
//intent.setFlags(...);
intent.putExtra("myextra", getIntent().getData().toString());
}
startActivity(intent);
finish();
EmailResultActivity
String data = getIntent().getExtras().getString("myextra");
答案 0 :(得分:0)
要实现此目的,您需要处理来自常见活动的深层链接。 (例如:如果您的应用具有常见活动,例如XYZ。则每个深层链接都应进入XYZ活动,然后根据深层链接的参数,应移至相应的屏幕。)此外,还需要将XYZ设置为singleTask。 / p>