关于APP首次运行时,在请求数据权限之前webView请求不成功的解决办法

在看了这位大神的分析之后(http://www.jianshu.com/p/6cbde1b8b922),我打算采用网易严选的方式来解决,

首先,本人项目中用的是WKWebView,所以在webview请求失败的代理方法里加入了以下代码:


在隐藏webview之后,显示一个按钮,给按钮添加action来reload


reload

效果大概是这样的:


QQ20170927-162142-HD


既然看了那篇文章,就顺带记一下判断首次运行APP和APP更新后首次运行的代码吧:

转载请标明出处:http://blog.csdn.net/loving_ios/article/details/50435840

方法一、在didFinishLaunchingWithOptions方法中加入如下代码:

if(![[NSUserDefaultsstandardUserDefaults]boolForKey:@"firstLaunch"]){

[[NSUserDefaultsstandardUserDefaults]setBool:YESforKey:@"firstLaunch"];

//第一次启动

}else{

}

方法二、判断app是否第一次启动或者更新后第一次启动

#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;

}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容