我为葡萄牙语(巴西)创建了一个Android应用。这是我客户的应用程序之一。客户端从应用程序用户那里获得反馈,表明他们无法正确使用该应用程序,或者当他们单击该按钮以从“电话簿”中导入联系人时,该客户端将返回到开始屏幕。
即,在应用程序中,我在各个地方开始活动以获取结果。
startActivityForResult(intent, requestCode);
通常,我是从Fragments执行此操作。并将结果从Activity传递到其Fragment,我正在执行以下操作:
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (getSupportFragmentManager() != null) {
Fragment fragment = getFragment();
if (fragment != null)
fragment.onActivityResult(requestCode, resultCode, data);
}
}
因此要检查此问题,我们要求一些用户检查他们的设备上是否启用了开发者选项。是的,他们在设备上启用了它。因此,我们要求他们禁用此功能,然后尝试该应用,并相信我可以使用。
我还在设备上启用了此选项以测试应用程序(调试),并且在使用该应用程序时没有遇到类似的问题。
我不了解此问题,我需要找到适当的解决方案。 所以我需要您的帮助来解决这个问题。
寻找积极的反应。
谢谢。
答案 0 :(得分:0)
尝试从片段开始活动时尝试片段上下文而不是getActivity(),结果应返回到片段。
Intent intent=new Intent(fragment.getContext(), Activity.class)
fragment.startActivityForResult(intent,REQUEST_CODE);
答案 1 :(得分:0)
最后,很长一段时间后,问题解决了。 当我们在设备上启用了不保留活动选项时,一旦您离开活动,该活动就会被销毁。 在onCreate中,我再次添加了初始片段。
但是现在我添加了一张支票
if(savedInstanceState == null)
// initial fragment here
else
// nothing to do
此检查解决了我应用中的问题。希望它对其他人也有帮助。