내 iPhone 앱에서 사용자는 Wi-Fi 또는 3G/Carrier 데이터를 통해 인터넷에서 데이터를 다운로드할지 여부를 설정할 수 있습니다.wifi가 아닌 이동 통신사 데이터/3GS에서 데이터를 다운로드하는 방법은 무엇입니까?
프로그래밍 방식으로 어떻게 할 수 있습니까?
즉, iphone이 wifi가 아닌 이동 통신사 데이터에서 데이터를 가져 오도록 강요 할 수 있습니까?
의견이 있으십니까?
내 iPhone 앱에서 사용자는 Wi-Fi 또는 3G/Carrier 데이터를 통해 인터넷에서 데이터를 다운로드할지 여부를 설정할 수 있습니다.wifi가 아닌 이동 통신사 데이터/3GS에서 데이터를 다운로드하는 방법은 무엇입니까?
프로그래밍 방식으로 어떻게 할 수 있습니까?
즉, iphone이 wifi가 아닌 이동 통신사 데이터에서 데이터를 가져 오도록 강요 할 수 있습니까?
의견이 있으십니까?
당신은 전화가 연결된 경우 대신 와이파이의 캐리어 데이터 (3G/에지)를 사용하는 아이폰을 강요 할 수 와이파이. SCNetworkReachabilityGetFlags 기능을 사용하여 Wi-Fi에 연결되어 있는지 여부 또는 이동 통신사 데이터 연결 여부를 확인할 수 있습니다.
사용자가 Wi-Fi에 연결되어있는 경우 앱에 이동 통신사 데이터 만 사용할 수 있다는 메시지가 표시되면 Wi-Fi를 끄고 앱을 다시 시작하라는 메시지가 표시됩니다. Vodafone Portugal이 더 많은 (값 비싼) 이동 통신사 데이터를 사용하도록 바보 같은 시도로 수많은 앱을 사용하는 것을 막지는 못했지만 사용자의 지옥을 자극 할 것이기 때문에 나는 이것을 권장하지 않습니다. .
iPhone을 Wi-Fi에 연결하면 휴대 전화 네트워크를 사용하도록 프로그래밍 방식으로 강제로 다운로드 할 수 없습니다.
나는이 당신에게 도움이 있는지 확실하지 않습니다 :
http://developer.apple.com/library/ios/#samplecode/Reachability/Introduction/Intro.html
전화의 상태를 감지해야하며 휴대 전화에서 Wi-Fi를 사용할 때 날씨 데이터를 쉽게 확인할 수 있습니다.
-(void) viewWillAppear:(BOOL)animated
{
// check for internet connection
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(checkNetworkStatus:) name:kReachabilityChangedNotification object:nil];
internetReachable = [[Reachability reachabilityForInternetConnection] retain];
[internetReachable startNotifier];
// check if a pathway to a random host exists
hostReachable = [[Reachability reachabilityWithHostName: @"www.apple.com"] retain];
[hostReachable startNotifier];
// now patiently wait for the notification
}
- (void) checkNetworkStatus:(NSNotification *)notice {
// called after network status changes
NetworkStatus internetStatus = [internetReachable currentReachabilityStatus];
switch (internetStatus){
case NotReachable:
{
NSLog(@"The internet is down.");
self.internetActive = NO;
break;
}
case ReachableViaWiFi:
{
NSLog(@"The internet is working via WIFI.");
self.internetActive = YES;
break;
}
case ReachableViaWWAN:
{
NSLog(@"The internet is working via WWAN.");
self.internetActive = YES;
break;
}
}
NetworkStatus hostStatus = [hostReachable currentReachabilityStatus];
switch (hostStatus)
{
case NotReachable:
{
NSLog(@"A gateway to the host server is down.");
self.hostActive = NO;
break;
}
case ReachableViaWiFi:
{
NSLog(@"A gateway to the host server is working via WIFI.");
self.hostActive = YES;
break;
}
case ReachableViaWWAN:
{
NSLog(@"A gateway to the host server is working via WWAN.");
self.hostActive = YES;
break;
}
}
}
답변 해 주셔서 감사합니다. 그러나 이것은 실제로 질문이 아니 었습니다. 어쨌든 큰 노력 :) – Dilip
왜 캐리어 데이터가 아닌 무선 랜을 사용하는 사람을 강제 할 수 있습니까? – mluisbrown