Я использую службы определения местоположения в своем приложении, и там, где я устанавливаю разрешения, у меня появляется следующее предупреждение: Непроверенное назначение: 'java.util.ArrayList' to 'java.util.ArrayList
Код:
permissions.add(Manifest.permission.ACCESS_FINE_LOCATION);
permissions.add(Manifest.permission.ACCESS_COARSE_LOCATION);
permissionsToRequest = findUnAskedPermissions(permissions);
Предупреждение появляется в последней строке.
Я определил массивы следующим образом при запуске кода:
ArrayList<String> permissions = new ArrayList<>();
ArrayList<String> permissionsToRequest= new ArrayList<>();
ArrayList<String> permissionsRejected = new ArrayList<>();
Также позже в моем коде, где я спрашиваю разрешение (если не разрешено пользователем):
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) {
if (permissionsToRequest.size() > 0) {
requestPermissions(permissionsToRequest.toArray(new String[permissionsToRequest.size()]),
ALL_PERMISSIONS_RESULT);
canGetLocation = false;
}
}
здесь toArray
вызывает предупреждение: Вызов toArray () саргумент предварительно заданного размера массива 'new String [permissionsToRequest.size ()]
Здесь я могу попытаться заменить его на
toArray(new String[0])
, но не уверен, правильно ли это.