首页 > 解决方案 > 为什么我的应用程序即使具有必要的权限也无法发送短信?

问题描述

我的应用程序正在尝试向另一个号码发送短信。我拥有用户授予的必要权限(SEND_SMS)。但是,该消息不会被发送。默认消息应用程序会显示带有“发送/重新发送失败”提示的消息。这背后的原因是什么,我该如何解决?我的代码很简单——

SmsManager smsManager = SmsManager.getDefault();
smsManager.sendTextMessage(phoneno, null, txt, null, null);

注意-我的应用程序在短信频率限制以下运行编辑:从活动运行时运行良好,但从服务运行时失败。这背后的原因是什么?

标签: androidsmsandroid-permissions

解决方案


问题似乎是因为代码是从哪里调用的。我有一项服务(在单独的线程上运行)产生一个新线程来发送 SMS,由于某种原因,这似乎会导致问题。在我消除了所有不必要的复杂性并直接从服务发送短信后,它工作正常。


推荐阅读