jNetPcap을 Android 용 공유 라이브러리로 성공적으로 컴파일했습니다. 이 코드를 사용하여 간단한 응용 프로그램 (http://jnetpcap.com/examples/classic)을 작성하여 API를 테스트했습니다. 내가 가진 이후안드로이드의 jNetPcap : findAllDevs 메소드의 문제점!
가 나는 이유를 이해할 수 없다 "장치 오류 issocket의 목록을 읽을 수 없습니다 : 사용 권한이 거부"
문제는 그 방법의 findAllDevs를 호출하고 예외가이 메시지가 발생할 때이다 내 프로그램의 첫 부분에서 전화를 걸어 내 응용 프로그램에 대한 루트 권한을 얻었고 응용 프로그램을 루팅 된 전화로 테스트했습니다. 응용 프로그램을 실행하면 "SnifferApp에 수퍼 유저 권한이 부여되었습니다."라는 메시지와 함께 예외가 발생하고 예외가 발생합니다.
아이디어가 있으십니까? 여기
내 코드의 일부입니다 :Process p = Runtime.getRuntime().exec("su");
/*try {
Thread.sleep(10000);
} catch (InterruptedException e1) {
// TODO Auto-generated catch block
e1.printStackTrace();
} // do nothing for 1000 miliseconds (1 second)
*/
try {
System.loadLibrary(JNETPCAP_LIBRARY_NAME);
}
catch (UnsatisfiedLinkError e) {
System.out.println("Native code library failed to load.\n" + e);
}
/***************************************************************************
* First get a list of devices on this system
**************************************************************************/
int r = Pcap.findAllDevs(alldevs, errbuf);
r = Pcap.findAllDevs(alldevs, errbuf);
if (r == Pcap.NOT_OK || alldevs.isEmpty()) {
tv.append("Can't read list of devices, error is" + errbuf
.toString());
setContentView(tv);
return;
}
안녕하세요, 제 신청서와 동일한 문제가 있습니다. jnetpcap을 설치할 수 있었지만 'findAllDevs'함수를 실행할 때 빈 목록을 받으면 errbuf에 오류가 없습니다 ... 문제를 해결했는지 궁금합니다. 나는 이미 root로 applicaiton을 실행하고있다. $ sudo -i -> root # eclipse -> AVD를 Eclipse로 시작한다. – wasp256
나는 그것을 전혀 풀지 않았다. 마지막으로, 내 실험을 실행하기 위해 원시 코드를 사용했습니다. 내가 발견 한 것이 있으면 알려 드리겠습니다. –
Thanasis Petsas 나는 같은 문제가있다. 안드로이드 NDK와 함께 JnetPcap 라이브러리를 성공적으로 준수했지만 공식 JnetPcap 웹 사이트에서이 고전적인 예제를 실행하면 alldevs.size()가 0을 반환합니다. 당신이 그것을 해결 했습니까 ??? –