Где я могу получить двоичный файл командной строки SQLite 3 для Android?

16

Когда я читаю документацию, такую ​​как исследование баз данных SQLite 3 из удаленной оболочки, у меня складывается впечатление, что двоичный файл командной строки SQLite должен существовать на моем телефоне. К сожалению, я не могу найти его на своем телефоне (но я использую собственное ПЗУ).

Я прочитал несколько других постов, которые либо ссылаются на существование такого бинарного файла, либо упоминают, как он доступен только в эмуляторе, но нет ничего определенного.

Такой бинарный файл доступен где-нибудь?

Другие ссылки:

fostandy
источник
1
Я полагаю, вы могли бы попробовать извлечь его из другого ПЗУ (или эмулятора) и поместить его на свое устройство, но я понятия не имею, сработает ли это или просто произойдет сбой. CM6, например, имеет sqlite3двоичный файл.
eldarerathis
на моем Samsung Spica - используя мод Samdroid - я могу просто набрать sqlite3 в эмуляторе терминала или в оболочке adb.
Ли Райан
2
Это вопрос разработчика?
Мэтью Читал
2
@Matthew - нет
fostandy

Ответы:

7

Лучше всего было бы использовать ADB и извлечь его из эмулятора или извлечь из другого ПЗУ. Затем вам нужно будет поместить его на ваше устройство, но вам понадобится root, чтобы поместить его в каталог с другими двоичными файлами.

sqlite3не приходит на большинство устройств. Я думаю, что это только на телефонах разработчиков, таких как ADP1 / ADP2 и Nexus One / Nexus S. Я знаю, что это не на устройствах Samsung Galaxy S, таких как Vibrant (я предполагаю, что это на Nexus S).

Райан Конрад
источник
4

Как уже упоминалось в других сообщениях, sqlite3двоичный файл обычно используется через ADB с вашего ПК.

Если все, что вы хотите сделать, это локально управлять БД SQLite, то я нашел бесплатное приложение aSQLiteManager очень полезным. В дополнение к простому графическому интерфейсу для управления и просмотра данных, он позволяет выполнять произвольные запросы.

CJS
источник
3

Я собрал несколько сценариев сборки для компиляции собственного кода SQLite для Android с использованием Android NDK. Он создает интерфейс командной строки SQLite в двух версиях: статически и динамически связанных, а также статические и совместно используемые библиотеки. Вы можете получить скрипты из моего GitHub и собрать двоичные файлы самостоятельно:

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

Надеюсь, это будет полезно для кого-то.

Рожерио Шнайдер
источник
2

SuperOneClick на самом деле имеет копию двоичного файла . Он находится в Dependenciesпапке, и, согласно одному из плакатов о переполнении стека , он работает при установке на ваше устройство (я предполагаю, что он должен работать на большинстве устройств, поскольку SuperOneClick использует его).

eldarerathis
источник
0

Снять его с эмулятора не получится.

Я нашел бинарный файл 1.6 здесь . Эта страница содержит подробную информацию о портировании, поэтому, если двоичный файл 1.6 не работает, вы можете попробовать перенести / скомпилировать новую версию.


источник
0

tech128 от XDA Forum предоставляет скомпилированный sqlite3бинарный файл для Android.

На момент написания статьи,

Вот SQLite 3.8.11.1, объединенный в единый исходный файл (объединение) для ARM v6 и v7.

Эти двоичные файлы построены с оптимизированными флагами armv6 и armv7.

Должно работать на Android 2.x и выше.

К этой теме я прикрепил 2 версии, сжатые и несжатые. Мне пришлось изменить расширение, .xapиначе я не могу загрузить его. Просто удалите расширение .

Просто скачайте и запустите несжатый файл, тогда как сжатый вы должны сначала распаковать.

Сжатый

несжатого

Исходный код: https://github.com/tech128/sqlite3

Я протестировал armv7-pie (PIE, необходимый для Lollipop) на моем Nexus 5 под управлением Android 5.1.1 Lollipop, и это сработало.

Андрей Т.
источник
0

Вы можете установить Termux и установить его sqlite3через встроенный apt( внешний интерфейс встроенного dpkg).

iBug
источник
-1

Я предложу немного сложный процесс, потому что я не знаю других способов :), получите исходный код Android, скомпилируйте его, в выходном каталоге вы получите бинарный файл sqlite3, а затем отправьте его в / system / bin / вашего телефона

сидел
источник