首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用4G网络发送SMS后,Braodcast接收器未接收意图

使用4G网络发送SMS后,Braodcast接收器未接收意图
EN

Stack Overflow用户
提问于 2012-06-23 14:30:14
回答 2查看 323关注 0票数 0

我没有收到来自使用4G网络的BroadcastReceiver的意向。我使用以下代码来接收短信发送结果的代码。我在2G蜂窝网络中得到了正确的结果,但在4G网络中却没有。

如果任何人有什么想法,请回复。

谢谢。

代码语言:javascript
复制
registerReceiver(sendBroadcastReceiver, new IntentFilter("SENT"));
sendBroadcastReceiver = new BroadcastReceiver()
{
    int result = getResultCode();
    @Override
    public void onReceive(Context context, Intent intent)
    {
        switch (result)
        {
            case Activity.RESULT_OK:
                System.out.println("Received response");
                break;  
            case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
                addFailedResultsInList("RESULT_ERROR_GENERIC_FAILURE");
                break;
            case SmsManager.RESULT_ERROR_NO_SERVICE:
                addFailedResultsInList("RESULT_ERROR_NO_SERVICE");
                break;
            case SmsManager.RESULT_ERROR_NULL_PDU:
                addFailedResultsInList("RESULT_ERROR_NULL_PDU");
                break;
            case SmsManager.RESULT_ERROR_RADIO_OFF:
                addFailedResultsInList("RESULT_ERROR_RADIO_OFF");
                break;

        }
    }
};

    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.WRITE_SMS" />
    <uses-permission android:name="android.permission.READ_SMS" />
    <uses-permission android:name="android.permission.RECEIVE_SMS" />
    <uses-permission android:name="android.permission.SEND_SMS" />
    <uses-permission android:name="android.permission.READ_CONTACTS" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
EN

回答 2

Stack Overflow用户

发布于 2012-06-23 14:32:31

除了创建BroadcastReceiver之外,您还需要为您想要获取的事件注册它。您可能需要遵循本教程http://www.vogella.com/articles/AndroidBroadcastReceiver/article.html

当你想收到短信通知时,你需要注册事件

代码语言:javascript
复制
android.provider.Telephony.SMS_RECEIVED

并请求该http://developer.android.com/reference/android/Manifest.permission.html#RECEIVE_SMS的权限

票数 0
EN

Stack Overflow用户

发布于 2012-06-23 14:40:35

代码语言:javascript
复制
sendBroadcastReceiver = new BroadcastReceiver()
{
    @Override
    public void onReceive(Context context, Intent intent)
    {

        result = getResultCode (); //<-------------------

        switch (result)
        {
            case Activity.RESULT_OK:
                System.out.println("Received response");
                break;  
            case SmsManager.RESULT_ERROR_GENERIC_FAILURE:
                addFailedResultsInList("RESULT_ERROR_GENERIC_FAILURE");
                break;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11167429

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档