Chcę przechowywać obraz w SQLite DataBase
. Próbowałem go zapisać za pomocą BLOB
iw String
obu przypadkach przechowuje obraz i może go odzyskać, ale kiedy przekonwertuję go na Bitmap
użycie
BitmapFactory.decodeByteArray(...)
, zwracam wartość null.
Użyłem tego kodu, ale zwraca on null
Bitmap bitmap = BitmapFactory.decodeByteArray(blob, 0, blob.length);
Odpowiedzi:
Po prostu spróbuj tego:
Jeśli
bitmapdata
jest tablicą bajtów, pobieranieBitmap
odbywa się w następujący sposób:Zwraca zdekodowany
Bitmap
lubnull
jeśli nie można zdekodować obrazu.źródło
Odpowiedź Uttama nie zadziałała dla mnie. Właśnie uzyskałem wartość zerową, gdy:
W moim przypadku bitmapdata ma tylko bufor pikseli, więc funkcja decodeByteArray nie może odgadnąć, jakiej szerokości, wysokości i koloru używają bity. Więc spróbowałem tego i zadziałało:
Sprawdź https://developer.android.com/reference/android/graphics/Bitmap.Config.html dla różnych opcji kolorów
źródło