본문 바로가기
반응형

IOS47

소켓 기반 iOS 프로그래밍 소켓 기반 iOS 프로그래밍 자세한 내용은 아래 내용을 참고해야겠지만 iOS에서 소켓으로 통신을 할 경우 참조할만한 URL이 있다. http://hamait.tistory.com/702 검색을 하다 보니 꽤 비슷한 내용의 글들이 많이 있다. 외국원서를 번역해서 넣어 둔 것 같은데 대략 훓어 보니 어렵지 않게 이해를 할 수 있었다. 다만, GCDAsyncSoket 이라는 소켓소스를 사용하고 있기 때문에 아래 소스를 사용할 일은 없을 듯하다. GCDAsyncSoket은 cocoapods을 통해 설치 할 수 있다. NSInputStream *inputStream; NSOutputStream *outputStream; - (void)initNetworkCommunication { CFReadStreamRef r.. 2018. 5. 15.
금액 한글 변환 소스(objective-c, iOS, 아이폰) 금액 한글 변환 소스(objective-c, iOS, 아이폰) 얼마전 회사에서 QR결제 기능을 개발하면서 인터넷에서 찾았던 소스, 단 javascript로 구성된 소스를 objective-c로 변경 해서 적용했다. 기본적인 알고리즘은 같은 맥락인데 사실 시간이 없어 신중하게 훓어 보지는 않았다. 다만, 각 금액의 단위에서 나누기로 나눠 십, 백, 천 단위를 붙히는 로직과 만, 억, 조 단위를 붙히는 로직이 흥미로워보였다. 이래서 수학을 잘해야한다고 하는 것 같은데, 수학을 제대로 공부한적이 없어서... 우선 화면상으로 구현된 내용을 이미지로 보면 이해가 쉽다. 입력된 금액을 전달 받아 콤마 변환과 한글 변환을 동시에 한다. NSString의 카테고리 메서드로 구현을 해서 사용했는데 소스는 아래와 같다. .. 2018. 4. 20.
iOS CoreNFC.framework, NFC Tag Reader 개발(Objective-C) iOS CoreNFC.framework, NFC Tag Reader 개발(Objective-C) 오늘은 회사에서 추진하는 사업 일환으로 NFC 관련해서 iOS Objective-c 기반의 CoreNFC 기술에 대해 개발 절차를 정리해서 올려 두고자 합니다. 아이폰은 애플페이 외엔 NFC리딩이 안되던 상황에서 이번에 iOS11버전이 나오면서 iPhone7이상의 단말에서 CoreNFC를 사용할 수 있도록 프레임워크가 추가 되었습니다. 이미 관련 앱들이 쏟아져 나오기도 했고 여러 말들이 많았는데요... 생각보다 단말의 사양이 높게 책정이 되어 아이폰6, 6S, 6+사용자들까지 흡수하지 못한 부분이 아쉽기는 합니다. iPhoneSE까지 범위를 넓혀 좀더 많은 단말에서 CoreNFC를 사용할 수 있도록 했다면 좋.. 2017. 12. 28.
.png pngcrush caught libpng error 해결 방법 .png pngcrush caught libpng error 해결 방법 오늘 아침, 꽤 오래된 프로젝트를 꺼내 들고 툭툭 먼지를 털 듯 이리저리 살피면서 빌드를 하니 issues가 506개 나오면서 6개의 error도 내 뱉었다. 참나 @@ nonARC모드로 개발이 된 이 프로젝트는 2012년 7.24일 만들어졌다고 주석이 붙어 있는데 대략 5년이 넘은 소스인데 몇 번의 덧칠이 되어 뒤죽박죽이다. 이 프로젝트에 또 없던 기능을 추가해야 하는 것이 이제부터 해야할 일이다. 얼마나 걸릴지, 어떤 것들이 숨어 있을지 모르는 프로젝트를 뒤지는 일이 주 업무가 될 것 같은데 걱정이 앞선다. 경고는 어떻게 할 수 없다 치고... 에러가 나는건 예전에 우리은행 프로젝트할 때도 보았든 png파일 pngcrush err.. 2017. 11. 2.
Objective-C @property 의 설정자 Objective-C @property 의 설정자 이번 포스팅은 Objective-C의 @property 선언시 사용되는 설정자에 대한 정리이다. @property는 클래스의 속성이나 설정이라고 이해를 하면 된다. 최근 들어 인스턴스 변수, 메서드 @property로 다 선언해서 사용하고 있다. public으로 노출해야할 경우 .h파일의 @interface에서 선언하는데 객체지향에서는 별로 좋은 방법은 아니고 setter, getter를 두고 관리하는게 더 좋을 수 있다. 최근 프로젝트에서 public property를 선언해서 사용해본적은 없다. 대부분 @implementation 상단에 private형태의 객체선언으로 대신해서 사용한다. @property로 속성을 설정할 때 사용할 수 있는 설정자들이.. 2017. 11. 1.
Objective-C 카테고리 정의 Objective-C 카테고리 정의 앞 포스팅 프로토콜에 이어 이번에는 카테고리(category) 정의와 사용에 대해 정리를 해본다. 이번 회사 프로젝트에서 만든 정적 라이브러리는 여러가지 사정상, 카테고리 메서드를 사용할 수 없는 사태가 발생되어 카테고리로 정의해서 구현했던 함수를 별도의 클래스로 만들어 인스턴스 메서드로 추가해서 싱글톤으로 접근하고 사용이 가능하도록 변경해야만 했다. 정확한 이유는 알 수 없지만 빌드 옵션 > Other Linker Flags 의 -ObjC옵션을 사용할 수 없는 경우는 정적 라이브러리에서 사용하는 카테고리 메서드는 로드가 되지 않고 소스상에서 찾을 수 없다는 오류를 내뱉는다. 따라서 카테고리로 구현할지, 별도의 클래스로 구현할지에 대한 부분은 만드는 프로젝트의 성격에 .. 2017. 11. 1.
반응형