Phone Signal Tutorial

This tutorial describes how to retrieve the phone signal strength using the multimode phone sub-sessions. Phone signal strength information is expressed as two integers:

  1. Signal strength in dBm

  2. Number of signal bars that the phone must display.

The function must return the signal strength and the number of bars to be displayed to the user.

Phone signal example

The following code checks if the signal information can be obtained, and if so, gets the signal information. The code assumes iMobilePhone is an RMobilePhone object.

TUint32 signalCaps;
User::LeaveIfError(iMobilePhone.GetSignalCaps(signalCaps));

TInt32 signalStrength = 0;
TInt8 bars = -1;
if (signalCaps & RMobilePhone::KCapsGetSignalStrength)
    {
    TRequestStatus status;
    iMobilePhone.GetSignalStrength(status, signalStrength, bars);
    User::WaitForRequest(status);
    User::LeaveIfError(status.Int());
    }