Threads è il nuovo social network di Meta per la condivisione di aggiornamenti testuali e la partecipazione a conversazioni pubbliche online. Si tratta di una piattaforma basata su Instagram che presenta funzionalità molto simili a quelle di Twitter. Le applicazioni mobile di Threads sono state ottimizzate per garantire un elevato livello di performance. Scopriamone le caratteristiche attraverso l'analisi che ne hanno effettuato gli sviluppatori di Emerge Tools, una delle suite più avanzate per il mobile development.
L'applicazione Android di Threads
Per quanto riguarda il Robottino Verde, release 289.0.0.77.109, Threads è stata distribuita tramite uno universal APK nel quale si segnalano l'uso di ReDex e l'offuscamento delle risorse. Nello specifico ReDex è un bytecode optimizer per la lettura, la scrittura, e l'ottimizzazione dei file in formato .dex
. Gli APK elaborati tramite ReDex sono in genere più piccoli e veloci rispetto ai loro sorgenti.
Un'altra particolarità riguarda il fatto che Threads presenta anche il codice di debugging, come dimostrato dai package com.instagram..debug.quickexperiment
e com.instagram.debug.devoptions.sandboxselector
. Alcune parti dell'applicazione sfruttano React Native e si nota la presenza di un file .spo
di dimensioni consistenti che dovrebbe rappresentare la versione compressa di alcune librerie native.
Le dimensioni dell'App sono pari a 72.3 MB, mentre per la creazione della UI sarebbe stato utilizzato Jetpack Compose. In questo caso però la dimensione del .dex
appare ridotta per via della condivisione di elementi con Instagram.
L'applicazione iOS di Threads
La versione per il sistema di Apple è la 289.0 che pesa 244.2 MB. Non sono presenti librerie dinamiche a differenza di come accade per altre App di Meta come quella di Facebook. A stupire sono in particolare le dimensioni, con plugin come BarcelonaShareExtension
e InstagramNotificationExtension
che pesano rispettivamente più di 80 e 23 MB. È comunque utile notare che FBSharedFramework di Instagram condivide diversi elementi con la BarcelonaShareExtension
di Threads.
Anche in questo caso abbiamo la condivisione di grandi quantità di codice tra Threads e Instagram. Per ora infatti, una volta attivato l'account del secondo eliminandolo viene rimosso anche quello del primo.
Tra gli elementi condivisi troviamo ad esempio FilterAsset.bundle
e anche l'asset catalog appare essere lo stesso di Instagram.