Search code examples
androidgmailsynchronizationandroid-contacts

Unable to delete gmail contacts group android


I've been trying to delete all the contact group using this code

private void deletaAllInGroup(Context context, long groupId)
           throws RemoteException, OperationApplicationException{
    ContentValues values = new ContentValues();         
    values.put(ContactsContract.Groups._ID, groupId);
    getContentResolver().delete(ContactsContract.Groups.CONTENT_URI,values.toString(),null);
        }

it is successfully deleting those group which are phone groups but this code is not deleting the gmail contact group how to do that ???


Solution

  • I solve this problem like this way

    ArrayList<GroupNameDetails> stateList = new ArrayList<GroupNameDetails>();
          final String[] GROUP_PROJECTION = new String[] 
                    {
                        ContactsContract.Groups._ID, ContactsContract.Groups.TITLE,   ContactsContract.Groups.ACCOUNT_TYPE//this line will do the trick
                    };
                Cursor cursor = getContentResolver().query(ContactsContract.Groups.CONTENT_URI, GROUP_PROJECTION, null,
                        null, ContactsContract.Groups.TITLE);
                while (cursor.moveToNext()) {
                    String accountname=cursor.getString(cursor.getColumnIndex(ContactsContract.Groups.ACCOUNT_TYPE));
                    Toast.makeText(getBaseContext(), accountname, Toast.LENGTH_LONG).show();// and it will display group type
                    String id = cursor.getString(cursor.getColumnIndex(ContactsContract.Groups._ID));
                    Log.v("Test", id);
                    //ContactsContract.Groups.ACCOUNT_NAME
    
                    String gTitle = (cursor.getString(cursor.getColumnIndex(ContactsContract.Groups.TITLE)));
                    if(favGroupName.contains(gTitle)==false)
                    {
                    favGroupId.add(id);
                    favGroupName.add(gTitle);
    
                    GroupNameDetails _states = new GroupNameDetails(Long.parseLong(id),gTitle, false);
                    stateList.add(_states);
                    }
                    Log.v("Test", gTitle);
                    if (gTitle.contains("Favorite_")) {
                        gTitle = "Favorites";
    
                    }
    
                }