2011-11-09 14 views
7

Tôi biết tôi có thể nhận được các tàu sân bay Name, MNC và MCC sử dụng các thuộc tính sau của CTCarrier LớpNhận Mạng MNC và MCC

carrierName 
mobileCountryCode 
mobileNetworkCode 

Những chi tiết này là của SIM vào thiết bị. Có cách nào để có được các chi tiết tương tự của mạng được thiết bị sử dụng không?

Ví dụ: Các SIM MCC và MNC là 404 và 02. Mạng MCC và MNC có thể là 404 và 02, 404 và 03, vv


Edit: Đây là những gì tôi muốn.

Tôi có một thẻ sim của Vodafone vị trí x. MCC và MNC lần lượt là 404 và 30. Bây giờ, nếu tôi đi đến địa điểm y, sim của tôi có thể chốt hoặc Vodafone hoặc một số mạng khác (đôi khi được gọi là chuyển vùng)

Bây giờ tôi muốn lấy chi tiết mạng mà sim của tôi được chốt vào !!

Trả lời

2

Dường như nó hiện không thể (iOS 5.0).

Khung CoreTelephony là nơi bạn sẽ tìm thấy API này, và như bạn (và tài liệu của Apple) đề cập đến, thuộc tính CTCarrier chỉ giúp bạn biết chi tiết về nhà cung cấp dịch vụ di động của người dùng chứ không phải mạng hiện tại.

Bạn nên gửi yêu cầu nâng cao với Apple theo số http://bugreport.apple.com và hy vọng chúng bao gồm những gì bạn đang tìm kiếm trong bản cập nhật hệ điều hành trong tương lai.

Ngoài sự tò mò, bạn đang cố gắng làm gì với thông tin này?

+0

Yêu cầu nghiệp vụ của ứng dụng là thu thập thông tin của tất cả các mạng di động mà thiết bị đã sử dụng. Tất nhiên, ứng dụng cần phải chạy. – Sahil

+0

Cảm ơn bạn đã đề xuất (http://bugreport.apple.com) – Sahil

4

Trong những lời của John Muchow, từ bài viết của ông here:

Với việc phát hành iOS 4, Apple giới thiệu hai khuôn khổ mới cho thu thập thông tin tàu sân bay. CTCarrier cung cấp thông tin về nhà cung cấp dịch vụ di động bao gồm tên nhà cung cấp dịch vụ, Mã mạng di động và Mã nhà cung cấp dịch vụ di động. CTTelephonyNetworkInfo là kênh truy cập thông tin thông qua CTCarrier, lớp này cũng cung cấp bản cập nhật thông báo nếu bạn cần phát hiện thay đổi đối với thay đổi trong thông tin nhà cung cấp dịch vụ di động, ví dụ, nếu người dùng hoán đổi thẻ SIM .

// Setup the Network Info and create a CTCarrier object 
CTTelephonyNetworkInfo *networkInfo = [[[CTTelephonyNetworkInfo alloc] init] autorelease]; 
CTCarrier *carrier = [networkInfo subscriberCellularProvider]; 

// Get mobile country code 
NSString *mcc = [carrier mobileCountryCode]; 
if (mcc != nil) 
    NSLog(@"Mobile Country Code (MCC): %@", mcc); 

// Get mobile network code 
NSString *mnc = [carrier mobileNetworkCode]; 
if (mnc != nil) 
    NSLog(@"Mobile Network Code (MNC): %@", mnc); 
+1

+1 những thứ này nhận được qua mạng được sử dụng trong thiết bị ..? –

+2

@World: Điều này không trả lời được câu hỏi của tôi. Các chi tiết giống như trong câu hỏi. Bạn vừa thêm một ví dụ !! Câu hỏi của tôi ở đây là "Có cách nào để nhận các chi tiết tương tự của mạng được thiết bị sử dụng không?" Ở đây mạng đề cập đến mạng hiện tại và không phải là nhà cung cấp dịch vụ SIM – Sahil

+0

@Sahil Sau đó gimme chi tiết rõ ràng về câu hỏi của bạn .. tôi vẫn không nhận được, những gì bạn mong đợi .. ?? –