Is it possible: Using Apportable to port Codea apps to Andoid

I’m not too knowledgable about Objective-C and especially about Android coding. I just ran across something called Apportable which is used to port iOS apps to Android. It works on Cocos2D, so I was wondering if it might work on the Codea runtime.

Wow ,that would be really amazing @Zoyt !

I have just tried to convert a project, but it looks like not a trivial task :-))

function L_OBJC_CLASSLIST_REFERENCES_$_10: error: undefined reference to 'OBJC_CLASS_$_CodeaViewController'
AudioAddOn.m:132: error: undefined reference to 'lua_pushcclosure'

dozens of more errors and warnings and finally:

scons: *** [Build/android-armeabi-debug/CodeaGame/apk/lib/armeabi/] Error 1
Packaging assets/RuntimeResources.bundle/pt.lproj/Localizable.strings
scons: building terminated because of errors.
Exception AttributeError: "'NoneType' object has no attribute 'pack'" in <bound method ZipFile.__del__ of <zipfile.ZipFile instance at 0x10f9f7638>> ignored

I think we could leave this to the enginers :wink:

@juaxix - Haha, yup. @Simeon - What do you think?

Looks quite professional, but the pricing is very high… Are we talking about using the starter pack to deploy apps to android?

@Zoyt interesting thought. You wouldn’t be able to use it yourself, but we could look into building an Android version of the runtime library using Apportable.

Android apps are made in Java, so wouldn’t the runtime have to be entirely recoded in Java?

@SkyTheCoder that’s what Apportable does, it’s an automated tool that converts the Objective-C or C++ code into either a native JNI + java wrapper or Android NDK C code (unsure exactly what it does, haven’t used it).

It seems best for converting pure OpenGL based games, this would be pretty simple because there is less platform specific stuff. It also happens that most of the Codea Runtime is like an OpenGL based game. So it could be an interesting experiment.

@Simeon - Looking forward to seeing if you can come up with anything.

@juaxix - Great. I don’t think that OpenGL stuff will be that much of an issue.
Good to know!

Scratch that: People seem to be having issues with the App shader extension. We’ll see if it works.

Got this message from the Apportable team:

Codea looks like it generates Objective-C code and Lua scripts. It could work, the only problem is if it uses parts of UIKit that aren't implemented yet. And judging from the errors in the link you sent me, it does just that. The good news is that we are going to be releasing a UIKit update in a few weeks. Maybe it will work after that!

maybe next version should be fine but i’m worry about the shaders…

This would be amazing!

Loving the sound of this! Soon my android will be looking like my iPad hopefully

This would be awesome! I have an android phone and it always bugs me that I can’t run my apps on it :smiley:

Any news?

How about the pre shader versions? I wouldn’t mind being a few versions behind in order to get it working.

@akiva - I don’t think that’ such of an issue. I think it’ small the other debugging stuff that is not compatable.

@Simeon did you ever get the runtime environment ported with apportable?

Guys, did you see cider?

Here they run an iPad app into a Nexus tab

@erickyamato, Cider is very slow, doesn’t support many frameworks, and just isn’t ready for mainstream use. The team did say that they will continue working though, so it is an interesting project to keep an eye on