如何解决像“ NULL cString”这样的崩溃?

时间:2019-08-05 06:09:47

标签: ios objective-c

使用Hotel.objects.filter(is_published=True)设置声音时发生崩溃。出现类似'NULL cString'

的崩溃

为了防止空字符串,我在一开始就对其进行判断。代码如下:

series: [{
    name: 'Favouritism',
    data: [managerslt]
        },

但是我们仍然可以从某些用户那里收到崩溃报告。崩溃日志如下:

AVSpeechUtterance

我发现崩溃没有发生在- (void)speakString:(NSString *)string{ if (SQ_Str_IsEmpty(string)) { return; } if (self.speech){ AVSpeechUtterance *aUtterance = [AVSpeechUtterance speechUtteranceWithString:string]; [aUtterance setVoice:[AVSpeechSynthesisVoice voiceWithLanguage:@"zh-CN"]]; aUtterance.rate = 0.53; if ([[[UIDevice currentDevice] systemVersion] floatValue] < 8.0){ aUtterance.rate = 0.25; } else if ([[[UIDevice currentDevice] systemVersion] floatValue] < 9.0) { aUtterance.rate = 0.23; } if ([self.speech isSpeaking]) { [self.speech stopSpeakingAtBoundary:AVSpeechBoundaryWord]; } [self.speech speakUtterance:aUtterance]; } }

1 个答案:

答案 0 :(得分:0)

您的判断方法正确吗?我们在字符串传递过程中使用它。

#define SafetyStr(obj)     (obj == nil ? @""  : obj)
[self speakString:SafetyStr(obj)];