微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

startActivity 在某些手机上不起作用?

如何解决startActivity 在某些手机上不起作用?

我对开发 Android 应用程序非常陌生。我有一个奇怪的问题如下,请等待您的帮助。

我的应用有一个带有 recylerview 的活动。这意味着我有一个用于 cardview 设计和适配器类的活动。在这个适配器中有一个弹出菜单

用户点击一个弹出菜单项时,相应的启动活动就会启动。

我有 3 部不同 Android 版本和 API 级别的手机。其中 2 个与我的应用程序完美配合,但第三个没有。当我用有问题的电话调试应用程序时,我看到它在处理 startactivity 行时崩溃了。问题手机比其他两款手机更新(更高的 Android 版本和 API 级别)。所以,我认为这不是版本问题。

这是我在 popupMenu.setonMenuItemClickListener 中的代码

Intent elgosterme_gecis =new Intent (mContext,showall.class);
                            elgosterme_gecis.putExtra("No",position+1);
                            elgosterme_gecis.putExtra("number",oyuncuSayisi);
                            mContext.startActivity(elgosterme_gecis);

为什么,旧手机可以完美运行此代码,而新手机则不能?有问题的手机是安卓9。其他手机运行良好的手机是低版本的安卓。

我需要你的经验....

请注意:显然,我的应用程序中还有许多其他 startactivity 进程,并且所有这些进程都适用于所有手机。唯一的问题是只有一部手机的 popupMenu.setonMenuItemClickListener 适配器中的 startactivty...

这是我在 Context 适配器中的构造器

public TabelaAdapterClass_rv1adim4(Context mContext,List<TabeladbModellemeClass_rv1adim3> satirlarListesi) {
    this.mContext = mContext;
    this.satirlarListesi = satirlarListesi;
}

提前致谢。

解决方法

我在开始活动之前添加了以下行并解决了问题

elgosterge_gecis.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

我已经查看了 develeoper 网站上的文档,但需要有人向我解释真正在做什么以及为什么有些手机不需要而其他手机需要?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。