앱 개발 중 사용자 공지를 위해 html파일이 있으면 보여주고, 없으면 보여주지 않는 기능을 구현해야 했다.
그것에 대한 기술
원하는 곳에 아래 코드 작성
// 변수 선언 및 framework 추가
#import <WebKit/WebKit.h>
@property (nonatomic, strong) WKWebView *webview;
self.webview = [[WKWebView alloc] initWithFrame:self.view.frame];
self.webview.navigationDelegate = self;
[self.view addSubview:self.webview];
// 캐시 초기화
[[NSURLCache sharedURLCache] removeAllCachedResponses];
[[NSURLCache sharedURLCache] setDiskCapacity:0];
[[NSURLCache sharedURLCache] setMemoryCapacity:0];
// 해당 주소 url
NSURLRequest *request = [NSURLRequest requestWithURL:[NSURL URLWithString:@"http://www.mobileleader.com/bizreader/notice.html"]];
//url 접근
NSURLSessionConfiguration *defaultConfig = [NSURLSessionConfiguration defaultSessionConfiguration];
NSURLSession *defaultSession = [NSURLSession sessionWithConfiguration:defaultConfig delegate:nil delegateQueue:[NSOperationQueue mainQueue]];
NSURLSessionDataTask *dataTask = [defaultSession dataTaskWithRequest:request completionHandler:^(NSData *_Nullable data, NSURLResponse *_Nullable response, NSError * _Nullable error) {
if(error == nil && [(NSHTTPURLResponse*)response statusCode] == 200) {
NSLog(@"있음");
[self.webview loadRequest:request];
} else {
NSLog(@"error = %@",[error description]);
NSLog(@"없음");
[self.webview removeFromSuperview];
}
}];
[dataTask resume]; // dataTask 실행
추가로 만약 http를 사용할 경우 아래와 같이 예외 주소를 설정해야한다.
위 스샷에서 www.mobileleader.com을 원하는 주소로 바꿔주면 된다
키 짤린부분은 NSTemporaryExceptionAllowsInsecureHTTPLoads다
'프로그래밍 > iOS' 카테고리의 다른 글
[swift] bridge header 만들기 (0) | 2019.08.20 |
---|---|
[iOS] status deprecated iOS9 (0) | 2018.01.02 |
[iOS] iOS11에서 테이블뷰를 부를때 셀크기가 변하는 현상 (0) | 2017.09.21 |
[iOS] circleView외곽 dimming 처리 (0) | 2017.09.20 |
[iOS] documentation (0) | 2017.09.20 |