¿Dónde puedo obtener un binario de línea de comandos SQLite 3 para Android?

16

Cuando leo documentación como examinar bases de datos SQLite 3 desde un shell remoto, tengo la impresión de que debería existir un binario de línea de comandos SQLite en mi teléfono. Lamentablemente, parece que no puedo encontrarlo en mi teléfono (pero estoy ejecutando una ROM personalizada).

He leído algunas otras publicaciones que aluden a la existencia de dicho binario o mencionan que solo está disponible en el emulador, pero no hay nada definitivo.

¿Existe un binario de este tipo disponible en alguna parte?

Otras referencias:

fostandy
fuente
1
Supongo que podría intentar extraerlo de otra ROM (o el emulador) y ponerlo en su dispositivo, pero no tengo idea de si eso funcionaría o simplemente se bloquearía. CM6, por ejemplo, tiene el sqlite3binario.
eldarerathis
en mi Samsung Spica, usando el mod Samdroid, simplemente puedo escribir sqlite3 en el emulador de terminal o adb shell.
Lie Ryan
2
¿Es esta una pregunta de desarrollo?
Matthew leyó el
2
@Matthew - no
fostandy

Respuestas:

7

Su mejor opción sería usar ADB y sacarlo del emulador, o sacarlo de otra ROM. Luego tendrá que ponerlo en su dispositivo, pero tendrá que tener root para ponerlo en el directorio con los otros binarios.

sqlite3no viene en la mayoría de los dispositivos. Creo que solo viene en los teléfonos de desarrolladores, como ADP1 / ADP2 y Nexus One / Nexus S. Sé que no está en los dispositivos Samsung Galaxy S como Vibrant (supongo que está en el Nexus S).

Ryan Conrad
fuente
4

Como han mencionado otras publicaciones, el sqlite3binario generalmente se usa a través de ADB desde su PC.

Si todo lo que quiere hacer es administrar bases de datos SQLite localmente, entonces la aplicación gratuita aSQLiteManager me ha resultado muy útil. Además de una simple GUI para administrar y visualizar datos, permite la ejecución de consultas arbitrarias.

CjS
fuente
3

He reunido algunos scripts de compilación para compilar SQLite para Android Native Code usando el NDK de Android. Construye la CLI de SQLite en dos versiones: estática y dinámicamente vinculada, así como sus bibliotecas estáticas y compartidas. Puede obtener los scripts de mi GitHub y construir los binarios usted mismo:

https://github.com/stockrt/sqlite3-android

Espero que esto sea útil para alguien.

Rogério Schneider
fuente
2

SuperOneClick en realidad tiene una copia del binario. Vive en la Dependenciescarpeta y, según un póster en Stack Overflow , funciona cuando se inserta en su dispositivo (supongo que debe funcionar en la mayoría de los dispositivos ya que SuperOneClick lo usa).

eldarerathis
fuente
0

Sacarlo del emulador no funcionará.

Encontré un binario 1.6 aquí . Esa página detalla información sobre la portabilidad, por lo que si el binario 1.6 no funciona, puede intentar portar / compilar una nueva versión.


fuente
0

tech128 de XDA Forum proporciona un sqlite3binario compilado para Android.

A partir de la escritura actual,

Aquí está SQLite 3.8.11.1 combinado en un solo archivo fuente (la amalgamación) para ARM v6 y v7.

Estos binarios están construidos con banderas optimizadas armv6 y armv7.

Debería funcionar en Android 2.xy superior.

He adjuntado 2 versiones a este hilo, comprimido y sin comprimir. Tuve que cambiar la extensión para .xapno poder cargarla. Simplemente quite la extensión .

Simplemente descargue y ejecute el archivo sin comprimir, mientras que comprimido debe descomprimirlo primero.

Comprimido

Sin comprimir

Código fuente: https://github.com/tech128/sqlite3

He probado el armv7-pie (PIE necesario para Lollipop) en mi Nexus 5 con Android 5.1.1 Lollipop, y funcionó.

Andrew T.
fuente
0

Puede instalar Termux e instalar a sqlite3través del incorporado apt(extremo frontal del incorporado dpkg).

iBug
fuente
-1

Sugeriré un proceso un poco complicado, porque no conozco otras formas :), obtenga el código fuente de Android, compílelo, en el directorio de salida obtendrá el binario sqlite3, luego empújelo al / system / bin / de su teléfono

se sentó
fuente