SlideShare une entreprise Scribd logo
1  sur  11
iOS	
  3.1.3	
  –	
  	
  
                       Esportazione	
  Rubrica	
  contatti	
  verso	
  
                       app	
  Contatti	
  	
  e	
  Contatti	
  iCloud	
  




                                                                                                                                       	
  
	
  
	
  
Questo	
  piccolo	
  documento	
  nasce	
  dall’esigenza	
  di	
  esportare	
  i	
  contatti	
  presenti	
  in	
  
un	
   iPhone	
   2G	
   con	
   iOS	
   3.1.3	
   verso	
   la	
   rubrica	
   Contatti	
   locale	
   e	
   verso	
   la	
   rubric	
  
contatti	
   di	
   iCloud,	
   sincronizzata	
   localmente	
   con	
   la	
   versione	
   desktop.	
   Non	
   ha	
  
quindi	
  la	
  pretesa	
  di	
  creare	
  una	
  vera	
  e	
  propria	
  sincronia	
  tra	
  iPhone	
  e	
  iCloud.	
  
L’esigenza	
  deriva	
  dal	
  fatto	
  che	
  iCloud	
  è	
  presente	
  solo	
  su	
  dispositivi	
  che	
  montano	
  
versioni	
  di	
  iOS	
  superiori	
  o	
  uguali	
  alla	
  5.0.	
  Mi	
  rendo	
  conto	
  che	
  molti	
  lo	
  
butterebbero	
  nella	
  spazzatura	
  un	
  iPhone	
  2G,	
  ma	
  io	
  no.	
  
	
  
Occorrente:	
 	
  
       -­‐ Una	
  postazione	
  desktop/laptop	
  (preferibilmente	
  Mac	
  con	
  OSX	
  ≥	
  10.6)	
  
       -­‐ iTunes	
  installato	
  sulla	
  postazione	
  locale	
  
       -­‐ Un	
  account	
  iCloud	
  sincronizzato	
  con	
  la	
  postazione	
  Mac	
  
       -­‐ Il	
  software	
  iPhone	
  Backup	
  Extractor	
  liberamente	
  scaricabile	
  da	
  qui	
  
           http://www.iphonebackupextractor.com/	
  
       -­‐ Il	
  software	
  SQLite	
  database	
  browser	
  liberamente	
  scaricabile	
  da	
  qui	
  
           http://sourceforge.net/projects/sqlitebrowser/	
  	
  
           in	
  alternative	
  qualunque	
  software	
  in	
  grado	
  di	
  effettuare	
  query	
  SQL	
  su	
  un	
  
           db	
  sqlite	
  
       -­‐ Una	
  minima	
  conoscenza	
  di	
  SQL	
  che	
  quasi	
  tutti	
  hanno	
  
	
  
Buon	
  divertimento.	
  
Simone	
  Galiano	
  
 
	
  
Partiamo	
  da	
  un	
  banale	
  backup	
  da	
  Itunes	
  (destro	
  sul	
  dispositivo,	
  Backup)	
  
Ovviamente	
  nessuno	
  ci	
  dice	
  dove	
  va	
  a	
  finire	
  il	
  backup,	
  una	
  volta	
  scoperto	
  che	
  sta	
  in	
  	
  
/Users/<nomeutente>/Library/Application	
  Support/MobileSync/<stringaunivoca>,	
  si	
  comprende	
  che	
  è	
  necessario	
  decriptare…	
  
	
  




                                                                                                                  	
  
L’applicazione	
  che	
  lo	
  fa	
  si	
  chiama	
  iPhone	
  Backup	
  Extractor	
  
Ci	
  chiede,	
  prima	
  da	
  quale	
  backup	
  estrarre,	
  poi	
  cosa	
  estrarre,	
  poi	
  dove	
  estrarre.	
  




                                                                                                        	
                 	
  
	
  
Noi	
  abbiamo	
  estratto	
  in	
  una	
  sottocartella	
  di	
  Documenti	
  (iphone	
  c)	
  
La	
  struttura	
  si	
  presenta	
  così	
  
 
Ovviamente	
  andiamo	
  in	
  Library	
  a	
  cercare	
  sotto	
  Address	
  Book,	
  vediamo	
  che	
  c’è	
  un	
  db	
  sqlite.	
  
Utilizziamo	
  Sqlite	
  database	
  browser	
  per	
  aprire	
  AddressBook.sqlitedb	
  
Esaminiamo,	
  esaminiamo…	
  




                                 	
  
 
Una	
  volta	
  scoperto	
  che	
  le	
  2	
  tabelle	
  interessate	
  sono	
  ABPerson	
  e	
  ABMultiValue,	
  facciamo	
  una	
  query	
  di	
  confidenza	
  
