Flash Player 10.1 for Mobile Available

Flash Player 10.1 for Mobile is here! Fully redesigned with new performance and mobile-specific functionality, mobile users will now be able to experience the full web — games, animations, RIAs, data visualizations, music, video, audio and more.

Flash Player 10.1 beta is already one of the top free apps on Android Market today and will be available as a final production release for smartphones and tablets once users are able to upgrade to Android 2.2 “Froyo.” Supported devices are expected to include the Dell Streak, Google Nexus One, HTC Evo, HTC Desire, HTC Incredible, DROID by Motorola, Motorola Milestone, Samsung Galaxy S and others.

Flash Player 10.1 was also released to our mobile platform partners to be supported on devices based on Android, BlackBerry, webOS, future versions of Windows® Phone, LiMo, MeeGo and Symbian OS. We expect FP 10.1 will be an over-the-air download and even pre-installed on some smartphones, tablets and other devices in the coming months. Stay tuned to news from your device manufacturer.

There are loads of partners speaking in support of this news – many part of the Open Screen Project. Click the link to read quotes and musings from some of them, including ARM, Dell, Google, HTC, Microsoft, Motorola, Qualcomm, RIM, Samsung and others. Additionally, Intel, NVIDIA, and Texas Instruments posted to their blogs, and Brightcove issued a press release in support of the news.

What’s new in Flash Player 10.1? You can get all the details from the Flash Player team’s rundown of the work that went into the new runtime. And here are some of the top things to know:

  • It’s been completely redesigned and optimized for mobile, including new interaction methods that support mobile-specific input models, and support for accelerometer.
  • With Smart Zooming, users can scale content to full screen mode. Performance optimization work with virtually all major mobile silicon and platform vendors makes efficient use of CPU and battery performance.
  • New Smart Rendering ensures that Flash content is running only when it becomes visible on the screen further reducing CPU and battery consumption.
  • Sleep Mode makes Flash Player automatically slow down when the device transitions into screen saver mode.
  • Advanced Out-of-Memory Management allows the player to effectively handle non-optimized content that consumes excessive resources.
  • Automatic memory reduction decreases content usage of RAM by up to 50 percent.
  • Flash Player pauses automatically when events occur such as incoming phone calls or switching from the browser to other functions. Once users switch back to the browser, Flash Player resumes where it paused.

If you haven’t seen demos of Flash Player 10.1 on Android yet, check these out. You can also visit our demos page for more.

Google Nexus One

NVIDIA – Hardware accelerated HD video on netbook

Dell Mini 5 Tablet

NVIDIA TEGRA Tablet

Palm Pre

Be sure to check out the new Flash Player 10.1 product pages and ADC content to learn more. We can’t wait to see what you develop!

Adobe AIR on iPad

After queuing for an hour at the flagship Apple Store in SF this morning, we finally got our hands on a stack of magical devices. We’ve spent the rest of the day having fun getting the first Adobe AIR apps running on the iPad.

We’ve tested many of the existing AIR apps that are on the Apple App Store today (Alchemist, BaoZi Jump, Something Fishy, Gridshock, Space On-Air, Moai Mawashi etc, etc…), and they all have been working beautifully.

We have also been working on bringing up the first “HD” apps that take advantage of the gorgeous screen of the iPad.

Christian Cantrell from our team also got a multiscreen AIR app working on the iPad today.

The performance is pretty impressive, seems to be about 2x the performance of the 3GS. We’re looking forward to all the cool new apps that are going to be possible with this form factor.

JavaScript Memory and CPU Profiling in Adobe AIR 2

One of the biggest challenges our team continued to hear from JavaScript developers using Adobe AIR 1.5 was that it was too difficult to track down CPU and memory issues within their HTML-based AIR applications. To help JavaScript developers detect and resolve these issues, we have introduced new runtime support for CPU and memory profiling of HTML-based AIR applications in the Adobe AIR 2 beta.

By doing so, tools like Aptana Studio can build powerful features that make analyzing memory and CPU usage of JavaScript execution within an AIR app a breeze. In the video above, Paul Colton, CEO of Aptana, provides an overview of how Aptana Studio is able to take advantage of the new runtime support and build powerful new features to assist developers in tracking down performance issues.

Some of the features included in the new Adobe AIR 2 Beta Plug-In for Aptana Studio include:

  • Live Objects View
    • Shows current information about how much current and cumulative memory is used by the application
    • Shows the number of current and cumulative instances of objects
  • Memory Usage View
    • Peak memory used
    • Current memory used
  • Memory Snapshot and Object References Views
    • Captures the number of class instances as well as memory used at a point in time
    • Select an object to view its references
    • Allocation trace information reveals where the objects are allocated
  • Loitering Objects View
    • Displays the memory usage difference between two memory snapshots
    • Helps detect loitering objects that are still present
  • Performance Profile View
    • Displays a list of all method calls along with amount of time for each to run
  • Method Statistics View
    • Presents information on the callers and callees of a function including statistics
    • Quickly navigate to location of the function in the code

