我开始为 api 13 构建我的应用程序,因为我认为它对于大多数用户来说足够高效。但我将其更改为 api 10。然后以下代码停止工作`
String empName=data.getStringExtra("name");
String hourPay=data.getStringExtra("hourPay");
String key="";
String id="";
Uri lookupUri = Uri.withAppendedPath(ContactsContract.Contacts.CONTENT_FILTER_URI, empName);
Cursor idCursor = getContentResolver().query(lookupUri, null, null, null, null);
idCursor.moveToFirst();
id = idCursor.getString(idCursor.getColumnIndex(ContactsContract.Contacts._ID));
key = idCursor.getString(idCursor.getColumnIndex(ContactsContract.Contacts.LOOKUP_KEY));`
问题是它只适用于用英文写的联系人姓名或只有姓名(不是姓氏)的联系人姓名
例如:它适用于以下联系人:Express Service、George、Maria Mpakou、Σοφια、不区分语言
但是,当联系人是用我的语言(希腊语)编写的并且有空格(例如 Αιμιλιος Δημιος)时,它会返回带有超出范围的索引的下方光标。
当我第一次尝试 api 13 时,它就像一个魅力。顺便说一句,我的 Android.Manifest 有 utf-8 编码,如果这与它有关请任何建议都会有帮助。谢谢