×
Namespaces

Variants
Actions
(Difference between revisions)

Sensor based interactions with home screen Web Runtime widgets

From Nokia Developer Wiki
Jump to: navigation, search
hamishwillee (Talk | contribs)
m (Automated change of category from Web Runtime (WRT) to Symbian Web Runtime)
hamishwillee (Talk | contribs)
m (Hamishwillee - Bot fixing redirect link.(Moving links from forum.nokia.com TO developer.nokia.com))
Line 7: Line 7:
  
 
===User interaction===
 
===User interaction===
Current home screen widgets do not allow direct user interaction, as explained in [http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-4F4EE10B-BC2C-4046-ADDB-AD4B67DB2A11.html this Forum Nokia Library page]. When '''the user clicks''' on a home screen widget, the '''full screen version of the widget is opened'''.
+
Current home screen widgets do not allow direct user interaction, as explained in [http://library.developer.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-4F4EE10B-BC2C-4046-ADDB-AD4B67DB2A11.html this Forum Nokia Library page]. When '''the user clicks''' on a home screen widget, the '''full screen version of the widget is opened'''.
  
 
===Sensor based interaction===
 
===Sensor based interaction===
This sections shows '''two possible way of interactions''' with home screen widgets, that use the '''inbuilt device's accelerometer''' and the [http://library.forum.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-B77C2006-879F-4AC6-B7BF-04B25B563A29.html JavaScript Sensor Service API], available starting from WRT 1.1.
+
This sections shows '''two possible way of interactions''' with home screen widgets, that use the '''inbuilt device's accelerometer''' and the [http://library.developer.nokia.com/index.jsp?topic=/Web_Developers_Library/GUID-B77C2006-879F-4AC6-B7BF-04B25B563A29.html JavaScript Sensor Service API], available starting from WRT 1.1.
  
 
==Sensor based interaction patterns==
 
==Sensor based interaction patterns==
Line 16: Line 16:
 
'''Complete code examples''' on how to use Sensors in WRT widgets can be found on the following pages:
 
'''Complete code examples''' on how to use Sensors in WRT widgets can be found on the following pages:
 
* [[Sensors Service in WRT]]
 
* [[Sensors Service in WRT]]
* [http://library.forum.nokia.com/topic/Web_Developers_Library/Sensors-test-Automation.wgz Sensor Service widget]
+
* [http://www.developer.nokia.com/Resources/Library/Web/ Sensor Service widget]
  
 
===Shake pattern===
 
===Shake pattern===
 
Inbuilt accelerometers allow to '''detect device's motions''', by measuring the device acceleration in the three spatial directions. By using this data, '''it is possible to identify when the device is shaken''', by checking for fast and repetitive motions.
 
Inbuilt accelerometers allow to '''detect device's motions''', by measuring the device acceleration in the three spatial directions. By using this data, '''it is possible to identify when the device is shaken''', by checking for fast and repetitive motions.
The '''sensor channel''' used to retrieve the acceleration values is the '''AccelerometerAxis''' (more information here: [http://library.forum.nokia.com/topic/Web_Developers_Library/GUID-A4538B4D-0D90-43F8-B1FA-72F616937760.html http://library.forum.nokia.com/topic/Web_Developers_Library/GUID-A4538B4D-0D90-43F8-B1FA-72F616937760.html])
+
The '''sensor channel''' used to retrieve the acceleration values is the '''AccelerometerAxis''' (more information here: [http://www.developer.nokia.com/Resources/Library/Web/ http://www.developer.nokia.com/Resources/Library/Web/])
  
 
[[Image:Wrt_shakepattern.png]]
 
[[Image:Wrt_shakepattern.png]]

Revision as of 14:42, 21 June 2011

{{{width}}}

This article proposes some sensor-based interaction patterns to be used with home screen Web Runtime widgets.

Contents

Description

Starting with Nokia N97, Web Runtime offer the possibility to add widgets to the device home screen. Home screen widgets allow users to view data from multiple widgets without the need to open them in full screen mode.

User interaction

Current home screen widgets do not allow direct user interaction, as explained in this Forum Nokia Library page. When the user clicks on a home screen widget, the full screen version of the widget is opened.

Sensor based interaction

This sections shows two possible way of interactions with home screen widgets, that use the inbuilt device's accelerometer and the JavaScript Sensor Service API, available starting from WRT 1.1.

Sensor based interaction patterns

This sections discusses some possible patterns of interaction that can be used to let users interact with home screen widgets, without the need of touch-based interactions. In order to implement the following patterns, the JavaScript Sensor Service API must be used. Complete code examples on how to use Sensors in WRT widgets can be found on the following pages:

Shake pattern

Inbuilt accelerometers allow to detect device's motions, by measuring the device acceleration in the three spatial directions. By using this data, it is possible to identify when the device is shaken, by checking for fast and repetitive motions. The sensor channel used to retrieve the acceleration values is the AccelerometerAxis (more information here: http://www.developer.nokia.com/Resources/Library/Web/)

Wrt shakepattern.png

The shake pattern could be used for several purposes, depending on the specific home screen widget:

  • if a widget shows data retrieved from a remote host, the shake actions could be used to force a refresh of the data presented to the user. This could allow to avoid automatic and unnecessary refreshes, so minimizing network traffic.
  • if a widget shows multiple items (e.g.: photos, news), the shake movements can be used to view the next available items.

Flip pattern

Sensors can be used to detect the current orientation of the phone, by using the Orientation sensors' channel. Depending on the device orientation, it is so possible to let WRT widgets behave differently.

Wrt flippattern.png

A possible use-case for this scenario is a widget that periodically retrieves data from a network host, so actually doing network traffic. In this situation, it could be useful to stop the automatic data refresh just flipping the device display downwards.

More generally, this pattern could be useful in all these situations where the user could be allowed to "stop" the widget's actions by simply down-flipping the mobile device (e.g.: during night).

Considerations

Constraints to be considered when implementing sensor-based interaction patterns:

  • battery consumption: continuously monitoring accelerometer sensors impacts on battery life. Careful testing and tuning should so be performed in order to optimize the sensors' monitoring, without causing too much battery consumption.
  • unintentional device motions: home screen widgets are designed to be always active. For this reason, the sensors' monitoring should be designed in order to detect unintentional motions, in order to avoid unwanted widget's responses.
  • multiple home screen widgets: since home screen allows to use multiple widgets at the same time, users could want to disable sensor-based interaction for some of them, and so to choose to interact only with some widgets. So, an option to enable/disable sensor-based interaction should be given to the user.
115 page views in the last 30 days.
×