Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/178.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 来自jellybean中ActivityGroup的startActivityForResult导致重新启动应用程序_Android_Restart_Activitygroup_Android 4.2 Jelly Bean - Fatal编程技术网

Android 来自jellybean中ActivityGroup的startActivityForResult导致重新启动应用程序

Android 来自jellybean中ActivityGroup的startActivityForResult导致重新启动应用程序,android,restart,activitygroup,android-4.2-jelly-bean,Android,Restart,Activitygroup,Android 4.2 Jelly Bean,我有一个有4个选项卡的应用程序,每个选项卡都有一个ActivityGroup 在一个选项卡中,在特定的子活动中,我启动gallery以获取照片: 意向i=新意向。行动\选择; i、 setDataAndTypeMediaStore.Images.Media.EXTERNAL_CONTENT_URI,MediaStore.Images.Media.CONTENT_TYPE; getParent.startActivityForResulti,Documento.Selecciator\u FOTO

我有一个有4个选项卡的应用程序,每个选项卡都有一个ActivityGroup

在一个选项卡中,在特定的子活动中,我启动gallery以获取照片:

意向i=新意向。行动\选择; i、 setDataAndTypeMediaStore.Images.Media.EXTERNAL_CONTENT_URI,MediaStore.Images.Media.CONTENT_TYPE; getParent.startActivityForResulti,Documento.Selecciator\u FOTO\u来自图库

在这个版本中,当我使用startActivityForResult启动一个活动时,应用程序会在必须调用onActivityResult时自动重启

我知道ActivityGroup很久以前就被弃用了,我应该转向Fragments,但是,有没有办法在jelly bean中实现这一点而不迁移到Fragments

我正在尝试修复以儿童身份打开图库ActivityGroup的活动:

        Intent i = new Intent(Intent.ACTION_PICK) ;
        i.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, MediaStore.Images.Media.CONTENT_TYPE) ;
        TabGroupActivity parentActivity = (TabGroupActivity)MyActivity.this.getParent();
        parentActivity.startChildActivity("MyGalleryActivity", i);  
        dialog.cancel();
但我得到了下一个例外:

10-19 16:10:48.403:E/AndroidRuntime9237:java.lang.SecurityException:正在请求在进程jaime.mapas中使用uid 10165运行uid为10112的com.sec.android.gallery3d代码

有什么想法吗

编辑:

最后我转向了碎片,比我想象的要容易得多

在这个版本中,当我使用startActivityForResult启动一个活动时,应用程序会在必须调用onActivityResult时自动重启

这是预期的行为。无法保证应用程序的进程在不在前台时仍保留在内存中。这与用户按HOME键,然后在一段时间后通过最近的任务列表返回应用程序没有什么不同

有没有什么方法可以在不迁移到片段的情况下在jelly bean中实现这一点


碎片不会有帮助,因为它已经按预期工作。

应用程序重新启动是什么意思,更不用说应用程序自动重新启动了?应用程序重新启动,它被终止并再次启动。启动程序活动将显示。LogCat对此只字未提。我不同意,可能是我解释得不好。如果我使用StartActivityResult从ActivityGroup的子activity启动任何活动,则应用程序会崩溃,如果我启动外部应用程序库或同一应用程序的另一个活动,则应用程序具有相同的行为。这在以前的Android版本中运行得很好,但是使用jelly bean 4.3杀死我的应用程序。@jimbo82:如果我使用startActivityForResult从ActivityGroup的子活动启动任何活动,应用程序将崩溃-你不能通过ActivityGroup或任何其他方式在你的应用程序中嵌入第三方活动。您可以尝试,但通常您的应用程序会崩溃,因为您的进程没有权限访问其他应用程序的数据等。自Android 1.0以来,这种情况一直存在。您的应用程序已经在许多设备上崩溃,设备的MediaStore请求默认活动不支持此嵌入。@jimbo82:Fragments也不会有帮助,因为您不能将第三方活动嵌入到片段中。感谢您的回答,Commonware,但当您说您不能在应用程序中嵌入第三方活动时,通过活动组或任何其他方式。。。你是说你不能启动手机照片库来为你的应用收集照片吗?