Hi Donal,

This is as good as hacking. I guess, adding a new call log should not
be possible. However, deleting them should be possible by using the
Content Provider.

You need to re-read the documentations, or may be look at the source
codes.

Kumar Bibek
http://tech-droid.blogspot.com

On Dec 15, 5:57 pm, Donal Rafferty <[email protected]> wrote:
> Here is the code I have
>
> import android.app.Activity;
>
>
>
> > import android.content.ContentUris;
> > import android.content.ContentValues;
> > import android.content.Context;
> > import android.database.Cursor;
> > import android.net.Uri;
> > import android.os.Bundle;
> > import android.provider.CallLog;
> > import android.util.Log;
> > import android.widget.SimpleCursorAdapter;
>
> > public class test extends Activity {
> >     /** Called when the activity is first created. */
> >     @Override
> >     public void onCreate(Bundle savedInstanceState) {
> >         super.onCreate(savedInstanceState);
> >         setContentView(R.layout.main);
>
> >         Uri myCall = ContentUris.withAppendedId(CallLog.Calls.CONTENT_URI,
> > 0);
>
> >         Cursor cur = managedQuery(myCall, null, null, null, null);
>
> >         String[] projection = new String[] {
> >                 CallLog.Calls.CACHED_NAME,
> >                 CallLog.Calls.CACHED_NUMBER_LABEL,
> >                 CallLog.Calls.DURATION
> >              };
>
> >         Uri myCalls = CallLog.Calls.CONTENT_URI;
>
> >         Cursor managedCursor = managedQuery(myCalls,
> >                 projection, // Which columns to return
> >                 null,       // Which rows to return (all rows)
> >                 null,       // Selection arguments (none)
> >                 // Put the results in ascending order by name
> >                 CallLog.Calls.DATE + " ASC");
> >         this.addToCallLog();
> >         this.getColumnData(managedCursor);
> >     }
>
> >     private void getColumnData(Cursor cur){
> >         if (cur.moveToFirst()) {
>
> >             String name;
> >             String phoneNumber;
> >             String duration;
> >             int nameColumn = cur.getColumnIndex(CallLog.Calls.CACHED_NAME);
> >             int phoneColumn =
> > cur.getColumnIndex(CallLog.Calls.CACHED_NUMBER_LABEL);
> >             int durationColumn =
> > cur.getColumnIndex(CallLog.Calls.DURATION);
> >             String imagePath;
>
> >             do {
> >                 // Get the field values
> >                 name = cur.getString(nameColumn);
> >                 phoneNumber = cur.getString(phoneColumn);
> >                 duration = cur.getString(durationColumn);
>
> >                //Log.i("NAMES !!!!! = ", name);
> >                // Log.i("Number !!!!! = ", phoneNumber);
> >                 Log.i("duration !!!!! = ", duration);
>
> >             } while (cur.moveToNext());
>
> >         }
>
> >     }
>
> >     private void addToCallLog(){
>
> >         ContentValues values = new ContentValues();
>
> >         // Add Abraham Lincoln to Calls List;
> >         values.put(CallLog.Calls.CACHED_NAME, "Abraham Lincoln2");
> >         //values.put(CallLog.Calls.CACHED_NUMBER_LABEL, "0863497543");
> >         values.put(CallLog.Calls.DURATION, 102);
>
> >         Uri uri = getContentResolver().insert(CallLog.Calls.CONTENT_URI,
> > values);
>
> >     }
>
> > }
>
> This works in that the logcat shows that its adding the duration, however
> problems include:
>
> Not getting the phonenumber, this gives a uncaughtexception error
>
> And the emulator crashes the Call Log app thats already on the device when
> it is used after my app has run
>
> On Tue, Dec 15, 2009 at 12:22 PM, [email protected] <[email protected]>wrote:
>
> > Hi,
>
> > I have been looking at Androids call log content provider and have
> > managed to pull the data from it and display it in my own app.
>
> > However I want to be able to write to the call log, is there anyway of
> > doing this?

-- 
You received this message because you are subscribed to the Google
Groups "Android Developers" group.
To post to this group, send email to [email protected]
To unsubscribe from this group, send email to
[email protected]
For more options, visit this group at
http://groups.google.com/group/android-developers?hl=en

Reply via email to