home Ricerca per tag "mod"


Magisk 14, il modding "OTA-friendly" per tutti

15 Ottobre 2017. È questa la data di una nuova importante rivoluzione nel mondo del modding di Android. Tre settimane fa infatti lo sviluppatore topjohnwu ha rilasciato un nuovo aggiornamento di Magisk, raggiungendo la versione 14.Tra le tante novità introdotte, riportate nel changelog a fondo pagina, la più interessante sta nel nuovo metodo di installazione della mod.A fianco a quello classico infatti, che prevede l'utilizzo di una custom recovery come la TWRP per il flash dello zip di Magisk, è stata introdotta la possibilità di generare una boot.img modificata per poi flasharla in qualsiasi modo, potenzialmente senza passare dalla recovery. Questa modalità infatti permette, dando in pasto a Magisk Manager la boot.img originale del sistema del dispositivo, di modificare quest'ultima includendo i file necessari per il funzionamento di Magisk. Il passo successivo sarà quello poi di flashare tale file sul dispositivo, cosa che potrà essere effettuata direttamente dalla modalità fasboot o tramite ODIN per i dispositivi Samsung. Ricapitolando, i passi necessari saranno: Procurarsi l'immagine di boot del proprio sistema (presente nello zip della ROM o dell'aggiornamento ufficiale) e copiarla nel dispositivo Da Magisk Manager premere Installa > Patch Boot Image File e selezionare la boot.img appena scaricata Attendere la fine del procedimento di patching Copiare la nuova boot image sul PC Riavviare il dispositivo in modalità bootloader (collegare il telefono al PC e digitare il comando adb reboot bootloader [1]) Flashare la nuova boot image con il comando fastboot flash boot patched_boot.img [1] Riavviare il dispositivo con fastboot reboot Il risultato sarà quello di aver installato Magisk senza toccare la recovery stock del proprio dispositivo, con la conseguente possibilità di ricevere gli aggiornamenti OTA [2], nonchè di rootare e moddare qualsiasi dispositivo, anche quelli per cui non esiste una custom recovery. Degna di nota è infine la Invincible Mode introdotta con la versione 14.3, l'ultimo di una serie di fix rilasciati in queste tre settimane, che garantisce che il demone di Magisk sia sempre funzionante in background (anche nel caso in cui venga interrotto in modo forzato), così da evitare casuali perdite dei permessi di root o il non funzionamento di Magisk Hide, con conseguente esito negativo del SafetyNet Check. Per concludere vi riporto il changelog ufficiale delle due versioni trattate: • v14.3 (1437)- [MagiskBoot] Fix Pixel C installtion- [MagiskBoot] Handle special lz4_legacy format properly, should fix all LG devices- [Daemon] New universal logcat monitor is added, support plug-and-play to worker threads- [Daemon] Invincible mode: daemon will be restarted by init, everything should seamlessly through daemon restarts- [Daemon] Add new restorecon action, will go through and fix all Magisk files with selinux unlabled to system_file context- [Daemon] Add brute-force image resizing mode, should prevent the notorious Samsung crappy resize2fs from affecting the result- [resetprop] Add new "-p" flag, used to toggle whether alter/access the actual persist storage for persist props• v14.0- [script] Simplify installation scripts- [script] Fix a bug causing backing up and restoring stock boot images failure- [script] Installation and uninstallation will migrate old or broken stock boot image backups to proper format- [script] Fix an issue with selabel setting in util_functions on Lollipop- [rc script] Enable logd in post-fs to start logging as early as possible- [MagiskHide] magisk.img mounted is no longer a requirementDevices with issues mounting magisk.img can now run in proper core-only mode- [MagiskBoot] Add native function to extract stock SHA1 from ramdisk- [b64xz] New tool to extract compressed and encoded binary dumps in shell script- [busybox] Add busybox to Magisk source, and embed multi-arch busybox binary into update-binary shell script- [busybox] Busybox is added into PATH for all boot scripts (post-fs-data.d, service.d, and all module scripts)- [MagiskSU] Fully fix multiuser issues- [Magic Mount] Fix a typo in cloning attributes- [Daemon] Fix the daemon crashing when boot scripts opens a subshell- [Daemon] Adjustments to prevent stock Samsung kernel restrictions on exec system calls for binaries started from /data- [Daemon] Workaround on Samsung device with weird fork behaviors [1] Per effettuare questi passaggi sul PC devono essere installati ADB e FASTBOOT ed il Bootloader del dispositivo deve essere sbloccato. [2] Per installare gli aggiornamenti OTA tutte le partizioni di sistema devono risultare integre e non modificate. Pertanto una modifica in /system o in /boot non permette l'installazione dell'aggiornamento ufficiale. Sebbene Magisk permetta di non alterare la partizione /system, si installa in quella di boot. Per poter installare l'aggiornamento sarà quindi necessario rimuovere temporaneamente Magisk attraverso la voce Disinstalla dall'applicazione Magisk Manager seguendo le istruzioni ufficiali riportate qui.

Magisk v11: la soluzione All-In-One per il modding di Android

