Write your own image selector using the MediaStore content provider.

On Sun, May 29, 2011 at 2:26 PM, neuromit <[email protected]> wrote:
> In my application I want to let users pick a custom image. Currently
> I'm using the following code to do this:
> http://paste2.org/p/1442508 (also pasted below).
>
> It works great on most phones but a few users have reported it isn't
> working on their phones.  Also this also only works using the default
> gallery application.
>
> Is there a better way to do this that work on all devices and not just
> a narrow subset?
>
> ------
>
>
>        public final int GOT_IMAGE =1;
>
>        private void getImage() {
>        Intent intent = new Intent(Intent.ACTION_GET_CONTENT);
>        intent.setType("image/*");
>        mUri = Uri.fromFile(new
> File(Environment.getExternalStorageDirectory(),"temp_image" +
> ".jpg"));
>        intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mUri);
>
>        try {
>                intent.putExtra("return-data", true);
>                startActivityForResult(intent,GOT_IMAGE );
>        } catch (ActivityNotFoundException e) {
>                e.printStackTrace();
>        }
>    }
>
>        protected void onActivityResult(int requestCode, int resultCode,
> Intent data) {
>        if (resultCode != RESULT_OK) {
>                customImgChk.setChecked(false);
>                return;
>        }
>        if (requestCode == GOT_IMAGE) {
>                Bitmap image = BitmapFactory.decodeFile(mUri.getPath());
>                if (image!=null)
>                {
>                        image = WPUtil.resizeBitmap(image, WPUtil.IMAGE_SIZE_X,
> WPUtil.IMAGE_SIZE_Y);
>                }
>                else
>                {
>                        customImgChk.setChecked(false);
>                        Toast.makeText(this.getApplicationContext(), "Failed 
> to grab
> image!", Toast.LENGTH_LONG).show();
>                }
>        }
>    }
>
> --
> You received this message because you are subscribed to the Google
> Groups "Android Developers" group.
> To post to this group, send email to [email protected]
> To unsubscribe from this group, send email to
> [email protected]
> For more options, visit this group at
> http://groups.google.com/group/android-developers?hl=en
>



-- 
Mark Murphy (a Commons Guy)
http://commonsware.com | http://github.com/commonsguy
http://commonsware.com/blog | http://twitter.com/commonsguy

_The Busy Coder's Guide to Android Development_ Version 3.6 Available!

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to