2016-05-27 58 views
2

如何打开屏幕上打开的特定相册的内置图库应用程序?在相册中打开内置图库应用程序

我知道这段代码可以用于启动画廊应用程序,但如何过滤特定的相册?或打开它?

Intent i = new Intent(Intent.ACTION_PICK,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
startActivityForResult(i, RESULT_LOAD_IMAGE); 
+0

你有那张专辑Uri吗? –

+0

@SohailZahid你到底意味着什么?它的本地专辑有一些名称 –

+0

应该有一个内容uri的专辑。 –

回答

1

假设存放在youCam文件夹中的照片战神,也可以是任意文件夹

如果要编译对API 23或则大得运行permision READ_EXTERNAL_STORAGE

File file = new File(Environment.getExternalStorageDirectory().getPath() + "/youCam);

File[] listFile = file.listFiles(); 
new HomeScreen.SingleMediaScanner(HomeScreen.this, listFile[0]); 
... 
public class SingleMediaScanner implements MediaScannerConnection.MediaScannerConnectionClient { 

     private MediaScannerConnection mMs; 
     private File mFile; 

     public SingleMediaScanner(Context context, File f) { 
      mFile = f; 
      mMs = new MediaScannerConnection(context, this); 
      mMs.connect(); 
     } 

     public void onMediaScannerConnected() { 
      mMs.scanFile(mFile.getAbsolutePath(), null); 
     } 

     public void onScanCompleted(String path, Uri uri) { 
      Intent intent = new Intent(Intent.ACTION_VIEW); 
      intent.setData(uri); 
      startActivity(intent); 
      mMs.disconnect(); 
     } 

    } 

这会在默认图库中打开该文件夹中的所有图像。

+0

感谢您的代码,但我的问题是,有一个相册已经存在默认的画廊,这基本上是DCIM文件夹,我想我要显示该专辑 –

+0

@vishal你只需要创建一个文件夹位置文件文件=新文件(Environment.getExternalStorageDirectory()。getPath()+“/ Camera/DCIM);' –

+0

好的,谢谢你试试 –

相关问题