Category Archives: Mobile & Devices

Develop and publish mobile apps for free

Corona Labs announced a completely free version of Corona SDK for developing and publishing mobile apps and games. This is great news for anyone who wants to create apps without paying a single cent. Students, indie developers and hobbyists would benefit most from this announcement.

What’s the catch? Well, there really isn’t one, except the new Starter version does everything the Pro version did, minus these three features: In-app purchases, analytics, and access to daily builds. Corona Labs doesn’t even require their splash screen to be displayed like some other “free” SDKs. A developer can use the Starter version to make apps and earn money by either charging up-front, using ads, or other means.

You’re probably thinking why would Corona Labs make this move. The reason is simple: Attract more developers to their platform (SDK and Corona Cloud). If developers feel the need for the three features and upcoming “pro” features, they would upgrade to the Pro version. Some pro features Corona Labs mentioned they’re working on include: new graphic features using OpenGL 2.0, plugins, device access through native code (maybe, but not full-blown like the Enterprise edition).

For existing developers with Indie subscription, they’re now automatically upgraded to the Pro version. For Pro subscribers, they get two extra months of subscription. For Enterprise subscribers, there’s no change.

There is, however, a price increase for the Pro version starting May 1st, 2013 from $349 to $599 per year. For pro subscribers, as long as their subscriptions are not expired by April 30th, they can upgrade twice at the old price of $349. For anyone who wants to take advantage of the lower price (for the next two years), subscribe by April 30th! More info at their pricing page and the conversation with their COO.

As a side note, Corona Cloud is an exciting server solution for any developer (not just Corona developers) who needs features such as User accounts & authentication, Leaderboards & Achievements, Multiplayer, Push Notifications, Social Connect, Cloud Sync, Chat, News, and Analytics. This simplifies greatly dealing with the server from a developer’s point-of-view.

For those who are interested, Walter Luh (CEO of Corona Labs), will be coming to FITC Toronto this month. His presentation is Building Native Apps: A Digital Canvas for Coders and Designers.

Off to making apps that people love…

Screens 2011 = New FITC Mobile Conference

For those who follow this mobile development space, the FITC Mobile conference in Toronto should be familiar. This year, the event is renamed to SCREENS.

It’s two full days of presentations and one optional day of workshop, all focused on mobile development for various devices.

Topics covered include:

Android OS • App Success • BlackBerry Tablet OS • Corona SDK • Designing for Mobile • Mobile Marketing • Digital Home • Grand Central Dispatch and Blocks • iOS • jQuery Mobile • Managing Mobile Projects • Metro • Microsoft Stack • HCI • QNX • Thread Management • UI • UX • Windows Phone

Companies represented include:

Microsoft • Adobe • HP • Wavefront • Indusblue • QNX • Mobicartel • Ludicrous Software • Jam3 Media • Best Buy • WhereCloud Inc. • Almer/Blank • Transcontinental Interactive • Teehan + Lax • Canadian Film Center

And speakers include:

Adam Stanley • Alex Kennberg • Bob Burns • Brad Wing • Brady Gilchrist • Chuck Freedman • Darren Osadchuk • Erik Von Harten • Faisal Abid • Greg Carron • Hod Greeley • James Maynard • Jean-Luc David • Joshua Granick • Joshua Marinacci • Julian Dolce • Kevin Suttle • Marin Alejandro • Martin Dufort • Matt Fisher • Matt Rix • Matthew Patience • Mikko Haapoja • Paul Laberge • Pearl Chen • Peter Nitsch • R Blank • Renaun Erickson • Robert Burdick • Rogers • Ryan Creighton • Sam Mithani • Scott Janousek • Steve Mason • Ted Patrick • Timothy Quinn

November 14-15, 2011 at the Metro Toronto Convention Centre.

Thanks to the folks at FITC, here is a 10% off promo code: Quantumwave. The super early bird special ends on August 26, just 3 days away.

See you there!

Screen scaling for different devices

In multi-device development, one of the issues to deal with is displaying the same content in different screen resolutions. Corona SDK offers a simple solution by specifying the scaling mode in the config.lua file. The scaling modes include: none, letterbox, zoomEven, zoomStretch. Sometimes it’s easier to understand by seeing the visual difference than reading the docs.

Below are the 4 modes displayed in four different devices (starting top-left clockwise: Galaxy Tab, iPad, iPhone & iPhone 4). The background photo is loaded at the Galaxy Tab screen resolution (1024×600).

To view the original full-size images, click on the images to view at Flickr (then choose Actions -> View all sizes), or use the links at the bottom of this post.

 

None

Screen Scaling None

 

 

Letterbox

Screen Scaling Letterbox

 

ZoomEven