Avevamo già parlato di Magisk tempo fa, una mod molto particolare che permette di installare altre modifiche - dette moduli -, quali i permessi di root, Xposed e Viper4Android in modalità systemless, vale a dire senza toccare la partizione di sistema del dispositivo. Questo avviene grazie ad una modifica della partizione di /boot che permette di caricare virtualmente queste mod nella partizione di sistema ad ogni avvio di Android, rendendo quindi possibile un futuro aggiornamento del sistema senza effettuare nuovamente tutti i passaggi per installare le modifiche volute. Nell'ultimo periodo lo sviluppo di questo sistema ha subito una forte accelerazione introducendo sempre più funzionalità come Magisk Hide, che permette di nascondere i permessi di root alle applicazioni che "non li digeriscono" (Android Pay, Pokemon Go e molte applicazioni di mobile banking ad esempio) e atterrando sul Play Store (Magisk Manager). È di stanotte - 6 febbraio 2017 n.d.r. - l'ultimo aggiornamento, che porta Magisk alla versione 11 e il Manager (l'applicazione di gestione) alla versione 4, rendendo questa mod una soluzione All-In-One per la gestione di moduli e permessi di root. Infatti non sarà più necessario installare a parte un gestore dei permessi di superutente, come possono essere Phh Superuser e SuperSU (per il quale viene comunque mantenuta la compatibilità), poichè ora è integrato direttamente in Magisk. Chiamato MagiskSU, non è altro che una versione modificata del gestore di Phh, ma che permette di chiudere il cerchio, rendendo Magisk la piattaforma più completa nell'ambito del modding di Android. Per maggiori informazioni vi rimando alla discussione ufficiale sul forum di XDA.

Apache e gli URL "SEO Friendly"

Per SEO, Search Engine Optimization, si intende un insieme di operazioni volte a migliorare la visibilità di un sito web sui motori di ricerca, con conseguente aumento di visualizzazioni e visite. Tra queste una delle attività più importanti è quella nota come URL Optimization, che consiste nel costruire i link delle pagine del sito in modo da risultare più leggibili e contenere qualche informazione sul contenuto della pagina stessa. Solitamente i CMS più diffusi offrono questa funzionalità out of the box. Wordpress ad esempio, come impostazione predefinita, genera link del tipo dominio/anno/mese/titolo-articolo, ma come possiamo modificarne la struttura a piacimento? E se il nostro sito non si appoggiasse ad un CMS? Ed è qui che entra in gioco Apache.   Apache HTTP Server è la piattaforma server web più diffusa, perchè in grado di operare su una grande varietà di macchine e sistemi operativi e perchè modulare, vale a dire che a seconda delle necessità è possibile caricare o meno diversi moduli della piattaforma. Tra questi ci viene in aiuto mod_rewrite, che permette di riscrivere l'url delle pagine del nostro sito. Per default questo modulo mappa un URL in un percorso sul filesystem, vale a dire che dominio/foo/bar.php indirizzerà al file bar.php contenuto nella cartella foo, ma permette anche di reindirizzare determinati URL ad altri. Questo può essere effettuato attraverso delle direttive impartite modificando il file httpd.conf (file di configurazione di Apache, solitamente non modificabile) oppure il file .htaccess presente nella root del sito web.   Tornando un attimo al SEO, l'ottimizzazione dei link deve essere effettuata tenendo conto di alcune regole base quali Evitare l'uso di query string, quali articolo.php?idarticolo=1234 Evitare link più lunghi di 250 caratteri Inserire negli indirizzi alcune informazioni sul contenuto della pagina, quali titolo, categoria o tag Nel momento in cui si progetta un sito web dinamico, i cui contenuti vengono salvati in un database, però, risulta praticamente impossibile non utilizzare le query string (quindi l'identificazione di una risorsa specifica esclusivamente attraverso parametri GET), con l'obiettivo di scrivere solo una pagina che faccia da template e che verrà popolata dal contenuto dei vari articoli. Facendo un esempio pratico, L'angolo nerd per la gestione degli articoli ha proprio una struttura di questo tipo: una pagina post.php a cui vengono passati i parametri per recuperare l'articolo corretto dal database. Come abbiamo appena visto questo non è l'approccio migliore se si tiene al proprio ranking sui motori di ricerca, quindi abbiamo utilizzato il modulo rewrite di Apache per rimappare gli URL degli articoli, in modo da avere una struttura del tipo /post/id/titolo-articolo. Per farlo è stato modificato il file .htaccess in questo modo RewriteEngine OnRewriteBase / RewriteRule ^post/([0-9]+)/[A-Za-z0-9\-\.]+/?$ post.php?id=$1 [NC,L] In particolare è necessario abilitare il rewrite attraverso il comando RewriteEngine On e poi aggiungere la regola per il mapping desiderato. La sintassi è del tipo RewriteRule pattern$ target [flags]. Il pattern inizia sempre per ^, che sta a significare la nostra webroot (www.langolonerd.it/), si conclude con $ e accetta le espressioni regolari (regex). Nel nostro caso le due regex presenti sono ([0-9]+), che sta a significare una serie di caratteri numerici non nulla, e [A-Za-z0-9\-\.]+, vale a dire una serie di caratteri alfanumerici non nulla con l'aggiunta di caratteri speciali come - e . . Il target riporta il link "reale", quello che PHP dovrà considerare per ottenere le informazioni relative a quell'articolo, a cui viene passato il parametro $1, vale a dire il "risultato" della prima espressione regolare contenuta nel pattern. Per quanto riguarda i flag abbiamo usato NC per un matching case insensitive e L per specificare al modulo Rewrite di fermarsi e non processare altre regole ogni volta che questa viene soddisfatta.    In questo modo i link agli articoli risulteranno più leggibili e più sensati, sia per gli esseri umani che per un "robot" come il Search Engine che, si spera, sarà più contento.