Версия приложения для iOS требует двух разных разрешений: микрофон и BLE.В настоящее время разрешения предоставляются по мере необходимости.Тем не менее, я хотел бы создать страницу, которая позволяет пользователям нажимать на флажки, чтобы они могли дать разрешение при первом запуске приложения.
Доступ к микрофону запрашивается с помощью метода, который содержит следующий код:
OVBluetoothManager.startDetectingNoise(NOISE_DETECT_INTERVAL);
Где NOISE_DETECT_INTERVAL равен 3000.
BLE запрашивается с помощью метода, который содержитследующий код:
OVBluetoothManager.attemptToTriggerLEPairing();
Вот два метода в файле OVBluetoothManager.m:
RCT_EXPORT_METHOD(attemptToTriggerLEPairing)
{
[[someManager sharedInstance] getLED];
[[someManager sharedInstance] getBattery];
}
RCT_EXPORT_METHOD(startDetectingNoise:(NSInteger)timeInterval)
{
dispatch_async(dispatch_get_main_queue(), ^{
[self.noiseDetector startDetectingNoiseWithTimeIntervalInMs:timeInterval];
});
}
В обоих случаях пользователю предлагается предупреждение о предоставлении разрешений.Предполагая, что пользователь дает разрешение, все идет как обычно.
В этой записи было предложено, чтобы следующий код:
Permissions.request('photo').then(response => {
if (response === 'authorized') {
iPhotoPermission = true;
}
Permissions.request('contact').then(response => {
if (response === 'authorized') {
iPhotoPermission = true;
}
});
});
мог предоставить несколько разрешений одновременно.Возможно ли это сделать без использования реактивных собственных разрешений?