andriod之ContentProvider读取外部存储图片

来源:互联网 发布:asp网页 sql数据库 编辑:程序博客网 时间:2024/06/01 16:10





java代码:

package com.sxt.day07_08;


import android.os.Bundle;
import android.provider.MediaStore;
import android.provider.MediaStore.Images;
import android.app.Activity;
import android.content.ContentResolver;
import android.database.Cursor;
import android.util.Log;
import android.view.Menu;


public class MainActivity extends Activity {


@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
getImagesInfo();
}


private void getImagesInfo() {
ContentResolver resolver = getContentResolver();
String[] projection={
Images.Media._ID,
Images.Media.DATA,
Images.Media.WIDTH,
Images.Media.HEIGHT,
Images.Media.SIZE
};
Cursor c = resolver.query(MediaStore.Images.Media.EXTERNAL_CONTENT_URI, projection, null, null, null);
//这里就像查询数据库一样就可以了
while(c.moveToNext()){
int id=c.getInt(c.getColumnIndex(Images.Media._ID));
String path=c.getString(c.getColumnIndex(Images.Media.DATA));
double width=c.getDouble(c.getColumnIndex(Images.Media.WIDTH));
double height=c.getDouble(c.getColumnIndex(Images.Media.HEIGHT));
double size=c.getDouble(c.getColumnIndex(Images.Media.SIZE));
StringBuilder sb=new StringBuilder();
sb.append("id=").append(id)
 .append(",path=").append(path)
 .append(",width=").append(width)
 .append(",height=").append(height)
 .append(",size=").append(size);
Log.i("main",sb.toString());
}

}


}





0 0