Screen Scaling ZoomEven

 

ZoomStretch

Screen Scaling ZoomStretch

 

The source files used to create the display can be downloaded here. The four full size images are here: None, Letterbox, ZoomEven, ZoomStretch.

Hope this is useful.

 

Addictive Games

I’m putting together a list of current and previous addictive games for mobile (iPhone, iPad, iPod Touch, Android, Nokia…), desktop, console or other devices.

What I mean by addictive is games that keep pulling the player back, games that keep players up for hours. Here is a quick list to start off with (I’m not including version or edition to keep things simpler):

  • Zynga Poker
  • A Monster Ate My Homework
  • Angry Birds
  • Bejeweled
  • Plants vs Zombies
  • Call of Duty
  • Halo
  • Myst
  • Pacman

Why am I putting together this list? First of all, I want to identify the ingredients of successful and addictive games. I’d also like to find out what people are interested in and why? And hopefully this would be a place where other game developers can find inspirations to create more addictive games.

Please add to the comments of games that you feel are truely addictive (max one self-promotion allowed if you think your game qualifies as addictive to other people). Thanks!

Flash Player 10.1 features and demos

As expected, news of the upcoming Flash Player 10.1 has been announced at Adobe MAX conference in L.A. today.

Here are the features in the new version and demos of 10.1 running on two different devices.

Also announced: Google and RIM join the Open Screen Project.

Watch live stream of the Adobe keynote here, and follow MAX news with Adobe MAX Companion.

Flash Builder 4 beta 2 and Flash Catalyst beta 2 are now available at Adobe Labs among a few other new releases.

Flash Player 10.1 for mobile devices is a full version of the Flash Player (i.e. not Flash Lite). Hardware acceleration, multi-touch, accelerometer… are supported.

It seems the last couple of years I spent in mobile Flash development is finally becoming mainstream! It is a nice refreshing change when regular news sites such as the BBC reports about this new Flash Player for mobile devices.

FITC Mobile – Sneak Peek

Today at FITC Mobile, Mark Doherty from Adobe gave a sneak peek of upcoming Flash mobile.

Cone of Characteristics

The most surprising bit was Flash Lite 4.0. Most developers I talked to thought Flash Lite 3.x is the last version of Flash Lite. As it turns out, FL4 is planned while Flash 10 for devices is also in the making.

According to Mark, Flash Lite 4.0 supports ActionScript 3, and it is a browser plugin (i.e. not standalone player). Same for Flash Player 10 for devices – a browser plugin (in his slide it was showing 10.1 in Device Central 3). AIR for mobile is the standalone player.

Flash Lite 4.0 is for slower, less powerful and memory-constraint devices, and Flash 10 is for more powerful devices, possibly with hardware graphics acceleration.

Mark also shown Device Central 3. It supports some hardware emulation such as accelerometer and geolocation. Custom device profiles can also be created easily in Device Central 3.

Another upcoming tool is SWFPack, a mobile packager (created in AIR) for S60 3rd edition and up, and Windows Mobile 5 & 6. It builds deployment bits (.sis and .cab) for the two platforms with just a few clicks.

Update: Mark clarified that “(Flash Lite 4 is) targeted as a browser plugin and standalone player for brew devices.”

At the Samsung booth, I had the chance to play with the Omnia II (to be released later this year). The 3.7″ AMOLED screen at 480×800 is simply the most beautiful device screen I’ve seen to-date. This phone’s OS is Windows Mobile 6.5, and Samsung has implemented a much nicer UI (TouchWiz 2.0) that reminds me a bit of the Android interface. Overall operation seems quite decent, although I’m not a big fan of the haptic touchscreen. Apparently the Omnia II has 2 CPUs, one for radio frequency, and one for UI and apps. And it has a dedicated graphics accelerator. There was also an Android phone, the Samsung Galaxy. Unfortunately, both phones don’t have the standalone Flash player, but there is supposed to be a “hidden” Flash Lite player without exposed public API for things like widgets.

Another 3rd-party iPhone SDK: Corona

Corona: Another 3rd-party iPhone development SDK is now open to developers for pre-beta testing.

One thing that sets this SDK apart: The engineers are “former Adobe mobile software veterans” who worked on the mobile Flash ecosystem.

And no, the programming language is not ActionScript or JavaScript, but is Lua – a simple scripting language that should be easy for ActionScript developers to pickup. One thing uncertain to me is whether Corona is generating native Objective-C code from Lua code, or simply interprets the Lua code at runtime (I certainly hope it’s not the latter).

At the moment, there is no public distribution build. The only way to test a project is by using the Corona Simulator that comes with the SDK. Corona is still at its early stage, and the final product is targeting end of Q3 2009.

