2016-01-22 4 views
2

Я новичок с Skobbler SDK и узнать с Swift Demo + хорошо документированной Tuto (http://developer.skobbler.com/getting-started/ios#sec01)Изменение языка совет не работает

Однако я до сих пор не могу настроить языковые параметры консультации, используя свои инструкции ...

Вот мой код:

let settings = SKAdvisorSettings() 
    settings.advisorVoice = "fr" 
    settings.language = SKAdvisorLanguage.FR 
    settings.advisorType = SKAdvisorType.AudioFiles 
    settings.resourcesPath = NSBundle.mainBundle().resourcePath! + "/SKMaps.bundle/AdvisorConfigs/Languages" 

событие определяют по:

func routingService(routingService: SKRoutingService!, didChangeCurrentAdvice currentAdvice: SKRouteAdvice!, isLastAdvice: Bool) { 

    NSLog("New advice "+currentAdvice.adviceInstruction) 

} 

Si Я получаю «в 90 метрах повернуть направо», например.

Кстати, никакие звуковые файлы не воспроизводятся ни

не могли бы вы дать мне руку :)? Спасибо заранее

+0

Я хотел бы иметь результат на французском языке путь ! – GrayFox

ответ

1

Существует ошибка в коде, который, как предполагается, «воспроизводить аудио-советы» (в AudioService.m) - имя файла .mp3 было неправильно построено.

Я исправил это, сделав следующее изменение:

func playAudioFile(audioFileName: String) { 
    var soundFilePath: String = audioFilesFolderPath + "/" + audioFileName 
    soundFilePath = soundFilePath + ".mp3" 

    if !NSFileManager.defaultManager().fileExistsAtPath(soundFilePath) 
    { 
     return 
    } 
    else 
    { 
     audioPlayer = try? AVAudioPlayer(contentsOfURL: NSURL(fileURLWithPath: soundFilePath), fileTypeHint: nil) 
     audioPlayer.delegate = self 
     audioPlayer.play() 
    } 

} 

Это сказалось только быстрое демо и будет исправлена ​​в следующем обновлении

+0

Да, Андо, вот и все :) !! большое спасибо – GrayFox

1

Ok Я нашел ошибку, заменив:

settings.advisorType = SKAdvisorType.AudioFiles 

с

settings.advisorType = SKAdvisorType.TextToSpeech 

Однако я до сих пор не знаю, как использовать записанные файлы ... Даже с разделом «Использование предварительно записанных файлов в tuto ...

1

Вы установили свои настройки как advisorConfigurationSettings вашего SKRoutingService?

[SKRoutingService sharedInstance].advisorConfigurationSettings = advisorSettings; 

Вы также должны установить путь для звуковых файлов, как это:

NSBundle* advisorResourcesBundle = [NSBundle bundleWithPath:[[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"SKAdvisorResources.bundle"]]; 
NSString* soundFilesFolder = [advisorResourcesBundle pathForResource:@"Languages" ofType:@""]; 
NSString* audioFilesFolderPath = [NSString stringWithFormat:@"%@/%@/sound_files",soundFilesFolder,userLanguageCode]; 
[AudioService sharedInstance].audioFilesFolderPath = audioFilesFolderPath; 

userLanguageCode будет "fr" в вашем случае