andriod之ContentProvider读取外部存储图片
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());
}
}
}
更多相关文章
- SpringBoot 2.0 中 HikariCP 数据库连接池原理解析
- Android(安卓)SQLite数据库学习笔记
- Android打造一个通用的BaseAdapter
- android 设置圆角图片实现代码
- Android快速搞定代码混淆
- x、Android保存图片至相册原生代码
- Android(安卓)studio 安卓填写注册表单源代码 (课后练习的答案)
- Android(安卓)Studio3.0 Annotation processors must be explici
- Android数据库升级、降级、创建(onCreate() onUpgrade() onDowng