2013-01-11 10 views
20

Jaką wersję Sqlite obsługuje iOS?Jaką wersję programu sqlite zapewnia iOS?

+0

Naprawdę interesowały mnie wersje iOS 8.0 i iOS 8.1 SQLite z tego powodu: http://permalink.gmane.org/gmane.comp.db.sqlite.general/90549 – k06a

+0

Mam 3.7.13: 3007013 na konsoli . Jak przejść do najnowszej wersji SQLite? –

+0

@ k06a ten link nie jest już ważny. Czy pamiętasz, co było "tą wiadomością", że zainteresowałeś się wersjami iOS 8.0 i 8.1? – Syclone0044

Odpowiedz

12

Korzystanie SELECT SQLITE_VERSION (iOS) na różnych wersjach:

Od internets:

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 

właśnie testowane teraz:

6.0.1: 3.7.13 
+1

Dla dodatkowego punktu danych, 5.1.1 używa SQLite 3.7.7. A na marginesie nazwa funkcji to 'sqlite3_version()'. – Rob

+1

Czy ktoś jeszcze sprawdził IOS 7? – CasaDelGato

+1

iOS 7.0.6: 3.7.13 –

10

Właśnie sprawdzane na iOS 7 :

7.0: 3.7.13 
+0

Bez zmian od wersji 6.0, nawet w najnowszej wersji 7.0.6. –

+0

Nawet w najnowszym iOS 7.1.2 (najnowszy na iPhone4), nadal jest 3.7.13. – tokentoken

7

Wystarczy zrobić:

p (const char*) sqlite3_libversion() 

w debuggera z systemem aplikacji (czyli linki do lib sqlite) na urządzeniu, na którym chcesz wiedzieć wersję SQLite.

Na iPhone 5s iOS 8.0.2 otrzymuję wersję 3.7.13, więc wygląda na to, że nie zmieniły się od jakiegoś czasu na podstawie raportów z innych odpowiedzi, że wersja 6.0 używa tej samej wersji.

3

SQLite został zaktualizowany w iOS 8.2 do wersji 3.8.5

1

w iOS 9.0 wersja SQLite jest 3.8.10.2

18

This wiki posiada najnowszą listę, która jest obecnie:

╔═════════════╦════════════════╗ 
║ 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   ║ 
╚═════════════╩════════════════╝ 
0

Wykorzystanie po wydrukowaniu wersji w kodzie. Możesz zdefiniować poniższe jako oddzielną funkcję tylko do debugowania i wywołać ją z didFinishLaunchingWithOptions w swoim 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 

Alternatywnie, spójrz na sqlite3.h bezpośrednio w Xcode. Dla 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 ma również inne metody, które mogą być wykorzystywane do celów diagnostycznych.

Powiązane problemy