В Android App я использую следующий код, чтобы сделать телефонные звонки:Android Studio, предупреждение исключения безопасности
@Override
public void onClick(View arg0) {
ParseQuery<ParseObject> query = ParseQuery.getQuery("datos_contacto");
query.whereEqualTo("tipo_contacto", "celular");
query.findInBackground(new FindCallback<ParseObject>() {
public void done(List<ParseObject> scoreList, ParseException e) {
if (e == null) {
int len = scoreList.size();
for (int i = 0; i < len; i++) {
ParseObject p = scoreList.get(i);
String numero = p.getString("dato_contacto");
Log.d("score", "Celular: " + numero);
Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + numero));
startActivity(intent);
}
} else {
Log.d("score", "Error: " + e.getMessage());
}
}
});
}
});
В строке
startActivity(intent);
редактор показывает красное подчеркивание, и предупреждение об ошибке : «Звонок требует разрешения, которое может быть отклонено пользователем ...»
Я могу запустить приложение без исключений, но я хочу удалить это предупреждение, если это возможно.
я включил следующие строки в AndroidManifest:
<uses-permission android:name="android.permission.READ_PHONE_STATE"/>
<uses-permission android:name="android.permission.CALL_PHONE" />
Любая помощь приветствуется.
Это происходит через/и API 23. Пользователь может отклонить это разрешение. Вы должны проверить это и показать диалог, предупреждение или сообщить пользователю, что если он отклонит это разрешение, функция не будет работать. –
@MarianoZorrilla, спасибо. Редактор предлагает добавить строку: if (checkSelfPermission (Manifest.permission.CALL_PHONE)! = PackageManager.PERMISSION_GRANTED) {.. я должен включить туда тост или что-то подобное, сообщив пользователю, что он отклонил разрешение на создание звонки из приложения? – mvasco
Точно! Тост или любое другое предупреждение :) –