iPhone 시뮬레이터에서 비행기 모드 시뮬레이션


답변:


114

Mac에서 네트워크 연결을 끕니다.


14
너무나도 나는 내 자신을 차 버렸다. 그러나 동시에 더 나은 솔루션을 만들 수있었습니다!
benlumley

37
Google 팀이 Apple에 유사한 기능을 요청했지만 소리보다 어렵습니다. 문제는 시뮬레이터에서 실행되는 앱이 실제로 Mac 앱이라는 것입니다. iPhone 시뮬레이터는 iPhone을 에뮬레이트하지 않습니다. Mac 응용 프로그램이 iPhone 과 연결 되어 iPhone처럼 보이는 환경 일뿐 입니다. 따라서 시스템 계층에서 앱이 네트워크와 통신하는 것을 제한하는 방법이 필요합니다. 유닉스는이를 제공하지 않습니다. 그것을 얻기 위해서는 거의 확실히 커널 지원이 필요합니다. NSURLConnection과 그 친척에 대해 더 쉽게 할 수 있지만 일부 호출이 작동하고 일부는 작동하지 않으면 더 혼란 스러울 수 있습니다.
Rob Napier

13
GPS 시뮬레이터는 여전히 작동하지만 값을 반환하지 않기 때문에 비행기 모드를 시뮬레이션하지 않습니다.
Jann

18
일부 상황에서는 네트워크 연결을 해제하는 것만으로는 유용하지 않습니다. 예를 들어 도달 가능성과 인터넷 가용성을 테스트 할 때 비행기 모드가 필요할 수 있습니다. 작동하는 네트워킹 연결이없는 시뮬레이터는 실제로 동일하지 않습니다. 또한 일부 직장에는 실제 인증 문제가있는 컴퓨터가 있습니다. 즉, 네트워크 연결을 끊는 것이 항상 선택 사항이 아님을 의미합니다 (모든 것이 무모하게 진행됨).
occulus

9
나는 occuulus에 동의합니다. 사무실에서 작업 할 때 전체 시스템의 네트워크를 끄면 작업 환경의 통신에 심각한 해를 끼칩니다. 이것이 수용 가능한 해결책이 아닌 많은 상황이 있습니다.
Krejko

59

Apple의 네트워크 링크 컨디셔너를 설치할 수 있습니다

요세미티에서 :

네트워크 링크 컨디셔너는 "Xcode 용 하드웨어 IO 도구"패키지에서 찾을 수 있습니다. Apple 개발자 다운로드 페이지 에서 다운로드 할 수 있습니다 . 다운로드가 완료되면 DMG를 열고 "Network Link Condition.prefPane"을 두 번 클릭하여 설치하십시오 ( source ).

이 환경 설정 패널을 사용하면 0kbps 속도의 프로파일을 작성할 수 있습니다.

네트워크 링크 컨디셔너

이전 버전의 OSX :

마운틴 라이온 / 매버릭스 : Xcode > Open Developer Tool > More Developer Tools
라이온 :/Developer/Applications/Utilities/Network Link Conditioner


11
네트워크 링크 컨디셔너를 사용할 때 도달 가능성에 아무런 변화가 없습니다. 사실, 그것을 0kbps와 100 % 패킷 손실로 설정했을 때, 여전히 Wi-Fi를 통해 모든 것을 가동하고 도달 가능한 것으로보고합니다. 비행기 모드를 테스트하려는 경우에는 작동하지 않습니다.
E.Freitas

1
왼쪽의 큰 스위치를 "ON"으로 전환 하시겠습니까?
Tieme

여기서 동일한 문제, 컨디셔너를 0kbps up / down 및 100 % 패킷 손실 up / down으로 연결해도 도움이되지 않습니다. 잠시 후 iOS 시뮬레이터가 시간 초과됩니다. 0kbps는 대역폭 MAX로 가정합니다.
Adrian 님이 Design by

17

Little Snitch 를 사용 하여 온도를 조절할 수도 있습니다 . 이 앱의 인터넷 연결을 차단하십시오.


아이디어 버디 덕분에 호스트 파일을 편집하여 동일한 결과를 얻을 수 있습니다.
panchicore

-1

더 쉬운 해킹 : 연결을 확인하는 기능 만들기

import NetInfo from '@react-native-community/netinfo';

export const ckeckIsConnected = async () => {
  const isConnected = NetInfo.fetch().then((state) => {
    return state.isConnected;
  });
  return isConnected;
};

연결이있는 경우에만 데이터 가져 오기를 수행하십시오. 연결을 시뮬레이션하지 않으려면 false 실제 연결이 무엇이든이 기능으로 돌아가십시오 .

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.