从Android设备android编程中获取所有照片 [英] Get all photos from Android device android programming
本文介绍了从Android设备android编程中获取所有照片的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在尝试获取我的 android 设备的所有照片.
I am trying to fetch all the photos of my android device.
我有一个 onCreate
函数:
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ImageAdapter adapter= new ImageAdapter(this);
final String[] columns = { MediaStore.Images.Media.DATA, MediaStore.Images.Media._ID };
final String orderBy = MediaStore.Images.Media._ID;
Uri rr= MediaStore.Images.Media.INTERNAL_CONTENT_URI;
Cursor imagecursor = getContentResolver().query(
MediaStore.Images.Media.INTERNAL_CONTENT_URI,null, null,
null, orderBy);
int image_column_index = imagecursor.getColumnIndex(MediaStore.Images.Media._ID);
this.count = imagecursor.getCount();
this.thumbnails = new Bitmap[this.count];
for (int i = 0; i < this.count; i++) {
imagecursor.moveToPosition(i);
int id = imagecursor.getInt(image_column_index);
thumbnails[i] = MediaStore.Images.Thumbnails.getThumbnail(
getApplicationContext().getContentResolver(), id,
MediaStore.Images.Thumbnails.MICRO_KIND, null);
adapter.mThumbIds[i]= thumbnails[i];
}
}
imageCursor.getCount()
上返回的计数返回 0.
where the count returned on imageCursor.getCount()
is returning 0.
有人可以指导我,因为我无法使用此代码获取任何媒体吗?
Can someone please guide me since I am not able to fetch any media using this code?
注意:我正在 Galaxy Note-2 上进行测试
Note: I am testing on Galaxy Note-2
推荐答案
首先不要忘记
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
此方法将返回您图库中的照片列表
This method will return list of photo in your gallery
public static ArrayList<String> getImagesPath(Activity activity) {
Uri uri;
ArrayList<String> listOfAllImages = new ArrayList<String>();
Cursor cursor;
int column_index_data, column_index_folder_name;
String PathOfImage = null;
uri = android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI;
String[] projection = { MediaColumns.DATA,
MediaStore.Images.Media.BUCKET_DISPLAY_NAME };
cursor = activity.getContentResolver().query(uri, projection, null,
null, null);
column_index_data = cursor.getColumnIndexOrThrow(MediaColumns.DATA);
column_index_folder_name = cursor
.getColumnIndexOrThrow(MediaStore.Images.Media.BUCKET_DISPLAY_NAME);
while (cursor.moveToNext()) {
PathOfImage = cursor.getString(column_index_data);
listOfAllImages.add(PathOfImage);
}
return listOfAllImages;
}
这篇关于从Android设备android编程中获取所有照片的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文