Apple App Store: Difference between revisions
Added archive URLs for 1 citation(s) using CRWCitationBot |
m wanted: JS; link Py & Lua to WP |
||
| Line 122: | Line 122: | ||
The following paragraph is highly technical: JIT allows for speedy programs/apps, and due to its fast nature, it's used almost everywhere and represents a massive improvement over older code interpreters. | The following paragraph is highly technical: JIT allows for speedy programs/apps, and due to its fast nature, it's used almost everywhere and represents a massive improvement over older code interpreters. | ||
[[wikipedia:Just-in-time compilation|JIT]], which stands for Just-In-Time, is a method of code execution where code, instead of being compiled before being distributed (like an EXE), gets compiled into machine code in real time right before being executed. This method of code execution allows for much faster website loading times, speedier emulation, faster program execution (with programs written in JavaScript, Python, Lua...) compared to interpreters, which instead translate code into machine code line by line, which is much, much slower; JIT also employs many more optimization techniques meant to improve performance. | [[wikipedia:Just-in-time compilation|JIT]], which stands for Just-In-Time, is a method of code execution where code, instead of being compiled before being distributed (like an EXE), gets compiled into machine code in real time right before being executed. This method of code execution allows for much faster website loading times, speedier emulation, faster program execution (with programs written in [[JavaScript]], [[wikipedia:Python_(programming_language)|Python]], [[wikipedia:Lua|Lua]]...) compared to interpreters, which instead translate code into machine code line by line, which is much, much slower; JIT also employs many more optimization techniques meant to improve performance. | ||
Safari is allowed to use JIT to compile code from any site, just like Apple's [https://apps.apple.com/app/swift-playgrounds/id908519492 Playgrounds] app on iPad. Playgrounds bundle Apple's [[wikipedia:Swift (programming language)|Swift]] compiler and share backend code with the version of Playgrounds found in [[wikipedia:Xcode|Xcode]]. | Safari is allowed to use JIT to compile code from any site, just like Apple's [https://apps.apple.com/app/swift-playgrounds/id908519492 Playgrounds] app on iPad. Playgrounds bundle Apple's [[wikipedia:Swift (programming language)|Swift]] compiler and share backend code with the version of Playgrounds found in [[wikipedia:Xcode|Xcode]]. | ||
| Line 133: | Line 133: | ||
However, Apple still does not allow different engines outside of the EU, with or without JIT support.<ref>{{Cite web |title=App Review Guidelines |url=https://developer.apple.com/app-store/review/guidelines/#2.5.6 |url-status=live |archive-url=http://web.archive.org/web/20260128202153/https://developer.apple.com/app-store/review/guidelines/ |archive-date=28 Jan 2026|access-date=16 Mar 2025 |website=[[Apple Developer]]}}</ref> | However, Apple still does not allow different engines outside of the EU, with or without JIT support.<ref>{{Cite web |title=App Review Guidelines |url=https://developer.apple.com/app-store/review/guidelines/#2.5.6 |url-status=live |archive-url=http://web.archive.org/web/20260128202153/https://developer.apple.com/app-store/review/guidelines/ |archive-date=28 Jan 2026|access-date=16 Mar 2025 |website=[[Apple Developer]]}}</ref> | ||
==In-app browsers== | ==In-app browsers== | ||
When apps want to display web content without opening the standalone Safari browser, app developers can use Apple’s [https://developer.apple.com/documentation/webkit/ WebKit] APIs, such as WKWebView. However, due to Apple’s [https://developer.apple.com/documentation/security/app-sandbox application sandboxing] and WebKit’s data-isolation model, web content loaded inside one app does not have access to Safari’s cookies, browsing history, saved sessions, or extensions, nor to data from other apps’ embedded web views. Each app’s embedded browser operates with its own isolated website data store. | When apps want to display web content without opening the standalone Safari browser, app developers can use Apple’s [https://developer.apple.com/documentation/webkit/ WebKit] APIs, such as WKWebView. However, due to Apple’s [https://developer.apple.com/documentation/security/app-sandbox application sandboxing] and WebKit’s data-isolation model, web content loaded inside one app does not have access to Safari’s cookies, browsing history, saved sessions, or extensions, nor to data from other apps’ embedded web views. Each app’s embedded browser operates with its own isolated website data store. | ||