2017-07-17 26 views
0

为什么从画廊选择一张图片>> Intent < <>无法在某些设备上显示。我是泰国人,对不起,我的语言...感谢üAndroid Intent图像选择器来自gallary ...为什么无法在某些设备上显示?

public void click(View v){ 
    intent = new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.EXTERNAL_CONTENT_URI); 
    intent.setType("image/*"); 
    intent.putExtra(Intent.EXTRA_ALLOW_MULTIPLE, true); 
    startActivityForResult(Intent.createChooser(intent, "select??"), 1); 
} 

public void onActivityResult(int requestCode, int resultCode, Intent data) { 
     if (resultCode == RESULT_OK&&requestCode == 1) { 

        Uri uri = Uri.parse(get_Path(data.getData())); 

    //--I use This >>uri<< for setImage ....But cant't show in some devices.? 


     } 
} 

public String get_Path(Uri uri) { 
     String path = ""; /////////////// 
      Cursor cursor = getContentResolver().query(uri, null, null, null, null); 
      if (cursor == null) { 
       path = uri.getPath(); 
      } else { 
       cursor.moveToFirst(); 
       int num = cursor.getColumnIndex(MediaStore.Images.ImageColumns.DATA); 
       path = cursor.getString(num); 
       cursor.close(); 
      } 

     return path; 
    } 
+0

在哪些设备没有显示它的这个链接? –

+0

华为P10 Android的7 - 问题 华硕Android的6 - 问题 谷歌Nexas 6 API 25 - 问题 但三星galaxy的Android 4.0 - 没问题 –

+1

需要包含运行时的权限来访问这些数据(在Android> = 6.0) –

回答

0

中的Android 6.0开始或> 7(API等级23),用户授予权限应用程序正在运行的应用程序,而不是当他们安装应用程序时。 read about this

,并按照我答我的问题how to ask runtime permssion

+0

感谢U ... So musch :) –

+0

@PitiwatRakprommarat最受欢迎 –

相关问题