SELECT	
  C.First,	
  C.Last,	
  C.Organization,	
  A.value	
  FROM	
  ABPerson	
  AS	
  C	
  INNER	
  JOIN	
  ABMultiValue	
  AS	
  A	
  ON	
  C.ROWID	
  =	
  A.record_id;	
  




                                                                                                                                  	
  
Sembra	
  dare	
  risultati	
  incoraggianti.	
  
	
  
	
  
Allora	
  la	
  perfezioniamo	
  dopo	
  avere	
  creato	
  una	
  tabella	
  denominata	
  Esportazione	
  con	
  4	
  Campi	
  TEXT	
  (First,	
  Last,	
  Organisation,Phone)	
  
INSERT	
  INTO	
  Esportazione	
  (First,	
  Last,	
  Organisation,Phone)	
  	
  SELECT	
  C.First,	
  C.Last,	
  C.Organization,	
  A.value	
  FROM	
  ABPerson	
  AS	
  C	
  
INNER	
  JOIN	
  ABMultiValue	
  AS	
  A	
  ON	
  C.ROWID	
  =	
  A.record_id;	
  
La	
  tabella	
  Esportazione	
  si	
  è	
  riempita	
  con	
  un	
  contenuto	
  molto	
  gradito,	
  lo	
  esportiamo	
  come	
  contacts.csv	
  sul	
  Desktop.	
  
	
  
Apriamo	
  Contatti	
  in	
  Mac,	
  File,	
  Importa,	
  scegliamo	
  il	
  csv	
  precedentemente	
  generato	
  et	
  voilà	
  




                                                                                                                                                  	
  
	
  
Ora	
  non	
  ci	
  accontentiamo,	
  spuntiamo	
  contacts	
  nelle	
  preferenze	
  di	
  sincronizzazione	
  di	
  iCloud	
  dalle	
  Preferenze	
  di	
  Sistema	
  




                                                                                                                        	
  
	
  
In	
  un	
  attimo	
  il	
  Contatti	
  della	
  versione	
  web	
  di	
  iCloud	
  sarà	
  soddisfatto.	
  
 
	
  
E	
  anche	
  noi.	
  Accendiamo	
  iCloud	
  sull’iPad	
  e	
  lasciamo	
  sincronizzare	
  la	
  Rubrica	
  con	
  i	
  contatti	
  dell’iPhone.	
  

Contenu connexe

Similaire à IOS 3.1.3 export vs icloud

MacHelp, Capitolo 7: iCloud
MacHelp, Capitolo 7: iCloudMacHelp, Capitolo 7: iCloud
MacHelp, Capitolo 7: iCloudMarco Cipriani
 
Cloud e iOS - Codemotion2013 Roma
Cloud e iOS - Codemotion2013 RomaCloud e iOS - Codemotion2013 Roma
Cloud e iOS - Codemotion2013 RomaFrancesco Novelli
 
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple Watch
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple WatchCodice iPhone lavato a caldo: come "restringere" la tua app per Apple Watch
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple WatchCodemotion
 
Webkit meets native development
Webkit meets native developmentWebkit meets native development
Webkit meets native developmentNicholas Valbusa
 
Progettazione per Apple Watch - Todi Appy Days 2015
Progettazione per Apple Watch - Todi Appy Days 2015Progettazione per Apple Watch - Todi Appy Days 2015
Progettazione per Apple Watch - Todi Appy Days 2015Todi Appy Days
 
Wearable Lab: Progettazione per Apple Watch
Wearable Lab: Progettazione per Apple WatchWearable Lab: Progettazione per Apple Watch
Wearable Lab: Progettazione per Apple WatchPaolo Musolino
 
Sviluppo Di Applicazioni Su I Os
Sviluppo Di Applicazioni Su I OsSviluppo Di Applicazioni Su I Os
Sviluppo Di Applicazioni Su I OsNoDelay Software
 
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...Aruba S.p.A.
 
Con Aruba, a lezione di cloud #lezione 31: 'API e Cloud Computing, personali...
Con Aruba, a lezione di cloud  #lezione 31: 'API e Cloud Computing, personali...Con Aruba, a lezione di cloud  #lezione 31: 'API e Cloud Computing, personali...
Con Aruba, a lezione di cloud #lezione 31: 'API e Cloud Computing, personali...Aruba S.p.A.
 
DominoPoint 2012 Lotus Notes e Cognos 10
DominoPoint 2012 Lotus Notes e Cognos 10DominoPoint 2012 Lotus Notes e Cognos 10
DominoPoint 2012 Lotus Notes e Cognos 10Alessandro Villani
 
