Mimo że moja aplikacja może być używana bez żadnego połączenia z Internetem, może wymieniać dane z serwerem WWW (w celu wyświetlenia statystyk użytkownika). Dlatego reklamuję aplikację jako "nie wymaga połączenia z Internetem". Niektórzy użytkownicy wyłączyli komórkową transmisję danych dla mojej aplikacji, co powinno być całkiem w porządku. Ale kiedy moja aplikacja próbuje wymieniać dane, użytkownicy ci są podsłuchiwani przez "Dane komórkowe są wyłączone dla [Nazwa aplikacji]". dialog.Jak sprawdzić, czy użytkownik wyłączył komórkową transmisję danych dla mojej aplikacji?
Jest to uciążliwe dla nich i chcę zapobiec tym dialogom i po prostu pomijam całą wymianę danych.
Istnieje Apple's Reachability Sample Code.
Mimo że wyłączyłem Wi-Fi dla całego urządzenia i komórkowej transmisji danych dla aplikacji, osiągalność potwierdza pozytywne połączenie internetowe. Mówiąc dokładniej, niezależnie od tego, czy aktywowałem komórkową transmisję danych, czy też nie, generowana jest pod tym kątem informacja. Oczywiście, gdy dane komórkowe są wyłączone, żadne połączenie internetowe nie jest faktycznie dostępne, więc wymiana danych nie powiedzie się. Ale i tak użytkownik jest wyposażony w okno dialogowe danych komórkowych.
Czy istnieje sposób na sprawdzenie, czy połączenie internetowe jest dostępne na iOS 7 i iOS 8, biorąc pod uwagę ustawienia danych komórkowych dla konkretnej aplikacji - wszystko to bez ciągłego monitowania użytkownika za pomocą okna danych sieci komórkowej?
Moja aplikacja jest obecnie dostarczana bez panelu ustawień, dlatego chcę uniknąć przełączania się (drugi, w aplikacji) "Nie korzystaj z komórkowej transmisji danych". Ponadto nie chcę ograniczać wymiany danych do połączenia Wi-Fi, ponieważ jest to tylko 2 KB danych na sesję, co nie jest dużym problemem dla większości użytkowników.
osiągalności nie działa, zgłasza niepoprawnie "osiągalny". – cat