Попытка использовать Akavache InsertObject с AVAudioPlayer - PullRequest
0 голосов
/ 23 июня 2019

Как следует из заголовка, я пытаюсь временно сохранить AVAudioPlayer в моем InMemory Akavache BlobCache. Я получаю сообщение об ошибке:

Ошибка при получении значения из ItemTitle в Foundation.NSUrl

Это потому, что он использует сериализацию JSON в фоновом режиме? Нужно ли делать сериализуемую версию AVAudioPlayer? Как бы я это сделал?

Ранее я пытался сохранить сами NSUrls с той же самой ошибкой, поэтому у меня, очевидно, все еще есть проблема с сериализацией этого класса.

private static async Task<AVAudioPlayer> RetrieveResourceSound(string identifier)
{
      AVAudioPlayer sound = null;
      try
      {
           sound = await BlobCache.LocalMachine.GetObject<AVAudioPlayer>(identifier);

      }
      catch (KeyNotFoundException ex)
      {
           Console.WriteLine("RetrieveResourceSound KeyNotFoundException: " + ex.Message);
      }
      catch (Exception ex)
      {
           Console.WriteLine("RetrieveResourceSound Exception: " + ex.Message);
      }

      return sound;
}
...