This article shows the design and development process of the Bing Web Runtime widget.
Contents |
Bing is a search engine, developed by Microsoft, that allow users to search for different types of content: web pages, news, images, videos and much more. Also, the Bing website offers additional services, as Maps, Translations, Travel Planning and Shopping sections.
The first version of the Bing WRT widget will exclusively focus on the search functionality, and on these types of content:
Generally speaking, clear and polite layout is a must when developing a mobile application, due to the physical and environmental constraints of mobile devices and of their usage.
Since the main focus of this widget is on search, these points are also to be considered when thinking about the widget's layout:
Based on these requirements, the first layout draft will contain these main elements:
In order to maximize the space available to search results, all the extra controls will be placed in different views, and standard softkey items will be used to access these views.
The user has to be able to view the different types of searched media (news, images, and so on) with very quick interactions. Possible solutions are:
The widget allows the user to filter searched media types. In order to give him clear indication of the current filters, and also to allow him to easily switch from a media type to another, a possible solution is represented by a tabbed menu.
The tab menu will show only the current active media types, so allowing the user to know which media he's currently searching. In order to customize the media filters, and so to change the visible tabs, a separate settings screen is used.
The final layout structure is visible in the following picture:
Now that layout has been defined, the actual widget graphics has to be designed.
The widget will try to use the same style and color scheme of the Bing website, in order to give a familiar look-and-feel to Bing users. The home design is visible in the following screenshot, in both portrait and landscape mode on a 240x320 display:
Bing offers a complete REST API that allows to easily perform searches from any mobile applications. In order to use the Bing API, it is necessary to request an API KEY, and this can be done from this page:
Full reference of the Bing API is available on Microsoft developer's website:
Search can be performed with simple HTTP requests, whose basic syntax is the following
http://api.search.live.net/<format>.aspx?AppId=<api_key>&Query=<term>&Sources=<source_type>
Where:
For a full list of allowed parameters and options, check the Bing API reference.
Bing offers 3 types of response formats, in order to suit all applications' needs. These are: XML, JSON and SOAP. Since JavaScript natively supports the JSON format, this will be the format used by the Bing widget.
Full details about the three formats are available on the following pages:
Since searches can return big sets of results, these have to be necessarily paginated. In this case, there are 2 basic options:
Since the first option is more user-friendly, and optimized the memory usage with large sets of items, standard pagination will be used.
Instead of giving a long list of available pages, that could be hardly usable on mobile displays, only "NEXT" and "PREVIOUS" buttons will be used, in order to allow easy navigation toward next and previous result pages.
Users may want to be able to search for specific media types, and could be not interested in others. So, a view is created to allow users to select the preferred media types.
Settings are automatically stored as soon as the user leaves the Settings screen, without the need to any extra user interaction, and are persisted through different widget's usage session, by using widget setPreferenceForKey() and preferenceForKey() methods.
Update of the widget will be performed used two different techniques, as for the Forum Nokia widget (described here: Mobilising websites: building a WRT widget for the Forum Nokia website).
A dedicated view will be used for the widget update functionality:
The touch enabled version will use the same layout and design of the standard version of the widget. However, some adjustments and refinements are necessary:
The touch-enabled version screenshots are visible below:
The widget icon will reproduce the Bing logo, in order to make the widget easily recognizable:
![]()
Now, the widget is ready to be deployed and tested!
The Bing widget, described in this article, is available for download here: Bing download page.
No related wiki articles found