- Hai due problemi (o più).
- In primo luogo, qualsiasi cosa tu possa provare a fare per rilevare un sistema jailbroken potrebbe essere interpretata da Apple come un tentativo da parte della tua app di violare le condizioni di sandboxing, che potrebbero portare alla tua app rifiutata. Ad esempio, supponiamo che tu abbia provato a rilevare un OS jailbroken di
if (-1 != open("/dev/random", O_RDONLY))
. Apple potrebbe presumere che tu stia cercando di leggere da /dev/random
e rifiutarti.
- Tutto ciò che potresti provare a fare per rilevare un sistema jailbreak potrebbe essere corretto dalla comunità di jailbreak. Ad esempio, potrebbero applicare patch al kernel per impedire alla tua app di aprire
/dev/random
, perché sanno che lo stai facendo solo per rilevare un sistema operativo jailbroken.
- Che altro vorresti fare? Non ti fidi del sistema operativo su cui stai lavorando, quindi abbandoni l'esecuzione.
In breve, il jailbreak non è un problema, è un problema di Apple. Consenti a Apple di risolvere i loro problemi e concentrati sulla soluzione dei tuoi. (Tra l'altro mi chiedo come mai la gente abbia rilasciato software per PC se non si fidano di iOS jailbroken, quando Windows e jailbroken iOS permettono fondamentalmente che succedano le stesse cose.)