I'm writing an Android application and I would like to save the profile image of an account locally in a Realm database. I can't find any documentation about that. How can I do that?
Asked
Active
Viewed 1.3k times
1 Answers
32
First, convert bitmap to byte array
Bitmap bmp = intent.getExtras().get("data");
ByteArrayOutputStream stream = new ByteArrayOutputStream();
bmp.compress(Bitmap.CompressFormat.PNG, 100, stream);
byte[] byteArray = stream.toByteArray();
Later, save byte[] into Realm
Notice: Strings and byte arrays (byte[]) cannot be larger than 16 MB (from Realm Documentation)
Field types
Realm supports the following field types: boolean, byte, short, ìnt, long, float, double, String, Date and byte[]. The integer types byte, short, int, and long are all mapped to the same type (long actually) within Realm. Moreover, subclasses of RealmObject and RealmList are supported to model relationships.