|
|
|
|
|
by shmerl
5251 days ago
|
|
The last time I checked their SDK license, it let you use their JavaScript VM for the dynamic code (unless this changed recently): ===>
3.3.2 An Application may not itself install or launch other executable code by any
means, including without limitation through the use of a plug-in architecture, calling other
frameworks, other APIs or otherwise. No interpreted code may be downloaded and used in
an Application except for code that is interpreted and run by Apple's Published APIs and builtin
interpreter(s).
<=== So the argument that they ban any interpreted code is hypocritical. They ban competing browsers through banning JavaScript VMs. |
|
http://www.quora.com/JavaScript/Why-has-Apple-limited-the-Ni...
Here is the why: http://daringfireball.net/2011/03/nitro_ios_43
>It’s a trade-off. Most OSes allow marking memory pages as executable for performance reasons. iOS disallows it for security reasons. If you allow for pages of memory to be escalated from writable to executable (even if you require the page be made permanently read-only first), then you are enabling the execution of unsigned native code. It breaks the chain of trust. Allowing remote code to execute locally turns every locally exploitable security flaw into a remotely exploitable one.