1. android中定义了一个接收短信的广播类,但是里面的OnReceive方法始终没有执行,求解
虽然我眼拙没有看出什么不对劲,网上博文写的基本也如此,但也有点心得:
从短信接收后系统发出广播,虽然是异步广播,但是实际上到你写的接收器接收到并处理之间可能会有一段较长的时间,可能是几秒;
先检查接收器是否注册成功。
2. 在android中服务机制来做什么发短信为什么需要广播
Service,后台运行,可交互这样的一个东西。它跟Activity的级别差不多,但是他不能自己运行,需要通过某一个Activity或者其他Context对象来调用。
什么时候需要Service呢?比如播放多媒体的时候用户启动了其他Activity这个时候程序要在后台继续播放,比如检测SD卡上文件的变化,再或者在后台记录你地理信息位置的改变等等,总是藏在后头的。
Broadcast 实质就是(发送方)并不在意(接收方)接收到广播时如何处理。Android 中有各式各样的广播,各种广播在Android 系统中运行,当系统/应用程序运行时便会向 Android 注册各种广播,Android 接收到广播会便会判断哪种广播需要哪种事件,然后向不同需要事件的应用程序注册事件,不同的广播可能处理不同的事件也可能处理相同的广播事件,这时就需要Android 系统为我们做筛选。
你要了解的是这个方法吧:public void sendTextMessage (String destinationAddress, String scAddress, String text, PendingIntent sentIntent, PendingIntent deliveryIntent)
destinationAddress: 收件人地址
scAddress: 短信中心号码,null为默认中心号码
sentIntent: 当消息发出时,成功或者失败的信息报告通过PendingIntent来广播。如果该参数为空,则发信程序会被所有位置程序检查一遍,这样会导致发送时间延长。
deliveryIntent: 当消息发送到收件人时,该PendingIntent会被广播。p数据在状态报告的extended data ("p")中。
如果收件人或者信息为空则抛出 IllegalArgumentException 。
3. 请教高人,安卓在系统发送短信成功之后会发送什么广播
你需要自己
写一个Receiver
比如:SMSReceiver
需要在mainfest
.xml
文件里进行配置
这个Receiver
这样你就可以监听短信发送后系统给你发送的广播了自动
重新定义一个Receiver
吧
4. Android中消息推送有哪几种方式
Android中消息推送有如下几种方式:5. ANDROID 应用 无法接收短信广播
短信广播是有序广播,肯定会有先后顺序的,你可以通过设置优先级,让一个先获取,然后再传递给下一个接收。
你扑捉到后不做处理,短息还是和正常那样,会存在收件箱内,标识未读,和正常一样。