07.27
Android is a good platform and can make the world better. But today some things are really stupid.
All Android phones called smart-phone. A good smart-phone like Blackberry has well administration of contacts. You can easily manage all properties of contact you needed for business and life. So good, and what i found on android: A terrible administration of contacts!
For names exist only one field. No first/last-name, birth-name, second-name, display-name, title-field, etc.
The contact manager cannot view contacts on last-name first and sort on them. This i mean is very important for business.
No birthday field. No one like friends that do not remember their bday.
I have spent much time, to search the issue. The problem is in the source for the contacts. The interface PeopleColumns, stored in [platform/frameworks/base.git] /core/java/android/provider/Contacts.java , contains only fields for NAME, PHONETIC_NAME and DISPLAY_NAME for the sqlite database.
This also happens in the donut bumb from yersterday. See it in the source from this link:
http://android.git.kernel.org/?p=platform/frameworks/base.git;a=blob;f=core/java/android/provider/Contacts.java;h=35463cfd38952d54de82fde561bf4130298aee17;hb=2af1b3db3d4f687d008db74b150f149e956b4bc6
| 168 /** 169 * Columns from the People table that other tables join into themselves. 170 */ 171 public interface PeopleColumns { 172 /** 173 * The person’s name. 174 * <P>Type: TEXT</P> 175 */ 176 public static final String NAME = “name”; 177 178 /** 179 * Phonetic equivalent of the person’s name, in a locale-dependent 180 * character set (e.g. hiragana for Japanese). 181 * Used for pronunciation and/or collation in some languages. 182 * <p>Type: TEXT</P> 183 */ 184 public static final String PHONETIC_NAME = “phonetic_name”; 185 186 /** 187 * The display name. If name is not null name, else if number is not null number, 188 * else if email is not null email. 189 * <P>Type: TEXT</P> 190 */ 191 public static final String DISPLAY_NAME = “display_name”; 192 193 /** 194 * The field for sorting list phonetically. The content of this field 195 * may not be human readable but phonetically sortable. 196 * <P>Type: TEXT</p> 197 * @hide Used only in Contacts application for now. 198 */ 199 public static final String SORT_STRING = “sort_string”; 200 201 /** 202 * Notes about the person. 203 * <P>Type: TEXT</P> 204 */ 205 public static final String NOTES = “notes”; 206 207 /** 208 * The number of times a person has been contacted 209 * <P>Type: INTEGER</P> 210 */ 211 public static final String TIMES_CONTACTED = “times_contacted”; 212 213 /** 214 * The last time a person was contacted. 215 * <P>Type: INTEGER</P> 216 */ 217 public static final String LAST_TIME_CONTACTED = “last_time_contacted”; 218 219 /** 220 * A custom ringtone associated with a person. Not always present. 221 * <P>Type: TEXT (URI to the ringtone)</P> 222 */ 223 public static final String CUSTOM_RINGTONE = “custom_ringtone”; 224 225 /** 226 * Whether the person should always be sent to voicemail. Not always 227 * present. 228 * <P>Type: INTEGER (0 for false, 1 for true)</P> 229 */ 230 public static final String SEND_TO_VOICEMAIL = “send_to_voicemail”; 231 232 /** 233 * Is the contact starred? 234 * <P>Type: INTEGER (boolean)</P> 235 */ 236 public static final String STARRED = “starred”; 237 238 /** 239 * The server version of the photo 240 * <P>Type: TEXT (the version number portion of the photo URI)</P> 241 */ 242 public static final String PHOTO_VERSION = “photo_version”; 243 } |
conclusion
How change it. This is staff for an other article. Today i must wait for a working “repo sync”, because of the lack of the git servers. After this i can test my ideas. Don’t forget to write a comment.
No Comment.
Add Your Comment