2009-10-28 36 views
5

Có ai biết làm thế nào để xác định loại mạng đang hoạt động tại thời điểm cụ thể: 2G, 3G hoặc WiFi.iPhone hoạt động loại mạng (2G, 3G, WiFi)

Ví dụ: tại một thời điểm cụ thể có thể được bật 3G, nhưng loại mạng được sử dụng có thể là 2G.

Trả lời

14

Giao diện SCNetworkReachability có thể giúp bạn với điều đó. Về cơ bản, bạn tạo một tham chiếu có thể truy cập được gọi là rồi gọi SCNetworkReachabilityGetFlags trên đó để nhận thông tin về kết nối.

Cờ được trả về bao gồm kSCNetworkReachabilityFlagsIsWWAN, cho bạn biết liệu bạn có được kết nối qua WiFi hoặc mạng di động hay không. AFAIK nó không thể được sử dụng để nói sự khác biệt giữa 2G và 3G, mặc dù.

Xem Apple Reachability sample app để triển khai. Trong hầu hết các trường hợp, bạn có thể trực tiếp sử dụng lớp Reachability được bao gồm trong dự án của mình.

3

Truy cập trang web của Nhà phát triển Apple và tải xuống dự án mẫu có tên "Khả năng hiển thị"

Nó cung cấp ví dụ về những gì bạn muốn làm.

Điều đáng lưu ý là tôi không tin rằng bạn có thể biết sự khác biệt giữa EDGE (2G) và kết nối 3G. Đó là WiFi hoặc WWAN.

Các vấn đề liên quan