2016-01-22 59 views
2

我是新与Skobbler SDK,并与雨燕演示+有据可查政党成员学习(http://developer.skobbler.com/getting-started/ios#sec01更改建议的语言不工作

但是,我仍然无法使用他们的指令配置建议语言设置...

这里是我的代码:

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

    NSLog("New advice "+currentAdvice.adviceInstruction) 

} 

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

本次活动由定义

例如,我得到“在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

是的Ando就是这样:)!非常感谢你 – GrayFox

1

好吧,我发现我的错误更换:

settings.advisorType = SKAdvisorType.AudioFiles 

settings.advisorType = SKAdvisorType.TextToSpeech 

但是我还是不知道如何使用预先录制的文件...即使有部分“在tuto中使用预先录制的文件...

1

您是否将您的设置设置为您的SKRoutingServiceadvisorConfigurationSettings

[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"你的情况