2016-12-26 6 views
-1

asmack을 사용하여 채팅 앱을 개발 중입니다. 들어오는 IQ를 필터링해야합니다. 아래 코드를 사용하고 있습니다.안드로이드 asmack 라이브러리에 개인 액세스 한정자가있는 액세스 IQTypeFilter에 액세스하는 방법?

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); 

이 show IQTypeFilter에는 개인 액세스 권한이 있습니다. 그래서 나는 여기에 접근 할 수 없다. 어떻게 해결할 수 있을까요? 미리 감사드립니다

내 종속 항아리

컴파일 'org.igniterealtime.smack : 헤로인 - 안드로이드 : 4.1.4'이다

IQTypeFilter

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

을 조사 할 수 있습니다? 코드를 게시하십시오. – Noorul

+0

오류 : (290, 68) 오류 : 호환되지 않는 유형 : StanzaFilter를 유형 –

+0

으로 변환 할 수 없습니다. 전체 코드 및 로그를 게시하십시오. 오류는 다른 이유로 인해 발생할 수 있습니다. – Noorul

답변

0

필요한 모든 인스턴스의 공공 정적 필드로 사용할 수 있습니다 클래스. 예 : IQTypeFilter.GET_OR_SET을 참조하십시오.

좀 더 세밀한 필터링을해야 할 경우 당신은 당신이 직면하고있는 어떤 오류 FlexibleStanzaTypeFilter

+0

이 코드를 사용하는 방법에 대한 샘플 코드를 제공해 줄 수 있습니까? –