Que tipo de banco de dados é o iOS 5 SMS db?


9

Estou literalmente tentando decifrar isso há uma hora. Nas versões anteriores do iOS, o db era um arquivo sqlite simples e podia ser aberto com qualquer utilitário sqlite. Eu realmente preciso acessar essas mensagens e não sei como abrir o banco de dados.

Nota: Tirei o arquivo do backup do iTunes.


11
Se você olhar o cabeçalho do arquivo aqui , fica claro que é algum tipo de arquivo SQLite desconfigurado. O que não está claro é como foi mutilado. A ferramenta em http://insend.de/ , que decodifica o banco de dados, afirma que o arquivo é um arquivo binário. A descrição curta deles fica perto da parte inferior da página.
deftonix

Esta é realmente uma boa descoberta. Estou apenas esperando alguém sair com uma ferramenta gratuita para decodificar esses novos arquivos db. Eu começou a apoiá-las a cada mês, por isso tenho todas as minhas mensagens que agora tem que apagar ...

Você tentou o comando "file file.name" no terminal? Isso tentaria adivinhar o tipo de arquivo e quase nunca esteve errado comigo até agora. Pelo menos você saberia por onde começar.
Ismail

Respostas:


3

Peguei meu arquivo sms.db do meu iPhone 4S executando o iOS 5.0.1 (fora do sistema ativo usando scp) e consegui navegar no banco de dados normalmente usando o cliente sqlite incluído no OSX Lion. Possivelmente, o formato atual é de alguma forma incompatível com versões mais antigas do cliente. A versão do cliente incluída no Lion é 3.7.7:

$ sqlite3 sms.db
SQLite version 3.7.7 2011-06-25 16:35:41
Enter ".help" for instructions
Enter SQL statements terminated with a ";"
sqlite> .databases
seq  name             file                                                      
---  ---------------  ----------------------------------------------------------
0    main             /Users/tyr/sms.db                                         
sqlite> .tables
_SqliteDatabaseProperties  message                  
drafts                     msg_group                
group_member               msg_pieces               
madrid_attachment          settings                 
madrid_chat                templates                
sqlite> select * from settings ;
1|version|2.0.0
2|notificationCode|*N#
3|useNotifications|0
4|isDefault|1
5|compatibilityMode|0
6|useKeybCorr|1
7|useKeybCapi|1
8|useConfirmSend|1
9|nameorder|0
10|useShowAlerts|1
11|useStatusIcon|1
12|landscape|0
13|appSerial|0
14|lastMenu|0
sqlite> 

1

Você está certo - parece um arquivo SQLite. O cabeçalho é semelhante a um arquivo SQLite 3 que eu dei uma olhada:

SQLite format 3^@^P^

Presumo que você já tentou a versão 3 do SQLite?

http://www.sqlite.org/version3.html




0

Uma abordagem alternativa é usar software de terceiros - usei o DiskAid para acessar meu SMS. O DiskAid copia todas as mensagens para um arquivo de texto simples, que pode ou não servir aos seus propósitos!

Hoipe ajuda alguém - minha resposta aborda a necessidade declarada, e não a pergunta principal:

"Eu realmente preciso ter acesso a essas mensagens e não sei como abrir o banco de dados".

Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.