在看了這位大神的分析之后(http://www.itdecent.cn/p/6cbde1b8b922),我打算采用網(wǎng)易嚴(yán)選的方式來解決,
首先,本人項(xiàng)目中用的是WKWebView,所以在webview請求失敗的代理方法里加入了以下代碼:


效果大概是這樣的:
既然看了那篇文章,就順帶記一下判斷首次運(yùn)行APP和APP更新后首次運(yùn)行的代碼吧:
轉(zhuǎn)載請標(biāo)明出處:http://blog.csdn.net/loving_ios/article/details/50435840
方法一、在didFinishLaunchingWithOptions方法中加入如下代碼:
if(![[NSUserDefaultsstandardUserDefaults]boolForKey:@"firstLaunch"]){
[[NSUserDefaultsstandardUserDefaults]setBool:YESforKey:@"firstLaunch"];
//第一次啟動(dòng)
}else{
}
方法二、判斷app是否第一次啟動(dòng)或者更新后第一次啟動(dòng)
#define?LAST_RUN_VERSION_KEY?@"last_run_version_of_application"
-?(BOOL)?isFirstLoad{
NSString*currentVersion?=?[[[NSBundlemainBundle]infoDictionary]
objectForKey:@"CFBundleShortVersionString"];
NSUserDefaults*defaults?=?[NSUserDefaultsstandardUserDefaults];
NSString*lastRunVersion?=?[defaultsobjectForKey:LAST_RUN_VERSION_KEY];
if(!lastRunVersion)?{
[defaultssetObject:currentVersionforKey:LAST_RUN_VERSION_KEY];
returnYES;
}
elseif(![lastRunVersionisEqualToString:currentVersion])?{
[defaultssetObject:currentVersionforKey:LAST_RUN_VERSION_KEY];
returnYES;
}
returnNO;
}