일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
- BLOCK
- Android O
- contentprovider
- AccountManager
- Android
- xcode
- 다른 앱에서 열기
- NSURLConnection
- gradle
- Push
- Unchecked Exception
- service
- Google Cloud Messasging
- 페이스북
- ios9
- GCM
- unreal
- 배포
- ios
- Android O Preview
- 카카오톡
- 트위터
- signing
- 데이터 공유
- 안드로이드 개발 레벨업 교과서
- android studio
- Google Cloud Messasing
- Activity 수명 주기
- In-app Billing
- HTTP
- Today
- Total
목록iOS (20)
노블의 개발이야기
UIActivityViewController UIActivityViewControllersm는 iOS 6에서 새롭게 추가된 클래스로서, 이 클래스를 활용하면 뷰 컨트롤러가 컨텐츠를 여러 서비스(OS내 설치된 어플리케이션)에게 공유할 수 있게 해준다.공유 대상 서비스의 범위는 SNS 또는 이메일, 클립보드 복사하기와 iOS 소셜 프레임워크로 추가된 트위터(Twitter), 페이스북(Facebook), 웨이보(Weibo)가 해당된다. UIActivityViewController는 UIDocumentInteractionController와 성격이 다르다.두 클래스 모두 데이터를 다른 앱과 공유한다는 목적은 같으나 UIDocumentInteractionController는 리소스 파일 기반의 공유(예를 들어 윈..
UIActionSheet UIActionSheet is deprecated in iOS 8.(Note that UIActionSheetDelegate is also deprecated.)To create and manage action sheets in iOS 8 and later, instead use UIAlertController with a preferredStyle of UIAlertControllerStyleActionSheet. - (IBAction)showActionSheet:(id)sender { UIActionSheet *actionSheet = [[UIActionSheet alloc] initWithTitle:@"Select the operation to proceed?" delega..
UIWebView의 사이즈를 변경 후 google 로그인 페이지를 로딩하면 WebView 사이즈에 맞지 않는다. WebView 속성self.webView.scalesPageToFit = YES;UIWebView의 delegate 메소드에 추가 - (void)webViewDidFinishLoad:(UIWebView *)webViwe [방법 1]NSString *javaScript = [NSString stringWithFormat: @"var meta = document.createElement('meta'); " "meta.setAttribute( 'name', 'viewport' ); " "meta.setAttribute( 'content', 'width = %d' ); " "document.getEl..
XML 파서XML 파서는 XML 파일을 읽어들이면 앞에서부터 순서대로 분석하기 시작한다.'태그'나 '텍스트'가 발견될 때마다 잘라내서 '이런 것이 발견되었습니다 어떻게 처리할까요?' 라고 물어오므로 그때마다 처리할 방법을 프로그램에서 지정해주어야 한다.이를 델리게이트 메서드라고 한다. 1. URL 오브젝트 생성XML 파일을 의미하는 URL 문자열로부터 URL 오브젝트(NSURL)을 생성한다. NSURL *url = [[NSURL alloc] initWithString:@"http://sites.google.com/site/iphonesdktutorials/xml/Books.xml"]; 2. URL 오브젝트를 사용해 XML 파서 생성XML 파서를 만들 때 initWithContentsOfURL에서 읽어들일..
GCD(Grand Central Dispatch)란, C언어로 되어 있는 스레드 관리 기술로 iOS4 부터 지원하고 있다. 또한 GCD와 같은 시점에 등장한 블럭 코딩 기반으로 기본에 사용하던 NSThread, NSOperation 보다 쉽게 스레드 응용 기술을 구현할 수 있도록 지원해준다. 1. 디스패치 큐(Dispatch Queues)실행할 작업을 저장하는 큐로 시리얼 디스패치 큐와 콘커런트 디스패치 큐로 나눌 수 있다.- 시리얼 디스패치 큐 (Serial Dispatch Queues)큐에 추가된 순서 안에서 선입선출(FIFO) 방식으로 작업을 실행한다.또한, 큐에 있는 작업 하나를 실행시킨 후에 실행이 끝날 때까지 큐에 있는 다른 작업들은 기다리고 있다. 즉, 스레드 하나로 순차 처리를 하고 있다...
https://soulpark.wordpress.com/2013/07/25/ios-arc-from-top-developer/http://seorenn.blogspot.kr/2015/01/objective-c-arc.html 나는 이렇게 이해했다. __bridge (CF -> NS)// CFArrayCreate 함수에 의하여 레퍼런스 카운트 1CFArrayRef cfArray = CFArrayCreate(...);// array로 __bridge되면서 ARC에 의해 레퍼런스 카운트 2NSArray *array = (__bridge NSArray *)cfArray;// CFRelase에 의해서 레퍼런스 카운트 1CFRelease(cfArray) 따라서 NSArray가 릴리즈 되어 사라질 때가 되면 cfArr..
네트워크 상태 체크현재 네트워크 상태가 어떤지, 아니면 3G에서 Wi-fi망으로 전환되었는지 등의 여부를 확인해야 할 경우가 있다. 특히 동영상 스트리밍 등과 같이 네트워크 트래픽 발생이 클 경우, Apple에서는 3G를 통한 사용을 제한하고 있다. (이러한 이유로 Apple에서 Rejected 하기도 한다.) - (BOOL)isNetworkReachable { struct sockaddr_inzeroAddr; bzero(&zeroAddr, sizeof(zeroAddr)); zeroAddr.sin_len = sizeof(zeroAddr); zeroAddr.sin_family = AF_INET; SCNetworkReachabilityRef target = SCNetworkReachabilityCreateW..
[iOS] NSString에 URL Encoding과 URL Decoding 메소드 추가하기 http 전송에서 GET으로 보내는 파라미터에 URLEncoding을 해야하는 경우가 있다.예를 들어 트위터 검색에서 검색어를 사용할 때 @saltfactory를 검색하고 싶으면 from:saltfactory라고 검색하면 되는데 이때 ":" 문자를 URL Encoding으로 보내줘야 한다. http://search.twitter.com/search.json?q=from%3Asaltfactory 이때 그냥 한글이나 특수 문자를 보내면 데이터가 바르게 전달되지 않는다. 그래서 URLEncoding을 해서 전송해야하는데 NSString 자체에는 URLEncoding 메소드가 존재하지 않는다.그래서 카테고리를 이용해서 ..
NSUserDefaults 사용하기 NSUserDefaults 클래스는 공통으로 사용되는 Default Property를 관리한다.CoreData, SQLite, File 보다 간단하게 사용가능하다. 저장 가능한 클래스 타입은 NSData, NSString, NSNumber, NSDate, NSArray, NSDictionary 만을 지원한다.다른 타입의 클래스 인스턴스를 저장하기 위해서는 NSKeyedArchive, NSKeyedUnarchive를 이용한 Serialization(직렬화) 과정을 거쳐야한다. Load + (id)loadFromUserDefaults:(id)key { NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults]..
Storing values in the KeyChain Then use the SecItemAdd function to add a new item to your app's keychain.SecItemAdd 함수를 사용하여 키체인에 새로운 아이템을 추가한다. OSStatus SecItemAdd ( CFDictionaryRef attributes, CFTypeRef *result ); kSecClassThe value of this key is usually equal to kSecClassGenericPassword for storage of secure pieces of data, such as strings.이 키 값은 일반적으로 문자열들의 보안 데이터 조각을 저장을 위한 kSecClassGeneri..