Posts Mentioning RSS

  • pit 11:03 pm on February 14, 2010 Permalink | Reply
    Tags: , location, ovi maps   

    Ovi Maps: a flexible platform for web and mobile location based services 

    This week Forum Nokia Wiki features an article explaining the opportunities that the Ovi Maps service offers to web and mobile developers.

    Ovi Maps offers a complete and flexible platform to build rich location-based services. By providing a consistent set of components and libraries, Ovi Maps allows developers to build both a web a mobile version of their applications with minimum effort.

    Interested in what can be done with Ovi Maps? Here are some links taken from the article:

    Next steps? Check out the whole article: Ovi – Opportunities for developers, and then sign up for the Ovi Maps beta program!

     
  • pit 5:51 pm on February 12, 2010 Permalink | Reply
    Tags: , testing, tips   

    How to speed up deploying and testing of your API Bridge-based applications 

    When working with API Bridge applications, you need to package them with the API Bridge engine within a Symbian SIS package each time you want to deploy it on a device. This could actually be a big drawback when developing a new app, since it greatly slows down all the building and deploying process.

    This is right, but luckily enough there’s an alternative, really easy approach to test your API Bridge-based applications on your devices. The picture below should say it all:

    It couldn’t have been simpler:

    1. Deploy the APIBridge SIS (APIBridge_v1_1.sis for API Bridge version 1.1) on the device, only once
    2. Deploy your application (Web Runtime, Flash Lite or Java ME) as you would have done without API Bridge, all the times you want
    3. Done!

    By deploying the APIBridge engine separately, you can actually save tons of time during all the development phase, since you don’t need anymore to package your apps in a classical Symbian package. Hurrah!

     
  • pit 7:32 pm on February 11, 2010 Permalink | Reply
    Tags: , , , , ,   

    API Bridge version 1.1: plug-in creation package released! 

    The announced new version of API Bridge is out! With the new 1.1 release it is finally possible to create custom plugins that access all the Symbian functionalities, so practically opening up the doors to a new generation of Flash Lite, Web Runtime and Java ME applications.

    Start downloading the new release from Forum Nokia: API Bridge release 1.1.

    Then, check out this informative Wiki articles, that explain how to build a new, custom plugin and how to use it from JavaScript:

    For more information about API Bridge, check out its Forum Nokia page.

     
  • pit 11:28 am on February 11, 2010 Permalink | Reply
    Tags: , , , , ,   

    Platform Services and API Bridge: features, differences and advantages 

    If you’re developing applications for Nokia devices, and more specifically Web Runtime, Flash Lite or Java ME applications, you probably already had to deal with the platform limitations, and with the tools and libraries that allow to go beyond these limitations by adding more capabilities.

    Basically, when you want to extend the functionalities of a WRT widget or a Flash Lite application, you have two options:

    Both of them provide a set of tools and libraries that, added to your applications, allow them to access more functionalities than the ones that each technology naively supports.

    So, which approach is the best one? It’s not easy to give a unique answer to this question, so let’s go into details.

    Ease of use

    The Platform Services library is available from more time, and there’s a well established set of resources and code examples that will help you to quickly get your functionalities ready and running.The primary source of information is Forum Nokia Library, that has a detailed references of APIs and useful sample code. Then, also Forum Nokia Wiki provides an extensive set of examples that cover all the possible usage scenarios. Even if there is some little parts where this information could be improved, you shouldn’t get much in trouble when using Platform Services in your application.

    API Bridge is a fresher technology, released on November 2009, and so it’s harder to find complete documentation and usage examples. Anyway, Forum Nokia released a set of libraries for various platforms (Flash Lite, Web Runtime and Java ME) that will definitely help in starting to use API Bridge.

    Device support

    Platform Services are fully supported starting from S60 5th edition devices, but are also compatible with a subset of S60 3rd edition Feature Pack 2 devices: the full list of supported devices is available here: Web Runtime 1.1 compatible devices. This means that you can use them only on the touch screen Nokia devices.

    On the other side, API Bridge can work on all devices starting from S60 3rd edition Feature Pack 1 onwards, so meaning:

    Available features

    Current Platform Services (version 1.0) allow to access a wide set of features:

    • Application Management
    • Calendar
    • Contacts
    • Landmarks
    • Location
    • Logging
    • Media Management
    • Messaging
    • Sensors
    • System Information

    It is currently available also a beta release of Platform Services 2.0, that adds to this features’ set also the access to the device camera.

    API Bridge, instead, has a more limited set of functionalities, currently including:

    • Capture of photos, videos and audio streams
    • Files uploading
    • Files reading
    • Image resizing
    • Location
    • Logging
    • Media Management

    Supported technologies

    Platform Services are currently available for Flash Lite and Web Runtime applications.

    API Bridge libraries have been released for Flash Lite, Web Runtime and Java ME. Generally speaking, the API Bridge engine, working as a local HTTP server running on the device, is accessible from all technologies.

    Overall considerations

    The current implementation of Platform Services and API Bridge don’t allow to decide which approach is the best one, and there is no need to do it anyway. Right now, if you’re working in Flash Lite or Web Runtime, and as long as your set of target devices support them, you can benefit of both technologies, including the two libraries in your application.

    Talking about future perspectives of both approaches, we can see both of them evolving in more mature products.

    Platform Services 2.0 is already available as a beta release, so you can already start experimenting with the new APIs and features, including the access to the device camera. On the other side, API Bridge promises to allow everyone to create custom plugins, through the ECOM interface, as reported on Forum Nokia Blogs.

    Concluding, Platform Services, with the already mature and features-rich library, surely represents a simpler approach for developers who don’t want to deal with Symbian building and packaging, while API Bridge, with its plugin architecture becoming mature and open to developers, could definitely end up to be the best ally to allow widgets and Flash Lite apps access more and more features.

     
  • pit 11:04 pm on February 8, 2010 Permalink | Reply
    Tags: , , , ,   

    How to use FDT and Aptana to create a Flash Lite enabled WRT widget 

    We’ve seen, in this previous post, how to setup Eclipse in order to develop both Web Runtime widgets and Flash Lite applications, thanks to Aptana, the Nokia Web Runtime plugin and FDT. This article will focus on how to create a Web Runtime widget that includes some Flash Lite content.

    First of all, be sure to have installed all the required Eclipse plugins, as described here.

    Create a new Web Runtime widget

    To create a Web Runtime widget, just open up the “New Project” wizard and select the “New Nokia Web Runtime Widget”.

    The wizard will now let you choose from some predefined widget templates. In this article, it is enough to start with an empty widget.

    And finally enter the name and identifier of your new widget. The identifier has to be a string in the reverse domain format, and will uniquely identify your own widget.

    Once created, the widget’s structure should be the one shown below.

    Create the Flash Lite content

    First, create a new Flash Lite project by using the “New Flash Project” template. Then, create the project’s main class. One example is the MainMovie class shown below:

    class com.jappit.flashlitetest1.MainMovie
    {
    	public function MainMovie()
    	{
    	}
     
    	public static function main(container : MovieClip) : Void
    	{
    		Stage.align = "TL";
    		Stage.scaleMode = "noScale";
    		container.createTextField("tf", 1, 0, 0, 100, 100);
    		var tf : TextField = container["tf"];
    		tf.text = "I'm the Flash Lite content!";
    	}
    }

    Changing the MTASC launch configuration

    Now, the MTASC command has to be changed a bit, so that the generated SWF will automatically end up in the Web Runtime widget project’s folder.

    To do this, open up the MTASC launch configuration, and change the generated SWF path to be a subpath of your widget’s main folder. You can see an example of the command in the picture below.

    Now, run the project launch configuration, and check the widget’s folder: the SWF generated by MTASC should be there, together with the other widget’s files.

    Including the SWF content in your widget

    Forum Nokia Wiki has a comprehensive article explaining the possible ways of integrating Flash content into a Web Runtime widget. In this article the first described approach, the same used on the Web, is implemented.

    So, take the widget’s index.html file, and add this HTML code:

    <object id="MyFlash" classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="200" height="200" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0">
    	<param name="align" value="middle" />
    	<param name="allowScriptAccess" value="sameDomain" />
    	<param name="loop" value="false" />
    	<param name="menu" value="false" />
    	<param name="quality" value="high" />
    	<param name="wmode" value="opaque" />
    	<param name="bgcolor" value="#ffffff" />
    	<param name="src" value="default_mtasc.swf" />
    	<param name="name" value="Finish" />
    	<embed id="MyFlash" type="application/x-shockwave-flash" width="200" height="200" src="default_mtasc.swf" name="Finish" bgcolor="#ffffff" wmode="opaque" quality="high" menu="false" loop="false" allowscriptaccess="sameDomain" align="middle"></embed>
    </object>

    Packaging and deploying

    If all went well, all is ready to be packaged and deployed.

    Right click the project, choose “Package widget”, deploy and enjoy! :)

    You can download the widget built in this article here: Flash Lite enabled WRT sample widget.

     
    • Wez 11:42 pm on February 8, 2010 Permalink

      Thanks for the write up man.

    • Bill Perry 10:05 am on February 9, 2010 Permalink

      nice article, thanks for posting.

    • pit 10:20 am on February 9, 2010 Permalink

      Thank you! Glad to know you liked the article :)

  • pit 4:51 pm on February 8, 2010 Permalink | Reply
    Tags: , , , , mtasc, ,   

    Web Runtime and Flash Lite integrated development on Eclipse 

    Nokia devices offer a wide range of technologies and languages that can be used to create mobile applications. Two of these are strictly related each other, and can be used together to create applications that benefit of both sides: Flash Lite and Web Runtime.

    For this reason, in this article I’ll try to explain how to setup a single environment that may allow development on both technologies, so leveraging the development phase from continuous swaps between different IDEs, and by boosting it all thanks to the powerful Eclipse platform.

    Installing Eclipse and plugins

    First of all, download Eclipse. I currently use version 3.5 on my own machine, but other versions should work as well.

    Once downloaded, proceed installing the following plugins:

    1. Aptana plugin for Eclipse: http://www.aptana.org/studio/plugin
    2. Web Runtime plugin for Aptana: http://tools.ext.nokia.com/wrt/prod/aptana/plugin/
    3. FDT plugin for Eclipse: http://www.fdt.powerflasher.com/developer-tools/fdt-3/download/

    After you’ve installed the above plugins, you’ll notice two new project types in your Eclipse project wizard: Flash and Nokia Web Runtime projects.

    Basically, these 3 plugins are all you need to start developing both Web Runtime and Flash Lite applications. Anyway, FDT needs some further configuration steps to properly work with Flash Lite apps.

    Configure the FDT plugin

    FDT needs to know how to compile your Flash Lite projects. You basically have two choices: use the Adobe Flash IDE, or use MTASC.

    • The first choice is available if you have already installed a copy of a Flash IDE, and can be configured by going into the “Window” -> “Preferences” -> “FDT” -> “Tools” -> “Flash” settings panel. Once there, just enter the paths of your Flash IDE and Player.

    • The second one, quicker and free, needs MTASC to be installed on your machine (you can get it here), and configured in the “Window” -> “Preferences” -> “FDT” -> “Tools” -> “MTASC” panel. I actually prefer this option, as it allows you to develop Flash Lite applications also on machines where the Flash IDE is not available.

    Add Flash Lite-specific classes and functions

    FDT uses the standard ActionScript 2 classes to allow you to compile your Flash Lite project. Anyway, these lack some Flash Lite-specific classes and functions, as ExtendedKey and SharedObject.addListener() method, that have to be manually added, as also explained here.

    To do this, go into the “<ECLIPSE_ROOT_FOLDER>\configuration\com.powerflasher.fdt.core\.config\core\as2\” folder and:

    1. Create a file called “ExtendedKey.as” with this content:
      intrinsic class ExtendedKey
      {
      static var SOFT1:String = "soft1";
      static var SOFT2:String = "soft2";
      static var SOFT3:String = "soft3";
      static var SOFT4:String = "soft4";
      static var SOFT5:String = "soft5";
      static var SOFT6:String = "soft6";
      static var SOFT7:String = "soft7";
      static var SOFT8:String = "soft8";
      static var SOFT9:String = "soft9";
      static var SOFT10:String = "soft10";
      static var SOFT11:String = "soft11";
      static var SOFT12:String = "soft12";
      }
    2. Open “SharedObject.as” and add these lines to the class definition:
      var scope : Object;
      static function GetMaxSize() : Number;
      static function addListener(objectName:String, notifyFunction:Function) : Void;
      static function removeListener(objectName:String) : Void;
    3. Now, switch to the “<ECLIPSE_ROOT_FOLDER>\configuration\com.powerflasher.fdt.core\.config\topLevel\” folder, open TopLevel.as, and add this function definition:
      function fscommand2(command:String, parameters:Object):Void;

      If you plan to use MTASC to compile your Flash Lite applications, the above changes have to be performed also to the ActionScript files used by MTASC itself. These files are typically placed in the “<MTASC_ROOT_FOLDER>\std” folder: go there and repeat the 3 steps above for ExtendedKey.as, SharedObject.as and TopLevel.as.

      That’s all! Now let’s give FDT a quick test to check if all is correctly configured.

      Testing the FDT configuration

      Creating a new Flash Lite project is straightforward: just select “New Flash project” from the Eclipse project wizard, and then choose a name for your project. In the Project Language section, be sure to select “ActionScript 2″.

      Once the project has been created, switch to the “Flash FDT” perspective by selecting “Window” -> “Open perspective” -> “Flash FDT”.

      Now, create the project’s main class. The only required method to be implemented is the static main(), that has to perform all the initialization operations:

      class com.jappit.flashlitetest1.MainMovie
      {
        public function MainMovie()
        {
        }
       
        public static function main(container : MovieClip) : Void
        {
          Stage.align = "TL";
          Stage.scaleMode = "noScale";
          container.createTextField("tf", 1, 0, 0, 100, 100);
          var tf : TextField = container["tf"];
          tf.text = "Hello World";
        }
      }

      Now, if the FDT configuration was properly done, you shouldn’t get any errors. So, if all is ok, open the “Run Configurations…” panel from the “Run” menu.

      Under “FDT MTASC” create a new launch configuration. In the “Main” sub-panel select the main class created just above.

      Then, go to the “Miscellaneous” sub-panel and check the “Start SWF after compilation” option. This way, the SWF will be immediately launched, after each build, in the Eclipse’s internal SWF viewer.

      Now, all is ready to be tested: just run the created launch configuration, and enjoy your new Flash Lite app :)

      And here’s the generated SWF running on a real device:

      What’s next?

      Next tutorials will focus on using both Web Runtime and FDT plugins to develop Flash Lite-enabled widgets. So, stay tuned!

       
    c
    compose new post
    j
    next post/next comment
    k
    previous post/previous comment
    r
    reply
    e
    edit
    o
    show/hide comments
    t
    go to top
    l
    go to login
    h
    show/hide help
    esc
    cancel

    Switch to our mobile site