package Ġcontacts . sample . che ats heet . basics . kotlin Ċ Ċ import Ġandroid . app . Activity Ċ import Ġcontacts . core . Contacts Ċ import Ġcontacts . core . Update Ċ import Ġcontacts . core . entities .* Ċ import Ġcontacts . core . util .* Ċ Ċ class ĠUpdate Contacts Activity Ġ: ĠActivity () Ġ{ ĊĊĠĠĠ Ġfun Ġadd Email ( contact : ĠContact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. contacts ( contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Email Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaddress Ġ= Ġ" 3 2 1 @ xyz . com " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠEmail Entity . Type . CUSTOM ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ= Ġ" Personal " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġadd Email ( raw Contact : ĠRaw Contact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. raw Contacts ( raw Contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Email Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġaddress Ġ= Ġ" 3 2 1 @ xyz . com " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠEmail Entity . Type . CUSTOM ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġlabel Ġ= Ġ" Personal " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġadd Ann ivers ary ( contact : ĠContact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. contacts ( contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġadd Event Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġdate Ġ= ĠEvent Date . from ( 2 0 1 6 , Ġ 6 , Ġ 1 4 ) ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġtype Ġ= ĠEvent Entity . Type . AN NI VER S ARY ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġset FullName ( raw Contact : ĠRaw Contact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. raw Contacts ( raw Contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ ĠsetName Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġprefix Ġ= Ġ" Mr ." ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġgiven Name Ġ= Ġ" Small " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġmiddle Name Ġ= Ġ" Bal d " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġfamily Name Ġ= Ġ" E agle " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġsuffix Ġ= Ġ" Sr " ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġset Given Name ( raw Contact : ĠRaw Contact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. raw Contacts ( raw Contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġname Ġ= Ġ( name Ġ?: ĠNew Name ()). also Ġ{ Ġit . given Name Ġ= Ġ" G reg " Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġremove G mail Emails ( contact : ĠContact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. contacts ( contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġemails () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. filter Ġ{ Ġit . address ?. endsWith ("@ gmail . com ", Ġignore Case Ġ= Ġtrue ) Ġ== Ġtrue Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġ. forEach Ġ{ Ġremove Email ( it ) Ġ} ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () ĊĊĠĠĠ Ġfun Ġremove Emails And Ph ones ( contact : ĠContact ): ĠUpdate . Result Ġ= ĊĠĠĠĠĠĠĠ ĠContact s ( this ) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. update () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. contacts ( contact . mutable Copy Ġ{ ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġremove All Emails () ĊĠĠĠĠĠĠĠĠĠĠĠĠĠĠĠ Ġremove All Ph ones () ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ}) ĊĠĠĠĠĠĠĠĠĠĠĠ Ġ. commit () Ċ }