Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Is developing an application for Android using Lua only possible?

Tags:

So I read this article on Mobile Orchard and, as I'm planning on having my first steps in Android development, it got me thinking: is it possible to develop for Android in Lua only? I Googled the topic but found no definitive answer. I know Java is the "base style" for Android but for the coding newbie which I am (elementary Python, basic C++), Lua seems somehow clearer and more friendly. Then here goes my question: can one develop an Android app using Lua only? If so, could you please show me some directions to move from here?

like image 687
Straightfw Avatar asked Aug 02 '12 22:08

Straightfw


People also ask

Can you make an application with Lua?

Welcome! Lua is a powerful and fast programming language that is easy to learn and use and to embed into your application. Lua is designed to be a lightweight embeddable scripting language. It is used for all sorts of applications, from games to web applications and image processing.

Can I develop Android app without Java?

Despite not using Java to build Android apps, Xamarin allows you to create native apps that achieve a good user experience, which is a core aspect that any respectable app must-have. Furthermore, Xamarin supports developing cross-platform applications in case you need to develop such an app.

Can you code Lua on mobile?

Fortunately, we've got the Corona SDK and the Lua programming language, which enables cross platform mobile development.

Can you build Android apps with JavaScript?

Can we use JavaScript for Android? Yes, of course! The Android ecosystem supports the concept of hybrid apps, which is a wrapper over the native platform. It mimics the UI, UX, and all kinds of hardware and network interactions, just like how you would use a native Android app.


2 Answers

I've been developing a mobile application in Lua to control robots remotely from iOS and Android phones. The app is in pure Lua and runs on top of Mosync platform using MobileLua. There is still some plumbing required, but it's not too complex.

I also have a debugger and a Lua IDE (ZeroBraneStudio) that support debugging of Lua scripts running remotely (including MobileLua scripts running on Android or iOS devices). I provide a demo app you can use as a client to run simple scripts and check remote debugging in action.

[Update] If you are interested in more game oriented options, there are several available: (1) already mentioned Corona SDK, (2) Moai, and (3) Gideros Mobile. There is also Marmalade Quick and Cocos2d-x Lua bindings (for example, quick-cocos2d-x). All these toolkits/frameworks allow to develop in Lua.

Here is a detailed comparison of Moai vs. Corona.

like image 56
Paul Kulchenko Avatar answered Sep 17 '22 21:09

Paul Kulchenko


I know this is an older question, but just to correct some misinformation (in the comments) for people who come later, Corona SDK (as of spring 2013) has a Starter Edition which is free -- no splash screen or anything. The main difference between it and the "Pro" version is you can't do in-app purchases in the Starter Edition. But you can use it to create apps for sale, etc. No expiration date on it or anything.

And in answer to the original question, learning Java may allow you to write Android apps, but if you then also want to target iOS you don't have any great options. By choosing something that's cross-platform from the beginning you can target Android or iOS or both. Lua (in any of the flavors already mentioned) is a great base language to learn for mobile development.

like image 32
J. A. Whye Avatar answered Sep 21 '22 21:09

J. A. Whye