I want get incoming call details in android phone for an example when some one calling my android phone to get details of his number's network(carrier) like that for Airtel Vodefone and docomo etc, Using this method I am getting all details but not carrier details
public String[] callduration(){
String callername="",type="";
Cursor managedCursor = null;
int number = 0,name,duration = 0,calltype = 0,date = 0;
Uri contacts;
try {
contacts = CallLog.Calls.CONTENT_URI;
managedCursor = mContext.getContentResolver().query(contacts, null, null, null, null);
number = managedCursor.getColumnIndex( CallLog.Calls.NUMBER);
name= managedCursor.getColumnIndex(CallLog.Calls.CACHED_NAME);
duration = managedCursor.getColumnIndex( CallLog.Calls.DURATION);
calltype = managedCursor.getColumnIndex( CallLog.Calls.TYPE);
date = managedCursor.getColumnIndex(CallLog.Calls.DATE);
managedCursor.moveToLast();
callername = managedCursor.getString(name);
if(callername == null){
callername = managedCursor.getString(number);
}
if (managedCursor.getString(calltype).equalsIgnoreCase("1")) {
type = "Incoming";
}else if (managedCursor.getString(calltype).equalsIgnoreCase("2")){
type = "Outgoing";
}
} catch (Exception e) {
// TODO: handle exception
e.printStackTrace();
}
return new String[]{callername,managedCursor.getString(number),managedCursor.getString(duration),
managedCursor.getString(date),type};
}
Official tutorial,
https://developer.android.com/reference/android/telephony/TelephonyManager.html
also refer this, How to detect incoming calls, in an Android device?
getSimOperator() -Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM.
In manifest file,
give below permission,
< uses-permission android:name="android.permission.READ_PHONE_STATE" />
< uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
この記事はインターネットから収集されたものであり、転載の際にはソースを示してください。
侵害の場合は、連絡してください[email protected]
コメントを追加