This absolutely needs a commented explanation.

Also: 
1. no need for the grouping parens here: `(contact == null)`, `contact == null` is the same
2. Why does a method like `Utils.getPhoneNumberPrimaryInfo` even exist? Based on the name, it's unclear what value will be returned is going to return. The implementation doesn't make it any clearer.