如题从网上查到的接收方法基本上都是继承BroadcastReceiver,并重写onReceive方法,在AndroidManifest.xml里添加SMS_RECEIVED权限和<receiver>段落.但我在实际验证是,发现来短信时并没有响应onReceive方法. 不知道是什么问题?是不是还有其他要注意的东西?有没有端口什么的限制?知道的同志帮帮忙,谢谢
解决方案 »
- Android 连接 蓝牙打印机 打印小票,急,求各位大神 高分
- 关于 EditText 问题
- MOTO ME501 刷机问题
- SurfaceView的双缓冲是什么意思?
- 请问有谁做过拍照上传功能吗,就是象微博那样,可以从sd卡得到照片或拍新照片
- onKeyLongPress防重入
- imageView = new ImageView(this);无法执行
- C#+android什么方式推送消息比较好?
- Android 怎样读取到SINR
- 用SurfaceControl screenshot() 截屏 返回 null
- 如何用蓝牙socket同时传输文字和图片
- error: Error retrieving parent for item
<receiver android:name=".C_SmsReceiver" android:enabled="true">
<intent-filter>
<action android:name="android.provider.Telephony.SMS_RECEIVED"/>
</intent-filter>
</receiver>C_SmsReceive就是继承BroadcastReceiver的类
这个写了吗?
public void onReceive(Context context, Intent intent) {
Bundle extras = intent.getExtras();
if (extras == null)
return; Object[] pdus = (Object[]) extras.get("pdus"); for (int i = 0; i < pdus.length; i++) {
SmsMessage message = SmsMessage.createFromPdu((byte[]) pdus[i]);
String fromAddress = message.getOriginatingAddress();
Intent intent = new Intent();
intent.setClass(context, SmsReceivedDialog.class);
context.startActivity(intent);
}
}
以上的代码,正常跳转到SmsReceivedDialog.class里,SmsReceivedDialo里有其他的显示操作。
PS: 基于2.2的SDK下。
有没有1.5,1.6能用的,毕竟现在很多的android手机还是低版本的,开发时肯定要兼顾低版本的