Я написал простую функцию на java в Android Studio, которая склеивает список контактов в строку. Данные хранятся в xml. Сама функция работает отлично. Но когда я пытаюсь вызвать её в Qt через QAndroidJniObject
, выдаёт ошибки. Если удалить из функции весь код и оставить один return
, то значение передастся... Пожалуйста, помогите вытянуть эту строку в C++
public String getcontactlist() {
ActivityCompat.requestPermissions(this, new String[ {Manifest.permission.READ_CONTACTS}, 1); //Запрос прав на получение контактов
String fetch = "<root>"; //Создание строки и корневого элемента
Cursor phones = getContentResolver().query(
ContactsContract.CommonDataKinds.Phone.CONTENT_URI, null, null, null,
null); //Получаю телефоны
while (phones.moveToNext()) {
String name = phones.getString(phones.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.DISPLAY_NAME));
String phoneNumber = phones.getString(phones.getColumnIndex(
ContactsContract.CommonDataKinds.Phone.NUMBER));
fetch += "<item><name>" + name + "</name><number>" + phoneNumber +
"</number></item>";//В цикле приписываю к строке
}
fetch += "</root>"; добавляю закрывающий тег
return fetch; //Возвращаю значение
}
Кроме самой функции, отправляю исходник проекта на Qt. Пожалуйста, помогите получить список контактов https://drive.google.com/open?id=0B434-oBPl5BmTV9vbFNHa0xGamc
Вызов происходит через слот C++ класса BackEnd. Сама java функция находится в android/src/com/example/contacts/fetch/ в файле FetchClass.java
и имеет заголовок getContacts
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь разобраться как реаизовать авторизацию, получилось сдлеать, но только работает до перезапуска браузера
Учусь на курсах програмированияУ меня есть два идентичных активити