[TIMOB-19287] Create JerryScript Titanium API on Apple Watch prototype
GitHub Issue | n/a |
---|---|
Type | Story |
Priority | Critical |
Status | Closed |
Resolution | Done |
Resolution Date | 2015-08-07T00:05:58.000+0000 |
Affected Version/s | n/a |
Fix Version/s | n/a |
Components | iOS, TiAPI, Windows |
Labels | n/a |
Reporter | Christopher Williams |
Assignee | Kota Iguchi |
Created | 2015-07-29T23:34:57.000+0000 |
Updated | 2017-03-16T22:54:35.000+0000 |
Description
Generate a proof of concept for running Titanium API/apps on Apple Watch using JerryScript as the JS engine.
Ideally this would be able to leverage our existing iOS titanium_mobile, or TitaniumKit/HAL codebase. Perhaps a HAL-equivalent on top of JerryScript that would require minimal work to have TitaniumKit to work on top (be able to swap between the two engines easily)?
Github: https://github.com/Samsung/jerryscript
Homepage: https://samsung.github.io/jerryscript/
API: https://samsung.github.io/jerryscript/API/
So the good part in JerryScript I see is that API similarity between JavaScriptCore, which makes it easier to integrate with HAL-TitaniumKit API. I was able to build [HAL API on top of JerryScript](https://github.com/infosia/Daisy). It actually runs pretty good on OS X. POC for TitaniumKit-WatchKit integration are done in [examples/JerryWatch](https://github.com/infosia/Daisy/tree/master/examples/JerryWatch). TitaniumKit are mostly working without changes, which is good. On WatchKit I was able to make it compiled, it executes TitaniumKit functions as expected, but immediately after that WatchKit freezes. It looks like root cause was from memory allocation in JerryScript. So I would say JerryScript is still early product but integration between HAL-TitaniumKit fits very well regarding architecture.
Closing ticket as done.