Cercherò di mettere insieme una risposta in base ai commenti.
A grandi linee, hai ragione che la vita sarebbe migliore se le app con dati sensibili rifiutassero di essere eseguite su dispositivi jailbreak. Detto questo, l'intero punto del jailbreak è aprire le funzionalità di sicurezza del sistema operativo e consentire alle app di avere accesso root. La tua domanda
Should an iOS app be allowed to run on jailbroken devices?
è un po 'come chiedere
"Should valuable jewelry be allowed in my house after I've removed all the doors and windows?"
Voglio dire, no, non dovrebbero, ma è davvero colpa tua, non dei gioielli.
Is there a way so that an app can't be installed on a jailbroken device?
Can Apple control which apps can't run on jailbroken devices?
Solo Apple può fornire una risposta adeguata a questo, qualsiasi cosa detta qui sarà speculazione. La risposta breve è: non proprio o non affidabile .
Google "come rilevare un iphone jailbroken" e avrai multato una pila di articoli e domande Stack Overflow che sostanzialmente confermano che le persone cercano di rilevare se la loro app è in esecuzione su un dispositivo jailbroken, ma è un gioco di gatti -e-topo:
Come qualsiasi altro rootkit, gli autori degli strumenti di jailbreak vogliono rendere difficile scoprire se il dispositivo è jailbreak o meno. Cercando di rilevarlo, stai praticamente entrando in una corsa agli armamenti con gli autori del rootkit.