Upgrading My Android

Last month, I was having vacation in Indonesia, visiting my brothers & parents. I used my phone a lot! From taking pictures, videos, browsing, social networking, games, to online flight check-ins. That’s when I realize that my smartphone is pretty slow, laggy, and crash more often.

Morning at Arai beach, Bangka Island, Indonesia

Morning at Parai Beach, Bangka Island, Indonesia

My Samsung Galaxy S is just 2.5 years old but it’s quite obsolete if you compare it with new phones out there. I was temped to get a new one, like Samsung Galaxy Note 2, but I prefer to buy tablet device first.

Then I saw the news about CyanogenMod 10.2 came out & I decided to try to install it on my phone when I got back to Berlin. My phone came with Android 2.3 & I always wanted to install custom Android OS on my phone. I thought if I made a mistake & bricked my phone, I’d get a new one anyway.

Backup

Somehow, not all contacts on my phone were synced with my Goggle account. So I had to export them into CSV file using Samsung Kies & import them manually to Google Contacts.

I backup my photo files to my laptop hard drive. I decided to just abandon my SMS & only noted down a few of important ones.

Continue reading

WebGL is not ready yet

I’ve been exploring WebGL for game development. So far, there are many things that I like. I love the fact that you don’t have to compile anything. Edit your source code, open it on a browser, and click refresh! You can even debug your code directly on the browser (I <3 Chrome)!

If you know Away3D, you might going to like Three.js. Three.js to WebGL is just like Away3D to Stage3D: easy to use, readable example codes, and has some high level functions for animations, particles, and models loading.

Everything sounds perfect, right? Unfortunately, when it comes to mobile and tablet support, WebGL is a big disappointment.

There is NO support for WebGL on mobile browser and tablet. If you check on caniuse.com, there is no WebGL on Android Browser, Chrome for Android, Firefox for mobile, nor the iOS Safari. Not even for the latest versions 😐

I’ve tried FireFox Beta & Dolphin Beta for Android, both claim to have WebGL support. Firefox displayed nothing while Dolphin only managed to show rotating globe with less than 1 frame per seconds. FYI, I tested this using my demo on my Galaxy S with Android 2.3.

Same problem with HTML5 Canvas. Although it is has better support than WebGL, the performance suffers a lot on mobile/tablet devices. I played some HTML5 games and sometimes the framerate drops to 5 fps. It could be the hardware or browser problem since the games run smoothly on iPhone4S/iPad3, or maybe it’s just the common problem of HTML5 games?

Sometimes I wonder, what’s the point of having your game in WebGL if it’s only available for desktop browser. You could’ve done it using Stage3D. Even better, with the help of Adobe AIR, you can compile the same source code and have your game running on mobile and tablet, either it’s Android or iOS.

Don’t get me wrong, I don’t hate HTML5. I do believe HTML5 and WebGL could be the future of web gaming. It’s just that it’s too much hyped but not ready for the present.

Is it useless to learn HTML5? Definitlely not! I can say that learning JavaScript makes me a better ActionScript programmer. How? I’ll write more detailed post about this one 😉

Stay tuned!

How to Use Flex SDK 4.5 Hero with FlashDevelop

If you’re a Flex developer and want to try Flex 4.5 Hero with Android device, then this post might help you to get started 😉
You might also have a look at my previous post about creating Adobe AIR app for Android using AS 3.0. It might help you to setup some parts like Android SDK and digital certificates, also if you don’t want to use Flex framework and want to use pure AS3 solution.

Before you start, you can always download the whole project and source code of this post from here.

Continue reading

Milk Carton Boy for Android

Two months ago, I released Milk Carton Boy Shake Well for Flash mobile. I developed it using FlashDevelop, Away3D, and Flex SDK 4.1 and didn’t use any mobile specific APIs (gesture, touch, or accelerometer). Basically I just adjust the screen size for 400×678 and the game works really well on Android Browser with Flash Player.

Now I have my Samsung Galaxy S, it’s much easier to test the game. It is quite easy to convert an existed FlashDevelop’s Flash project to Android AIR project. So I immediately convert the game to Adobe AIR app and tested on my Android.

Milk Carton Boy installed on Android

Milk Carton Boy installed on Android

Here are some interesting things that I found during the testing:

Milk Carton Boy for Adobe AIR performs (a little bit) slower compare to Flash Player! This is quite surprising since I expect that it could run faster, well at least runs at the same speed 😐 I’m using Adobe AIR 2.5.1.1774 and my Flash Player version is 10.1.92.8

I really need to implement a button to quit the game. I never see any Flash game with a quit button. That’s because we don’t need it 😀

When the user closes the browser or browses to other page, our Flash game will be gone automatically. However, Adobe AIR app, just like other Android app, will be moved to memory if the user press HOME button or BACK button. It will stay in the memory until the OS kills it (when it needs more memory). That’s why if you don’t explicitly quit your app, it will stay (or even keeps on playing) on background.

As a bonus, here’s what I did to convert my FlashDevelop project for Flash to FlashDevelop for Android 😉

  • Copy your FlashDevelop project to another file name, like myGameAndroid. You can have two project files on the same project folder
  • Now open you project file on any text editor (Don’t double click it). Modify the following properties:
    • Pre-Build command
      <preBuildCommand>taskkill /f /fi "IMAGENAME eq adl.exe"</preBuildCommand></pre>
    • Build Option. Inside the <build>, change the <option additional=”” /> to <option additional=”+configname=air” />
    • Other project options
      <!-- Other project options -->
      <options>
         <option showHiddenPaths="False" />
         <option testMovie="Custom" />
         <option testMovieCommand="$(FlexSDK)binadl.exe;application.xml bin" />
      </options>
  • Make sure that you have installed Adobe AIR SDK 2.5 on top of your Flex SDK, creates the application.xml, and the certificate file. See my previous post about creating Adobe AIR app for Android
  • Delete any files on obj folder before opening the project file

Enjoy!

How to Create Adobe AIR for Android using FlashDevelop

If you’re a Flash developer who wants to start developing Flash with Android device, then this post might help you to get started 😉

Adobe AIR SDK 2.5 has been released since last October which includes Adobe AIR for Android packager. Most help avaialble are for Flash Builder 4 or Flash CS5, only a few using FlashDevelop.

This post is a step-by-step instruction for creating Actionscript 3 Flash project for Android, based on Adobe’s guide for creating Adobe AIR application for Android with Flex SDK.?This will not compatible for For Flex Mobile (Flex Hero/4.5 SDK). Stay tune since I’ll write one later 😉
Update (21st Dec):For using Flex Hero on FlashDevelop, see my latest post 🙂