阅读背景:

安卓上传多张本地照片

来源:互联网 

1.利用contentprovider扫描手机里面的所有图片


private void getImages() {if(!Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)){//Toast.makeText(this, "暂无外部存储", Toast.LENGTH_SHORT).show();return;}//显示进度条mProgressDialog = ProgressDialog.show(this, null, "正在加载...");imagesList = new ArrayList<String>();new Thread(new Runnable() {@Overridepublic void run() {Uri mImageUri = MediaStore.Images.Media.EXTERNAL_CONTENT_URI;ContentResolver mContentResolver = mContext.getContentResolver();//只查询jpeg和png的图片Cursor mCursor = mContentResolver.query(mImageUri, null,MediaStore.Images.Media.MIME_TYPE + "=? or "+ MediaStore.Images.Media.MIME_TYPE + "=?",new String[] { "image/jpeg", "image/png" }, MediaStore.Images.Media.DATE_MODIFIED);while (mCursor.moveToNext()) {//获取图片的路径String path = mCursor.getString(mCursor.getColumnIndex(MediaStore.Images.Media.DATA));imagesList.add(path);}mCursor.close();//通知Handler扫描图片完成mHandler.sendEmptyMessage(SCAN_OK);}}).start();}@Overridepublic void handleMessage(Message msg) {super.handleMessage(msg);switch (msg.what) {case SCAN_OK://关闭进度条mProgressDialog.dismiss();adapter = new AlbumAdapter(mContext, imagesList, mGridView);mGridView.setAdapter(adapter);break;}}priva



你的当前访问异常,请进行认证后继续阅读剩余内容。

分享到: