Android 6.0을 실행하는 하나의 기기에서 작동하는 코드가 적합하지 않습니다.
누구나 나를 만나러 갈 수 있을까요?BitmapFactory.decodeFile이 null을 반환합니까?
File f = new File(mCurrentPhotoPath);
if (!f.exists()) {
return null;
}
Bitmap bitmap = BitmapFactory.decodeFile(f.getAbsolutePath());
Log.d(TAG,mCurrentPhotoPath);
if (bitmap == null) {
Log.d(TAG,"bitmap is null");
bitmap = BitmapFactory.decodeFile(f.getAbsolutePath());
}
파일의 첫 번째 디코딩 후 파일이 있지만 null이 반환됩니다. 나는 블록 (bitmap == null)
을 추가하고 파일을 다시 디코딩해야했습니다. 이 블록에서 파일이 디코딩되고 필요한 비트 맵이 반환됩니다. 아무도 여기서 무슨 일이 일어날 지 설명 할 수 있습니까?
Logcat을 공유해주십시오. 무엇을 보여주고 있습니까? –
D/라이브러리에 의존는 : --- SkImageDecoder :: 공장은 널 (null) D/ImagesWorkerTask 반환 /storage/emulated/0/Bliznecov/IMG_20171103_160000_1954657017.jpg를 D/ImagesWorkerTask는 : 비트 맵이 null의 D/라이브러리에 의존 : jpeg_decoder 모드 (1) , colorType 4, w 1728, h 2880, 샘플 1, bsLength 0 !! –
그것의 너무 큰 시도 :'BitmapFactory.Options # inSampleSize = 4' (예를 들어) 그리고 만약 당신이 여전히 null이되는지보십시오 -'decodeFile'에 두번째 매개 변수로 전달하십시오. – pskink