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 !
Espionnage d’iPhone : un journaliste italien alerté par Apple
15:07
• 0
Spotify, Match et d’autres se liguent (encore) contre Apple et Google
12:30
• 5
Apple mord la poussière face à Epic, mais ne rend pas les armes
09:56
• 45
Nos trucs et astuces pour mieux utiliser Apple Pay sur votre iPhone
08:54
• 22
Pourquoi Telegram et Signal menacent de quitter la France, voire l’Union européenne
30/04/2025 à 22:00
• 101
Le CEO de Google confirme discuter avec Apple pour intégrer Gemini à Siri d’ici la fin de l’année
30/04/2025 à 21:30
• 27
Apple ne propose plus de nouvelle couleur au printemps, et les (Product)RED semblent définitivement enterrés
30/04/2025 à 21:00
• 18
OpenAI enlève GPT-4, et supprime le côté flatteur de l’IA pour la rendre plus efficace et économiser des millions de dollars
30/04/2025 à 20:15
• 14
La puce de la Nintendo Switch 2 est plus grosse qu'une puce M4… parce que Nintendo emploie de vieilles technologies
30/04/2025 à 18:15
• 36
Promo : des batteries magnétiques Anker et Ugreen à partir de 36 €
30/04/2025 à 17:52
• 17
Carrefour propose 15 % de réduction sur des produits Apple (comme les AirPods Max) si vous avez la carte de fidélité
30/04/2025 à 16:49
• 27
De nombreuses failles corrigées dans AirPlay et CarPlay, des piliers de la stratégie d'Apple
30/04/2025 à 16:10
• 11
Raycast arrive sur l’iPhone, essentiellement pour les fonctions liées à l’IA
30/04/2025 à 13:53
• 3
French Days : l'iPhone 13 à 599 € avec 512 Go
30/04/2025 à 11:29
• 20
B&You ajoute des frais de résiliation sur tous ses forfaits
30/04/2025 à 10:55
• 63
LG plante le dernier clou sur le cercueil de ses smartphones en fermant les serveurs de mises à jour
30/04/2025 à 10:33
• 5

Test d’un détecteur de présence sur piles pour Home Assistant

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

Test d'un adaptateur CarPlay sans fil à moins de 15 €

Test de l’iPhone 16e : pour tout le monde, ou presque

Test d'une prison pour smartphone, pour ceux qui n'arrivent pas à abandonner leur iPhone