Cloud and iOS by Francesco Novelli
Cloud and iOS by Francesco NovelliCloud and iOS by Francesco Novelli
Cloud and iOS by Francesco NovelliCodemotion
 
Deftcon 2014 - Mattia Epifani & Claudia Meda - Windows 8 forensics
Deftcon 2014 - Mattia Epifani  & Claudia Meda - Windows 8 forensicsDeftcon 2014 - Mattia Epifani  & Claudia Meda - Windows 8 forensics
Deftcon 2014 - Mattia Epifani & Claudia Meda - Windows 8 forensicsDeft Association
 
L'uso dello smartphone per il lavoro
L'uso dello smartphone per il lavoroL'uso dello smartphone per il lavoro
L'uso dello smartphone per il lavoroVincenzo Bianculli
 
Modi innovativi per costruire App
Modi innovativi per costruire AppModi innovativi per costruire App
Modi innovativi per costruire AppCommit University
 
Evento 15 novembre microsoft
Evento 15 novembre microsoftEvento 15 novembre microsoft
Evento 15 novembre microsoftPRAGMA PROGETTI
 
Evento 15 novembre microsoft
Evento 15 novembre microsoftEvento 15 novembre microsoft
Evento 15 novembre microsoftdesimonedeb
 

Similaire à IOS 3.1.3 export vs icloud (20)

MacHelp, Capitolo 7: iCloud
MacHelp, Capitolo 7: iCloudMacHelp, Capitolo 7: iCloud
MacHelp, Capitolo 7: iCloud
 
Cloud e iOS - Codemotion2013 Roma
Cloud e iOS - Codemotion2013 RomaCloud e iOS - Codemotion2013 Roma
Cloud e iOS - Codemotion2013 Roma
 
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple Watch
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple WatchCodice iPhone lavato a caldo: come "restringere" la tua app per Apple Watch
Codice iPhone lavato a caldo: come "restringere" la tua app per Apple Watch
 
Webkit meets native development
Webkit meets native developmentWebkit meets native development
Webkit meets native development
 
Progettazione per Apple Watch - Todi Appy Days 2015
Progettazione per Apple Watch - Todi Appy Days 2015Progettazione per Apple Watch - Todi Appy Days 2015
Progettazione per Apple Watch - Todi Appy Days 2015
 
Wearable Lab: Progettazione per Apple Watch
Wearable Lab: Progettazione per Apple WatchWearable Lab: Progettazione per Apple Watch
Wearable Lab: Progettazione per Apple Watch
 
Sviluppo Di Applicazioni Su I Os
Sviluppo Di Applicazioni Su I OsSviluppo Di Applicazioni Su I Os
Sviluppo Di Applicazioni Su I Os
 
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...
Con Aruba, a lezione di cloud #lezione 12 - parte 1: 'Cloud Object Storage, u...
 
Con Aruba, a lezione di cloud #lezione 31: 'API e Cloud Computing, personali...
Con Aruba, a lezione di cloud  #lezione 31: 'API e Cloud Computing, personali...Con Aruba, a lezione di cloud  #lezione 31: 'API e Cloud Computing, personali...
Con Aruba, a lezione di cloud #lezione 31: 'API e Cloud Computing, personali...
 
Programming iOS lezione 1
Programming iOS lezione 1Programming iOS lezione 1
Programming iOS lezione 1
 
Relazione
RelazioneRelazione
Relazione
 
DominoPoint 2012 Lotus Notes e Cognos 10
DominoPoint 2012 Lotus Notes e Cognos 10DominoPoint 2012 Lotus Notes e Cognos 10
DominoPoint 2012 Lotus Notes e Cognos 10
 
Cloud and iOS by Francesco Novelli
Cloud and iOS by Francesco NovelliCloud and iOS by Francesco Novelli
Cloud and iOS by Francesco Novelli
 
Il Cloud
Il CloudIl Cloud
Il Cloud
 
Presentazione i pad b1
Presentazione i pad b1Presentazione i pad b1
Presentazione i pad b1
 
Deftcon 2014 - Mattia Epifani & Claudia Meda - Windows 8 forensics
Deftcon 2014 - Mattia Epifani  & Claudia Meda - Windows 8 forensicsDeftcon 2014 - Mattia Epifani  & Claudia Meda - Windows 8 forensics
Deftcon 2014 - Mattia Epifani & Claudia Meda - Windows 8 forensics
 
L'uso dello smartphone per il lavoro
L'uso dello smartphone per il lavoroL'uso dello smartphone per il lavoro
L'uso dello smartphone per il lavoro
 
Modi innovativi per costruire App
Modi innovativi per costruire AppModi innovativi per costruire App
Modi innovativi per costruire App
 
Evento 15 novembre microsoft
Evento 15 novembre microsoftEvento 15 novembre microsoft
Evento 15 novembre microsoft
 
