S'il était déjà possible de créer des applications pour iOS à l'aide de JavaScript (en confiant le rendu à une UIWebView et l'exécution au moteur JavaScript d'iOS, ou tout simplement à l'aide d'outils tels que PhoneGap ou Appcelerator Titanium), Dominic Szablewski a été encore au delà
Il a réalisé deux jeux à l'aide de son moteur en JavaScript nommé Impact. Jusqu'ici, rien que de très anodin, mais c'est la manière dont ses jeux sont exécutés qui est originale : au lieu d'utiliser une vue WebKit, le rendu est confié directement à OpenGL, le son à OpenAL, et l'exécution du code au moteur JavaScript d'Apple.
Mais Szablewski avait déjà fait une première tentative en octobre dernier, qui s'était soldée par un échec : Apple avait refusé de valider ses applications car JavaScriptCore est une bibliothèque privée, et l'appel à de telles fonctions est proscrit par les règles de l'App Store. Dominic Szablewski a fait preuve d'ingéniosité : il a intégré la version open source de JavaScriptCore, livrée avec WebKit, dans son application. Il lui aura fallu quelques jours de travail pour faire l'ablation du moteur JavaScript, notamment parce qu'il fait appel à d'autres API privées. Le petit sacrifice qui en résulte, c'est que le moteur ne permet plus de gérer le texte en Unicode (retour au bon vieux codage ASCII), et il ne permet pas non plus d'utiliser l'accélération fournie par Nitro, le compilateur Just-In-Time intégré dans la dernière mise à jour d'iOS.
Moralité, au prix d'un surpoids de 2 Mo supplémentaires, les jeux ont été validés par Apple. Ils sont gratuits et font plus figure de démonstration d'Impact qu'autre chose (le moteur coûte 99 dollars), mais ont le mérite de montrer que la solution est viable : Biolab Disaster [1.0 - 9,8 Mo - gratuit] et Drop [1.0 - 6,1 Mo - gratuit]. Naturellement, vous pouvez également y jouer dans votre navigateur, sur tout type de machine : Biolab Disaster et Drop
Rejoignez le Club iGen
Soutenez le travail d'une rédaction indépendante.
Rejoignez la plus grande communauté Apple francophone !
Pratique pour l'été : un thermomètre de piscine connecté !
20/07/2025 à 19:58
• 0
Votre Mac souffre ? BuhoCleaner 2025 lui redonne un coup de fouet (promo -68 %) 📍
20/07/2025 à 10:33
• 0
Test du Synology DS925+ : ça passe ou ça NAS
20/07/2025 à 10:31
• 20
Sortie de veille : Safari éclipsé par Comet ? Notre avis sur le navigateur de Perplexity
20/07/2025 à 10:31
• 19
Promo : le transmetteur/récepteur Bluetooth d’Ugreen à seulement 30 €, parfait pour utiliser ses AirPods en avion
18/07/2025 à 23:36
• 13
La batterie de l’iPhone 17 Air devrait faire moins de 3 000 mAh
18/07/2025 à 21:45
• 86
Que vaut vraiment le portage Mac de Cyberpunk 2077 ?
18/07/2025 à 18:54
• 38
TF1 sur Netflix : une offre en contenu local réclamée par les abonnés
18/07/2025 à 17:55
• 19
Netflix reconnaît avoir utilisé de l'IA dans une de ses productions
18/07/2025 à 15:53
• 54
Batteries, supports, stations d’accueil : les fabricants se préparent à l’arrivée du Qi2.2
18/07/2025 à 11:49
• 9
iPhone 17 : la palette des couleurs se précise et les Pro ont belle allure
18/07/2025 à 11:18
• 71
Promo : l’iPhone 16 avec 256 Go à 899 € (-200 €)
18/07/2025 à 10:12
• 0
Vimeo est de retour sur Apple TV avec une app repensée
18/07/2025 à 09:42
• 15
Scandale : Apple Intelligence supprime les chats sur les photos 🙀
18/07/2025 à 09:15
• 60
ChatGPT Agent : l’IA qui peut (vraiment) faire le boulot à votre place
18/07/2025 à 08:43
• 108
IA : Meta continue de déstabiliser Apple en recrutant ses talents
18/07/2025 à 08:34
• 37

Test de la Razer Kishi V3 Pro XL : une excellente manette-berceau pour iPad, mais à quel prix ?

Test du PlugBug 120 W : un chargeur de voyage qu’on n’oublie pas grâce à Localiser

Test d'un traqueur Bluetooth à moins de 4 € : est-il vraiment aussi bien qu'un AirTag ? 🆕

Test de la sonnette vidéo G410 d’Aqara : toujours sur piles, mais avec un meilleur angle

Test des traqueurs Ugreen FineTrack : moins chers que les AirTags, mais…
