Closed
Description
As the title already says, the new reachability feature seems a bit buggy on iOS 8. The listener
seems to not be called each time the network status changes. Furthermore, the network reachability status
return by the listener
closure doesn't return the correct status.
The status
values seem to be very random and don't represent the current state. I've tested on several iPhone devices and simulator. On iOS 9 everything works as expected.
Metadata
Metadata
Assignees
Type
Projects
Relationships
Development
No branches or pull requests
Activity
cnoon commentedon Feb 27, 2016
Interesting. This will take some investigation on our end. I don't have access to an iOS 8.x device right now, so I'll only be able to test with the simulator which isn't as helpful.
kchromik commentedon Feb 29, 2016
Btw - I switched back to https://github.com/ashleymills/Reachability.swift, and there it works properly (Simulator & Device). I have access to iOS 8 devices, so let me know if there is something I could test.
cnoon commentedon Mar 19, 2016
Okay @kchromik, I've switched over to using IPv4 on iOS 8.x in ef756b0. Would you be able to test against the latest changes on
master
to see if they resolve your problems?KingOfBrian commentedon Mar 19, 2016
Also, can we test that on an iOS8 device built on the iOS9 SDK? I don't think you want the compile-time check, but a runtime check (Which is why I thought it would be better to stick with ipv4 for all).
cnoon commentedon Mar 19, 2016
The
#available
check does provide a runtime check as well @KingOfBrian. The availability checks provide both compile time checks for API usage as well as runtime logic branching behavior.KingOfBrian commentedon Mar 21, 2016
Ah sweet, I did not know that! Takes time to un-learn my obj-c ways.
cnoon commentedon Apr 3, 2016
Okay, I finally managed to track down an iOS 8.2 device. Looks like the IPv4 changes for iOS 8 were the correct solution. Reachability monitoring is now working as expected on both iOS 8 and 9. 👍🏼
Enable IPv6 only for iOS9 or greater.