我的应用程序有问题,
在埃及,他们将为手机号码添加额外的数字以扩展,所以我制作了一个应用程序来将现有号码修改为新号码。
所以基本上我读了所有电话号码,根据一些条件我操纵它们并保存新数据,
我正在使用 adt 插件开发 eclipse,我已经在 emulator 2.2 和 emulator 2.3 上尝试了该应用程序,并且运行良好并修改了所有联系人。
但是当我在我的手机galaxy s android 2.3.5上传输时,它运行时没有保存新的联系人数据,我什至调试查看流程,它工作正常得到所有数字修改它们并保存它们没有错误,但联系人没有更新.
是不是有一定的原因,你能给我更多的想法吗?
我想提供更多信息,我已经在我的手机上安装了 froyo 2.2,但仍然不会保存新的联系号码,虽然它在模拟器上运行得很好,我以这种方式保存联系人:
ContentResolver cr2 = getContentResolver();
String where = Data.RAW_CONTACT_ID + " = ? AND "
+ String.valueOf(Phone.TYPE) + " = ? ";
String[] params = new String[] { id,
String.valueOf(type) };
ArrayList<ContentProviderOperation> ops=new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation
.newUpdate(Data.CONTENT_URI)
.withSelection(where, params)
.withValue(
ContactsContract.CommonDataKinds.Phone.DATA,
phoneNumber).build());
try {
cr2.applyBatch(ContactsContract.AUTHORITY,ops);
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (OperationApplicationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
好的伙计们,对不起,我刚接触android,但我发现了错误,我将代码修改为:
ContentResolver cr2 = getContentResolver();
String where = Data.CONTACT_ID + " = ? AND " +Data.MIMETYPE + "='" +
Phone.CONTENT_ITEM_TYPE + "'" + " AND "
+ String.valueOf(Phone.TYPE) + " = ? ";
String[] params = new String[] { id,
String.valueOf(type) };
// Cursor phoneCur = managedQuery(Data.CONTENT_URI,
// null, where, params, null);
ArrayList<ContentProviderOperation> ops = new ArrayList<ContentProviderOperation>();
ops.add(ContentProviderOperation
.newUpdate(Data.CONTENT_URI)
.withSelection(where, params).withValue(
Phone.NUMBER,
phoneNumber).build());
try {
cr2.applyBatch(ContactsContract.AUTHORITY, ops);
count++;
System.out.println(phoneNumber);
} catch (RemoteException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (OperationApplicationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
所以技术上我添加了mimetype,我曾经更新phone.data所以我也将它更改为phone.number,现在它在2.2 / 2.3.5上工作正常,所以我想这个问题已经结束了,但我还有一个要问的是,读取的联系人不包括 facebook 或 twitter 联系人,是否有读取所有联系人以更新所有联系人,包括 facebook 和 twitter ????