我希望我的应用程序在单击按钮时启动用户的默认短信应用程序。目的不是让用户发送消息,而是查看他们当前的文本对话,因此我不希望它启动SMS应用程序的“新消息”Activity,而是启动主应用程序的Activity本身。如果我执行以下操作:IntentsendIntent=newIntent(Intent.ACTION_VIEW);sendIntent.setData(Uri.parse("sms:"));context.startActivity(sendIntent);然后这是启动,而不是我希望它启动应用程序的主要部分,而不是这个新消息屏幕: 最佳答案
我使用下面的代码发送短信:Intentintent=newIntent(Intent.ACTION_VIEW,Uri.parse("smsto:"+phoneNumber));intent.putExtra("address",phoneNumber);intent.putExtra("sms_body",messageBody);intent.setType("vnd.android-dir/mms-sms");context.startActivity(intent);我在Intent中添加了Uriwithsmsto:和addressStringextra。它适用于大多数设备,但在
我正在为1.6及更高版本开发一个通过端口发送和接收SMS消息的Android应用程序。要发送短信,我正在使用以下方法:SmsManager.sendDataMessage(StringdestinationAddress,StringscAddress,shortdestinationPort,byte[]data,PendingIntentsentIntent,PendingIntentdeliveryIntent)但发现byte[]数据应该只包含消息体。似乎没有方法可用于发送多部分数据消息,也没有办法修改SMSheader(UDH)以指定消息是3条中的1条。我在尝试从通过指定端口收
我有兴趣发送带有修改后的UDH的文本消息或发送二进制数据文本。SmsManager不支持对UDH的任何访问,sendDataMessage仅适用于一些GSM手机,完全不支持CDMA。我已经做了相当多的研究,并得出结论,我需要找到一种绕过Android标准库的方法,尽管这听起来很糟糕。我的第一直觉告诉我使用nativeJava来完成它并将其导入我的应用程序。有谁知道这是否会导致Android的短信安全问题?另外,我很好奇像TextPlus这样的应用程序在不使用AndroidAPI的情况下如何工作,因为它们能够在不使用手机的标准短信的情况下发送“文本”。 最佳答
这听起来可能很奇怪,但我想知道我在手机上收到短信的号码。我可以使用telephonyManager.getLine1Number()获取SIM卡的手机号码(尽管不能保证我会获取电话号码)。但是万一我的手机里有两张SIM卡呢?因为telephonyManager.getLine1Number()只会返回第一张/ActivitySIM卡的SIM卡信息。已编辑:我也尝试获取收到任何短信时收到的所有信息,但找不到任何有趣的信息。那么有没有办法从收到的短信中获取收件人的号码(而不是发件人的号码)? 最佳答案 试试这个代码,publicclas
最近SO上的一个问题引起了我的注意。Android没有用于收听传入短信的公共(public)API。曾经有一个操作android.provider.Telephony.SMS_RECEIVED,但它已从官方API中删除,即使它仍然有效,但显然不是面向future的。我现在不需要此功能,但将来可能需要,但我觉得它不可用很奇怪,因为:Android一直鼓励对系统的每个小部分进行深度定制(想想启动器、拨号器、联系人应用)市场上已有许多标准SMS应用程序的替代品(更不用说供应商的应用程序了)也许我遗漏了什么或者有技术原因——我承认我不知道SMS是如何工作的 最佳答案
我没能找到这个问题的答案。为什么以编程方式从一个模拟器实例发送到另一个模拟器实例的数据SMS的长度在接收端被截断?在这里,我从emulator-554向emulator-556发送了20个字节,但是emulator-556接收仅12个字节:emulator-554:短信发送器/**SenddataSMSbetweentwoemulatorsfrom15555215554to15555215556.*/privatevoidsendSMS(){finalintudLength=20;//SMSuserdatalengthinbytesLog.d("SMSTEST","SMSActivit
关闭。这个问题不符合StackOverflowguidelines.它目前不接受答案。我们不允许提出有关书籍、工具、软件库等建议的问题。您可以编辑问题,以便可以用事实和引用来回答它。4年前关闭。Improvethisquestion谁能告诉我在哪里可以找到有关下图中显示的确认对话框的文档?当用户点击“取消”时,我想正确处理案例。当前androidSmsManager文档没有描述这个对话框。通过经验测试,我发现当你点击取消时,结果代码是一个常数值0x5.对话框显示以下信息:“[APP-NAME]想向[PHONE-NUMBER]发送消息”。我不知道这个对话框是什么时候在Android中引入
我正在使用此代码在我的Android应用程序中打开SMSIntent。但是在发送SMS之后它不会返回到Lollipop设备中的应用程序,而它在较低版本中工作正常(在JellyBeans上测试)。StringsentSMS="xxxxxxxx"StringcellNumber="xxxxx"sentSMSId=generateId();IntentsendIntent=newIntent(Intent.ACTION_SENDTO);sendIntent.setData(Uri.parse("sms:"+cellNumber));sendIntent.putExtra("sms_body"
如果SMS包含根据数据库过滤的词,我如何阻止传出SMS?我可以监控发送的消息是否包含过滤词,但我无法阻止短信。 最佳答案 您无法停止手机上的默认消息发送应用程序来发送短信。为此,您必须创建自己的短信箱应用程序,然后才能向其添加自定义功能。 关于android-阻止外发短信,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/4224765/