В какую версию Sqlite входит iOS?
Какая версия sqlite предоставляет iOS?
Ответ 1
Эта вики имеет последний список, который в настоящее время:
╔═════════════╦════════════════╗
║ iOS Version ║ SQLite Version ║
╠═════════════╬════════════════╣
║ 2.2 ║ 3.4.0 ║
║ 3.1.3 ║ 3.6.12 ║
║ 4.0.2 ║ 3.6.22 ║
║ 4.1.0 ║ 3.6.23.2 ║
║ 4.2.0 ║ 3.6.23.2 ║
║ 5.1.1 ║ 3.7.7 ║
║ 6.0.1 ║ 3.7.13 ║
║ 7.0 ║ 3.7.13 ║
║ 7.0.6 ║ 3.7.13 ║
║ 8.0.2 ║ 3.7.13 ║
║ 8.2 ║ 3.8.5 ║
║ 9.0 ║ 3.8.8 ║
║ 9.3.1 ║ 3.8.10.2 ║
║ 10.0 beta 2 ║ 3.13.0 ║
║ 10.0 GM ║ 3.14.0 ║
║ 10.2 ║ 3.14.0 ║
║ 10.3.1 ║ 3.16.0 ║
║ 11.0 ║ 3.19.3 ║
║ 12.0 ║ 3.24.0 ║
║ 12.1 ║ 3.24.0 ║
╚═════════════╩════════════════╝
╔═══════════════╦════════════════╗
║ macOS Version ║ SQLite Version ║
╠═══════════════╬════════════════╣
║ 10.9 ║ 3.7.13 ║
║ 10.10 ║ 3.8.5 ║
║ 10.10.3 ║ 3.8.5 ║
║ 10.11 ║ 3.8.10.2 ║
║ 10.12 ║ 3.14.0 ║
║ 10.13 ║ 3.19.3 ║
║ 10.14.2 ║ 3.24.0 ║
╚═══════════════╩════════════════╝
Стивен Ларев редактировал эту вики 14 января
Ответ 2
Использование SELECT sqlite_version() для разных версий iOS:
Из интеркомов:
2.2: 3.4.0
3.1.3: 3.6.12
4.0.2: 3.6.22
4.1.0: 3.6.23.2
4.2.0: 3.6.23.2
Я только что протестировал сейчас:
6.0.1: 3.7.13
Ответ 3
Я только что проверил iOS 7:
7.0: 3.7.13
Ответ 4
Просто выполните:
p (const char*) sqlite3_libversion()
в отладчике, использующем приложение (которое ссылается на sqlite lib) на устройстве, на котором вы хотите узнать версию sqlite.
На iOS 8.0.2 iPhone 5s я получаю 3.7.13, поэтому кажется, что они не изменили версию в то время как на основе отчетов в других ответах, что версия 6.0 использовала ту же версию.
Ответ 5
SQLite обновлен в iOS 8.2 до версии 3.8.5
Ответ 6
В iOS 9.0 версия SQLite 3.8.10.2
Ответ 7
Используйте следующую команду, чтобы распечатать версию в коде. Вы можете определить следующее как отдельную функцию отладки и вызвать ее из didFinishLaunchingWithOptions
в appDelegate.
#if DEBUG
// Int representing version; e.g. "3016000" for macOS 10.12.4
int sqliteVersion = sqlite3_libversion_number();
NSLog(@"Sqlite Version: %d", sqliteVersion);
// String representing version; e.g. "3.19.3" for iOS 11
const char *sqliteLibVersion = sqlite3_libversion();
NSString *sqliteLibVersionStr = [NSString stringWithUTF8String:sqliteLibVersion];
NSLog(@"Sqlite Lib Version: %@", sqliteLibVersionStr);
// String representing sourceId; e.g. "2017-06-27 16:48:08 2b09...2e2377b" on iOS11
const char *sqliteSourceid = sqlite3_sourceid();
NSString *sqliteSourceidStr = [NSString stringWithUTF8String:sqliteSourceid];
NSLog(@"Sqlite SourceID: %@", sqliteSourceidStr);
#endif
В качестве альтернативы, смотрите sqlite3.h
непосредственно в Xcode. Для iOS 11:
#define SQLITE_VERSION "3.19.3"
#define SQLITE_VERSION_NUMBER 3019003
#define SQLITE_SOURCE_ID "2017-06-27 16:48:08 2b09...2e2377b"
sqlite3.h
также имеет другие методы, которые могут использоваться для целей отладки.