我正在使用asmack开发聊天应用程序。我需要过滤传入的智商。我正在使用下面的代码。
PacketFilter filter = new IQTypeFilter(IQ.Type.SET); // or IQ.Type.GET etc. according to what you like to filter.
connection.addPacketListener(new PacketListener() {
public void processPacket(Packet packet) {
// HERE YOU PUT YOUR CODE TO HANDLE THE IQ MESSAGE
}
}, filter);
此节目IQTypeFilter具有私人访问权限。所以我不能访问这里。怎么解决这个?提前致谢
我的依赖罐是
compile'org.igniterealtime.smack:smack-android:4.1.4'
compile 'org.igniterealtime.smack:smack-tcp:4.1.4'
compile 'org.igniterealtime.smack:smack-im:4.1.4'
compile 'org.igniterealtime.smack:smack-extensions:4.1.4'
答案 0 :(得分:0)
IQTypeFilter
的所有必需实例都可用作类的公共静态字段。例如,请参阅:IQTypeFilter.GET_OR_SET
。
如果您需要更精细的过滤,可能需要查看FlexibleStanzaTypeFilter