programming4us
programming4us
MOBILE

Programming the Mobile Web : Widgets and Offline Webapps - Platforms (part 5) - Windows Mobile & BlackBerry

- Free product key for windows 10
- Free Product Key for Microsoft office 365
- Malwarebytes Premium 3.7.1 Serial Keys (LifeTime) 2019

7. LG Mobile

Starting in 2010, LG Mobile is offering on its devices a widget platform supporting the W3C widget standard, a subset of the BONDI APIs, and some LG proprietary APIs.

You can download an SDK at http://developer.lgmobile.com. The SDK includes a project creator, a widget validator, a packager, and a widget emulator. The emulator allows us to configure emulation data for the device API, like the gallery or contact list. It also supports a DOM Inspector, JavaScript debugger, and Memory Viewer, as any Firebug developer will want.

An LG widget includes the typical files (HTML, icon, and config.xml files), and a mandatory wgt.dat file for persistent storage. The best way to create them is using the SDK. The LG extensions support the widget object with the preferenceForKey and setPreferenceForKey methods we’ve seen in other platforms. It also supports the openURL method to open the browser, and a localized string framework for multiple languages.

The additions to the BONDI APIs include:

  • Call support

  • Camera support

  • Access to the media player

  • Speed dial manager

  • Contact groups

7.1. Distribution

A wgt package can be distributed for free via the LG Widget Gallery, available on the developer website, or you can upload it to the Business Proposals section to see if LG knows how to make money from your widget.

8. Samsung Mobile

Samsung is a pioneer in widget development, providing widget support from all of its TouchWiz UI devices. TouchWiz is a toolbar on the left side of the home screen where all widgets are installed, as shown in Figure 5. When the user drags your widget to an empty space in the home screen it will appear as a non-full-screen application, sharing the screen with other widgets. If you need more space to show details, you can resize the widget or open a mobile website in the browser. You can see how widgets will be displayed at http://www.yourwidgetworld.com.

The widget platform is cross-compatible between Symbian, Windows Mobile, and proprietary OS Samsung devices. It may also be compatible with the new Bada platform.

Figure 4. Samsung widgets can be dragged to the home screen and they share the available space with other widgets.


The widget platform is based on the W3C package specification and has different property support in Windows Mobile and in the other platforms. Check the documentation for details.

Every widget has an icon that can be one of the following:

  • Long vertical

  • Long horizontal

  • Square

This icon will be available in the lefthand scrolling list of widgets. Every widget also has a first depth size (the normal size when the user activates the widget) and an optional second depth size (for more detailed information). You can update the information displayed using a timer and maybe an AJAX request to a server.

Samsung’s widget platform supports the widget object with some known features, such as the key/value storage we’ve already discussed, the openURL mechanism, and a widget.window.resizeWindow(w, h) method to resize the widget so there is more space on the screen.

Starting with Samsung Mobile Widget SDK 1.2 the platform supports full BONDI APIs, so it will be easier to port between platforms.


Note:

If the Samsung widget is running on the Symbian OS, it also has full support for WRT APIs for calling all the Platform Services. These are not compatible with the Windows Mobile and Samsung OS devices on which the same widget can run.


8.1. Distribution

The .wgt file can be served from your code as application/vnd.samsung.widget or can be installed by any other offline method. You can also distribute Samsung widgets in the U.S. and Europe via the Samsung Apps official store, by registering as a seller at http://seller.samsungapps.com for a fee of $1 (yes, one dollar). You will receive a 70% revenue share.

If your widget is free, you can offer it globally using the “More Widgets” feature available on every compatible device. You can also submit a proposal to the Market.Dev section of the website to receive business feedback from Samsung.

9. JIL

Joint Innovation Lab (JIL) is a joint-venture company created by China Mobile, SoftBank (Japanese carrier), Vodafone, and Verizon Wireless, covering more than 1 billion customers worldwide. The company has created a widget engine that works on a variety of devices.


Note:

JIL offers a widget porting engine to automatically port Symbian, Opera, and Dashboard widgets to the JIL widget standard, uploading your original package to the website.


You can download the SDK for Windows or Linux from the official website, http://jil.org. Each operator should use its own trademark for widget development; for example, Vodafone 360 uses http://360.com as the end-user website and http://jil.vodafone-developer.com for the developer SDK and documentation.

JIL uses a modified W3C widget API package standard with a .wdgt or a .wgt extension served as application/widget. It supports the Dashboard Widget object with the cross-platform methods and some widget event handlers. JIL also supports the Opera CSS conditional query extensions and a new conditional for touch devices, -o-touch.

A typical config.xml file will look like this:

<?xml version="1.0" encoding="utf-8" ?>
<widget xmlns="http://www.jil.org/ns/widgets" id="http://jil.org/myWidget"
version="01.00.Beta" height="150" width="100">
<name>Widget Example</name>
<icon src="icon.png"/>
<access network="true" localfs="true" remote_scripts="false"/>
<content src="main.html"/>
<feature name="http://jil.org/apis/api.DeviceInfo" required="true"/>
<feature name="http://jil.org/apis/api.CalendarItem" required="false"/>
<billing required="true"/>
</widget>

The widget engine supports a JIL JavaScript API with the following modules:

  • Telephony

  • PIM

  • Multimedia

  • Device (including File and Application)

  • Messaging

The framework includes a Charging API for payment processing and usage authorization. You can distribute your widget for free or as premium content. You can also use the JIL Advertising Program for monetizing.

