android - 从通知启动 Activity 并返回到上一个 Activity

标签 android android-activity

在我的应用程序中,我有两个 Activites,A 和 B。A 是根/启动器 Activity,B 从推送通知启动。如果用户在另一个应用程序中,并单击我的推送通知, Activity B 将启动。当我在此 Activity 上调用 finish() 时,我希望用户在单击通知之前返回到他们所在的应用程序。相反,它们被带到 Activity A,即根 Activity。

有没有办法从通知开始 Activity,然后完成 Activity 并将用户返回到他们之前所在的应用程序?

最佳答案

下面的代码没问题,我测试了一下。在AndroidManifest.xml

<activity android:name=".A" android:screenOrientation="portrait" android:configChanges="orientation|keyboardHidden" android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />            
</intent-filter>         
</activity>              
<activity android:name=".B" android:screenOrientation="portrait"  android:configChanges="orientation|keyboardHidden" android:label="@string/app_name2" >
<intent-filter>          
<action android:name="android.intent.action.MAIN" />     
</intent-filter>
</activity>

从第 3 个应用程序调用:

Intent intent = new Intent();
intent.setClassName("your.app.packge", "your.app.packge.B");
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);         
context.startActivity(intent);          

你可以在你的项目中尝试。

关于android - 从通知启动 Activity 并返回到上一个 Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11641946/

相关文章:

android - 为什么 "SurfaceView"比自定义的 "view"慢?

android - 无法从 Activity 中调用 getSupportFragmentManager()

java - 进入新 Activity 时在后台运行应用程序

java - Android 中的 SMS 原始 pdu

Android:如何从 C2DMBaseReceiver 调用非静态函数?

java - oncreate(bundle)将在 Activity 中调用

java - 从用户离开的地方开始 Activity

未触发 Android 通知操作 (PendingIntent)

javascript - 移动应用程序中的图像渲染

Android从布局xml文件中提取字符串资源