Evento 15 novembre microsoft
Evento 15 novembre microsoftEvento 15 novembre microsoft
Evento 15 novembre microsoft
 

IOS 3.1.3 export vs icloud

  • 1. iOS  3.1.3  –     Esportazione  Rubrica  contatti  verso   app  Contatti    e  Contatti  iCloud         Questo  piccolo  documento  nasce  dall’esigenza  di  esportare  i  contatti  presenti  in   un   iPhone   2G   con   iOS   3.1.3   verso   la   rubrica   Contatti   locale   e   verso   la   rubric   contatti   di   iCloud,   sincronizzata   localmente   con   la   versione   desktop.   Non   ha   quindi  la  pretesa  di  creare  una  vera  e  propria  sincronia  tra  iPhone  e  iCloud.   L’esigenza  deriva  dal  fatto  che  iCloud  è  presente  solo  su  dispositivi  che  montano   versioni  di  iOS  superiori  o  uguali  alla  5.0.  Mi  rendo  conto  che  molti  lo   butterebbero  nella  spazzatura  un  iPhone  2G,  ma  io  no.     Occorrente:   -­‐ Una  postazione  desktop/laptop  (preferibilmente  Mac  con  OSX  ≥  10.6)   -­‐ iTunes  installato  sulla  postazione  locale   -­‐ Un  account  iCloud  sincronizzato  con  la  postazione  Mac   -­‐ Il  software  iPhone  Backup  Extractor  liberamente  scaricabile  da  qui   http://www.iphonebackupextractor.com/   -­‐ Il  software  SQLite  database  browser  liberamente  scaricabile  da  qui   http://sourceforge.net/projects/sqlitebrowser/     in  alternative  qualunque  software  in  grado  di  effettuare  query  SQL  su  un   db  sqlite   -­‐ Una  minima  conoscenza  di  SQL  che  quasi  tutti  hanno     Buon  divertimento.   Simone  Galiano  
  • 2.     Partiamo  da  un  banale  backup  da  Itunes  (destro  sul  dispositivo,  Backup)  
  • 3. Ovviamente  nessuno  ci  dice  dove  va  a  finire  il  backup,  una  volta  scoperto  che  sta  in     /Users/<nomeutente>/Library/Application  Support/MobileSync/<stringaunivoca>,  si  comprende  che  è  necessario  decriptare…      
  • 4. L’applicazione  che  lo  fa  si  chiama  iPhone  Backup  Extractor   Ci  chiede,  prima  da  quale  backup  estrarre,  poi  cosa  estrarre,  poi  dove  estrarre.         Noi  abbiamo  estratto  in  una  sottocartella  di  Documenti  (iphone  c)   La  struttura  si  presenta  così  
  • 5.   Ovviamente  andiamo  in  Library  a  cercare  sotto  Address  Book,  vediamo  che  c’è  un  db  sqlite.   Utilizziamo  Sqlite  database  browser  per  aprire  AddressBook.sqlitedb  
  • 7.  
  • 8. Una  volta  scoperto  che  le  2  tabelle  interessate  sono  ABPerson  e  ABMultiValue,  facciamo  una  query  di  confidenza   SELECT  C.First,  C.Last,  C.Organization,  A.value  FROM  ABPerson  AS  C  INNER  JOIN  ABMultiValue  AS  A  ON  C.ROWID  =  A.record_id;     Sembra  dare  risultati  incoraggianti.      
  • 9. Allora  la  perfezioniamo  dopo  avere  creato  una  tabella  denominata  Esportazione  con  4  Campi  TEXT  (First,  Last,  Organisation,Phone)   INSERT  INTO  Esportazione  (First,  Last,  Organisation,Phone)    SELECT  C.First,  C.Last,  C.Organization,  A.value  FROM  ABPerson  AS  C   INNER  JOIN  ABMultiValue  AS  A  ON  C.ROWID  =  A.record_id;   La  tabella  Esportazione  si  è  riempita  con  un  contenuto  molto  gradito,  lo  esportiamo  come  contacts.csv  sul  Desktop.     Apriamo  Contatti  in  Mac,  File,  Importa,  scegliamo  il  csv  precedentemente  generato  et  voilà      
  • 10. Ora  non  ci  accontentiamo,  spuntiamo  contacts  nelle  preferenze  di  sincronizzazione  di  iCloud  dalle  Preferenze  di  Sistema       In  un  attimo  il  Contatti  della  versione  web  di  iCloud  sarà  soddisfatto.  
  • 11.     E  anche  noi.  Accendiamo  iCloud  sull’iPad  e  lasciamo  sincronizzare  la  Rubrica  con  i  contatti  dell’iPhone.