Will Fork() in iOS App Likely Be Rejected by Apple's Vetting Process

Will fork() in iOS app likely be rejected by Apple's vetting process?

You can't create new process in an iOS application on a non jailbroken device (you would get an error such as "Operation not permitted"), but you can create new thread using pthread library.

Edit : But if you're trying to detect whether a device is jailbroken, I don't think that would violate the store guidelines just to 'try' to do a fork, but it's more a legal question than a technical question.

I found nothing in the app store guidelines that forbid the use of calling some low-level API. Which is logical, since jailbreak doesn't exist, what would they forbid you to do something that you're not able to do ?

The closest things I found are :

  • Apps that read or write data outside its designated container area will be rejected
  • Apps that download code in any way or form will be rejected
  • Apps that install or launch other executable code will be rejected

Is ok to check if an iOS device is jailbroken without violating Apple's coding standards?

Yes it is and there are many reasons to do so. I did this multiple times and they all passed the store approval process. Maybe there are ways that can break Apple's guidelines but it's not forbidden to check the filesystem for bash or something like this.



Related Topics



Leave a reply



Submit