Dopo aver letto la prima parte questo venerdì, ecco il continuo della seconda puntata di “Jailbreak Focus”, la rubrica nata con l’intento di aiutare coloro che compiono i primi passi verso il “mondo” del jailbreak. In questo articolo si spiegherà cos’è Cydia e cosa offre.
Come detto precedentemente, il jailbreak è essenzialmente “completo controllo” del proprio dispositivo, cioè l’inserimento di estensioni di sistema o ulteriori daemons: tutto questo si realizza attraverso Cydia.
Cydia è come un secondo mondo, dove possiamo davvero trovare di tutto: programmi (gratis e a pagamento), giochi, utility, temi, suonerie, immagini, sfondi, patch, sblocchi e tanto altro materiale. Forse vi chiederete: “Ma allora perchè questo materiale non viene inserito in App Store?” Semplice! Spesso si tratta di programmi che modificano (anche sostanzialmente) alcuni file di sistema, o ne estendono le funzionalità! Programmi che di conseguenza non sono conformi alle regole dell’SDK di Apple e che quindi non verrebberro accettati nell’App Store. L’esempio più classico è Winterboard, programma che ci permette di personalizzare l’aspetto grafico di ogni componente del sistema operativo, cosa che Apple impedisce fortemente. (maggiori informazioni qui)
Principalmente, i prodotti maggiormente richiesti sul Cydia Store sono tre:
- Tweak, estensioni di sistema;
- Temi, che modificano la home del vostro dispositivo;
- App, generalmente o rifiutate dall’App Store oppure programmi che non potrebbero mai arrivare sullo store Apple per la loro funzione
Vediamo quindi nello specifico cosa sono e in cosa consistono queste tre categorie
Il tweak è sicuramente la cosa più interessante che possa esserci in tutto Cydia: si tratta di un’estensione di sistema che applica delle modifiche in determinati punti del S.O. Ad esempio “Barrel” permette di scegliere il metodo di scrolling da una pagina all’altra della home.
In molti si appoggiano al “Mobile Substrate”, componente fondamentale per il funzionamento di quasi tutte queste estensioni.
Ma tecnicamente, cos’è un tweak? L’abbiamo chiesto a FilippoBiga e Rpetrich, entrambi famosi sviluppatori Cydia.
FilippoBiga
Un tweak è, basilarmente, una modifica dinamica del sistema. Il componente principale di un comune “tweak” infatti, è una libreria dinamica che viene caricata dal Mobile Substrate (una piattaforma di code injection): all’interno della libreria dinamica, sono definiti dei metodi e delle funzioni che, tramite un processo denominato “method swizzling”, caratteristica dell’ambiente runtime di objective C, vengono “sostituiti” ai metodi originali del sistema operativo, andando in questa maniera a modificarne il comportamento stesso.
Rpetrich
I tweak sono ben definiti in contrasto con le applicazioni: queste hanno un’icona sulla home e quando l’icona viene premuta, il programma si apre e l’utente può interagirci fino a quando non preme il tasto Home, momento in cui l’app viene chiusa e non è più attiva. Le estensioni sono pezzetti di software che sono sempre operative.
Quando un applicazione viene avviata , il MobileSubstrate loader carica tutte le estensioni installate nell’applicazione e quindi carica il codice d’avvio di quest’ultima. I tweak sono liberi di fare tutto quello che l’app può fare e agire come parte di questa.
Il MobileSubstrate caricherà anche estensioni nel processo di home+lock screen (SpringBoard) o nei processi in background (Commcenter, mediaserverd, etc.) cosicché possano personalizzare virtualmente ogni parte di iOS!
Siccome le applicazione potrebbero inavvertitamente dipendere da certi funzionamenti di sistema, un tweak ben scritto può aggiungere o modificare funzioni nel modo meno invadente possibile.
In aggiunta, un’estensione che è mirata precisamente ad una funzione diminuisce le possibilità che possa “scontrarsi” con un’altra.
I tweak non potranno modificare nessun file di sistema in quanto riduce l’abilità della Safe Mode di recupero in caso di un fallimento (si intende di caricamento di una determinata estensione, N.D.A.) o conflitto d’estensione.
I temi applicano dei ritocchi alla parte grafica del proprio dispositivo e si possono scaricare tramite Cydia. Abbiamo chiesto di esporre quest’argomento ad iHaz3, noto creatore di temi: vediamo quindi in cosa consistono!
Temi: perché li vogliamo?
I temi modificano tutta la parte grafica di iOS (e in alcuni casi anche dei suoni di sistema): grazie a Winterboard è quindi possibile installare questi prodotti per dare un nuovo “look” al proprio dispositivo.
Ci sono molti “Themers” (creatori di temi, N.D.A.) nell’iPhone Community, perciò è possibile avere una vasta selezione: ci sono themers molto bravi che creano i migliori temi che possano essere fatti. Sono moltissime le persone che creano queste cose, perciò Cydia è in grado di offrire moltissime scelte, adatte per tutti i gusti.
Di cosa ho bisogno e come si fanno i temi?
Beh, ci sono moltissime cose che bisogna conoscere per fare temi. La maggior parte dei themers inizia usando un campione per vedere come sarà il prodotto finale, mentre quelli più professionali usano un UIkit (iOS Image Collection) ed iniziano a creare il loro desgin da qui.
Abilità con grafiche con Photoshop risultano essere un “must” per creare immagini/icone in full HD; ancora meglio sarebbe se il themer ha familiarità con iOS, cioè conosce la posizione delle immagini di iOS nei vari percorsi SSH (cioè all’interno del sistema operativo, N.D.A.).
Per creare dei bei widget contenuti nel tema sono necessarie anche delle nozioni di HTML, CSS e Javascript.
Oltre a queste conoscenze è necessario anche aiutarsi con molti programmi, ad esempio per convertire le immagini dopo che sono state estratte da iOS (PNG Converter).
Tenete semplicemente in mente che per fare temi ci vuole molta pazienza e consuma veramente tanto tempo.
Il mio pensiero sui temi…
I temi sono un grande modo per dare al proprio iDevice quel pizzico di stile in più.
Mi piace vedere temi che sono i più completi possibile e ricoprano quasi ogni immagine, quindi non solo la Springboard e basta.
Adoro creare temi ma ne ho alcuni anche di altri Themer nei miei iDevices come June, K_nitsua, Zauser e potrei continuare a fare nomi :)
E’ bello vedere la gente che adora quello che fanno, perché principalmente vogliamo tutti la stessa, far apparire meglio i nostri iDevice giusto?
Continuerò a fare bei temi e spero che la gente adori e ne traggano piacere nello stesso modo in cui mi piace crearli.
Se vi serve qualsiasi cosa sui temi, mandatemi un messaggio su Twitter
Sul Cydia Store è possibile trovare anche vere e proprie applicazione: la maggior parte erano destinate alla commercializzazione su App Store ma a causa delle loro funzioni e/o parti di codice che infrangono le regole imposte da Apple vengono “reindirizzate” sullo store alternativo. Un esempio è quello del celebre programma MyWi, che trasforma il proprio iPhone in un hotspot internet senza costi aggiuntivi da parte dell’operatore.
Sperando che abbiate gradito questa “seconda puntata”, vi invitiamo a seguirci anche nella terza puntata di Jailbreak Focus, in cui parleremo degli svantaggi che il jailbreak porta con sé.
Un ringraziamento speciale a @FilippoBiga, @rpetrich e @iHaz3 :
senza di loro non sarebbe stato possibile rendere esaurienti le parti trattate!
English part
Here is the second part of the second episode of “Jailbreak Focus”, spot that borns with the intention to help out those who are trying to make the first steps towards the “jailbreak” world. In this article we will continue to explain the main purposes on why somebody should modify an iDevice.
As we said before, the jailbreak is essentialy “full control” of your device, by put system extensions or more daemons: everything happens through Cydia.
Cydia is like a second world, where we can find almost everything: programs (free or paid), games, utility, themes, ringtones, images, wallpapers, patch, unlocks and much more. Maybe you’re asking to yourself: “Then why all of this material isn’t just placed in the App Store?” That’s easy! Usually it deals with programs that modify (even essentialy) some files of the system, or they extend the features! Programs that as a consequence are not conformable to Apple’s SDK rules and that would never be accepted in the App Store. The most classical example is Winterboard, a program that allow us to customize the graphical appearance of every component of the O.S., something that Apple strongly prohibites. (more info here, but that page is not translated in english).
Mainly, the most requested products on the Cydia Store are three:
- Tweak, system extensions;
- Themes, which modify the home of your device;
- App, generally refused from the App Store or programs which could never reach the App Store because of their function.
Now let’s see in the specific what are and what these three categories consist of.
The tweak is surely the most interesting thing that can be in the whole Cydia: it consist in a system exstension which applies some modifications in certain points of the O.S. For example “Barrel” allows to choose the scrolling option from one page of the home to another.
Many of them are depended to the “Mobile Substrate”, essential component for the working of almost every exstensions.
But technically, what is a tweak? We asked this to FilippoBiga and Rpetrich, famous Cydia developers.
FilippoBiga
A tweak, basically, is a dynamic modify of the system. The main component of a common tweak in fact is a dynamic library which is loaded by the Mobile Substrate (a platform of code injection): inside of the dynamic library, some methods and functions are definied, which through a process named “method swizzling”, feature of the runtime enviroment of the Objective C, are “replaced” to the original methods of the O.S., modifying the behaviour of the O.S. itself.
Rpetrich
Extensions are best defined in contrast to apps. Apps have an icon on the home screen. When the icon is pressed, the app launches and the user can interact with it. When the home button is pressed, the app is closed and is no longer active. Extensions are bits of software that run all the time.
When an app starts up, the MobileSubstrate loader loads all of the installed extensions into the app and then continues loading the app’s startup code. Extensions are free to do anything the app could do and act as part of the app.
MobileSubstrate will even load extensions into the home+lock screen process (SpringBoard) or background processes (CommCenter, mediaserverd, etc) so that extensions can customize virtually any part of iOS!
Since apps may inadvertently depend on certain system behaviours, a well written extension will add or modify features in the least obtrusive manner possible.
Additionally, an extension that is more precisely targeted lessens the chance that it will collide with another extension.
Well behaved extensions will not modify -any- system files as that lessens the ability of Safe Mode to recover in case of a failure or extension conflict.
Themes apply some changes to the graphical part of your device and they can be downloaded from Cydia. We asked to expose this topic to iHaz3, a well-known theme creator: let’s see what they consist of!
Themes: why do we want them?
Themes usually modify the whole graphic part of iOS (and in some cases even the system sounds): thanks to Winterboard then it’s possible to install these products in order to give a new “look” to your device.
There are many themers in the iPhone Community, so it’s possible to have a wide selection: there are many skilled themers who create the best themes that could be ever made. There are really many people who do this, so Cydia is capable to offer many choices, suited for every taste.
How and what do i need to make themes?
Well there is allot that you need to know to make themes, most Themers start by using a sample to see how it is build up. The most professional Themers only use a UIkit (iOS Image Collection) and start designing from there.
Photoshop and Graphic skills are most certainly a must to create full HD designed images/icons.
Best would be if you somewhat familiar with the iOS – Root paths to the images you are searching for via SSH.
Next to Photoshop HTML, CSS, and Javascript is asked to make some nice widgets that comes along with the theme.
Much help tools are needed, for example to convert the images after they are extracted from the iOS (PNG Converter).
Just keep in mind that making themes takes a lot of patience and is very time consuming.
My own words: what i think about themes….
Theming is an great way to give your iDevice that bit of extra style.I like to see themes that are as complete as possible and skin almost every image, so not only the front cover.
I love to create themes myself but I do also wear themes from other Themers on my iDevices then you have to think of themes from June, K_nisua, Zauser and I can name some more :)
It’s nice to see people love what we are doing, because basically we all want the same thing, making our iDevices look better right?
I will keep going on with making Awesome themes and hope people will love and enjoy them as much as I like to create them.
If you need any support about theming just give me a message on twitter.
Applications
On the Cydia Store it is possible to find also some applications: most of them were planned to be pubblished on the App Store but, because of their features or parts of code which shatter the rules imposed by Apple, they are “redirected” to the alternative store. An example is the one of the well-known program MyWi, which transforms your iPhone in an hotspot without extra chargement from the carrier.
Hoping that even this “second episode” was of your interest, we invite you to follow us even on the third article of Jailbreak Focus, in which we will talk about the disvantages that jailbreak brings with it.
Special thanks to @FilippoBiga, @rpetrich and @iHaz3:
without them, it wouldn’t have been possible render complete the points we discussed.
Leggi o Aggiungi Commenti