iOS 장치가 USB 케이블을 통해 MacBook에 연결되어있는 경우 iOS 장치에서 실행중인 응용 프로그램이 MacBook의 IP 주소를 알아낼 수있는 프로그래밍 방식이 있습니다 ? 이렇게하면 iOS 장치와 랩톱에서 실행되는 서버간에 소켓 연결을 설정할 수 있습니다.케이블을 통해 iOS 장치가 연결된 MacBook의 IP를 프로그램으로 찾기
답변
둘 사이의 USB 링크의 IP 주소는 무엇입니까? 모든 경우에 하나가 있는지 확신 할 수는 없지만 테 더링 (개인 핫스팟)이 활성화 된 경우에만 하나가 있다고 믿습니다.
Wi-Fi 또는 이더넷에서 Mac의 IP 주소를 의미하는 경우 두 장치가 실제로 동일한 네트워크에 있다는 보장이 없습니다 (iPhone이 켜져있는 동안 로컬 LAN에서 Mac을 사용할 수 있음). 다른 NAT 뒤에있는 모바일 네트워크) 통신에 문제가 생길 수 있습니다. (일반적으로 외부 서버가 필요한 일반적인 P2P NAT 트래버 설 문제가 있습니다.
(USB 케이블 대신) 네트워크를 통해 서로 장치를 말하고 싶다면 Bonjour (두 장치가 같은 네트워크에 있어야 함) 또는 더 최근의 Multipeer connectivity 프레임 워크 (필자는 필요할 때 피어 - 투 - 피어 Wi-Fi 네트워크를 설정할 수도 있습니다.)
케이블을 통해 실제로 통신하고 싶다면 다음을 통해 장치와 대화하는 것이 좋습니다. libimobiledevice/usbmuxd으로 iOS 기기의 포트와 통신 할 수 있습니다.하지만 AFAIK는 Mac의 앱에서 iOS 기기의 서버 앱과 대립하는 대신 작동합니다 (
).이 메서드를 클래스 &에 넣으면 현재 장치의 IP 주소를 얻을 수 있습니다.
// get the IP address of current-device
- (NSString *)getIPAddress {
NSString *address = @"error";
struct ifaddrs *interfaces = NULL;
struct ifaddrs *temp_addr = NULL;
int success = 0;
// retrieve the current interfaces - returns 0 on success
success = getifaddrs(&interfaces);
if (success == 0) {
// Loop through linked list of interfaces
temp_addr = interfaces;
while(temp_addr != NULL) {
if(temp_addr->ifa_addr->sa_family == AF_INET) {
// Check if interface is en0 which is the wifi connection on the iPhone
if([[NSString stringWithUTF8String:temp_addr->ifa_name] isEqualToString:@"en0"]) {
// Get NSString from C String
address = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_addr)->sin_addr)];
}
}
temp_addr = temp_addr->ifa_next;
}
}
freeifaddrs(interfaces);
return address;
}
iOS 기기에서 MacBook의 IP 주소를 검색 할 수있는 앱을 찾고 있습니다. 이것은 로컬 IP 주소를 얻습니다. 감사. – jupiter1980
- 1. 장치가 IP를 통해 연결된 경우 계속 모니터링하십시오
- 2. 셸에서 연결된 iOS 장비의 WiFi IP를 얻는 방법은 무엇입니까?
- 3. iOS 11.2 Xcode에 연결된 장치가 표시되지 않습니까?
- 4. 번개 케이블을 통해 iOS 장치에 C# 응용 프로그램을 연결하십시오.
- 5. USB 케이블을 통해 iOS 앱과 Mac 앱간에 데이터 교환
- 6. USB 케이블을 통해 연결된 경우 WP7 HTTP 트래픽을 연결하는 방법
- 7. WP7이 USB 케이블을 통해 연결된 컴퓨터의 이름을 확인하십시오.
- 8. 연결된 클라이언트 IP를 찾으십시오.
- 9. USB 장치가 연결된 호스트
- 10. com.android.builder.testing.api.DeviceException : 연결된 장치가 없음
- 11. ip가 바뀔 때 ping ip를 통해 장치가 온라인인지 확인하십시오.
- 12. PC에 연결된 안드로이드 장치가 감지되었습니다.
- 13. iOS 앱은 USB 케이블을 통해 OSX에서 실행중인 앱과 통신합니다.
- 14. 헤드폰 케이블을 통해 신호를 보냅니다.
- 15. 두 개의 넥서스 장치가 연결된 ADB
- 16. 연결된 기기의 IMEI 번호 찾기
- 17. 프록시를 통해 연결된 클라이언트의 IP 주소 찾기
- 18. 서버에 연결된 모든 IP를 찾으십시오.
- 19. iPhone에 연결된 블루투스 장치가 감지되는지
- 20. MacBook의 glibtool
- 21. 이더넷을 통해 직접 연결된 장치의 IP를 프로그래밍 방식으로 찾습니다.
- 22. USB 케이블을 꽂지 않으면 안드로이드 장치가 다르게 작동합니다.
- 23. 내 안드로이드 장치가 안드로이드에서 otg 케이블을 지원하는지 여부를 감지하는 방법
- 24. Firebase를 사용하여 연결된 장치 찾기
- 25. 연결된 응용 프로그램으로 파일 열기
- 26. WIFI를 통해 연결된 컴퓨터에서 ios 인쇄
- 27. iOS 장치가 아닌 iOS 장치와 통신하기
- 28. 연결된 USB 장치가/dev /인지 확인
- 29. 연결된 포트를 통해 가상 컴퓨터에 연결
- 30. TCP/IP를 통해 SQL 서버에서 Windows 8 응용 프로그램으로 많은 양의 데이터를 이동할 수 있습니까?
예 "Wi-Fi에서 Mac의 IP 주소"를 의미합니다. 두 장치가 동일한 WiFi 네트워크에 있습니다. 아이폰 -> 맥북에서 할 수없는 것처럼 들리는 것 같습니다. USB 케이블이 아닌 WiFi 연결을 통해 통신하고 싶습니다. – jupiter1980
USB 케이블을 통해 연결된 Mac을 실제로 인식해야합니까? 이 경우 응용 프로그램이 포트에서 수신 대기하고 usbmuxd를 통해 응용 프로그램과 통신하여 해당 주소 (예 : Bonjour를 통해 조회 할 수있는 이름)를 응용 프로그램에 보냅니다. 다양한 방법으로 [여기] (https://www.theiphonewiki.com/wiki/MobileDevice_Library)를 찾을 수 있습니다. 어느 것이 든 상관하지 않는다면 간단히 Bonjour를 사용하여 서버를 발견하십시오. 다른 방법으로 장치에 연결된 Mac을 식별하는 방법이 있는지 확실하지 않습니다. – jcaron