即使设置为ON,我也希望iPhone在静音模式下不会振动。我想通过App以编程方式进行。这对我来说,所以我可以使用私有API。是否有api管理设置中的声音?你知道任何解决方案吗?
谢谢,
弗洛
答案 0 :(得分:1)
我认为以下代码可以解决问题。你需要从某个地方触发它(如果你想通过按钮或在应用程序中解雇它,则无法理解)。
NSString *sbPath = @"/var/mobile/Library/Preferences/com.apple.springboard.plist";
NSMutableDictionary *sbDict = [[NSMutableDictionary alloc] initWithContentsOfFile:sbPath];
[sbDict setValue:[NSNumber numberWithBool:NO] forKey:@"silent-vibrate"];
[sbDict writeToFile:filePath atomically: YES];
notify_post("com.apple.SpringBoard/Prefs");
我自己没有尝试过,但在Smartvibrate调整中找到了类似于你想要的东西。这将更改settings参数,因此您应该在应用程序完成时将其更改为on。
希望有所帮助!
答案 1 :(得分:0)
ios 8的更新:
NSMutableDictionary *dict; BOOL newState = NO;
NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
dict = [[defaults persistentDomainForName:@"com.apple.springboard"] mutableCopy] ?: [[NSMutableDictionary alloc] init];
NSNumber *value = [NSNumber numberWithBool:newState];
[dict setValue:value forKey:@"ring-vibrate"];
[dict setValue:value forKey:@"silent-vibrate"];
[defaults setPersistentDomain:dict forName:@"com.apple.springboard"];
notify_post("com.apple.springboard.ring-vibrate.changed");
notify_post("com.apple.springboard.silent-vibrate.changed");
答案 2 :(得分:0)
更新@@ baptiste-truchot的回答(以及@vrwim关注的问题):
这需要
#include <notify.h>
在.h文件的顶部关联。