1

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

在一个选项卡中,在某些子活动中,我启动图库以获取照片:

意图 i = new Intent(Intent.ACTION_PICK); i.setDataAndType(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, MediaStore.Images.Media.CONTENT_TYPE); 获取父母()。startActivityForResult (i,Documento.SELECCIONAR_FOTO_FROM_GALLERY);

这在果冻豆之前工作正常,在这个版本中,当我使用 startActivityForResult 启动活动时,应用程序会在必须调用 onActivityResult 时自动重启。

我知道 ActiviyGroup 很久以前就被弃用了,我应该转移到 Fragments 但是,有没有办法在不迁移到 Fragments 的情况下在果冻豆中进行这项工作?

我正在尝试修复它作为 ActivityGroup 的 childActivity 打开画廊:

        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/AndroidRuntime(9237): java.lang.SecurityException: 请求来自 com.sec.android.gallery3d (uid 10112) 的代码在进程 jaime.mapas (uid 10165) 中运行

有任何想法吗?

编辑:

最后我转向 Fragments,比我想象的要容易得多。

4

1 回答 1

0

这在果冻豆之前工作正常,在这个版本中,当我使用 startActivityForResult 启动活动时,应用程序会在必须调用 onActivityResult 时自动重启。

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

有没有办法在不迁移到碎片的情况下在果冻豆中进行这项工作?

片段将无济于事,因为它已经按预期工作。

于 2013-10-19T16:06:30.420 回答