Rispetto alle prime versioni di iOS una delle innovazioni più importanti è stata l’introduzione di CoreData. Esso è un approccio attraverso il quale è possibile creare un sistema di archiviazione complesso di dati all’interno della propria applicazione. Gli argomenti relativi a CoreData sono estremamente complessi e non possono essere esauriti all’interno di un singolo suggerimento, anzi riguardano concetti teorici talmente profondi da meritare di ricevere una piccola pubblicazione.
Una cosa che però salta subito all’occhio è che CoreData pur usando delle strutture simil SQL non è SQL, quindi l’interrogazione di tabelle attraverso JOIN o altri metodi non può essere preso in considerazione. Bisogna seguire le regole imposte dal sistema affinchè tutto funzioni regolarmente. Se non si preferisce adattarsi a queste regole bisogna scrivere il database di sana pianta così come i sistemi di interfacciamento ad esso.
Qualcuno, fino alla versione 5.0 (esclusa) spesso aggirava l’ostacolo iniettando delle istruzioni SQL all’interno del codice. Questo, oltre che una pratica discutibile, è anche molto rischiosa in quanto potrebbe andare in conflitto con i thread di gestione del sistema stesso. Forse anche per prevenire questo (oltre che per incrementare la sicurezza in virtù dell’adozione di iCloud) dalla versione 5.0 del sistema operativo iOS i database creati con CoreData sono criptati, o comunque protetti.
Se è pur vero che CoreData non permette di usare istruzioni in SQL puro, è anche vero che per molte cose semplifica il compito non di poco.
Uno degli aspetti su cui si notano tali semplicificazioni sono le selezioni di entità in base alle date.
Continue reading »
Ieri l’evento organizzato da Apple ha aperto la strada ad un reale cambiamento di come leggere i libri.
Da quando l’iPad è entrato a far parte delle nostre vite e, prima ancora, ne era entrato a far parte anche il Kindle di Amazon, di acqua sotto i ponti ne è passata.
Si è passati dalla lettura di testi senza formattazione a contenuti sempre più attivi ed interattivi.
In particolare applicazioni di quotidiani e riviste presentano al loro interno dei link e degli approfondimenti a siti esterni o avviano dei video incorporati nel documento.
Anche Adobe e Quark hanno fiutato l’affare modificando InDesign ed XPress non solo per includere tali contenuti all’interno delle loro pubblicazioni ma addirittura per produrre direttamente applicazioni per i dispositivi comprensive dei reader necessari.
Personalmente mi sono affacciato alla possibilità di realizzare contenuti multimediali per i dispositivi mobile facendo la scelta di creare interi documenti/presentazioni interamente realizzate con Hype in HTML 5 e quindi integrate all’interno di applicazioni apposite per i dispositivi trovando il tutto molto utile e gratificante. Riuscendo a realizzare dei contenuti interattivi di tutto rispetto, un esempio potete trovarlo qui.
Continue reading »
I dispositivi iOS hanno dimostrato che adoperare un cellulare o un tablet per connettersi ad Internet non solo è possibile ma anche utile. Infatti verificando le statistiche di accesso si nota che tali dispositivi sono sempre i primi nell’accesso alla rete.
Anche io, personalmente, annovero i software che si connettono a servizi esterni, tra quelli più usati sui miei dispositivi.
Anzi posso tranquillamente affermare che il 90% degli applicativi da me scritti finora realizzavano una connessione ad internet per inviare e ricevere i dati sotto varie forme. Tali connessioni sono rivolte principalmente alla chiamata di servizi secondo i protocolli più disparati (sia standard che meno), di conseguenza nel codice sorgente mi sono trovato spesso a dover passare farametri di chiamata sia in formato GET che POST appropriatamente elaborati per poter essere trasferiti.
Tale operazione di codifica viene definita, generalmente, URLEncode e consiste nel sostituire determinati caratteri di una stringa nel loro equivalente esadecimale precedendoli con il simbolo di % (per esempio il carattore ‘ ‘, spazio, viene tradotto in %20, ovvero il 32 decimale che nel set di caratteri standard ASCII o UTF8 identifica appunto lo spazio). Tali caratteri verrano poi ricondotti alla loro forma normale direttamente dal webserver che riceverà la chiamata.
Continue reading »
L’introduzione di ARC con le ultime release di XCode e del compilatore LLVM hanno sicuramente contribuito a semplificare il codice delle proprie applicazioni. Infatti, salvo rari casi, l’applicazione gestisce in modo appropriato la memoria a disposizione rilasciandola quando necessario.
Ora, però, che iOS è un sistema operativo maturo e diffuso fanno capolino diverse librerie di terze parti che, adoperate all’interno delle proprie applicazioni, permettono di risparmiare tempo e codice nella realizzazione. Tali librerie, nonostante siano molto diffuse, non necessariamente sono aggiornate con tempestività, per cui il supporto ad ARC non è previsto. Anzi in alcuni casi gli sviluppatori stessi, per motivi di retrocompatibilità, spesso decidono di spostare il supporto ad ARC in tempi e modi da definirsi.
Ma come comportarsi nel caso si debbano adoperare tali librerie?
Se i files sono in formato compilato, salvo eccezioni, possono essere adoperate all’interno della nostra applicazione senza colpo ferire. Ma se essi sono in formato sorgente si aprono due possibilità:
1 – Modificare i files in modo che supportino ARC
2 – Dsabilitare ARC per questi files.
Continue reading »
Il nostro lettore Mattia Cardazzi scrive in una sua email:
Salve, ho acquistato il suo libro e lo uso da diverso tempo.
C’è un grosso problema di crash con la guida di pag 108 per inviare un’email dentro l’app.
Il problema è che il metodo funziona su ipad 1, iphone 3gs e 4 con iOS 5 ma crasha cu ipad 2 e iphone 4s con iOS 5.
Ha trovato per caso una soluzione, sa darmi dei consigli.
Grazie molte per l’aiuto.
Innanzitutto ringrazio Mattia per aver acquistato il libro. e gli chiedo scusa se soltanto oggi riesco a postare la risposta alla sua richiesta. Purtroppo diversi intoppi hanno rallentato l’attività del sito e quella mia personale.
Il codice presente sul libro è valido anche per la versione 5 di iOS e funziona correttamente sia con iPad che con iPhone 4S. La differenza fondamentale risiede nel come viene aggiunto il framework MessageUI a quelli adoperati dall’applicazione. Il procedimento corretto è descritto in questo articolo.
Ma onde evitare dubbi ho provato a riscrivere una breve applicazione di esempio che permetta di inviare l’email con la tecnica illustrata. Per far questo però, ho preferito creare un’App Universal e visto che si parla di iOS 5, adoperando anche ARC.
Continue reading »
Lo staff di HTMedia vi augura un felice 2012, che possa iniziare e proseguire sotto i migliori auspici.
L’anno appena concluso ha portato diverse novità nel mondo dell’informatica, sia positive che negative.
Tra le positive possiamo tranquillamente concludere che il mercato mobile è definitivamente uscito dallo stato di Moda per entrare a pieno titolo in quello di settore stabile.
L’arrivo dell’iPad 2 ha definitivamente sdoganato i tablet come oggetti inutili e la presenza di numerose applicazioni, sempre più professionali, inserisce questi dispositivi in un mercato decisamente appetibile per le aziende.
Continue reading »
I lavori su StoreManager procedono ormai a ritmo spedito. In questi giorni sono state contattate alcune aziende fornitrici di stampanti fiscali e registratori di cassa dotati di interfaccia lan e quindi in grado di collegarsi ad un iPad adoperando un protocollo di basso livello. Unva volta identificata la partnership con un’azienda che offra la migliore soluzione prezzo/prodotto/assistenza provvederemo ad interfacciarne i prodotti.
Non si sa ancora se riusciremo a fornire l’interfacciamento per la prima release, ma sicuramente sarà materia di uno degli aggiornamenti successivi.
In alto a destra potete vedere l’icona di StoreManager, che ne pensate? La trovate adeguata? Avete suggerimenti in merito?
Grazie per il Vostro supporto,
Roberto S.
L’evoluzione e la diffusione dei dispositivi iOS è tale da fornire una domanda di applicazioni sempre maggiore. Spesso però ci si trova a dover scrivere una serie di componenti per risolvere alcune situazioni tediose e ripetitive all’interno delle proprie applicazioni.
Tra quelle maggiormente frequenti vi è sicuramente la gestione dei campi di input, in particolar modo relativi alle date ed ai numeri. Infatti non basta selezionare il tipo di tastiera ma è anche necessario filtrare i caratteri ed il loro ordine. Inoltre nel caso delle date ci si scontra con la formattazione in base alla nazione ed al tipo di formato.
Nasce così l’idea di allestire una serie di componenti general purpose da mettere a disposizione degli utenti, principalmente per le applicazioni per iPad, in modo da risparmiare il lavoro di scrittura ciclico di questo tipo di codice semplificandolo al massimo.
Continue reading »
Buongiorno a tutti,
con il prossimo anno sono in arrivo diverse novità da parte del sito. Iniziamo subito col dire che StoreManager è in dirittura di arrivo.
Contemporaneamente verrà pubblicata l’applicazione ufficiale di HTMedia.it il cui spirito sarà quello di fornire informazioni e servizi sempre più ricchi di contenuti e di interesse.
Tra questi servizi uno che crediamo sarà assolutamente gradito è quello dedicato alla ricerca di rivenditori Apple (ufficiali e non) basato sui servizi di geolocalizzazione. Oltre alla scheda completa del rivenditore gli utenti potranno esprimere le proprie preferenze su aspetti chiave dei rivenditori.
I rivenditori, dal canto loro, potranno far sapere delle propria esistenza e dei servizi da loro offerti in modo assolutamente gratuito. Se siete interessati a far conoscere la vostra attività inviate una mail tramite la pagina dei contatti. Vi invieremo il modulo da compilare in formato elettronico tramite il quale fornire le informazioni generali della vostra attività. Il servizio è completamente gratuito.
Arrivederci al prossimo articolo,
Roberto S.
Nella panoramica dei Software 3D (di concezione classica) che sempre più si ritagliano uno spazio di primo piano non è possibile non annoverare Blender, software 3D generalista dotato di moltissime funzioni (tra cui quelle di sculpting e compositing integrate) con cui sono stati realizzati prodotti come Sintel un corto molto bello ed estremamente interessante.
La caratteristica che più contraddistingue Blender dagli altri prodotti è il prezzo. Esso è infatti completamente gratuito (anche se incoraggio vivamente ad effettuare donazioni, acquistare libri ma anche gadget di vario tipo per sostenere tutti coloro che lavorano dietro questo progetto).
Come tutti i software gratuiti dotati di una certa caratura (tra cui includo almeno Gimp ed InkScape) non sempre l’approccio al lavoro risulta essere lineare o comunque associabile rapidamente a quello di altri sistemi più noti (e costosi). L’uso di un pacchetto come Blender è però molto interessante per quegli sviluppatori indipendenti che desiderano creare un proprio videogame o delle animazioni all’interno dei propri applicativi ed hanno molta disponibilità di tempo (almeno all’inizio) e pochi fondi.
Continue reading »




