我刚注意到这一点:http://opensource.apple.com/source/WebCore/WebCore-1298/platform/RuntimeApplicationChecksIPhone.h
它列出了各种Apple和非Apple应用程序的检查:
bool applicationIsMobileMail();
bool applicationIsMobileSafari();
bool applicationIsDumpRenderTree();
bool applicationIsMobileStore();
bool applicationIsWebApp();
bool applicationIsOkCupid();
bool applicationIsSolarWalk();
bool applicationIsFacebook();
bool applicationIsFacebookTouchHD();
bool applicationIsEpicurious();
bool applicationIsDaijisenDictionary();
bool applicationIsNASAHD();
bool applicationIsMASH();
bool applicationIsTheEconomistOnIPhone();
为什么WebCore对这些应用的处理方式不同?当其他应用程序被禁止与WebCore交互而不诉诸各种黑客以避免Apple的验证时,为什么他们会给这些应用程序特殊处理?
所有这些调用栏MASH,Epicurious和FacebookTouchHD仍然存在于iOS 5.1的WebCore版本中。