Получение названия сети с помощью CTelephony
Метаданные
Статья
Перевод:
Оригинал: Network name with CTelephony
Последнее редактирование: hamishwillee
(09 Dec 2011)
Этот пример демонстрирует получение названия текущей сети сотовой связи с помощью класса CTelephony. Этот код будет работать только на устройствах на базе Symbian 3-й редакции.
Для использования данного примера, вам необходимо реализовать в своем классе функцию обратного вызова и создать экземпляр класса CNwNameCheck. После этого, функция обратного вызова будет вызвана с названием текущей сети в качестве параметра.
GetNetWorkName.cpp
CNwNameCheck::~CNwNameCheck()
{
Cancel();
delete iTelephony;
}
void CNwNameCheck::ConstructL(void)
{
iTelephony = CTelephony::NewL();
iTelephony->GetCurrentNetworkName(iStatus, iIdV1Pkg);
SetActive();
}
CNwNameCheck::CNwNameCheck(MNwNameObserver& aObserver)
: CActive(EPriorityNormal),iObserver(aObserver),iIdV1Pkg(iIdV1)
{
CActiveScheduler::Add(this);
}
void CNwNameCheck::RunL()
{
iObserver.NetworkNameL(iIdV1.iNetworkName);
}
void CNwNameCheck::DoCancel()
{
iTelephony->CancelAsync(CTelephony::EGetCurrentNetworkNameCancel);
}
GetNetWorkName.h
#include <Etel3rdParty.h>
class MNwNameObserver
{
public:
virtual void NetworkNameL(const TDesC& aNwName) = 0;
};
class CNwNameCheck : public CActive
{
public:
CNwNameCheck(MNwNameObserver& aObserver);
void ConstructL(void);
~CNwNameCheck();
private:
void RunL();
void DoCancel();
private:
MNwNameObserver& iObserver;
CTelephony* iTelephony;
CTelephony::TNetworkNameV1 iIdV1;
CTelephony::TNetworkNameV1Pckg iIdV1Pkg;
};


(no comments yet)