我已经搜索了很久!
所以我有一个应用程序小部件,它有一个配置活动,我可以在应用程序上按按钮时打开。场景如下:
- 应用程序已打开。 - 使用主页按钮关闭了应用程序。 - 选择添加我的小部件。 - 我已经配置好了小部件。 - 放置在我的主屏幕上。 - 然后再次使用小部件上的按钮打开配置活动。 - 按下返回键取消新配置将使我回到应用程序。
当按下返回键时,我想直接返回主屏幕。
基本上我想问的是,如何在自己的任务/堆栈中启动配置活动?
我已经研究了意图过滤器,但我不太确定,也许与它所在的包有关,或者可能根本不可能!
我想这可能与我用来启动配置活动的意图有关。
也许是因为我使用'this'作为上下文来启动它,所以它总是在我的应用程序堆栈中启动... 但是pending intent API是这样的: PendingIntent API 1 “请注意,活动将在没有现有活动的上下文之外启动”
所以,我现在就不说话了,因为我会陷入循环!
编辑
因此,在清单中尝试了'android:launchMode="singleInstance"',这确实起作用,但它会阻止'startActivityForResult'的行为正常工作。(这就是配置活动的全部原因)会出现以下错误:
警告/ActivityManager(59):由于作为新任务启动活动,因此取消活动结果。
所以仍然没有找到解决办法。
所以我有一个应用程序小部件,它有一个配置活动,我可以在应用程序上按按钮时打开。场景如下:
- 应用程序已打开。 - 使用主页按钮关闭了应用程序。 - 选择添加我的小部件。 - 我已经配置好了小部件。 - 放置在我的主屏幕上。 - 然后再次使用小部件上的按钮打开配置活动。 - 按下返回键取消新配置将使我回到应用程序。
当按下返回键时,我想直接返回主屏幕。
基本上我想问的是,如何在自己的任务/堆栈中启动配置活动?
我已经研究了意图过滤器,但我不太确定,也许与它所在的包有关,或者可能根本不可能!
我想这可能与我用来启动配置活动的意图有关。
Intent configIntent = new Intent(this, Configuration.class);
configIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
remoteView.setOnClickPendingIntent(R.id.config, PendingIntent.getActivity(this, 0, configIntent, PendingIntent.FLAG_UPDATE_CURRENT));
也许是因为我使用'this'作为上下文来启动它,所以它总是在我的应用程序堆栈中启动... 但是pending intent API是这样的: PendingIntent API 1 “请注意,活动将在没有现有活动的上下文之外启动”
所以,我现在就不说话了,因为我会陷入循环!
编辑
因此,在清单中尝试了'android:launchMode="singleInstance"',这确实起作用,但它会阻止'startActivityForResult'的行为正常工作。(这就是配置活动的全部原因)会出现以下错误:
警告/ActivityManager(59):由于作为新任务启动活动,因此取消活动结果。
所以仍然没有找到解决办法。