sendTextMessage在android手机 [英] sendTextMessage In android phone
本文介绍了sendTextMessage在android手机的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
这是简单的code发送短信。
47:SmsManager的短信= SmsManager.getDefault();
48:sms.sendTextMessage(12345678901,NULL,你好!,NULL,NULL);
但我无法运行此code。 这code运行成功的Android 2.1的版本,但我的手机,三星的Galaxy II,它发生NullPointException错误。告诉我这个问题。这里是AndroidManifest.xml中code和错误日志。
<使用-权限的Android:名称=android.permission.SEND_SMS/>
致命异常:主要
java.lang.RuntimeException的:无法启动的活动ComponentInfo {ric.FPSProject.FamilyPositionSearch / ric.FPSProject.SinglePos.SinglePosMap}:显示java.lang.NullPointerException
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2668)
在android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2684)
在android.app.ActivityThread.access $ 2300(ActivityThread.java:126)
在android.app.ActivityThread $ H.handleMessage(ActivityThread.java:2038)
在android.os.Handler.dispatchMessage(Handler.java:99)
在android.os.Looper.loop(Looper.java:123)
在android.app.ActivityThread.main(ActivityThread.java:4632)
在java.lang.reflect.Method.invokeNative(本机方法)
在java.lang.reflect.Method.invoke(Method.java:521)
在com.android.internal.os.ZygoteInit $ MethodAndArgsCaller.run(ZygoteInit.java:858)
在com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
在dalvik.system.NativeStart.main(本机方法)
显示java.lang.NullPointerException:产生的原因
在android.os.Parcel.readException(Parcel.java:1253)
在android.os.Parcel.readException(Parcel.java:1235)
在com.android.internal.telephony.ISms $存根$ Proxy.sendText(ISms.java:561)
在android.telephony.SmsManager.sendTextMessage(SmsManager.java:109)
**在ric.FPSProject.SinglePos.SinglePosMap.sendSMS(SinglePosMap.java:48)**
在ric.FPSProject.SinglePos.SinglePosMap.initPersonData(SinglePosMap.java:273)
在ric.FPSProject.SinglePos.SinglePosMap.onCreate(SinglePosMap.java:134)
在android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
在android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2632)
... 11更多
解决方案
给悬而未决的意图在第48行中给定的波纹管
字符串发送=android.telephony.SmsManager.STATUS_ON_ICC_SENT;
PendingIntent piSent = PendingIntent.getBroadcast(smsActivity.this,0,新意图(发送),0);
sms.sendTextMessage(12345678901,NULL,你好!,piSent,NULL);
我相信它的工作原理:)
This is simple code send SMS.
47: SmsManager sms = SmsManager.getDefault();
48: sms.sendTextMessage("12345678901", null, "hello!", null, null);
But I can't run this code. This code run success in android version 2.1, but my phone, Samsung galaxy II, it occur NullPointException error. Tell me about that problem. Here is AndroidManifest.xml code and error log.
<uses-permission android:name="android.permission.SEND_SMS"/>
FATAL EXCEPTION: main
java.lang.RuntimeException:Unable to start activity ComponentInfo {ric.FPSProject.FamilyPositionSearch/ric.FPSProject.SinglePos.SinglePosMap}: java.lang.NullPointerException
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2668)
at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2684)
at android.app.ActivityThread.access$2300(ActivityThread.java:126)
at android.app.ActivityThread$H.handleMessage(ActivityThread.java:2038)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:123)
at android.app.ActivityThread.main(ActivityThread.java:4632)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:521)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:858)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:616)
at dalvik.system.NativeStart.main(Native Method)
Caused by: java.lang.NullPointerException
at android.os.Parcel.readException(Parcel.java:1253)
at android.os.Parcel.readException(Parcel.java:1235)
at com.android.internal.telephony.ISms$Stub$Proxy.sendText(ISms.java:561)
at android.telephony.SmsManager.sendTextMessage(SmsManager.java:109)
**at ric.FPSProject.SinglePos.SinglePosMap.sendSMS(SinglePosMap.java:48)**
at ric.FPSProject.SinglePos.SinglePosMap.initPersonData(SinglePosMap.java:273)
at ric.FPSProject.SinglePos.SinglePosMap.onCreate(SinglePosMap.java:134)
at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1049)
at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2632)
... 11 more
解决方案
give the pending intent in your 48th line as given bellow
String sent = "android.telephony.SmsManager.STATUS_ON_ICC_SENT";
PendingIntent piSent = PendingIntent.getBroadcast(smsActivity.this, 0,new Intent(sent), 0);
sms.sendTextMessage("12345678901", null, "hello!", piSent, null);
am sure it works :)
这篇关于sendTextMessage在android手机的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文