Abilitare JIT su iOS 17 usando SideJITServer: Tutorial completo

SideJITServer è il modo più semplice per abilitare JIT su iOS 18 per emulatori e app ad alte prestazioni. Questo potente strumento funziona in modalità wireless tramite la rete locale, consentendo di attivare la compilazione Just-In-Time da qualsiasi computer Windows, Mac o Linux. Sviluppato da nythepegasus del team SideStore, SideJITServer aggira le restrizioni di Apple per aumentare la velocità delle app senza dover effettuare il jailbreak del tuo iPhone.
SideJITServer è uno script Python progettato per essere eseguito in un ambiente Python sul desktop. A partire dalla sua ultima versione, richiede le seguenti versioni dei componenti: `pymobiledevice3>=4.2.3,<4.3.0`, `Flask==3.0.2` e `zeroconf==0.132.2`. Il tentativo di utilizzare versioni diverse di questi componenti potrebbe causare errori durante l'esecuzione di SideJITServer. Pertanto, è fondamentale attenersi a queste versioni specificate per garantire una funzionalità ottimale.
Che cos'è SideJITServer e perché utilizzarlo per iOS 17?
SideJITServer, sviluppato da nythepegasus di SideStore, è uno strumento che consente la compilazione Just-In-Time (JIT) su iOS 17.0 – iOS 18.3 per tutti i dispositivi che la supportano. Funziona in modo simile a Jitterbug, che consente a un dispositivo iOS di avviare app con un debugger su un altro dispositivo iOS con JIT abilitato.
Questo strumento funziona da riga di comando (Terminale) e supporta sia Linux che Windows. Essendo scritto in Python, tecnicamente può essere eseguito su qualsiasi distribuzione Linux. Si basa sulla libreria pymobiledevice3, quindi è necessario averla installata.
SideJITServer non è utile solo per emulatori come DolphiniOS e Delta, ma funziona anche con app di virtualizzazione come UTM per iOS. Questo significa che puoi eseguire ambienti Linux o Android completi sul tuo iPhone, proprio come VirtualBox.
Cosa significa JIT per gli iPhone?
La compilazione JIT (Just-In-Time) è una tecnologia che velocizza l'esecuzione delle app traducendo il codice in linguaggio macchina mentre l'app è in esecuzione. Invece di compilare tutto in anticipo, JIT compila solo le parti necessarie del codice mentre vengono utilizzate. Questo rende le app, in particolare quelle di virtualizzazione o emulatori, e i giochi ad alte prestazioni più fluidi e veloci sul tuo iPhone.
Tuttavia, Apple limita JIT per la maggior parte delle app di terze parti per motivi di sicurezza. Per impostazione predefinita, iOS consente JIT solo in Safari per migliorare le prestazioni web. Per altre app, come gli emulatori, sono necessari metodi speciali per abilitare JIT, come SideJITServer o il sideload con un certificato sviluppatore.
Parte 1. Installazione di SideJITServer
Passaggio 1. Creare un ambiente virtuale denominato "venv" utilizzando Python per utilizzare un ambiente isolato per il progetto Python.
python3 -m venv venv
Passaggio 2. Installare SideJITServer seguendo il comando di installazione pip3 per il pacchetto.
pip3 install SideJITServer
Passaggio 3. Installa pymobiledevice3, l'implementazione python3 di vari strumenti per iDevice. Si consiglia di utilizzare la versione più recente di pymobiledevice3 <4.3.0.
python3 -m pip install -U pymobiledevice3
Passaggio 4. Esegui il comando di avvio per verificare se SideJITServer è installato sul desktop. Apri inoltre http://127.0.0.1:8080 nel browser per verificare se il dispositivo è associato.
SideJITServer --help

Parte 2. Prerequisiti per abilitare JIT con SideJITServer
Passaggio 1. Collega il tuo dispositivo iOS 17 al computer ed esegui il seguente comando per associarlo. Quindi, prendi il tuo iPhone e continua con i passaggi successivi.
SideJITServer --pair

Passaggio 2. Nella schermata iniziale del tuo iPhone, apparirà un popup con la scritta "Vuoi autorizzare questo computer?". Tocca "Autorizza" e inserisci il tuo PIN per consentire la connessione tra il PC e l'iDevice.

Passaggio 3. Esegui SideJITServer per avviare il server sul tuo computer. Potrebbe essere necessario un comando sudo. In questo caso, inserisci la password quando richiesto.
SideJITServer

Passaggio 4. Aggiungere questo collegamento necessario per rilevare ed eseguire le app in modalità JIT.
Passaggio 5. Tocca "Imposta collegamento" sullo schermo del tuo dispositivo.

Passaggio 6. Inserisci l'UDID del tuo dispositivo. Puoi trovarlo facilmente inserendo questo IP http://127.0.0.1:8080 nel tuo browser. Ad esempio, UDID "00022010-001A5BC60CS9012X".

Passaggio 7. Inserisci quindi l'indirizzo del server. Verrà visualizzato nell'app terminale che esegue SideJITServer. È importante fornire l'indirizzo URL completo, inclusi http e porta.
http://192.168.0.241:8080

Parte 3. Guida passo passo per abilitare JIT su iOS 17/18
Passaggio 1. Assicurati che SideJITServer sia in esecuzione sul desktop. Se installato correttamente, vedrai l'UDID del dispositivo associato nel browser. Apri l'app Comandi rapidi dalla schermata iniziale di iOS 17 e tocca il collegamento SideJIT precedentemente aggiunto.

Passaggio 2. Consentire a SideJIT di connettersi a "192.168.0.241".

Passaggio 3. SideJIT mostrerà un elenco di tutte le app installate su iOS 18 che supportano JIT. Seleziona quella che desideri aprire in modalità JIT.

Passaggio 4. L'applicazione dovrebbe aprirsi in modalità JIT abilitata su iOS 18.

FAQ
Sì! SideJITServer è compatibile con iOS 17 e iOS 18.3. Per abilitare JIT sulle versioni iOS più recenti, assicurati di scaricare l'ultima versione del collegamento a SideJITServer dal repository ufficiale GitHub.
Se il collegamento a SideJITServer non funziona, controlla la tua connessione internet, verifica che l'opzione Collegamenti non attendibili sia abilitata nelle Impostazioni e reinstalla il collegamento da una fonte attendibile.
SideJITServer è open source e sicuro se scaricato dalla pagina ufficiale GitHub. Evita link di terze parti per prevenire rischi per la sicurezza.
Comments
Amy 10 mesi fa
Hello I’ve been following this tutorial but keep running into a problem when I try to run the server with ‘sudo SideJITServer’. I get the ERROR 48, error while attempting to bind on address, address already in use
On the bottom it also says Pymobiledevice3.exceptions.DeveloperModeIsNotEnabledError ()I already have developer mode turned on for my Mac computer. Please help I don’t know how to fix it.
qbap 10 mesi fa
Use Activity Monitor to shut down the previous Python process to fix the address already in use or restart the Mac. Update the scripts. New versions of SideJITServer and pymobiledevice3 are released almost daily. Use pymobiledevice3 to enable/disable developer mode or query its state on your iPhone. Find what process is using the port 49151 and kill it. Repeat all steps from the article.