问题描述
我对开发 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 网站上的文档,但需要有人向我解释真正在做什么以及为什么有些手机不需要而其他手机需要?