1、弄了个程序,程序能正确的执行,并且把短信也写到了UIM卡上,但是拿手机看短信确看不到 写进去的短信,这是怎么回事??
这种情况发生在MOTOXT800 ,还有google G1上。
2、这个程序在华为的手机上确执行失败,同样的程序,用的同样的函数,怎么会有截然不同的结果呢???
请大虾指点指点
注明:都是android 2.1 系统,google G1(是1.5的),接口是一样的!
目的:写短信到UIM卡上
我是按照CDMA 中相应PDU格式 写的一条短信!
------解决方案--------------------
把你写的短信的具体数据贴出来,按CDMA分析就知道是否正确了。
------解决方案--------------------
//UPDATE RECORD
A0 DC 01 04 FF 03 60 00 00 02 10 02 02 07 02 C5 4C E2 25 A8 A8 06 01 4C 08 4D 00 03 10 01 F8 01 3E 20 F0 01 90 01 78 01 90 01 62 DF CA 70 04 B1 AC B1 AB B4 23 96 14 C6 70 01 62 96 3B 2B 12 B9 82 7A E3 10 C0 01 72 9F 54 4C 0B 10 8B B4 23 91 8A 75 D0 01 63 31 7A 70 02 9F 52 E0 7C F0 F8 03 06 08 12 29 19 26 16 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
90 00
//A0 DC 01 04 FF 是命令头,CLA = A0表示 TELECOM 应用,INS = DC 表示UPDATE RECORD,P1 P2 = 01 04 是参数,P3 = FF 是数据的长度(或返回数据的长度)表示( 255 )
//写记录,P2 = 04 表示绝对记录号,P1 = 01 为记录号,表示第1 条记录P3 = FF 表示后面的数据长度为255
//--收到的短信,未读
//----60 是长度( 96 ),
//----00 是CDMA sms type,表示SMS Point-to-Point
//----00 02 10 02 是Parameter ID,其中00 表示Teleservice Identifier
//----02 07 02 C5 4C E2 25 A8 A8 是Parameter ID,其中02 表示Originating Address
//------02 C5 4C E2 25 A8 A8 是号码,其中
//------DIGIT_MODE,0 表示4位DTMF格式
//------NUMBER_MODE,0 表示ANSI T1.607格式
//------NUMBER_FIELDS,表明目的号码长度为11 ,内容为15338896020
//----06 01 4C 是Parameter ID,其中06 表示Bearer Reply Option
//----08 4D 00 03 10 01 F8 01 3E 20 F0 01 90 01 78 01 90 01 62 DF CA 70 04 B1 AC B1 AB B4 23 96 14 C6 70 01 62 96 3B 2B 12 B9 82 7A E3 10 C0 01 72 9F 54 4C 0B 10 8B B4 23 91 8A 75 D0 01 63 31 7A 70 02 9F 52 E0 7C F0 F8 03 06 08 12 29 19 26 16 是Parameter ID,其中08 表示Bearer Data
//------00 03 10 01 F8 表示Message Identifier(sub para id, sub para len, 8 * sub para)
//------01 3E 20 F0 01 90 01 78 01 90 01 62 DF CA 70 04 B1 AC B1 AB B4 23 96 14 C6 70 01 62 96 3B 2B 12 B9 82 7A E3 10 C0 01 72 9F 54 4C 0B 10 8B B4 23 91 8A 75 D0 01 63 31 7A 70 02 9F 52 E0 7C F0 F8 表示User Data
//------03 06 08 12 29 19 26 16 表示Message Center Time Stamp
//--------------------普通短信
//----------01 是User Data,3E 是长度( 62 ),
//----------dcs = 04 表示UCS2
//----------1E 是具体数据长度(字符个数,而不是字节个数)( 30 ),
//----------数据经过右移5位为00 32 00 2F 00 32 00 2C 5B F9 4E 00 96 35 96 35 76 84 72 C2 98 CE 00 2C 52 C7 65 62 57 30 4F 5C 62 18 00 2E 53 EA 89 81 62 11 76 84 72 31 4E BA 00 2C 66 2F 4E 00 53 EA 5C 0F 9E 1F 表示"2/2,对一阵阵的狂风,勇敢地作战.只要我的爱人,是一只小鸟"
//90 00 是返回状态,表示---成功
//UPDATE RECORD
A0 DC 03 04 FF 03 5B 00 00 02 10 02 02 07 02 C5 4C E2 25 A8 A8 06 01 00 08 48 00 03 10 00 00 01 3E 20 F0 01 90 01 78 01 90 01 62 DF CA 70 04 B1 AC B1 AB B4 23 96 14 C6 70 01 62 96 3B 2B 12 B9 82 7A E3 10 C0 01 72 9F 54 4C 0B 10 8B B4 23 91 8A 75 D0 01 63 31 7A 70 02 9F 52 E0 7C F0 F8 0F 01 00 FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF FF
90 00
//A0 DC 03 04 FF 是命令头,CLA = A0表示 TELECOM 应用,INS = DC 表示UPDATE RECORD,P1 P2 = 03 04 是参数,P3 = FF 是数据的长度(或返回数据的长度)表示( 255 )