Flash 10.1 Coming to Google Nexus One

Adobe released a great video showcasing Flash Player 10.1 running on the brand new Google Nexus One. Now before you rush out and buy one, be aware that the player isn’t available on the phone just yet, but Adobe promise to push it over the web to you as soon as it’s ready.

Performance wise things looked fairly impressive with its Qualcomm Snapdragon CPU seeming to handle the Flash content with relative ease. Admittedly Adobe have no doubt been careful selecting the content to show in the demonstration so I’d really like to see it running across a wider ranger of sites before making a final judgment.

Either way it looks like a step in the right direction and hopefully other phone manufacturers will be able to harness similar performance from their hardware when Flash Player 10.1 makes an appearance on a wider ranger of devices.

So am I tempted to buy the Nexus One? Maybe, but first I think it would need a few simple modifications. A Nokia badge on the front would be a good start, and I’d really like to see a phone that also doubles as a lightsaber. Got a bad feeling that I might end up accidentally cutting off my ear when I try to answer calls though.

I’m not a Nokia hater, honest

Although I subscribe to a few Flash and mobile related groups, I tend not to post that often on them for a few reasons. Firstly, most people’s posts get answered before I have a chance to reply. Secondly I tend to talk rubbish quite often so it’s best I keep my mouth shut.

In fact, keeping a blog is quite a big step for me since my thoughts and opinions are now public knowledge and therefore open to serious disagreement or misinterpretation. However I can be a sensitive soul at times and I try my best not to upset or offend people, although I probably fail miserably at it. I guess I just want to be a nice dude that everybody likes 🙂

In response to a post of mine I recently made on a Flash Lite group, I received the following from Nokia’s Riku Salminen:

It’s not a perfect world and making Flash work on mobile has been a tremendous effort from Adobe and all handset manufacturers involved. Cross device and –platform compatibility being one of the most challenging tasks.

You see I’d  implied that Flash Lite can be a bit temperamental across devices, and if you take a look at one of my more recent posts you’ll find that I have also been quite critical of Nokia’s attempts at deploying Flash Lite successfully across their handsets.

It was a great response from Riku and thankfully he took my original post in the best of spirits but it got me thinking that I’d perhaps been overly critical of Nokia. After all, anyone who has gotten to know me over the years will know that I’m a bit of a Nokia fan boy. Sure I don’t exactly have every device that’s come to market but I have a decent wee collection of Nokias that I use for my various Flash Lite tinkerings.

So just for the avoidance of doubt I’d just like to set the record straight. On the whole I think the progress made by Nokia (and the many other handset manufacturers) over the years, deploying Flash Lite on their handsets, has been excellent. Sure mistakes have been made along the way, but the fact remains, they’ve done more than most to support and promote the Flash platform on mobile. It’s why I keep buying their phones.

Now for those who still believe I’m a Nokia hater, here’s a photo that might change your mind. It was taken during the summer on a trip to England to see Pearl Jam and was one of only three photographs I had my brother take of me that day (including all my time spent at the Pearl Jam gig).

Flash Lite 3 Security Sandbox – A Reminder

This isn’t anything new but it’s an easy one to forget and something that caught me out the other day. So to be perfectly honest I’m writing this as more of a reminder to myself rather than anything else.

Firstly the problem. I was helping someone with their Flash Lite app that let the user send SMS messages to friends, but for some strange reason the device refused to launch the SMS application. Of course it was a silent failure so there were no error messages explaining why.

Now I’d simply put it down to the dude’s Nokia E90 not supporting SMS within Flash Lite but Alessandro Pace thankfully chipped in with the reason and a solution. It was of course all down to the fact that the SWF was running on a device shipped with Flash Lite 3 which, rather infuriatingly, has the exact same security sandbox as the Flash 8 player.

So why’s that such a bad thing? Well this security model effectively means that apps can either have local access or remote access but not both, which doesn’t really make much sense when dealing with mobile. If you want to make a getUrl()call, which is required to send an SMS, then you’ll need to publish your SWF with network access enabled and also copy it to a special Trusted folder on your Nokia.

Unfortunately this security model and the work-around both have a whole series of implications ranging from backwards compatibility with SWFs published for older Flash Lite players, to issues getting your applications Symbian Signed.

Adobe have addressed this with Flash Lite 3.1 but it’s something that isn’t going to go away in the short term due to Flash Lite fragmentation across the range of Nokia handsets that are already out there.

If you want to know more then I strongly suggest you read Ugur’s excellent blog entry that he posted way back when Flash Lite 3 was launched. This issue was also raised by Faisal Iqbal at the time who wrote a great follow up with additional issues and nags.

