infinum / android_dbinspector

Android library for viewing, editing and sharing in app databases.
Apache License 2.0
951 stars 91 forks source link

Improve BLOB representation #63

Closed JonatanPlesko closed 3 years ago

JonatanPlesko commented 3 years ago

:warning: Please describe your feature request

Currently, all BLOBs are displayed as (data). This is not a very descriptive representation of the stored data.

:bulb: Describe the solution you'd like

A simple improvement would be to show all BLOBs as a hex string. This would help with data types such as byte arrays. An advanced improvement would be showing different representation based on the BLOB type. For example, images could be rendered within the cell - possibly initially as a thumbnail with an option to expand.

:raising_hand: Do you want to develop this feature yourself?

bojankoma commented 3 years ago

@JonatanPlesko Can you please provide a database with a several BLOBs inside? I'm having a hard time finding an example database to use as base to work on. Private channels will do fine too in case of sensitive data.

bojankoma commented 3 years ago

Basically, I've implemented this feature, but without inline and automatic preview inside a row cell. Instead, you can now tap on the blob and if it is a supported image format (JPG, PNG, BMP) then a preview dialog will show with option to share the image. In case of a text cell type - you can tap on the cell to get a similar preview and options. I expect more feedback and feature expansion building upon this BLOB support as the demand rises.

JonatanPlesko commented 3 years ago

@bojankoma what about a HEX representation of binary data? I still have the issue where I want to debug some ByteArray data in my database, but it just shows [ DATA ] and I can't in any way access the underlying bytes.

Also, it would be cool if there was an example of these changes (image preview, for example) in the sample app.

JonatanPlesko commented 3 years ago

Never mind, I saw the Settings options now 🙂 let's update readme though!