Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/google-sheets/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android多实例_Android_Notifications_Multiple Instances - Fatal编程技术网

Android多实例

Android多实例,android,notifications,multiple-instances,Android,Notifications,Multiple Instances,我在android中遇到通知问题,每当我每次单击通知时,我都必须再次调用同一个活动,但据我所知,新活动已被调用,但前一个活动也在后端运行,因此我的代码正在一次又一次地运行(因为有多个实例) 请帮助我如何在每次单击通知时解析或关闭多个实例 代码 public void notificationforChat(CharSequence消息、字符串toJid、int notificationID){ 谢谢请在maifest中输入该活动的以下代码: android:launchMode="singleT

我在android中遇到通知问题,每当我每次单击通知时,我都必须再次调用同一个活动,但据我所知,新活动已被调用,但前一个活动也在后端运行,因此我的代码正在一次又一次地运行(因为有多个实例)

请帮助我如何在每次单击通知时解析或关闭多个实例

代码

public void notificationforChat(CharSequence消息、字符串toJid、int notificationID){


谢谢

请在maifest中输入该活动的以下代码:

android:launchMode="singleTop"
然后,为了在再次调用活动时处理新的更改,请重写以下方法

@Override
protected void onNewIntent(Intent intent) {
    super.onNewIntent(intent);      
    //Do your new intent handling here.     
}

您放入清单中的代码确保只创建了该活动的一个实例。并且您可以在该活动中的onNewIntent重写方法中处理新意图所需的更改。

以防止多个活动实例

您可以在活动中使用android:launchMode=“singleTask”

<activity
            android:launchMode="singleTask"
            android:name=".UserChatActivity"
            android:label="Your title" > 

....
</activity>

android:launchMode=“singleInstance”模式或
android:launchMode=“singleTop”模式下启动活动怎么样?我认为这会有帮助。

增加您的通话意图

mIntent. setFlags (Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
添加到menifest中的活动

android:launchMode="singleTop"

你的意思是只在你的应用程序中进行单个活动?是的。假设你在gtalk聊天屏幕上,与其他人聊天,现在如果其他人ping你,则会通过通知通知通知你,现在当你单击该通知时,其他人的聊天屏幕将打开。现在,我看到前一个人的聊天屏幕也在后台运行圆形问题是当我打开新窗口时,同一屏幕正在打开,新屏幕没有打开。问题是什么?是的,我告诉过你使用重写的onNewIntent方法。在该方法中,用你需要显示的新值更新视图。问题是当我打开新窗口时,同一屏幕正在打开宁,新屏幕没有打开。问题出在哪里??
mIntent. setFlags (Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
android:launchMode="singleTop"