【问题标题】:onReceive is never getting call!onReceive 永远不会接到电话!
【发布时间】:2011-01-31 03:21:46
【问题描述】:

onReceive 永远不会接到电话!我有这个工作,我做了一些改变,现在我已经工作了 5 个小时,不知道我的 onReceive 没有被调用,因为我给它发短信!

public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        Log.i(LOG_TAG,"onCreate");

        registerReceiver(new BroadcastReceiver() {
            @Override
            public void onReceive(Context context, Intent intent) {
                Log.i(LOG_TAG, "onReceive");

                if (intent.getAction().equals(ACTION)) {
                    Log.i(LOG_TAG,"in getAction()");

                }

            }
        }, new IntentFilter(RECEIVE_SMS));
    }
}

【问题讨论】:

    标签: java android sms


    【解决方案1】:

    我认为您应该定义一个适当的类(包名+类名)并从 BroadCastReceiver 扩展它,而不是为您的 BroadCastReceiver 使用匿名类

    另外,你必须在你的 AndroidManifest.xml 中注册你的 BroadcastReceiver

    【讨论】:

    【解决方案2】:

    注册的正确意图是android.provider.Telephony.SMS_RECEIVEDRECEIVE_SMS 来自 android.persmission,顺便提一下,您需要确保将其添加到清单中的权限列表中。

    【讨论】:

    猜你喜欢
    • 2020-02-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-04-01
    • 2016-08-10
    • 2011-01-23
    • 2020-05-14
    相关资源
    最近更新 更多