Grooter 2017-09-15 03:25 采纳率: 100%
浏览 942
已采纳

安卓开发关于通过广播获取信息的问题

申请权限

            <!--短信广播监听器-->
    <receiver android:name=".Broadcast">
        <intent-filter android:priority="999">
            <action android:name="android.provider.Telephony.SMS_RECEIVED" />
        </intent-filter>
    </receiver>

import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.os.Message;
import android.telephony.SmsMessage;
import android.widget.Toast;

public class Broadcast extends BroadcastReceiver {
private static final String ACTION="android.provider.Telephony.SMS_RECEIVED";
private Message message=new Message();
private Bundle bundle=new Bundle();
@Override
public void onReceive(Context context, Intent intent){
Toast.makeText(context, "来短信啦",Toast.LENGTH_SHORT).show();
if(ACTION.equals(intent.getAction())){
SmsMessage[] smsMessage=getMessageFromIntent(intent);
StringBuilder str=new StringBuilder();
if(smsMessage!=null&&smsMessage.length>0){
for(SmsMessage smg:smsMessage){
str.append(smg.getDisplayOriginatingAddress()+":\n ");
str.append(smg.getDisplayMessageBody()+"\n");
}
}
Toast.makeText(context, str.toString(),Toast.LENGTH_SHORT).show();
}
}
public static SmsMessage[] getMessageFromIntent(Intent intent){
SmsMessage[] smsMessage=null;
Bundle bundle=intent.getExtras();
Object[] puds=(Object[])bundle.get("puds");
smsMessage=new SmsMessage[puds.length];
for(int i=0;i<puds.length;i++){
byte[] data=((byte[])puds[i]);
smsMessage[i]=SmsMessage.createFromPdu(data);
}
return smsMessage;
}
}

请问哪里错了就是监听不了短信,有人发短信来没app没反应

不好意思我小白一个没有C币,求助

  • 写回答

3条回答

  • 秦城季 2017-09-16 09:57
    关注

    如果代码没错应该是手机的问题了,有些手机厂商为了用户数据的安全,做系统的时候会把某些源码改掉的。比如我的小米的有很多功能被限制了,太tm恶心了。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 Python爬取指定微博话题下的内容,保存为txt
  • ¥15 vue2登录调用后端接口如何实现
  • ¥65 永磁型步进电机PID算法
  • ¥15 sqlite 附加(attach database)加密数据库时,返回26是什么原因呢?
  • ¥88 找成都本地经验丰富懂小程序开发的技术大咖
  • ¥15 如何处理复杂数据表格的除法运算
  • ¥15 如何用stc8h1k08的片子做485数据透传的功能?(关键词-串口)
  • ¥15 有兄弟姐妹会用word插图功能制作类似citespace的图片吗?
  • ¥15 latex怎么处理论文引理引用参考文献
  • ¥15 请教:如何用postman调用本地虚拟机区块链接上的合约?