Reputation: 174
How to get cell phone number in android ? Here is code. but it's not working
TelephonyManager tm = (TelephonyManager)this.getSystemService(this.TELEPHONY_SERVICE);
String mobileno = tm.getLine1Number();
can anyone help me to solve this.
Upvotes: 0
Views: 2596
Reputation: 123
You can use these lines of code to fetch cell phone numbers from your phone contacts picker.
try {
Intent i = new Intent(Intent.ACTION_PICK,ContactsContract.CommonDataKinds.Phone.CONTENT_URI);
startActivityForResult(i, PICK_CONTACT);
Toast.LENGTH_SHORT).show();
} catch (Exception e) {
Log.d("TAG", "Pick Contact ERROR" + e.toString());
}
and use OnActivityResult to get contacts and save it anywhere you want (Like this)
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == PICK_CONTACT && resultCode == RESULT_OK) {
Uri contactUri = data.getData();
cursor = getContentResolver().query(contactUri, null, null, null, null);
cursor.moveToFirst();
String PhoneNumber = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.NUMBER));
String ContactName = cursor.getString(cursor.getColumnIndex(ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME)));
Upvotes: 1
Reputation: 9225
You can try below code:
TelephonyManager tMgr = (TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE);
String number = tMgr.getLine1Number();
And for this code to work you need Permission:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
Upvotes: 0