gpt4 book ai didi

android - 从其他 Activity 中获取调用 Activity

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

我正在通过此代码从另一个 Activity 调用一个 Activity :

Intent intent = new Intent(context, mClass);
context.startActivity(intent);

以及由此代码启动的我的新 Activity 。我想知道哪个 Activity 开始这个 Activity 。我为此目的使用了这段代码

Intent intent = getIntent();
Class<?> c = intent.getClass();
if (c != OffersActivity.class) {
prepareForNotifications();
setListAdapter();
}

但是通过这段代码我无法获得启动此 Activity 的类名。我真的需要一些帮助。

谢谢

最佳答案

有一个方法 getCallingActivity(),但只有当调用 Activity 使用 startActivityForResult() 调用您时,该方法才有效。我已经看到图书馆使用它并说你必须那样调用它们,但坦率地说它有点讨厌。简单的答案是你不应该知道。 Android 是一个松耦合 Activity 的系统,因此调用 Activity 对您的 Activity 没有实际意义。你的 Activity 需要的任何信息都应该明确地放在 Intent 中,所以如果你真的想知道是谁给你打电话,那么调用者需要把那个额外的东西放进去。你当然无法判断他们是否在撒谎,所以不要'去尝试将它用于任何与安全相关的事情。但是,我建议无论您根据调用者确定什么,调用者都应该传递给您。可能是时候重新考虑为什么要这样做了,因为试图与系统作斗争只会导致痛苦。

关于android - 从其他 Activity 中获取调用 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14070933/

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