我在app工作。我需要以编程方式获取电话号码。 我按照link
进行操作但我在一台设备上获得了电话号码,很多时候我没有得到。有任何完美的解决方案。
答案 0 :(得分:0)
您可以尝试这一点但不确定所有设备。 它仅适用于某些设备。
public static String getPhoneNumber(Context context) {
String s1="";
String main_data[] = {"data1", "is_primary", "data3", "data2", "data1",
"is_primary", "photo_uri", "mimetype"};
Object object = context.getContentResolver().
query(Uri.withAppendedPath(android.provider.ContactsContract.Profile.CONTENT_URI, "data"),
main_data, "mimetype=?",
new String[]{"vnd.android.cursor.item/phone_v2"},
"is_primary DESC");
if (object != null) {
do {
if (!((Cursor) (object)).moveToNext())
break;
// This is the phoneNumber
s1 =((Cursor) (object)).getString(4);
} while (true);
((Cursor) (object)).close();
}
return s1;
}