我已经调查了很长一段时间了,我还没有找到答案,所以问题是目前在我的一项活动中,我正在应用这样的编码intentFilter :
filter = new IntentFilter(this.getResources()。getString( R.string.download_action_intent)); 尝试{ filter.addDataType(HTTP.PLAIN_TEXT_TYPE); } catch(MalformedMimeTypeException e){ // 去做 } filter.addDataPath(md5String,PatternMatcher.PATTERN_LITERAL);
应用程序正在下载大量图像,这些图像是由线程下载的,它们通过BroadcastReciever进入活动,这个特定的活动只需要获取与md5String对应的下载图像,所以我设置了这个过滤到此活动的broadcastReciever。
但即使使用类型和数据路径,我仍然会收到应用程序下载的每个图像,我应该如何配置IntentFilter,以便它只能调用该广播的md5String图像。
广播发送是这样的:
public boolean handleMessage(Message msg){ String md5String =(String)msg.obj; Intent broadcastIntent = new Intent( this.mContext.getResources()。的getString( R.string.download_action_intent)); broadcastIntent.setDataAndType(Uri.parse(md5String),HTTP.PLAIN_TEXT_TYPE); this.mContext.sendBroadcast(broadcastIntent); 返回true; }
感谢您的帮助,我希望我很清楚,这是我的第一个问题。