1

我正在尝试构建一个带有一些通知的应用程序。一切都在逻辑上工作:

如果在我的用户设置中振动模式已打开,则手机会为我的应用通知振动 如果在我的用户设置中振动模式已关闭,则手机不会为我的应用通知振动。现在,我正在使用以下代码来播放声音(带有振动):

- (void)playSound:(NSString *)soundName {
CFBundleRef mainBundle = CFBundleGetMainBundle();

CFURLRef soundFileURLRef  = CFBundleCopyResourceURL (mainBundle,
                                                     (__bridge CFStringRef)[soundName stringByDeletingPathExtension],
                                                     (__bridge CFStringRef)[soundName pathExtension],
                                                     NULL);
if (soundFileURLRef) {
    SystemSoundID soundFileObject;
    AudioServicesCreateSystemSoundID (soundFileURLRef, &soundFileObject);
    AudioServicesPlaySystemSound (soundFileObject);

    [self performSelector:@selector(disposeSound:)
               withObject:[NSNumber numberWithInteger:soundFileObject]
               afterDelay:5];

    CFRelease(soundFileURLRef); 
}}

- (void)disposeSound:(NSNumber *)number {
AudioServicesDisposeSystemSoundID ([number integerValue]);}

但是,我的 iPhone 上还有其他一些应用程序(例如报纸应用程序),即使在我的用户设置中振动模式已打开,当这些应用程序执行通知时,手机也会播放没有振动的声音。我的应用程序如何具有相同的行为?

提前感谢您的回复。

4

0 回答 0