Kodular Companion for iOS

Kodular Companion for iOS
Maybe Kodular cannot build apps for iOS but can help iOS users to test it atleast
Will it be possible

This is not possible. Android and iOS are totally different operating systems. Even if there is a bridge between them, there are components, blocks, extensions etc.

1 Like

I think it would be really difficult (or impossible)
If you want to use the companion, but you don’t have an android device, download an emulator on your computer

1 Like

nope it’s possible just for testing if the try then

But project still needs to be parsed. For example iOS’s and Android’s Button components are doing exact thing, but their coding styles can be different.

Adding to what @yusufcihan said, the companion can’t be created directly in Kodular or Android Studio, it can only be built while compiling the sources. And since, Kodular is only for Android and as are it’s sources, it’s not possible to build it for iOS.

1 Like

Companion itself is made using Creator. So, until Creator supports iOS, companion won’t be available on it.

3 Likes

An iOS Companion isn’t possible to make, I’m afraid.

Here’s what happens to your blocks when the Companion is connected:

  1. Your mobile device becomes a web server (identified by its IP address*) which the Creator tries to connect to.
  2. Once the Creator has connected to the Companion, it initiates a REPL (read/eval/print/loop).
  3. Your blocks are converted into YAIL (Young Android Intermediate Language), which is a series of macros written in Kawa Scheme, and sent to your device line by line.
  4. The Companion then does 4 things as per the read/eval/print loop
  • a. It reads the YAIL data sent to it by the Creator.
  • b. The YAIL macros are converted in Java Virtual Machine bytecodes, which are then converted into Dalvik Virtual Machine bytecodes
  • c. Android runs these DVM bytecodes natively, thereby “mirroring” your app in real-time
  • d. If the web server is still open, return to step a.

iOS does not support steps b and c, which is why we cannot run the Companion on Apple devices.

*To be able to connect to the Companion, the Creator needs to know which web server it has to connect to. The web server is identified by your device’s IP address, which the Creator must know before opening a connection. To do this, your IP is sent to a common database (called the rendezvous server) which both your device and the Creator can access.
You are then asked to enter a 6 digit code which appears on the Creator, with the help of which the Creator can correctly identify which IP address it must connect to.

I hope this sheds some light on the workings of the Companion :smiley:

References:

11 Likes

Summarizing: Magic :smiley::joy:

4 Likes

This was extremely interesting! I’d love to know more about these inner workings. :smile:

4 Likes

but Appinventor is working for an iOS version then I think it can be possible

1 Like

Same as thunkable