All Projects → infinum → Android_dbinspector

infinum / Android_dbinspector

Licence: apache-2.0
Android library for viewing and sharing in app databases.

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Android dbinspector

Esp32 arduino sqlite3 lib
Sqlite3 Arduino library for ESP32
Stars: ✭ 167 (-81.04%)
Mutual labels:  database, sqlite, sqlite3
Vscode Sqltools
Database management for VSCode
Stars: ✭ 741 (-15.89%)
Mutual labels:  database-management, sqlite, sqlite3
Choochoo
Training Diary
Stars: ✭ 186 (-78.89%)
Mutual labels:  database, sqlite, sqlite3
Node Sqlite
SQLite client for Node.js applications with SQL-based migrations API written in Typescript
Stars: ✭ 642 (-27.13%)
Mutual labels:  database, sqlite, db
react-native-quick-sqlite
Fast SQLite for react-native.
Stars: ✭ 239 (-72.87%)
Mutual labels:  sqlite, db, sqlite3
Electrocrud
Database CRUD Application Built on Electron | MySQL, Postgres, SQLite
Stars: ✭ 1,267 (+43.81%)
Mutual labels:  database, sqlite, sqlite3
Better Sqlite3
The fastest and simplest library for SQLite3 in Node.js.
Stars: ✭ 2,778 (+215.32%)
Mutual labels:  database, sqlite, sqlite3
Perfect Sqlite
A stand-alone Swift wrapper around the SQLite 3 client library.
Stars: ✭ 42 (-95.23%)
Mutual labels:  database, sqlite, sqlite3
Sqlitestudio
A free, open source, multi-platform SQLite database manager.
Stars: ✭ 2,337 (+165.27%)
Mutual labels:  database-management, database, sqlite
Mikro Orm
TypeScript ORM for Node.js based on Data Mapper, Unit of Work and Identity Map patterns. Supports MongoDB, MySQL, MariaDB, PostgreSQL and SQLite databases.
Stars: ✭ 3,874 (+339.73%)
Mutual labels:  database, sqlite, sqlite3
D2sqlite3
A small wrapper around SQLite for the D programming language
Stars: ✭ 67 (-92.4%)
Mutual labels:  database, sqlite, sqlite3
Denodb
MySQL, SQLite, MariaDB, PostgreSQL and MongoDB ORM for Deno
Stars: ✭ 498 (-43.47%)
Mutual labels:  database, sqlite, sqlite3
Nodbi
Document DBI connector for R
Stars: ✭ 56 (-93.64%)
Mutual labels:  database, sqlite, couchdb
Sqlite3 Encryption
The easiest way to build SQLite3 with encryption support on Windows. Compilation of DLL, SLL or shell is now a matter of minutes
Stars: ✭ 102 (-88.42%)
Mutual labels:  database, sqlite, sqlite3
Fluent Sqlite Driver
Fluent driver for SQLite
Stars: ✭ 51 (-94.21%)
Mutual labels:  database, sqlite, sqlite3
Pydbgen
Random dataframe and database table generator
Stars: ✭ 191 (-78.32%)
Mutual labels:  database, sqlite, sqlite3
Db
Data access layer for PostgreSQL, CockroachDB, MySQL, SQLite and MongoDB with ORM-like features.
Stars: ✭ 2,832 (+221.45%)
Mutual labels:  database, sqlite, db
Squeal
A Swift wrapper for SQLite databases
Stars: ✭ 303 (-65.61%)
Mutual labels:  database, sqlite, sqlite3
Qb
The database toolkit for go
Stars: ✭ 524 (-40.52%)
Mutual labels:  database, sqlite3, db
Beekeeper Studio
Modern and easy to use SQL client for MySQL, Postgres, SQLite, SQL Server, and more. Linux, MacOS, and Windows.
Stars: ✭ 8,053 (+814.07%)
Mutual labels:  database, sqlite

Download Validate Gradle Wrapper Code analysis CodeFactor codecov

DbInspector

UI

DbInspector provides a simple way to view the contents of the in-app database for debugging purposes. There is no need to pull the database from a connected device. This library supports inspecting of the SQLite databases created by CouchBase Lite out of the box. With this library you can:

  • preview all application sandbox databases
  • import single or multiple databases at once
  • search, delete, rename, copy, share a database
  • preview tables, views and triggers
  • preview table or view pragma
  • delete table contents
  • drop view or trigger
  • search table, view or trigger
  • sort table, view or trigger per column

Getting started

To include DbInspector in your project, you have to add buildscript dependencies in your project level build.gradle or build.gradle.kts:

Groovy

buildscript {
    repositories {
        mavenCentral()
    }
}

KotlinDSL

buildscript {
    repositories {
        mavenCentral()
    }
}

Then add the following dependencies in your app build.gradle or build.gradle.kts :

Groovy

debugImplementation "com.infinum.dbinspector:dbinspector:5.2.8"
releaseImplementation "com.infinum.dbinspector:dbinspector-no-op:5.2.8"

KotlinDSL

debugImplementation("com.infinum.dbinspector:dbinspector:5.2.8")
releaseImplementation("com.infinum.dbinspector:dbinspector-no-op:5.2.8")

Usage

DbInspector can be invoked explicitly or implicitly.

  • explicitly - call DbInspector.show() anywhere and anytime that you see fit, like onClick methods, lambdas or similar.
  • implicitly - when you add the dbinspector package an Activity alias is automatically merged into your application manifest that in return creates a launcher icon for DbInspector, but when you add the dbinspector-no-op the same Activity alias node is automatically removed from your application manifest. Implicit way can be tweaked to achieve desired behaviour as demonstrated in an example below.

Explicit

DbInspector.show()

Implicit If you use dbinspector package but do not want an additional automatic launcher icon merged in and generated.

<!--suppress AndroidDomInspection -->
<activity-alias
    android:name="com.infinum.dbinspector.DbInspectorActivity"
    tools:node="remove" />

If you use DbInspector for a specific flavor and need to override merged in launcher label, you can provide a String resource in your project exactly like this:

<string name="dbinspector_launcher_name">Sample Debug</string>

Please do mind and copy over the suppression comment line too, if you need it. Further modification can be done according to rules of manifest merging and attributes of activity-alias XML node.

Requirements

Minimum required API level to use DbInspector is 21 known as Android 5.0, Lollipop. As of 4.0.0 version, AndroidX is required. If you cannot unfortunately migrate your project, keep the previous version until you get the opportunity to migrate to AndroidX. DbInspector is written entirely in Kotlin, but also works with Java only projects and all combinations of both.

Contributing

Feedback and code contributions are very much welcome. Just make a pull request with a short description of your changes. By making contributions to this project you give permission for your code to be used under the same license. For easier developing a sample application with proper implementations is provided. It is also recommended to change build.debug property in build.properties to toggle dependency substitution in project level build.gradle. Then create a pull request.

License

Copyright 2020 Infinum

Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at

   http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.

Credits

Maintained and sponsored by Infinum.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].