Corona + Phonegap + Physics, Android notifications, and more!

corona, cordova, phonegap
Share on Facebook0Share on Google+3Tweet about this on TwitterShare on LinkedIn0

Last Friday’s GMIC session was a smashing success. Tons of folks were there β€” over 8,000 entrepreneurs, investors, and developers. We got to show off Corona first hand. And even demo’d building Pong in 5 minutes with Corona!

Last week, I alluded to talking some cool new stuff. Some of you had some good guesses. It wasn’t what I demo’d but I won’t deny those things either ;-)

What I can confirm is that we demo’d something that foreshadows some cool stuff to come. One of our longer term projects has been this general theme of extensibility. One aspect of that theme is some core plumbing that’s really going to accelerate a lot of things.

To give you a sense of how powerful this technology is going to be, let me tell you about what I showed at GMIC. In less than an hour, I was able to get PhoneGap, a.k.a. Apache Cordova, running inside Corona!

And just for kicks, I made 20 PhoneGap “views” (a.k.a. CDVCordovaView) behave like physics objects (see photo). Pretty cool, eh?

Under the hood, we’re able to turn any native view into a Corona display object. We plan to offer this capability very soon to all Enterprise customers. And for SDK customers, we plan to make more “modules” available that take advantage of this and other extensibility features.

* * *

We’ve also been hard at work on a bunch of polish items.

For example, in tomorrow’s daily build (936), you’ll be able to detect for when webviews have finished loading. To do this, you’ll look for “loaded” in the urlRequest’s ‘event.type’ property:

There are a bunch more polish items that you can check out on the daily build summary page. We’ve been getting more efficient at squeezing these in between the big stuff.

* * *

What’s next?

Well, so many to choose, but let me choose one that I know a lot of you want to know more about: notifications on Android.

I’m happy to say we are super close to this. We expect to have local notification on Android available very soon (within a week). Remote push notification on Android are going to come a week or two after.

Now, if you’ve done any native coding, you know iOS and Android notifications are wildly different. When you use notifications on Corona, they will work virtually the same. We could have let them behave differently, but you expect more from us. More on all the details when it’s ready!

Share on Facebook0Share on Google+3Tweet about this on TwitterShare on LinkedIn0

This entry has 24 replies

  1. Damir says:

    This is all great stuff.

    What I (and I am sure many other indy devs) need is better monetization options.

    One that would be really appreciated would be AdMob ads.


    • Walter says:

      Yup, we’re going to be enabling lots more modules to be available to you, including more monetization options!

  2. Ivke2006 says:

    Sounds a big step forward..
    But what is not clear to me…are we then able to interact between Corona and, for example, webviews or phonegap widgets?

    • Walter says:

      The webview stuff has been in Corona for awhile. You interact with it via a urlRequest listener. There’s more info in our docs and various tutorials.

      For the phonegap stuff, that’s currently just a demo. Mainly to test out our extensibility system. In terms of interaction, we’ll probably layer something on top of how webviews will work.

      • Ivke2006 says:

        Hi Walter,

        Besides the basic level of interaction possible with webviews, It would be nice to have extended interaction possibilities so we can use for example Java Widgets like a Calender widget and use the data it generates (a date in this example) within Corona.

        But what I’m really looking for are better and more widgets to use in my Business apps.
        If you look at phonegap, they have some nice widgets I also want for Corona.

        So please leave the webview as is, and instead improve the widget library. πŸ™‚

  3. Hector says:

    Wow this is great!. This will fix that annoying white flashlight effect that always appeared when loading a webview. Now I can activate alpha of the webview until webpage truly finishes loading, making it seamless. It’d be interesting to see the implementation of PhoneGap in Corona with a tutorial. I love Corona!!!

    • Walter says:

      Glad you like it! Just to clarify, webviews have been available in Corona for awhile. The quick hack/experiment I put together was to see if we could get Phonegap to be a component inside Corona.

  4. Perry says:

    With native views behaving like display objects, does that mean that you will be able to layer other objects on top of native views? ie. place objects on top of videos, web views, etc…


    • Walter says:

      Good point! I’ve added this to our list.

      • Andreas says:

        +1, buttons on top of videos would be so very helpful!

    • + 1 to this feature! It would be great to add buttons on top of movies as well as other elements

  5. Chevol says:

    Will native views behave in groups now because they now behave like regular display objects? And like Perry asked, can they also be places on top of other native views?

    • Walter says:

      Native display objects have always been a little different.

      Traditionally, we’ve let you put them in groups for relative positioning, but the group has no effect on these native objects wrt to properties like alpha or visibility — that’s because these objects get rendered outside of OpenGL.

  6. This all sounds great, but I’m hoping that Enterprise doesn’t become a paywall keeping basic SDK customers from being able to layer native objects (videos, webviews, etc.) into display groups – so that we can place OpenGL objects “on top” of native objects. That really should be a basic SDK function. But keep up the good work, Corona Labs engineers! πŸ™‚

    • Walter says:

      Yup, good feedback. I’ve added this to the SDK feature list.

      • Thanks, Walter! Any chance we might get an ETA on being able to layer Open-GL objects on top of native display objects? My native.newVideos and native.mapViews are just waiting for custom PNG borders! πŸ™‚

  7. neostar says:


    Nice to hear about push notification.

  8. Bob Mahan says:

    While your looking at monitization options, please consider adding Chartboost also.

  9. ray says:


    nice to hearing from Walter, keep going…

  10. Keith says:

    Any word yet on native calendar access for business devs?

  11. Great to hear!

    If this is a stepping stone to having normal display objects on top of native ones that would be great! Some of the apps i’m working on would really benefit from that.

  12. Chris Leyton says:

    I’d be interested to know how you’re planning to tackle this Walter – if native objects are outside of the OpenGL canvas then how on earth will we be able to control where/how they are rendered in relation to our projects?

    Sounds like magic to me πŸ™‚

  13. Phuong Vo says:

    Admob and chartboost please.

  14. Chris says:

    Android notifications (both local and push) are huge for Android.

    The entire model of Android is intents. If Intents are opened up to Corona on Android, the sky is almost the limit as to what you could do. The question is will Corona Labs make a generic wrapper around intents for us.