我想知道是否有人知道使用Verizon的CDMA摩托罗拉Droid手机向电子邮件地址发送短信的正确方法。
内部消息传递应用程序似乎会自动执行此操作。虽然SMSPopup等第三方应用程序似乎无法正确回复电子邮件地址,除非您在消息传递应用程序中撰写消息。
当内部消息传递应用程序发送SMS消息时,logcat('RIL_REQUEST_CDMA_SEND_SMS'
)中有相应的adb logcat -b radio
条目。当您向电子邮件地址发送短信时,它会打印相同的内容,因此在幕后看起来好像正在发送短信。有趣的是,如果你查看内容提供商发送框,邮件将被发送到各种1270XX-XXX-XXXX号码。
在其他服务上,您可以通过向预定义的短信号码发送短信来发送电子邮件地址。然后将您的短信格式化为电子邮件地址主题消息 即http://en.wikipedia.org/wiki/SMS_gateway#Carrier-Provided_SMS_to_E-Mail_Gateways
例如,使用T-mobile的号码(500),您可以使用以下内容向电子邮件发送短信:
SmsManager smsMgr = SmsManager.getDefault();
smsMgr.sendTextMessage("500", null, "username@domain.com message sent to an e-mail address from a SMS", null, null);
有谁知道是否
Verizon可能会以某种方式生成临时绑定到电子邮件地址的假号(因为重复的消息不会发送到相同的号码)。但是,这似乎很重要。
谢谢!
答案 0 :(得分:0)
我遇到了你的问题,因为我有同样的问题,但你的维基链接帮助我找到答案。现在我对这个问题不太正确,但是当你向这个号码发送一条普通短信时它会接通:6245然后短信将包含这种格式的地址和主题和正文:email@gmail.com(主题)电子邮件正文。
这是我的代码片段:
sm.sendTextMessage(“6245”,null,“alienmanfc6@gmail.com(主题)来自SMS的测试电子邮件”,null,null);
并且是的,如果您想问我更多问题,那我的确实会发送电子邮件,我希望这对您有所帮助,我非常感谢您发布帮助我的链接:)
答案 1 :(得分:0)
我一直在寻找一种使用短信发送系统发送简短电子邮件的方法,而无需知道服务中心地址,特殊目的地和消息格式等。
正如Dave指出的那样,股票短信应用可以做到这一点(用摩托罗拉Droid + Verizon和Attrix + AT& T确认)。 Go SMS将邮件转换为电子邮件地址为MMS。然而,Handcent似乎做得恰到好处 - 来自地址的电子邮件是电子邮件到SMS的地址,例如2223334444@vtext.com。
对我有用的方法如下。这都是高度实验性的,完全没有记录。
直接写入SMS内容提供商(“content:// sms”)并插入出站消息
ContentValues cv = new ContentValues();
cv.put("address", "someone@example.com");
String time = System.currentTimeMillis()+"";
cv.put("date", time);
cv.put("body", "I love stackoverflow");
cr.insert(uri, cv); // cr = ContentResolver
cv.put("type", "6");
密钥“发现”是type = 6.值1和2用于传入和传出SMS(可能是相反的方式),3用于草稿消息。 6用于无法发送的消息(通过将手机置于飞行模式并使用股票应用程序将文本发送到电子邮件地址来确定)。
所有这些都将消息放入SMS商店。要实际发送它,需要将股票应用程序戳入重试。我发现将手机置于飞行模式并切换回工作 - 消息通过短信发送到电子邮件!! - 但必须有更好的方法(并且Handcent知道它吗?)
哦,Verizon在消息内容中似乎不喜欢尖括号。
我已经在一个应用程序中实现了这个功能,该应用程序通过发送电子邮件并查看来自地址来尝试确定手机的电子邮件到SMS地址:http://bit.ly/J08Dyh
它尚未经过广泛测试,所以我同样很好奇。
PVS