Both Adobe AIR 2 and Adobe AIR 2 Beta Plug-in for Aptana Studio are currently in beta. If you run into issues or have feature requests, both the Adobe and Aptana teams would appreciate hearing your feedback on these new capabilities.

Next steps:

  1. Watch the tutorial video for a quick introduction on the new profiler capabilities
  2. Download the Adobe AIR 2 Beta Plug-In
  3. Discuss the feature on the Adobe AIR 2 Beta forums or post a comment below

Note: For Flex and Flash developers, support for application profiling has been available in Adobe Flex Builder for some time. We are very excited to bring this support to JavaScript developers as well.

Flash Player 10.1 & AIR 2.0: It's not just about new features…

Recently I’ve been getting a lot of questions about the performance and stability of the Flash Player and AIR runtimes. I got another one just this morning and thought it would be a good idea to write a quick blog post about this.
Let’s talk about Flash Player first. In all honesty, I also encounter the [...]

Case Study : ActionScript 3 Performance Optimization

Prompted by some of the work from Grant Skinner (in particular his FOTB 2009 session) and Thibault Imbert, I have been doing a lot of research lately into optimizing ActionScript 3 content. Not just how to make it run faster, but how to approach the process of optimization.
I am also starting to work on a [...]

Writing well-behaved, efficient, AIR applications

Arno Gourdol, a member of the AIR engineering team, has posted an excellent blog entry titled Writing Well-behaved, Efficient, AIR Applications. Whether you are just beginning to build your first Adobe AIR application or already have deployed one to your users, this article provides some excellent suggestions on how to optimize the performance of your applications.

Download the latest TweetDeck: Memory Leak Fixes & Facebook Integration

tweetdeck.jpg

The TweetDeck team recently launched version 0.25 of their popular desktop Twitter client powered by Adobe AIR. The latest version includes several impressive new features including Facebook integration, the ability to record video clips within TweetDeck using 12seconds and memory leak fixes. We had the pleasure to work closely with the TweetDeck team to help investigate a memory leak that was impacting quite a few users.

The TweetDeck team discusses new features on their blog and mentions the collaboration:

We’ve been listening and working hard, together with Adobe, making improvements to TweetDeck to fix the memory leak. Today we’re delighted to be able to tell you that the memory leak has been plugged and now the latest version of TweetDeck will peak at a certain level and won’t go any higher. So you can leave your TweetDeck running all day, all night, or forever if you really want to.

We often receive questions around memory and we are working on putting together some best practices for developers. If you have tips you would like to share, please feel free to post a comment or send us your bugs directly (simple test cases are much appreciated). If you are building your application using Flex Builder, the profiler can be extremely helpful in tracking down memory issues in your application (see profiler documentation).

Also, be sure to check out the Performance-tuning Adobe AIR Applications article on the Adobe Developer Connection.

Again, congratulations to the TweetDeck team on the release!

Performance Tips for Adobe AIR

Post Update: Be sure to check out the blog post Writing well-behaved, efficient, AIR applications by Arno Gourdol that provides more details on some of the tips suggested below.

As more Adobe AIR applications are being built, one piece of feedback that we hear from developers is that the idle CPU for basic AIR applications on the Mac is too high. Today, Flash developer Grant Skinner wrote a blog post sharing his concerns around the excessive CPU usage of Adobe AIR and Flash Player applications on the Mac — particular in the case of a simple application.

First, I want to thank Grant for not only sharing his concerns, but also for directing developers to use the open Flash Player bug database to report their issues. When the developer community votes on bugs that have the biggest impact, this helps send valuable data back to our development teams on what the community believes to be the most important issues. Though Adobe AIR does not have a public database yet, we request that you use our feedback form to report bugs and feature requests. These issues come directly to our team and we do our best to reproduce every bug that comes in.

Second, I also want to be clear that reducing CPU usage on the Mac is an area that we are making investments in the next version of Adobe AIR and Flash Player. This is an important issue for us to address and we are focused on making improvements in this area (we hear you Grant and we’re already working on it :) .

Finally, as we talk to developers building Adobe AIR applications, we have come up with a few tips that can help improve the performance of your applications: 

  1. Try to use the smallest “frameRate” possible in your application. To do this, set stage.frameRate or mx:WindowedApplication attribute of your application. This will help reduce the overall amount of CPU usage for applications.
  2. When your application is in the background, set “stage.frameRate = 1;” as it will reduce CPU usage to < 1% 2.To be notified when an Adobe AIR application goes into the background: “this.addEventListener(AIREvent.APPLICATION_DEACTIVATE, appDeactivate);” Grant has put together a simple class that does this for you.
  3. Use Timer whenever possible instead of enterFrame handlers. The later are expensive and are called often.
  4. If you are building a Flex-based application, use the Flex Builder profiler to identify optimizations that can be made in your code. By doing so, you might find that you are, for example, invoking network calls more frequently than you need to.

If you have other tips, please feel free to share. We are planning to create a more comprehensive FAQ that provides guidelines on how to improve the performance of your applications. 

Also, be sure to check out the following links for other tips and tricks: