IOS静音还是震动

来源:互联网 发布:linux开发入门 编辑:程序博客网 时间:2024/06/09 22:17

[(SBMediaController *)[objc_getClass("SBMediaController") sharedInstance] isRingerMuted]

越狱环境


#define kSpringBoardPlist @"/var/mobile/Library/Preferences/com.apple.springboard.plist"
+ (BOOL)vibrateServicesEnabled
{
    NSDictionary *dict;
    if (kCFCoreFoundationVersionNumber >= 1000)
    {
        dict = [[NSUserDefaults standardUserDefaults] persistentDomainForName:@"com.apple.springboard"];
    }
    else
    {
        dict = [NSDictionary dictionaryWithContentsOfFile:kSpringBoardPlist];
    }
    
    BOOL enabled;
    if (![Function ringerMutedServicesEnabled]) {
        //非静音状态
        enabled = [[dict valueForKey:@"ring-vibrate"] boolValue];
    }
    else
    {
        //静音状态
        enabled = [[dict valueForKey:@"silent-vibrate"] boolValue];
    }
return enabled;
}


CFNotificationCenterAddObserver(center, NULL, SystemPostedNotification, CFSTR("com.apple.springboard.ringerstate"), NULL, CFNotificationSuspensionBehaviorCoalesce);
            CFNotificationCenterAddObserver(center, NULL, SystemPostedNotification, CFSTR("com.apple.springboard.ring-vibrate.changed"), NULL, CFNotificationSuspensionBehaviorCoalesce);
            CFNotificationCenterAddObserver(center, NULL, SystemPostedNotification, CFSTR("com.apple.springboard.ring-silent.changed"), NULL, CFNotificationSuspensionBehaviorCoalesce);

//回调

static void SystemPostedNotification(CFNotificationCenterRef center, void *observer, CFStringRef name, const void *object, CFDictionaryRef userInfo)
{


}

//audioToolBox

- (BOOL)slicend{

#if TARGET_IPHONE_SIMULATOR

    returnNO;

#endif

    CFStringRef state;

    UInt32 propertySize =sizeof(CFStringRef);

    AudioSessionInitialize(NULL,NULL, NULL,NULL);

    AudioSessionGetProperty(kAudioSessionProperty_AudioRoute, &propertySize, &state);

    if(CFStringGetLength(state)>0){

        returnNO;

    }else

        returnYES;

}


0 0
原创粉丝点击