Device detection capabilities

Liferay 6.1 includes a new API for detecting the capabilities of the device which is making a request to your portal.

In order to be able to use this feature, you will need to deploy a plugin called "Device Recognition". This plugin is using a device database called WURFL to determine the capabilities of the device, but you could create your own plugin to use your own devices database.

Using the Device API #

The object Device can be obtained from the themeDisplay object like this:

 Device device = themeDisplay.getDevice();

And the API can be seen in the Device javadocs.

For example, in order to obtain the dimensions of the device you could do:

Dimensions dimensions = device.getScreenSize();
float height = dimensions.getHeight();
float width = dimensions.getWidth();

Device Capabilities #

Most of the capabilities of the device can be detected, but this depends on the device detection implementation you're using. In the case of WURFL (the default with the Device Recognition plugin), you can see the list of WURFL capabilities here and you would obtain them like this:

String brand = device.getCapability("brand_name")  

0 Anhänge
15864 Angesehen
Durchschnitt (1 Stimme)
Die durchschnittliche Bewertung ist 4.0 von max. 5 Sternen.
Kommentare
Antworten im Thread Autor Datum
Good feature. Gaurav Jain 12. September 2012 03:07
Useful to make your portlets mobile-aware in... Peter Mesotten 17. September 2012 00:06
Great!! Paras Jain 27. September 2012 12:52
Good Feature., Thanks its help me to implements... M. Ahamed Maqbool 1. Oktober 2012 05:31
Has anyone tested the capabilities that are... Huage Chen 24. Juli 2013 08:11

Useful to make your portlets mobile-aware in combination with media query enabled themes! Thanks for sharing.
Gepostet am 17.09.12 00:06.
Good Feature., Thanks its help me to implements this feature in my Projects
Gepostet am 01.10.12 05:31.
Has anyone tested the capabilities that are able to be detected through "device" object. I tried to get identify whether the device is a desktop or not. Failed to get it with the following expression:
${device.getCapability("is_wireless_device")}
Gepostet am 24.07.13 08:11 als Antwort auf M. Ahamed Maqbool.