www.3g918.com.cn文章摘录

 2nd,检测用户gprs是否已经联接

我有个办法可以检查是否连接中,但还没找到连接的是CMWAP,还是CMNET?也需要请教人
            iConnection.EnumerateConnections(ConnectionCount);
                 for(int i = 1; i <= ConnectionCount; i++)
                 {
                         iConnection.GetConnectionInfo(i, connectionInfo);
                         if(connectionInfo().iIapId == iDefaultAccessPointID)
                         {
                                 NeedReConnFlag = ETrue;
                                 //MessageBox(_L("NeedReConnFlag = true"));
                                 return NeedReConnFlag;
                         }
                 }
如果网络断了,GetConnectionInfo就找不到连接信息了
是不是CMWAP连接,就没办法判断了,我也在找解决办法

------------------------------------------------------------

s60的数据类型转换(巨有用)


1.串转换成数字
   TBuf16<20> buf(_L( "123" ) );
    TLex lex( buf );
    TInt iNum;
    lex.Val( iNum );
2.数字转换成串
   TBuf16<20> buf;
   TInt iNum = 20;
   buf.Format( _L( "%d" ) , iNum  );
3.将symbian串转换成char串
    char* p = NULL;
    TBuf8<20> buf( _L( "aaaaa" ) );
    p = (char *)buf.Ptr();

4.UTF-8转换成UNICODE
    CnvUtfConverter::ConvertToUnicodeFromUtf8( iBuf16 , iBuf8 );
5.UNICODE转换成UTF-8
    CnvUtfConverter::ConvertFromUnicodeToUtf8( iBuf8 , iBuf16 );

6.将char串转换成symbian串
    char* cc = "aaaa";
    TPtrC8 a;
    a.Set( (const TUint8*)cc , strlen(cc) );

再加一点:
TDesC8 & buf ;
TUint8   * pdata ;
pdata = buf.Ptr() ;
然后,这个pdata就可以当成unsigned char *用了,这在网络通讯的时候很重要。
如果,怕pdata破坏的话,可以
TBuf8<1024> tmp_buf ;
tmp_buf.Copy(buf) ;
pdata = tmp_buf.Ptr() ;
这样就可以保护一下buf的数据了,尤其是如果这个buf是Socket的接收的数据是接收函数自己分配的时候。


------------------------------------------------------------
如何检测手机型号


所有的Series60设备都拥有一个由制造商分配的唯一标识符-机器UID;因此可以通过这一UID信息来获取手机型号;本文就介绍了这种方法.

常见的S60机型及其机器UID:

S60 1st Edition (0.9):
Nokia 7650          0x101F4FC3

S60 1st Edition, FP1 (1.2):
Nokia 3650        0x101F466A
Nokia 3660        0x101F466A
Sendo-X             0x101FA031
Siemens SX-1  0x101F9071

S60 2nd Edition:
Nokia 6600       0x101FB3DD

S60 2nd Edition, FP1:
Nokia 3230      0x10200F97
Nokia 6260      0x101FB3F4
Nokia 6620      0x101F3EE3
Nokia 6670      0x101FB3F3
Nokia 7610      0x101FB3F3

S60 2nd Edition, FP2:
Nokia 6630     0x101FBB55
Nokia 6680     0x10200F99
Nokia 6681     0x10200F9C
Nokia 6682     0x10200F9B

S60 2nd Edition, FP3:
Nokia N70     0x10200F9A
Nokia N90     0x10200F98

other
Nokia N-Gage™ 0x101F8C19
Nokia N-Gage™ QD 0x101FB2B1

因此可通过以下代码获取手机型号:

void GetPhoneModeL(TDes& /*aModeBuf*/)
{
TInt machineUid=0;
HAL::Get(HALData::EMachineUid, machineUid);
switch(machineUid)
{
  case 0x101F9071:
   {
    //Siemens SX1
    break;
   }
  case 0x101F466A:
   {
    //Nokia 3650
    break;
   }
  case 0x101F4FC3:
   {
    //Nokia 7650
    break;
   }
  case 0x101FB3DD:
   {
    //Nokia 6600
    break;
   }

   .....................

}

//需要在头文件中include<hal.h>;在mmp文件中加上hal.lib

----------------------------------------------------
动态改变 CBA 按钮


Code:
RESOURCE CBA r_yourapp_softkeys_options_open
{
buttons =
  {
  CBA_BUTTON { id=EAknSoftkeyOptions; txt = "Options"; },
  CBA_BUTTON { id=EYourAppCmdOpenApp; txt = "Open"; }
  };
}

RESOURCE CBA r_yourapp_softkeys_options_stop
{
buttons =
  {
  CBA_BUTTON { id=EAknSoftkeyOptions; txt = "Options"; },
  CBA_BUTTON { id=EYourAppCmdStopApp; txt = "Stop"; }
  };
}


In the HRH file:


Code:
enum TYourAppCommandIds
    {
// ...
id=EYourAppCmdOpenApp,
id=EYourAppCmdStopApp,
// ...
};


In your application's AppUi class:


Code:
void CYourAppUi::SetCommandSetL(TInt aResourceId)
{
CEikButtonGroupContainer* cba = CEikButtonGroupContainer::Current();
cba->SetCommandSetL( aResourceId );
}


Now you can call:

SetCommandSetL( R_YOURAPP_SOFTKEYS_OPTIONS_OPEN );
OR
SetCommandSetL( R_YOURAPP_SOFTKEYS_OPTIONS_STOP );

where ever you want.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值