Не удалось создать эскиз, удалив оригинал

#java #android #android-camera

#java #Android #android-камера

Вопрос:

Я пытаюсь сделать снимок с помощью встроенного приложения камеры. Когда я делаю снимок с обычной камерой, все в порядке. Но когда я делаю снимок с помощью «селфи-камеры», я получаю эту ошибку :

  Failed to create thumbnail, removing original
 java.lang.NullPointerException
at android.provider.MediaStore$Images$Media.insertImage(MediaStore.java:836)
at com.spg.movil.util.ImageUtils.saveImageToExternalCacheStorage(ImageUtils.java:94)
at com.spg.movil.RutaActivity$SavePic.doInBackground(RutaActivity.java:841)
at com.spg.movil.RutaActivity$SavePic.doInBackground(RutaActivity.java:1)
at android.os.AsyncTask$2.call(AsyncTask.java:287)
at java.util.concurrent.FutureTask.run(FutureTask.java:234)
at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:230)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1080)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:573)
at java.lang.Thread.run(Thread.java:841)
 

Строка, которая получает NPE, является:

             MediaStore.Images.Media.insertImage(context.getContentResolver(),                   (String)file.getAbsolutePath(), file.getName(), file.getName());
 

Я отладил, и ни один из параметров не равен нулю…

Когда я отлаживаю, в MediaStore.class , я вижу код, входящий в :

 public static final String insertImage(ContentResolver cr, Bitmap source,
                                               String title, String description)
 

вместо

 public static final String insertImage(ContentResolver cr, String imagePath,
                String name, String description)
 

Я попытался преобразовать второй параметр в string, но он все равно вводится в метод с плохой сигнатурой…

Есть идеи???

Комментарии:

1. У меня такая же проблема, вы когда-нибудь находили решение

2. Нет, я никогда не понимал этого, но я использовал образец из Google, и код работает, так что это отчасти решило проблему.

3. url-адрес этого примера кода, пожалуйста?

4. github.com/googlesamples в противном случае его проще загрузить с помощью вашего SDK Manager. вы можете открыть его в Android studio с помощью File> Import Sample> Camera 2 Basic