В настоящее время я работаю над проблемой, которую я не могу решить в одиночку. Я пытаюсь интегрировать HealthKit в свое приложение. Нормальное решение работает идеально, и я в настоящее время работаю над обработкой ошибок, чтобы сообщить пользователю, если что-то пошло не так. Проблема в том, что метод «SaveObject()» кажется асинхронным, и если успех установлен, внешний метод уже возвращает false. Я не знаю, как решить эту проблему. :-(Xamarin iOS: Подождите, пока HKHealthStore SaveObject закончит
Ниже приведен фрагмент моего кода до сих пор.
private bool _saveToHealth(Data d)
{
HKHealthStore hkStore = new HKHealthStore();
bool isSuccessful = false;
hkStore.SaveObject (d, (bool arg1, NSError arg2) => {
isSuccessful = arg1;
});
return isSuccessful;
}
Для уверенности в проблеме, которую вы испытываете: вы вызываете '_saveToHealth', и как только' SaveObject() 'заканчивается статусом сохранения (с успехом или неудачей),' _saveToHealth' уже вернулся с false? – goldengil
Да, это правда. isSuccessful ВСЕГДА ложь. – Freddy