Для этого вам необходимо сначала определить возможности устройства.Вам нужно будет проверить, какую разметку поддерживает устройство.Это WML?или это XHTML?
Мы использовали WURFL от Sentia Mobile для определения возможностей устройства с помощью агента пользователя устройства.Для построения разметки мы использовали WALL4PHP, но если вы более привыкли к Java, вы можете использовать WNG.По сути, это будет обрабатывать правильную разметку для обслуживания на клиенте.