본문 바로가기

Develop/Objective-C

(29)
Objective-c 암호화관련 //1. MD5 해쉬 -(NSString*) md5:(NSString*)srcStr { const char *cStr = [srcStr UTF8String]; unsigned char result[CC_MD5_DIGEST_LENGTH]; CC_MD5(cStr, strlen(cStr), result); return [NSString stringWithFormat: @"%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X%02X", result[0],result[1],result[2],result[3],result[4],result[5],result[6],result[7], result[8],result[9],result[10],result[11],re..
애플 리젝 사유 정리 - 계속 업데이트중.. 1. 서버 클라이언트로 이루어진 앱이였는데, 메뉴얼이 포함되서 특별한 정보 없이 업로드했었는데, 접속하는 방법을 모르겠다고 리젝 2. 애플트레이드마크 위반 (아이콘 이미지가 아이폰이랑 비슷한 이미지를 사용했다고 리젝) 3. 전화걸기 버튼 -> 아이팟 터치에서 전화걸기 버튼누르면 아무일도 안일어난다고 딴지. -> 시스템콜 함수를 알려주면서 이거 쓰라고 하더라구요 ㅎㅎ 그래서 아이폰 인지 검사하고 아니면 Alert 띄워줬습니다. -> 그리고 UIRequiredDeviceCapabilities 에서 key값 telephony추가해 줬구요. 4, 탭바 아이콘 -> 제가 탭바 아이콘을 custom 으로 한 다음에 별표를 그려서 넣었거든요, 그런데 거기에서 보기에 요게 favorites 버튼으로 보였나봐요. 그래서..
multipart/form-data POST 방식으로 파일 업로드 하기 + (IBAction)uploadImage:(UIImage *)image:(NSString*)filename { NSData *imageData = UIImageJPEGRepresentation(image, 90); NSString *urlString = @"이미지전송을 위한 웹페이지 경로"; NSMutableURLRequest *request = [[[NSMutableURLRequest alloc] init] autorelease]; [request setURL:[NSURL URLWithString:urlString]]; [request setHTTPMethod:@"POST"]; NSString *boundary = [NSString stringWithString:@"0xKhTmLbOuNdArY"]; ..
JSON(JavaScript Object Notation) 으로 데이터 받기 JSON은 XML의 대안으로 새롭게 떠오른 문자열로 표현된 데이터 포맷입니다. 파싱속도도 XML보다 빠르고요. Objective-C에서 만큼은 XML보다 JSON 쓰는게 여러모로 편한 점이 많습니다. 아래 코드 토막을 잠깐 봅시다. [ 자료구조를 JSON 문자열로 변환하기 ] SBJsonWriter* jsonWriter = [[SBJsonWriter alloc] init]; NSArray* array = [[NSArray alloc] initWithArray:someArray]; NSDictionary* dictionary = [[NSDictionary alloc] initWithDictionary:someDictionary]; NSString* arrayJsonString = [jsonWriter st..
ZXing 1.6 QRCodeReader for Iphone 내 실력에선 엄청난 삽질이 필요 했다.. 아....ㅠ.ㅠ 덕분에 확실히 외워서 기억날듯.. 시~작! ZXingWidget 폴더를 현재 작업하는 프로젝트 폴더와 같은 폴더에 넣는다.. 그리고 cpp 폴더는 현재 프로젝트 폴더에서 상위 폴더에 넣는다.. /cpp/ /project/project_name /project/ZXingWidget/ 이렇게.... 그리고 XCode에 프로젝트로 들어가서 먼저 ZXingWidget 폴더 안에 ZXingWidget.xcodeproj 를 끌어당겨 내 프로젝트 상위에 넣는다. 그리고 Relative to project 인가.. 여튼 그걸 선택하고 맨위에 있는 add project 는 체크 하지 않는다. (그냥 참조만 한다고 한다..) 가지고 온 ZXingWidget.xcod..
연관이 없는 object들 간의 메세지 전달방법 : notification, KVO 1. notification (하나의 어플리케이션 안에는 하나의 노티피케이션센터만이 존재한다) [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(실행될함수명:) name:@"전달할메시지" object:nil ]; 이렇게 선언해놓고 m파일에 실행될 함수를 만들자!! -(void)실행될함수명:(NSNotification *)notification { 실행될 로직..... } 이제 어떤 변화가 일어 날경우 노티피케이션 센터에 메세지를 전달시켜줘서 노티피케이션이 실행되게끔 해야 한다. [[NSNotificationCenter defaultCenter] postNotificationName:@"전달할메시지" object:self];..
text field 에서 포커스가 나가면 키보드창 닫기 [textField resignFirstResponder]; //키보드에 첫번째 응답자로서 권한을 잃게 해라.. 반대로 become 하면 자동으로 올라옴.
UIWebView 사용하기 NSString *textUrlString = "http://~~~~~~~~~~~"; NSURL *userURL = [NSURL URLWithString:textUrlString]; //String 으로 된 url을 NSURL 형태로 변경. NSURLRequest *urlRequest = [NSURLRequest requestWithURL:userURL]; //NSURL을 requestURL로 변경. [클레스명 loadRequest:urlRequest]; 여기서 클레스명은 인터페이스빌더에서 UIWebView를 델리게이트로 연결해준 후 이름이다(?) 델리게이트에서 - shouldStartLoadRequest : URL을 요청하면 로드 할것인가 말것인가.. return BOOL값(YES or NO); > N..