At the end of 2009 many vendors announced that they would support JIL, including RIM, LG, Samsung, and Sharp.

At the time of this writing, JIL widgets can be distributed in the Vodafone Store for free or as premium content. The widgets will soon be available in the other operators’ stores, and possibly other independent application stores. You can sign the application from the JIL website before posting it to the stores.

10. Opera Widgets

The Opera browser also has a widget engine that works in desktop and mobile environments using the same widget package. An Opera widget in the mobile environment works with Opera Mobile (Windows Mobile and Symbian) and with the optional runtime (Widget Manager). In 2010, Opera announced that the widgets will also work under the Opera Mini engine, so widgets should soon work on almost every device on the market, from low-end devices to smartphones.

Some operators use this platform to offer widgets to their users along with the runtime or browser that comes preinstalled on devices purchased from those operators. That is the case with T-Mobile, for which Opera has developed a widget engine with additional APIs, including integration with the idle (home) screen and access to the devices’ features.

You can download the Opera Widgets SDK and the T-Mobile Developer SDK from http://dev.opera.com/sdk, and you will find the documentation at http://dev.opera.com/articles/widgets.

Opera uses a ZIP package file with .wgt extension, served as application/x-opera-widgets. Its config.xml configuration file is very similar to the W3C standard:

<widget>
<widgetname>
First Opera Widget
</widgetname>
<width>
300
</width>
<height>
300
</height>
</widget>

In JavaScript, the widget object exists with the now well-known openURL and the preferenceForKey/setPreferenceForKey storage mechanism. It also supports a user notification mechanism and the onshow and onhide events.


Note:

The Opera Widgets SDK supports a CSS extension for conditional media queries to define different styles depending on the running mode of the widget—application, docked, or fullscreen—using the -o-widget-mode condition.


10.1. Distribution

You can distribute the widget via your own server, in the Opera widget gallery, or through some operators’ stores (like T-Mobile’s). There is also an autodiscoverhead, the browser should detect the widget and suggest the download to the user: mechanism that works when the user is browsing your website using Opera and you want to share a widget. If you define a link in the

<link type="application/x-opera-widgets" rel="alternate"
href="http://mobilexweb.com/widget.wgt"
title="Mobile Web Client" />

11. Operator-Based Widget Platforms

Many providers offer widget engines to operators to serve content to their end users. Two classic browser companies, ACCESS (NetFront) and Myriad (Openwave), offer widget engines for operators and manufacturers, like Opera Mobile.

NetFront Widgets (http://widgets.access-company.com) is a widget platform whose player is currently available for Windows Mobile 5.X/6.X and Symbian S60 3rd edition devices and will support new platforms in the future. Download the NetFront Widgets Content Development Tools, including a packager and a viewer, from the website.

Myriad also offers a widget engine for low-end devices (available at http://www.myriadgroup.com/Mobile-Operators/Mobile-Widgets.aspx), but no information is available for developers at the time of this writing.

Qualcomm Plaza (http://plaza.qualcomm.com) is a multiplatform widget engine for operators (actually already available through some carriers) that uses the W3C widget standard and a free distribution channel for end users.

Obigo (http://obigo.com) created the widget framework that is the base for the LG widget platform.

Finally, Orange created Djinngo (http://publisher.djinngo.com), a Java ME client to install widgets created using JavaScript and a VRML language.

Other  
  •  Programming the Mobile Web : Widgets and Offline Webapps - Standards
  •  Mobile Application Security : BlackBerry Security - Networking
  •  Mobile Application Security : BlackBerry Security - Local Data Storage
  •  Themes on Windows Phone 7 Devices (part 2) - Changing the Theme & Detecting the Currently Selected Theme
  •  Themes on Windows Phone 7 Devices (part 1) - Applying a Theme
  •  Programming the Mobile Web : Mobile Widget Platforms
  •  Programming the Mobile Web : Geolocation and Maps - Showing a Map
  •  Mobile Application Security - BlackBerry Security - Permissions and User Controls (part 2)
  •  Mobile Application Security - BlackBerry Security - Permissions and User Controls (part 1) - RIM Controlled APIs
  •  Windows Phone 7 Development : Working with Controls and Themes - Introducing the Metro Design System
  •  
    Top 10
    Free Mobile And Desktop Apps For Accessing Restricted Websites
    MASERATI QUATTROPORTE; DIESEL : Lure of Italian limos
    TOYOTA CAMRY 2; 2.5 : Camry now more comely
    KIA SORENTO 2.2CRDi : Fuel-sipping slugger
    How To Setup, Password Protect & Encrypt Wireless Internet Connection
    Emulate And Run iPad Apps On Windows, Mac OS X & Linux With iPadian
    Backup & Restore Game Progress From Any Game With SaveGameProgress
    Generate A Facebook Timeline Cover Using A Free App
    New App for Women ‘Remix’ Offers Fashion Advice & Style Tips
    SG50 Ferrari F12berlinetta : Prancing Horse for Lion City's 50th
    - Messages forwarded by Outlook rule go nowhere
    - Create and Deploy Windows 7 Image
    - How do I check to see if my exchange 2003 is an open relay? (not using a open relay tester tool online, but on the console)
    - Creating and using an unencrypted cookie in ASP.NET
    - Directories
    - Poor Performance on Sharepoint 2010 Server
    - SBS 2008 ~ The e-mail alias already exists...
    - Public to Private IP - DNS Changes
    - Send Email from Winform application
    - How to create a .mdb file from ms sql server database.......
    programming4us programming4us
    programming4us
     
     
    programming4us