gpt4 book ai didi

Android 通过 Intent 启动或显示另一个应用程序

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:28:47 25 4
gpt4 key购买 nike

我无法让它发挥作用,这里是对这个想法的快速概述。

首先,我无法改变这背后的逻辑,这是客户的具体要求,我意识到使用 AnyCut 等任何工具都可以绕过它,但这并不重要。

我的客户提供了一套应用程序,其想法是属于该套件的所有应用程序都将从“仪表板应用程序”启动,因此我只在主启动器中显示仪表板应用程序,而不是所有应用程序图标。

让我们用两个应用来解决这个问题。仪表板应用 (A) 和接收应用 (B)。

我想在应用程序 B 上建立一个 Intent 过滤器(我认为),这样每当我进入应用程序 A 并单击应用程序 B 图标时,该应用程序就会启动或从它允许的地方开始(带到前面) .

这可能吗?如果是这样,我该怎么做?我设法通过使用以下方法在应用程序中专门启动一项 Activity 来启动它:

Intent i = new Intent();
i.setClassName("PACKAGE_NAME","SPECIFIC_CLASS");
startActivity(i);

但这不是我想要的行为,因为它总是在同一个位置启动应用程序 B。

提前致谢, 斯特凡诺

编辑:添加了一些新信息。我正在查看 DDMS。

如果我通过主 Android 启动器从头开始启动应用程序,其 Intent 与我按下主页按钮然后仅将应用程序置于最前面时完全相同,无论我在做什么 Activity 。所以我试图重现, 到现在为止,这个 Intent 没有成功。

INFO/ActivityManager(1292): Starting activity: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] flg=0x10200000 cmp=com.example.package/.uiPackage.Activity}

AnyCut 是这样做的

Intent { act=android.intent.action.VIEW flg=0x10000000 cmp=com.example.package/.uiPackage.Activity bnds=[125,242][235,360]}

知道如何创建完全相同的 Intent 吗?我什至无法在 Intent API 中找到该标志。

最佳答案

想通了,我就是这样做的。

Intent i = new Intent();
i.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
i.setAction("android.intent.action.VIEW");
i.setComponent(ComponentName.unflattenFromString("com.example.package/com.example.package.activityName"));
startActivity(i);

关于Android 通过 Intent 启动或显示另一个应用程序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4892487/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com