WEB开发网      婵犻潧鍊婚弲顐︽偟椤栨稓闄勯柦妯侯槸閻庤霉濠婂骸浜剧紒杈ㄥ笚閹峰懘鎮╅崹顐ゆ殸婵炴垶鎸撮崑鎾趁归悩鐑橆棄闁搞劌瀛╃粋宥夘敃閿濆柊锕傛煙鐎涙ê鐏f繝濠冨灴閹啴宕熼鍡╀紘婵炲濮惧Λ鍕叏閳哄懎绀夋繛鎴濈-楠炪垽鎮归崶褍妲婚柛銊ュ缁傚秹鏁撻敓锟� ---闂佹寧娲╅幏锟�
开发学院手机开发Symbian 开发 Symbian 网络接入点常用编程方法总结 阅读

Symbian 网络接入点常用编程方法总结

 2010-03-18 21:02:00 来源:WEB开发网 闂侀潧妫撮幏锟�闂佸憡鍨电换鎰版儍椤掑倵鍋撳☉娆嶄沪缂傚稄鎷�婵犫拃鍛粶闁靛洤娲ㄩ埀顒佺⊕閵囩偟绱為敓锟�闂侀潧妫撮幏锟�  闂佺ǹ绻楀▍鏇㈠极閻愭娑樷枎閹邦剛娉氶梺鍛婎殔濞层劌鈻撻幋婵愬殫妞ゆ梻鍘х憴锟�
核心提示:从CommDb中获取接入点信息:CCommsDatabase* commsDB=CCommsDatabase::NewL(EDatabaseTypeIAP);CCommsDbTableView* table= commsDB->OpenIAPTableViewMatchingBearerSetLC(ECommDb

从CommDb中获取接入点信息:

CCommsDatabase* commsDB=CCommsDatabase::NewL(EDatabaseTypeIAP);

CCommsDbTableView* table= commsDB->OpenIAPTableViewMatchingBearerSetLC(

ECommDbBearerGPRS|ECommDbBearerWLAN, //GPRS和无线局域网

ECommDbConnectionDirectionOutgoing); //方向无所谓的,写Unknown也可以

User::LeaveIfError(table->GotoFirstRecord()); //转到第一条记录

TInt err = KErrNone;

do

{

TBuf<32> name;

TUint32 id;

table->ReadTextL(TPtrC(COMMDB_NAME), name); //获取当前接入点的名称

table->ReadUintL(TPtrC(COMMDB_ID), id); //获取当前接入点的IapId

… //do something

err = table->GotoNextRecord(); //转到下一条记录

}

while (err == KErrNone);

以上代码演示了如何遍历接入点列表,实现方式比较直接,我们也可以使用另一个包装好的类CApSelect来实现:

CCommsDatabase* CommDb = CCommsDatabase::NewL(EDatabaseTypeIAP);

CApSelect* ApSelect = CApSelect::NewLC(*CommDb, KEApIspTypeAll ,EApBearerTypeAll ,KEApSortUidAscending); //指定了ISP类型和Bearer类型,以及排序规则

if (ApSelect->MoveToFirst())

{

do

{

TPtrC a = ApSelect->Name(); //接入点名称

TUint uid = ApSelect->Uid(); //接入点IapId

//put here your IAP stuff

}

while(ApSelect->MoveNext()); //下一条记录

}

弹框让用户选择接入点

单纯是让用户选择使用哪个接入点,可以借助RConnection类搞定:

RSocketServ iSocketServ; // data member

RConnection iConnection; // data member

User::LeaveIfError(iSocketServ.Connect());

User::LeaveIfError(iConnection.Open(iSocketServ));

TCommDbConnPref connectPref;

connectPref.SetDialogPreference(ECommDbDialogPrefPrompt); //提示用户

connectPref.SetBearerSet(ECommDbBearerWLAN | ECommDbBearerGPRS);

1 2 3 4  下一页

Tags:Symbian 网络 接入点

编辑录入:coldstar [复制链接] [打 印]
赞助商链接