Android SDK - Ссылка на приложение галереи телефона? - PullRequest
4 голосов
/ 02 июня 2010

На данный момент, в своем приложении я создал элементарное приложение галереи, используя предоставленный виджет, мне нужно это, чтобы выбрать изображение с телефона. Это работает нормально и все, но не хватает очень в представлении.

У меня на телефоне есть пара приложений, которые делают то же самое, но они так или иначе используют галерею, которая уже есть в телефоне, чтобы позволить пользователю выбрать изображение. Например, FourSquare при выборе изображения для использования в качестве картинки загружает галерею и просит выбрать изображение.

Как это возможно? Я искал в интернете последнюю пару и пришел с пустыми руками.

1 Ответ

5 голосов
/ 02 июня 2010

Чтобы получить изображение из стандартной галереи вы можете сделать:

private static final int MEDIA_IMAGE_REQUEST_CODE = 203948; // This can be any unique number you like

Intent getImageFromGalleryIntent = 
  new Intent(Intent.ACTION_PICK, MediaStore.Images.Media.INTERNAL_CONTENT_URI);
startActivityForResult(getImageFromGalleryIntent, MEDIA_IMAGE_REQUEST_CODE);

Затем, чтобы получить изображение, как только пользователь выбрал его:

protected final void onActivityResult(final int requestCode, final int resultCode, final Intent i) {
  super.onActivityResult(requestCode, resultCode, i);
  if(resultCode == RESULT_OK) {
    switch(requestCode) {
      case MEDIA_IMAGE_REQUEST_CODE:

        // Get the chosen images Uri
        Uri imageUri = i.getData();

        // Load the bitmap data from the Uri 
        // It is probably best to do this in an AsyncTask to avoid clogging up the Main Thread
      break;
    }
  }
...