Adobe’s Mobile Strategy Fundamentally Flawed?

Well it is if you believe what Aral Balkan had to say recently. His post sparked some intense and much welcomed debate within the community regarding Adobe’s mobile strategy. In particular both Scott Janousek and Mark Doherty posted excellent responses and I think all three posts are definitely worth a read.

Flash Lite in particular took a bit of a bashing from Aral and it’s something I’d like to talk about here. Firstly I’d like to point out that I agree with many of Aral’s points. I don’t personally know him but he’s highly respected and very influential within the Flash community, and his blog is something I make a point of checking out from time to time.

I’ve been writing Flash-based mobile apps before Macromedia released Flash Lite and although my Flash Lite work these days is restricted to personal projects I’ve been following its evolution since day one, so feel I’m well positioned to comment.

Continue Reading

Just Ask Lee Brimelow

There’s a great recording of Adobe Platform Evangelist Lee Brimelow on USTREAM answering 50 questions put to him by the Flash community. His answers give an interesting insight into Adobe’s strategy for the Flash platform and also helped confirm things that many suspected.

He confirmed that Adobe are deliberately pushing developers towards Flash Builder and continuing to cater for designers within Flash Professional. It’s why very little effort has gone into improving the coding tools within Flash whereas Flex/Flash Builder’s IDE has gone from strength to strength. The news regarding the tighter integration between the upcoming Flash CS5 and Flash Builder was also very welcome and something I’m really looking forward to.

Also due for release in Flash CS5 is a brand new text engine and much improved font support. Anyone who’s used Flash will know how tricky it can be when dealing with fonts and managing the fonts that are embedded within your SWFs, so I’m sure it’s going to be another great reason for upgrading to CS5.

Also anyone holding their breath for ActionScript 4 should probably stop. Lee confirmed that ActionScript 3 is here for the foreseeable future and that there are no plans internally for a replacement. He does however state that there will probably be improvements to the language over time, so people hoping to see language features such as the inclusion of private constructors might still get their wish.

One thing that really surprised me was Lee’s admission that although a lot of effort had gone into improving the animation system in Flash CS4 most users had not embraced it, and had instead opted to stick with the traditional system. I have to admit that I still use the classic timeline animation model in Flash but I’m a developer who doesn’t have as much need to use the timeline. I would however have expected designers/animators to have gone mad for it. I might make it a priority to find the time to look into the new timeline animation in Flash CS4. After all the guys at Adobe put in a lot of effort and from what I can see, produced a pretty neat piece of work.

Have a great new year, and I’ll hopefully blog again in a few days time.

Draw me a crocodile and make it snappy!

That’s exactly what I said to concept extraordinaire Steve K and he happily obliged. The image below is a render from the 3D model Alan has produced from Steve’s artwork.

So what’s this character’s name then? Well his friends (and his enemies) simply call him Croc and as you can no doubt guess he’s the other main character in my iPhone project. I haven’t gone into any great detail regarding the game yet but let’s just say that both Croc and Dare don’t get on.

Conditional Compilation

It’s the simple things that make me happy. Conditional compilation is one such thing and although it has been available since Flash CS4 those developing for mobile have been unable to take advantage of it. Why? Well to-date mobile developers have been limited to Flash Lite and ActionScript 1/2, whereas conditional compilation is only available when writing ActionScript 3.

This has been a real shame since Flash Lite developers arguably require conditional compilation more than any other Flash developer. Take my GamesFlash project as an example. I targetted over 50 different handsets and also wanted to ensure that it would run within a web browser for demonstration purposes. Considering the varying specifications across my target devices I quite often had to remove features from certain builds – streaming video being a feature that was only supported by the S60 devices. Without conditional compilation doing this can be a side-project in itself.

Sure, there are ways around it. For example, you can write multiple versions of certain classes (a feature rich version of a class for high-end handsets and a more modest version for low-end devices), store them in different folders, then using multiple profiles, point each profile’s class path to the correct folder for the version of the class that’s required. This approach works well for those going down the object oriented route, but for many Flash Lite developers this won’t be the case and including/excluding code from certain builds will suddenly become more difficult.

Thankfully developing iPhone apps using Flash CS5 won’t have these problems since it’s the first time that mobile developers using Flash will be able to take advantage of ActionScript 3. The following snippet of code illustrates just how useful conditional compilation can be:

