2014-12-24 15 views
0

我試圖讓dispositvo的峨眉識別號碼,我已經試過這種方法,但我始終返回null:獲得EMEI與TelephonyManager

CODE:

private String getEmei() 
    { 
     String Emei=""; 
     try 
     { 
      TelephonyManager telephonyManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
      Emei=telephonyManager.getDeviceId(); 
     } 

     catch(Exception ex) 
     { 
      return ""; 
     } 

     if (Emei==null) 
     { 
      return ""; 
     } 

     Long suma_digitos =Long.valueOf(Emei); 

     if (suma_digitos==0) 
      return ""; 
     else 
     { 
      //Log.i("Emei","emei: "+Emei+"\n"); 
      return Emei; 
     } 
    } 

若你必須在文件或是manifestiest.xml文件上添加一些權限,這是解決方案。

我不在乎是否IMEI或其他設備號碼是唯一的。

非常感謝你試圖幫助你的時間。

+1

加上'<使用許可權的android:NAME = 「android.permission.READ_PHONE_STATE」/>'允許你manifiest.xml – Furqan

+0

@Furqan我已經試過了,但它不是作品,是峨眉一個空字符串 – wiki

回答

1

試試這個代碼:

Main.java

import android.app.Activity; 
import android.content.Context; 
import android.os.Bundle; 
import android.telephony.TelephonyManager; 
import android.widget.TextView; 

public class Main extends Activity { 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 

     //Getting the Object of TelephonyManager 
     TelephonyManager tManager = (TelephonyManager)getSystemService(Context.TELEPHONY_SERVICE); 
     //Getting the SIM card ID 
     String simId=tManager.getSimSerialNumber(); 

     //Getting Phone Number 
     String tnumber=tManager.getLine1Number(); 

     //Getting IMEI Number of Devide 
     String Imei=tManager.getDeviceId(); 

     TextView s=(TextView)findViewById(R.id.simid);//Getting TexView from main.xml to Display SIM Card Id 
     s.setText("Sim id - "+simId);//Displaying SIM card Id in the TextView 
     TextView t=(TextView)findViewById(R.id.phoneno);//getting TextView from main.xml to display Phone Number 
     t.setText("Phone No - "+tnumber);//Displaying the Phone Number. 
     TextView i=(TextView)findViewById(R.id.imeino);//Getting the TextView to display IMEI number 
     t.setText("IMEI number - "+Imei);//Displaying IMEI number 



    } 
} 

佈局XML代碼:main.xml

<?xml version="1.0" encoding="utf-8"?> 
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" 
    android:layout_width="fill_parent" 
    android:layout_height="fill_parent" 
    android:orientation="vertical" > 

    <TextView 
     android:id="@+id/textView2" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:text="Phone Detail" 
     android:textAppearance="?android:attr/textAppearanceLarge" /> 

<!-- TextView to display SIM Card id --> 
    <TextView 
     android:id="@+id/simid" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

<!-- TextView to Display IMEI no --> 
    <TextView 
     android:id="@+id/imeino" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 

<!-- TextView to Display Phone Number --> 
    <TextView 
     android:id="@+id/phoneno" 
     android:layout_width="wrap_content" 
     android:layout_height="wrap_content" 
     android:textAppearance="?android:attr/textAppearanceMedium" /> 
</LinearLayout> 

和你AndroidManifest.xml

<?xml version="1.0" encoding="utf-8"?> 
<manifest xmlns:android="http://schemas.android.com/apk/res/android" 
    package="com.example.imei" 
    android:versionCode="1" 
    android:versionName="1.0" > 

    <uses-sdk android:minSdkVersion="10" /> 
    <!-- Permission to Read Phone Detail such as IMEI no,SIM Card Id etc --> 
<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 
    <application 
     android:icon="@drawable/ic_launcher" 
     android:label="@string/app_name" > 
     <activity 
      android:label="@string/app_name" 
      android:name=".Main" > 
      <intent-filter > 
       <action android:name="android.intent.action.MAIN" /> 

       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

</manifest> 
+0

謝謝,但它不起作用,我不知道爲什麼... – wiki

+0

你正在得到什麼? –

+0

我正在嘗試獲取唯一的電話號碼。首先想到的IMEI,但看到你的帖子,並找到它的SIM卡號碼可能是最好的SIM卡或電話號碼 – wiki