As Apple has been known to reject apps for unknown reasons, many PhoneGap developers have encountered the most-feared notice that their app is rejected. One possible reason is PhoneGap relies on the Safari JavaScript engine, and JavaScript code is interpreted at runtime, which is not allowed by the Apple SDK agreement.

For me, there are some important questions:

  1. Does Corona generate native Objective-C code or interprets Lua code at runtime?
  2. How much does the final distribution license cost?
  3. How stable is the final code?
  4. Is memory management handled efficiently?

Nevertheless, it is good to see more 3rd-party tools and SDKs for iPhone development.

Update: Today (June 24), this article talks about Corona. “When the developer has his Lua code the way he wants it, he submits it to the Ansca Web site, where it will be compiled into an iPhone application ready to submit to Apple’s App Store.”

Even though it seems to simplify the workflow, this may not be ideal because:

  1. the complete project and code is submitted to Ansca
  2. sounds like the developer does not get any Objective-C code for tweaking
  3. developer is locked into Ansca’s terms for future deployment

Hopefully Ansca would address these concerns in their FAQ or forum soon.

Google Chrome & Mobile

Since reading the Google Chrome comic, the possibility of running a new class of (web) applications in this new browser is exciting, especially considering that it’d most likely be part of Android in the future. With this new browser from Google, it’s not only re-igniting the browser war (mostly with Microsoft’s Internet Explorer), but also a step towards OS-independent applications that can run either online or offline. It’s another strike at Microsoft’s OS market share (something that Adobe has been achieving with the Flash Platform, except this time, Google is making it with a larger footprint). Chrome is in effect an operating system in its own sandboxed world. Google Chrome

Here are some of the more interesting features of Chrome:

  • uses the open source WebKit – the browser engine used by Safari (Mac OS, iPhone/iPod Touch, Windows), Adobe AIR (Windows, Mac, Linux), S60 (e.g. Nokia browser) and many more
  • in return Google Chrome is also open source
  • a new JavaScript Virtual Machine (V8) that compiles JavaScript to native machine code when interpreted, with the goal to improve JavaScript speed for complex applications
  • separate process and sandbox for each tab
  • Google Gears is built-in (GeoLocation API would be especially useful for mobile devices)

One logical direction for Chrome is to have it run on devices. With Android devices coming out soon, it’d be interesting to see where and how new applications will be deployed and developed if Chrome takes off and becomes a relevant platform.

Download Google Chrome Beta (for Windows).

Flash on the Beach

Brighton is a nice little town by the sea in southern England. This is my first Flash on the Beach conference, and it’s been great so far…except a few hiccups.

John Davey with speakers

Haven’t had time to sight-see yet, as I had to look for a doctor yesterday (woke up with painful red eye). Of course, if I were in Canada, it’d be much simpler. My first thought was to go to the local pharmacy and pick up some eye drop; unfortunately, they wouldn’t sell it without a prescription. They referred me to a nearby doctor (GP), but when I got there, I learned that the GPs don’t accept Canadians as patients. I was then referred to a local medical chamber, who told me they don’t have an eye doctor. After going to five different clinics, I finally found a private doctor who would take a look. He looked at my eye and gave me a prescription. I went to a pharmacy and was told the prescription is similar to an off-the-counter eye drop, and asked if I would choose the lower cost eye drop instead. Long story short, I wasted yesterday looking for eye drop.

Today was presentation day. I went to the Pavilion Theatre an hour early to set things up. When I got there, the theatre was almost full. It was time for my presentation! What happened? Turns out the clock on my computer was adjusted automatically when Toronto changed the time on the weekend, and I wasn’t looking at the time on the phone (which gets its time from the wireless carrier here). Panic. As I had a lot of devices, DV camera, computer, power transformer, power bar…etc. to set up, it took quite a while to get everything going. The other issue (which I didn’t encounter during tech check) was the technician couldn’t get the video out signal from my Nokia N95. This was a bit of a problem because many of my demos were to be projected to the big screen directly from the phone! Instead, I had to hold up the phone and asked the audience to look at it instead. Glad there were a few laughs or I’d have fainted with these two incidents.

Anyway, the presentation went along and ended at exactly 2:30pm. I managed to cover everything except a demo with a Wii Remote controlling the phone. But the software is free and source code is included; so it’s easy for anyone to go pick it up and perhaps adapt it for Flash Lite using something like KunerLite.

For those who asked for my presentation, you can download it here.

It’s time to eat dinner with the other speakers, and hopefully will enjoy Brighton in post-presentation mode…

P.S. Thanks to Bill Perry from Adobe for providing the Flash Media Server streaming service for my demo of live video streaming to the phone.