private function setup() :void
{
    CONFIG::WEB
    {
        // Add lots of complex shapes - we've got the CPU.
        addShapes( new ComplexShape(), 1000 );
    }

    CONFIG::IPHONE_3G
    {
        // Add a modest number of simple shapes - we don't have much CPU.
        addShapes( new SimpleShape(), 50 );
    }

    CONFIG::IPHONE_3GS
    {
        // Add lots of simple shapes - we have some more CPU.
        addShapes( new SimpleShape(), 100 );
    }
}

The example above expects there to be three config constants set via the Publish Settings panel in Flash: CONFIG::IPHONE_3G, CONFIG::IPHONE_3GS and CONFIG::WEB. Depending on the build I want to make I can set certain constants to true or false, or alternatively create multiple profiles with different configurations for these constants and simply select the desired profile. This should make life so much easier.

So what about Flash Lite developers? Well if you’re developing for any of the current Flash Lite players you’re still going to run into the same frustrating problem. However there is light at the end of the tunnel. Flash Lite 4 and Flash Player 10 for mobile are on the horizon, and with both offering support for ActionScript 3, building for multiple targets will become a whole lot easier.

RSS Feeds Fixed

I suppose I should have noticed this sooner but it looks like it has been impossible to subscribe to this blog’s RSS feed on certain browsers due to a small bug with the theme. Thankfully it was only a small one line fix to the header.php file. It’s working now so there should be no excuse for not clicking on the little orange icon on the top-right.

Introducing Dare

With my Russian roulette game done and dusted it’s time for me give you lucky readers a sneak peek at my next project. I wont reveal too much at the moment, mainly because it’s still in the very early stages, but I can tell you that it’ll be an iPhone game starring a monkey called Dare. Why the iPhone and why a monkey? Well the iPhone seems to be what all the cool kids have these days and I’ll be able to focus on a single screen resolution, which makes life much easier. As for the monkey, well everyone loves monkeys and they just seem to work in video games.

From concept art to rendered 3D model.

I’ve got two artists with me on this one, although I’ll admit that I’m a bit apprehensive about working with either of them due to some peculiarities they have. The concept art is being done by a dude named Steve Koran who unfortunately was recently bitten by a zombie and has become one of the living dead himself. Interestingly, the shuffling and unpredictable motion that comes with being a zombie seems to work well with his drawing style and I now have him chained to a desk and working happily away. Getting the concept art off him can be dangerous though. On several occasions he’s tried to bite me as I reached over to grab the drawings.

The other creative will be taking Steve’s concepts, converting them into 3D models and animating them. But this is where it gets even stranger and I promise you I’m not making this up. The other artist is actually a future version of myself trapped in the present. Now I know this sounds completely bonkers but it turns out that time travel isn’t that difficult. Apparently all you need is a couple of cardboard boxes and some argon gas. Unlike my future self, just make sure you don’t lose the boxes or you’re gonna have difficulty getting back to your own time. Anyway while there’s a duplicate copy of myself running around I thought I might as well put him to some use and get him working on the graphics. To hide the fact that he’s actually from the future I’ve decided to pretend I have a twin and will from this point on refer to my future self as Alan.

Wireframes of Dare

I thought that this would be the perfect opportunity for me to create something in preparation for the release of Flash CS5, which will allow developers to build content for the iPhone. My previous mobile projects have all been Flash Lite based so it’ll be good to write some ActionScript 3 for a change. I’ll keep you posted and will reveal more details about the game over the coming months including one other very important character.

Russian Roulette Touch Released

If you’re lucky enough to own a touchscreen Nokia rather than one of those smelly iPhones or HTC thingies then you’ll be able to play the latest version of my Russian roulette game that is now available from clickgamer.

It’s the ideal game for making bets with friends and family. I’ve won a considerable amount of money from my cousin Gregory but that’s because we’ve been playing with a ‘special’ version I hacked together that allows me to cheat! Gregory hasn’t figured this out yet and somehow believes he’s the unluckiest guy in the world when in fact he’s actually just the dumbest. Shhh! Nobody tell him.

Russian roulette

As well as the screenshot above there’s also a video in one of my earlier posts of the revolver working on my Nokia 5800.

So what touchscreen (or S60 5th Edition as us geeks prefer to call them) Nokias will it run on? Well it should run on all the 5th Edition devices actually but for the avoidance of doubt here’s a list:

    Nokia 5235
    Nokia N97 mini
    Nokia X6
    Nokia 5230
    Nokia 5530
    Nokia N97
    Nokia 5800

I must say, both the X6 and 5530 are nice looking devices.

Russian roulette is available from clickgamer.