Mar*_*rqs 5 android widget android-intent android-activity android-pendingintent
我一直在努力解决这个问题.我有一个小部件,显示烹饪食谱的摘要.小部件是可点击的,因此每当用户点击它时,就会打开新活动,并附上该食谱的完整描述.问题是,有时单击小部件时会打开错误的活动.让我给你举个例子:
我尝试设置这三个标志的组合,这有助于解决问题的一半:
openIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
Run Code Online (Sandbox Code Playgroud)
通过使用上面的标志,我设法显示正确的活动(A),直到我执行以下操作:
我希望我能够详细解释它.我非常感谢你的帮助,因为这件事让我发疯!
更新:
这是我的待处理内容:
Intent openIntent = new Intent(context, ProfanityDefinition.class);
openIntent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
openIntent.setData(Uri.parse(openIntent.toUri(Intent.URI_INTENT_SCHEME)));
Bundle bundle = new Bundle();
bundle.putBoolean("widgetRequest", true);
openIntent.putExtras(bundle);
PendingIntent openPendingIntent = PendingIntent.getActivity(context, 0, openIntent, PendingIntent.FLAG_UPDATE_CURRENT);
views.setOnClickPendingIntent(R.id.widget_content, openPendingIntent);
Run Code Online (Sandbox Code Playgroud)
谢谢
Nik*_*kov 12
显示创建代码的代码PedningIntent
.如果您将额外内容传递给您的活动,请注意两个仅由额外内容不同的意图被视为等效.您可能希望PendingIntent.FLAG_CANCEL_CURRENT
在创建时传递,PendingIntent
以确保不重用您的意图.
归档时间: |
|
查看次数: |
1207 次 |
最近记录: |