2016-02-02 25 views
6

Tôi đang làm việc trên một ứng dụng Android và đang nhận được null quay lại số IMEI khi sử dụng TelophonyManager. Điều này đang xảy ra trên một số điện thoại Huawei. (Tất cả đều là Ascend Y530).TelephonyManager trả về null cho số IMEI: điều gì có thể gây ra điều này?

Điện thoại đều có thẻ sim và có vẻ như hoạt động bình thường. Tôi đã bị ấn tượng rằng chỉ có một chiếc điện thoại bị hỏng sẽ trả về null IMEI. Rõ ràng đây không phải là trường hợp ..

Câu hỏi. Số IMEI chính xác này là gì - tức là nó được lưu trữ trên thiết bị ở đâu? Và nó có nghĩa là gì khi một điện thoại dường như tốt trả về giá trị của nó là null?

EDIT

tôi nên đề cập rằng số IMEI không phải lúc nào cũng null. Khoảng một nửa thời gian có vẻ hợp lệ (mặc dù điều này rất khó đo lường vì chúng tôi có 5 điện thoại trả lại số IMEI vô hạn \ đôi khi)

+0

bạn có thể xin vui lòng thử quay số * # 06 #, và xác nhận xem điện thoại có một giá trị [IMEI] (https://en.wikipedia.org/wiki/International_Mobile_Station_Equipment_Identity) số? –

+0

Các điện thoại này đã được triển khai từ xa nên tôi không thể truy cập chúng. Theo như tôi đã hiểu, khách hàng của chúng tôi chưa bao giờ gặp sự cố khi nhận số IMEI bằng cách sử dụng * # 06 #? –

+0

vui lòng liên hệ với khách hàng yêu cầu họ xác nhận cho bạn –

Trả lời

4

Sau khi nhận xét, để nhận id thiết bị duy nhất cho ứng dụng khảo sát, tôi sẽ đề nghị bạn sử dụng Settings.Secure.ANDROID_ID làm id duy nhất của mình.

String myAndroidDeviceId = Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID); 

Hoặc bạn có thể sử dụng cả hai như

public String getUniqueID(){  
    String myAndroidDeviceId = ""; 
    TelephonyManager mTelephony = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); 
    if (mTelephony.getDeviceId() != null){ 
     myAndroidDeviceId = mTelephony.getDeviceId(); 
    }else{ 
     myAndroidDeviceId = Secure.getString(getApplicationContext().getContentResolver(), Secure.ANDROID_ID); 
    } 
    return myAndroidDeviceId; 
} 
+0

Cảm ơn bạn. Tôi sẽ thực hiện điều này vào ngày mai :) –

+2

Về mặt kỹ thuật, tôi quan tâm để biết nguyên nhân có thể có của vấn đề này là gì? –

+0

ok ... sẽ để câu hỏi mở trong trường hợp ai đó biết. cảm ơn sự giúp đỡ của bạn –

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