Building Mobile Enterprise Applications : Using webMethods Mobile Designer : Adding Devices to a Mobile Application Project : Determining Device Settings by Running the Device Profiler : Device Profiler Tests to Determine Device Settings
Device Profiler Tests to Determine Device Settings
The following lists the Device Profiler tests you need to complete to determine the settings for a device.
Keypresses
On loading the Device Profiler, you are asked to perform the keypress test to define the keys the device has and also to define the keys being used for navigation in the Device Profiler application itself. This test checks for:
*Up, Down, Left, Right
*Action button (Fire)
*0-9 numerical keys
*Back and Forward softkeys
*# (pound)
** (asterisk)
When asked to press a key:
*If the device has the key you are asked to press, press that key.
*If a device does not have a key that you are asked to press, simply press a previously defined key, for example, 0, to skip this test.
Caution:  
If you press a new key, one that you have not previously defined, the application assumes you are identifying that key to be the one the test is trying to define.
*If the device does not have a keypad, wait 5 seconds for the Device Profiler to continue to the main menu.
You might need to perform the keypress test again after you have configured the correct canvas in order to detect the key code values for the soft keys.
If you find that different firmware for the same device returns different keypress values, when you add the device profile using the +Add-Update-Handset Ant task, you can enter a comma-delimited list of values so that mobile applications that use this device will work on all versions of the device.
Touchscreen
Although there is no specific touchscreen test, the Device Profiler should automatically enable touchscreen support if it determines touchscreen support is needed. Alternatively, simply tap the screen, and if the particular device is touchscreen enabled, the Device Profiler should detect the touchscreen functionality. When touchscreen is enabled, the Device Profiler displays a 3x3 grid in the background of each screen. Tapping in the top, bottom, left and right squares emulates up, down, left and right keys being pressed in the Device Profiler, while tapping in the center square emulates the fire key being pressed.
Canvas
The Canvas test sets the screen area for an application. For the Canvas test you choose the canvas that provides the most-usable screen area. Additionally, on some devices, you can manually alter the screen size beyond what the device returns to enable drawing outside of the indicated screen region.
System Font
The System Font test allows you to detect the best font to use on the device, and any adjustments that need to be applied when using it. Use Up and Down to cycle through the various options that you can change, with Left and Right changing the settings for each one.
Gfx Speed
The Gfx Speed test does not require user interaction. However, it is best to tap one of the device keys or the screen every few seconds to keep the phone from entering the screen saver mode because the screen saver mode might compromise the metrics that the Device Profiler is recording.
Keypress2
Sometimes a device needs an application to regularly call a threading sleep or wait so that the device can perform its other activities in the background. A normal indication that a device is not calling a threading sleep or wait when it needs to is that the application might run slow or keypresses might seem to lag. Use the Keypress2 test to adjust the sleep time per update to achieve the best keypress response time and frame rate.
Sprite Width
The Sprite Width test allows you to indicate whether transparent images with odd pixel widths display properly. For this test, the Device Profiler displays two images. You indicate whether the two images are the same.
Interrupts
The Interrupts test defines how to detect interrupts for the device. For this test, the Device Profiler prompts you to perform various interrupts.
Press the Fire key to initiate an interrupt test. The Device Profiler will not detect the interrupt if you do not press the Fire key. For each interrupt:
*If the interrupt is intrusive, press the key that the Device Profiler indicates.
Caution:  
During this test, only press the keys that the Device Profiler indicates. Some devices use incoming key codes as indicators of certain interrupts.
*If the interrupt is non-intrusive, such as an incoming SMS resulting in an audio cue, press Right to skip a test.
*If the interrupt is irrelevant to the device, such as receiving a phone call on a non-mobile device, press Right to skip the test.
If you find a device does not detect a particularly intrusive interrupt through these tests, it might be worth trying some tests in the run-time code of the Device Profiler to determine whether other detection methods might work instead. If you find something new that works, contact Software AG can be applied to all other devices.
LCDUI Softkeys
The LCDUI Softkeys test defines LCDUI soft key functionality for the device. The Device Profiler application switches to MIDP1.0 canvas mode for this test. If the soft keys are not displaying as expected, you can alter the LCDUI soft key parameters. By using the soft keys themselves, you should be able to test the following soft key scenarios:
*Test 0: FWRD soft key
*Test 1: Both BACK and FWRD soft keys
*Test 2: BACK soft key
RotCanvas
The RotCanvas test determines whether a user of the device can rotate the screen and whether the rotation is detected at run time. If the user can rotate the screen, the Mobile Designer run-time code detects the screen size for this device on each update cycle. The Resource Handler uses the information about the standard screen dimensions.
Softkeys2
The Softkeys2 test determines whether the device detects LCDUI soft keys with the selected canvas. If the device does detect the soft keys, applications can use the soft keys to minimize screen intrusion.
Vibrate
The Vibrate test determines whether the device has a vibration feature. The Device Profiler attempts to execute the vibration feature and then prompts you to indicate whether the device physically vibrated or not (basically we don't want to assume that just because the device API claimed it worked that it actually did).
Backlight
The Backlight test determines whether the backlight can be kept on continuously. The Device Profiler requires you to provide input to adjust and confirm the backlight timing.
Transforms
The Transforms test determines whether the run-time image transforms work as expected. The transforms are displayed in the repeating order, as shown in the following image:
The Device Profiler prompts you to compare the images it displays to the reference image shown above.
Browser Launch
The Browser Launch test determines whether the device can launch its Web Application Protocol (WAP) or Web browser successfully.
Caution:  
This test can crash the device or Device Profiler. Ensure that you have saved all test results so far.
SMS Test
The SMS test determines whether the device can send an SMS message.
Note:  
Before you build the Device Profile project, you need to update its TestWirelessMessaging class to set a mobile phone number for the phone_number String. The Device Profiler attempts to send a text message to the mobile number you provide, and you verify whether the SMS message was successfully sent.
Audio
The Audio test performs several audio checks that prompt for user feedback to determine the best format on the device, whether a piece of sound plays, and whether the volume is configurable. The test also determines the best volume at which to play a sound, as well as a few other minor tests.
In the Mobile Media API for J2ME, there are audio parameters that Mobile Designer cannot identify by running the Device Profiler. If the audio does not work properly, you need to manually set these parameters in Mobile Designer for the device using the procedure described in Updating an Existing Device Profile in the Device Database. The following are the parameters to update:
*MD_SOUND_JSR135_MAX_PREFETCHED_PLAYERS is set to 1 by default. This parameter determines how many player objects are in a pre-fetched state at any one time.
*MD_SOUND_JSR135_CLEAN_PLAYER_AFTER_PLAYING is set to false by default. This parameter de-allocates or ends the sound when it has finished playing.
*MD_SOUND_JSR135_CLEAN_PLAYER_IF_STOPSOUND is set to false by default. This parameter de-allocates or ends a sound when it is stopped.
*MD_SOUND_JSR135_DELETE_PLAYERS is set to false by default. This parameter deletes player objects when no longer in use. Some devices might need to retain the player for future use.
*MD_SOUND_JSR135_DONT_INTERRUPT_PLAYING is set to false by default. This parameter prevents audio from starting when audio is already playing.
*MD_SOUND_JSR135_IGNORE_STOPSOUND is set to false by default. This parameter ignores any attempts by the application code to force a sound to stop.
*MD_SOUND_JSR135_KILL_IF_START_WHEN_PREFETCHED is set to false by default. This parameter clears a player object if the application tries to start it when the player is in its pre-fetched state.
*MD_SOUND_JSR135_LOADSOUND_CREATES_PLAYER is set to false by default. This parameter ensures that the player object is created when the sound resource is loaded.
Copyright © 2007-2016 Software AG, Darmstadt, Germany.

Product LogoContact Support   |   Community   |   Feedback