안드로이드에서 HTTP 서버를 만드는 방법? [닫은]
클라이언트에 일부 콘텐츠를 제공하기 위해 Android에서 간단한 HTTP 서버를 만들고 싶습니다.
서버를 구축하거나 기존 라이브러리를 사용하는 방법에 대한 조언이 있습니까?
https://github.com/NanoHttpd/nanohttpd 중 하나를 고려 하십시오 . 매우 작고 Java로 작성되었습니다. 아무 문제없이 사용했습니다.
NanoHttpd는 Android에서 매력처럼 작동합니다. 프로덕션에는 코드가 있으며 사용자가 직접 작성했습니다.
이 라이센스는 "바이러스 적"영향없이 NanoHttpd의 상업적 사용을 절대적으로 허용합니다.
이는 JavaSE와 동일한 ServerSocket을 사용하여 수행 할 수 있습니다 . 이 수업은 Android에서 사용할 수 있습니다. android.permission.INTERNET필요합니다.
더 까다로운 부분은 ServerSocket에서 별도의 스레드 대기가 필요하며 해당 accept메소드 에서 제공되는 하위 소켓을 처리하는 것입니다 . 필요에 따라이 스레드를 중지했다가 다시 시작해야합니다. 가장 간단한 방법은 ServerSocket을 닫아 대기 스레드를 종료하는 것 같습니다. 활동이 맨 위에있는 동안 서버 만 필요한 경우 ServerSocket 스레드를 시작 및 중지하는 것이 활동 수명주기 메소드와 다소 우아하게 연결될 수 있습니다. 또한 서버에 여러 명의 사용자가있는 경우 분기 스레드에서 요청을 처리하는 것이 좋습니다. 사용자가 한 명인 경우에는 필요하지 않을 수 있습니다.
서버가 수신하는 IP를 사용자에게 알려야하는 경우 NetworkInterface .getNetworkInterfaces ()를 사용하십시오. 이 질문에 추가 트릭 이 있을 수 있습니다.
마지막으로, 여기 에는 매우 짧고 단순하며 완성 된 최종 사용자 애플리케이션보다 이해하기 쉬운 완전한 최소 Android 서버가있을 수 있으며 다른 답변에서 권장됩니다.
http://tjws.sf.net 을 시도 할 수있는 다른 서버는 실제로 이미 Android 사용 버전을 제공합니다.
Android 용 Restlet 에디션 을 사용해 볼 수 있습니다 .
소스는 Restlet 웹 사이트 에서 다운로드 할 수 있습니다 .
kotlin을 사용하는 경우이 라이브러리를 고려하십시오. 그것은 kotlin 언어를 위해 만들어졌습니다. https://github.com/weeChanc/AndroidHttpServer https://github.com/ktorio/ktor
AndroidHttpServer는 매우 작지만 기능도 적습니다.
Ktor는 매우 훌륭한 라이브러리이며 사용법도 간단합니다.
참고 URL : https://stackoverflow.com/questions/6329468/how-to-create-a-http-server-in-android
'IT박스' 카테고리의 다른 글
| "다른 이름으로 저장"대화 상자를 사용하지 않고 응답 파일 이름을 설정하는 방법 (0) | 2020.08.04 |
|---|---|
| 스크립트 태그의 type 속성에 대한 javascript MIME 유형은 무엇입니까? (0) | 2020.08.04 |
| CSS 속성 선택기에서 "i"는 무엇을 의미합니까? (0) | 2020.08.04 |
| Android에서 현재 위치를 얻는 방법 (0) | 2020.08.04 |
| 디버그 정보를 사용하여 릴리스 빌드를 "full"또는 "pdb-only"로 컴파일해야합니까? (0) | 2020.08.04 |