2009-09-22 68 views

Trả lời

1

Look here và sau đó here

+0

Cảm ơn, giúp rất nhiều. Cũng có thể nhận được BSSID của tất cả các điểm truy cập có sẵn thay vì chỉ các điểm truy cập hiện có mà tôi đang kết nối không? –

+0

Thats điều này sẽ làm - mạng NSDictionary chứa danh sách tất cả các mạng hiển thị –

+0

Tôi đã tìm thấy bài đăng này tìm kiếm một cách để lấy địa chỉ MAC của điểm truy cập cho mạng Wifi. Tôi hơi bối rối. Sử dụng điều này có thể khiến ứng dụng đó bị từ chối cho Cửa hàng ứng dụng? – Rotten

5

Nó làm việc cho tôi

  • Thêm SystemConfiguration.framework

  • nhập khẩu < SystemConfigura/CaptiveNetwork.h>

  • sử dụng phương pháp dưới đây

    +(NSString *)currentWifiBSSID { 
    
         NSString *bssid = nil; 
         NSArray *ifs = (__bridge_transfer id)CNCopySupportedInterfaces(); 
         for (NSString *ifnam in ifs) { 
          NSDictionary *info = (__bridge_transfer id)CNCopyCurrentNetworkInfo((__bridge CFStringRef)ifnam); 
    
          NSLog(@"info:%@",info); 
    
          if (info[@"BSSID"]) { 
           bssid = info[@"BSSID"]; 
          } 
         } 
         return bssid; 
        } 
    

Bất kỳ việc sử dụng mã này sẽ không bị ứng dụng của bạn bị từ chối bởi Apple.

Để biết thêm về API Captive Mạng nhấp here

+0

Bạn có biết cách nhận địa chỉ IP của điểm truy cập không? – Darren

+1

@ Darren - Tôi không biết về nó Nhưng, đây là câu hỏi liên quan đến nhiệm vụ của bạn.http: //stackoverflow.com/q/21945498/730807 –

+1

Tại sao không ai nói câu trả lời này tuyệt vời như thế nào? Đây phải là câu trả lời được chấp nhận. Nó hoạt động. – inigo333

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