MTK短訊息程式設計

2021-06-07 23:09:29 字數 1867 閱讀 6358

1.獲取短訊息,

mtk沒有專門用於獲取短訊息內容的函式,這給我們操作短訊息帶來了不便.比如有時我們需要分析短訊息的內容,再比如有時要把短訊息寫入t卡了,再或者有時要把某條短訊息顯示到某些應用場合了,這時就需要獲取短訊息的內容.這裡提供乙個我經常使用的介面:

#include "smsapi.h"
#include "med_utility.h"
extern unsigned short mmi_frm_sms_show_list_index;
s8 g_sms_buffer[160] = ;
char *convertstring(char * str)
return str;
}
int wstrlen(char * txt)
return lenth;
}
void my_msg_get_msg_rsp(void* data, module_type mod, u16 result)
else
}
// index: 0~0xff
s32 my_msg_get_msg_req (u8 type, u16 req_index, e_mtpnp_ad_filter_rule cur_sim)
#ifdef __mmi_dual_sim_master__
if(cur_sim == mtpnp_ad_filter_master)
else
if((count <=0)||(req_index >= count))
mtpnp_pfal_sms_set_current_index(req_index);
index = mmi_frm_sms_show_list_index[req_index];
#else
index = req_index;
#endif
mmi_frm_sms_read_sms(my_msg_get_msg_rsp, mod_mmi, type, index, mmi_true);
return 0;
}

2.發簡訊,有時我們需要向網路或者別的基站傳送一條自填充內容的簡訊.比如訂閱某種服務,或者查詢話費,或者定時傳送簡訊,或者拒接**時給mt發一條提示簡訊等場合.函式有5個引數,mobileno為手機號碼,asc型別字串,mobilenolen號碼長度,smsmsg短訊息內容,應為ucs2編碼,smsmsglen長度,simid雙卡情況下,0為主卡,1為副卡

#include "smsapi.h"
#include "protocolevents.h"
#ifndef __mmi_dual_sim_master__
void my_send_sms(s8 mobileno, u32 mobilenolen, u8 smsmsg, u32 smsmsglen)
#else
void my_send_sms(s8 mobileno, u32 mobilenolen, u8 smsmsg, u32 smsmsglen,
u8 simid)
#endif
else
#endif//__mmi_dual_sim_master__
}

通過串列埠收發短訊息 下

原文出處 http www.kernelstudio.com getitem.asp?id 14 q pdu的核心編碼方式已經清楚了,如何實現用at命令收發短訊息呢?a 在上篇中,我們已經討論了7bit,8bit和ucs2這幾種pdu使用者資訊的編碼方式,並且給出了實現 現在,重點描述pdu全串的編...

通過串列埠收發短訊息 下

qpdu的核心編碼方式已經清楚了,如何實現用at命令收發短訊息呢?a在上篇中,我們已經討論了7 bit,8bit和ucs2這幾種pdu使用者資訊的編碼方式,並且給出了實現 現在,重點描述pdu全串的編碼和解碼過程,以及g 07.05的at命令實現方法。這些是底層的核心 為了保證 的可移植性,我們盡可...

通過串列埠收發短訊息 下

q pdu的核心編碼方式已經清楚了,如何實現用at命令收發短訊息呢?a 在上篇中,我們已經討論了7bit,8bit和ucs2這幾種pdu使用者資訊的編碼方式,並且給出了實現 現在,重點描述pdu全串的編碼和解碼過程,以及gsm 07.05的at命令實現方法。這些是底層的核心 為了保證 的可移植性,我...