Establishing simultaneous GSM and GPRS connections using Symbian C++
S60 3rd Edition (initial release)
Establishing GSM and GPRS connections simultaneously
S60 3rd-party applications may want to provide the functionality of accessing GPRS while there is an active GSM call.
S60 devices have been categorized into three classes based on the GPRS capability during an active GSM call.
Can be connected to GPRS service and GSM service (voice, SMS), using both at the same time. Such devices currently available include the S60 3rd Edition devices (Nokia N73/N80/N91/N93, Nokia E60/E61/E70, etc).
Can be connected to GPRS service and GSM service (voice, SMS), but using only one or the other at a given time. During GSM service (voice call or SMS), GPRS service is suspended, and then resumed automatically after the GSM service (voice call or SMS) has concluded. Most S60 2nd Edition devices are in Class B (Nokia N70, Nokia N90, Nokia 6680, etc).
Can be connected to either GPRS service or GSM service (voice, SMS). Must be switched manually between the services.
Note: There is no direct API to query about the supported GPRS class in a device. Most S60 3rd Edition 3G (WCDMA) phones support GPRS and belong to class A. The Feature Discovery API can be used to detect if the phone supports WCDMA stack. Here is a code snippet:
TBool isSupported = CFeatureDiscovery::IsFeatureSupportedL(KFeatureIdProtocolWcdma);
// activate the service