使用我自己的活动按意图显示GalleryView不可见

时间:2012-03-15 08:28:53

标签: android android-intent

我有以下要求。 当应用程序从服务器接收图像文件时,它应该在默认图像查看器中自动打开图像。

正常情况:

  1. 活动可见。
  2. 从服务器接收图像文件。
  3. App发送Intent.ACTION_VIEW
  4. 图库视图显示下载的图像。
  5. 失败案例:

    1. 活动不可见。 (例如,按Home并返回发射器。)
    2. 从服务器接收图像文件。
    3. App发送Intent.ACTION_VIEW
    4. 什么都没发生。 (< - 失败)
    5. **如果我回到我的应用程序,那么我可以看到图库视图。

      即使我的活动不可见,我还能做些什么才能让图库视图显示出来?

      我如何开始图库视图:

                  final Intent openfileintent = new Intent();
                  openfileintent.setAction(android.content.Intent.ACTION_VIEW);
                  final File file = sharedfile.getFileInstance();
                  openfileintent.setDataAndType(Uri.fromFile(file), sharedfile.getMimeType());
                  startActivity(openfileintent);
      

1 个答案:

答案 0 :(得分:0)

在试错后找到答案。

要添加2个标记。

最重要的是,应该使用应用程序上下文而不是活动上下文。

        final Intent openfileintent = new Intent();
        openfileintent.setAction(android.content.Intent.ACTION_VIEW);
        (*1) openfileintent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
        (*2) openfileintent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
        final File file = sharedfile.getFileInstance();
        openfileintent.setDataAndType(Uri.fromFile(file), sharedfile.getMimeType());
        (*3) getApplicationContext().startActivity(openfileintent);