这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 活动中心 » 合作大赛 » 关于sms系统的问题,管理员请进

共6条 1/1 1 跳转至

关于sms系统的问题,管理员请进

菜鸟
2010-10-04 16:20:35     打赏
我们小组想做一个跟短消息有关的实用程序,但是在一个关键问题上卡住了,那就是我们不知道怎么增加和获取手机里的短消息。虽然vre提供了像vm_sms_add_msg,vm_sms_read_msg的函数,但是文档里面对它们的介绍十分简略,示例代码更是一点没有。我们小组的成员研究了很长时间均不能成功使用这些功能(总是返回-1)。不知道您可不可以指教一下,不胜感激



关键词: 关于     系统     问题     管理员     请进    

助工
2010-10-08 13:27:43     打赏
2楼
请问您拿到API文档了吗?
里面有对参数的说明。

菜鸟
2010-10-08 22:01:34     打赏
3楼
我拿到了,里面的说明也看过了,但还是不能成功。能不能提供一个使用示例?

助工
2010-10-14 14:04:02     打赏
4楼

你好,根据你之前贴的代码分析,可能是输入的号码编码不对。
需要输入的是ucs2编码。


菜鸟
2010-10-19 13:09:27     打赏
5楼
我也试过这样:  
FillPhoneNum(msg_data.number,"10086");

    msg_data.sim_id=VM_MMI_SIM_1;
    msg_data.status=VM_SMS_STATUS_UNREAD;
    msg_data.storage_type=VM_SMS_STORAGE_ME;
    msg_data.timestamp.year=2010;
    msg_data.timestamp.hour=17;
    msg_data.timestamp.min=40;
    msg_data.timestamp.mon=1;
    msg_data.timestamp.sec=10;
    msg_data.content=vm_malloc(sizeof(vm_ucs2_string("Hello world")));
    memcpy(msg_data.content,vm_ucs2_string("Hello world"),sizeof(vm_ucs2_string("Hello world")));
    msg_data.content_size=sizeof(vm_ucs2_string("Hello world"));
但是errorCode=vm_sms_add_msg(&msg_data,g,NULL);照样返回-1(REQ_ERROR)

FillPhoneNum是将一个字符串中的数字一个个存到一个VMINT8数组中:
VMINT FillPhoneNum(VMINT8 num[],VMSTR s)
{
    VMINT len;
    VMINT i;
    len=strlen(s);
    for (i=0;i<len;i++)
    {
        num[i]=s[i]-'0';
    }
    return i;
}

助工
2010-10-28 20:11:08     打赏
6楼
msg_data.number 中的号码应该是ucs2编码
你的代码中不是。
请参考以下代码:

 strcpy(number,"10086");
 vm_ascii_to_ucs2((VMWSTR)wnumber, (VM_SMS_MAX_ADDR_LEN + 1) * 2, number);
 vm_safe_wstrcpy((VMWSTR)msg_data.number,VM_SMS_MAX_ADDR_LEN, (VMWSTR)wnumber);

共6条 1/1 1 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]