isAvailableForServiceType总是返回true?
简单的代码行:
NSLog(@"Checking on Facebook: %d -- Checking on Twitter: %d",[SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook], [SLComposeViewController isAvailableForServiceType:SLServiceTypeTwitter]);
问题是我得到两个BOOL的1。 这是一个问题,因为Twitter和Facebook都没有设置帐户。 这是在模拟器上,所以想知道是否有人经历过这种情况也发生在设备上呢?
文档说,只有服务可用并且至less有一个帐户被设置,它才应该返回true。 但即使没有帐户设置,我也会变得真实。 我想使用这些值来隐藏一些社交发布button,所以想这个工作。
你在模拟器中运行了吗?
似乎isAvailableForServiceType
总是在模拟器中返回1
。
也许你可以用IOS6在ipad上testing它。
根据我的经验,我可以确认这是iOS模拟器6.0中的一个错误。 对于iOS模拟器上的任何服务types, isAvailableForServiceType
方法始终返回TRUE。
在运行当前iOS 6.0的实际设备上,它正在按预期工作。
你可以testingisAvailableForServiceType:
使用它在模拟器上工作的iOS 7.1。
在这里我检查了什么
NSLog(@"Facebook Enabled : %d",[SLComposeViewController isAvailableForServiceType:SLServiceTypeFacebook];
请检查这个。
我也可以在Simulator(Xcode 4.5.1,iOS 6.0)中确认它已经损坏了(即对于所有三种服务都返回True),但是它可以在设备(iPhone 4S,运行iOS 6.0)上正常运行。
在iPhone和iPad模拟器中, isAvailableForServiceType
始终返回true
。
相同的一段代码在iOS 6 iPhone和iPad上工作正常。