본문 바로가기
[iOS Study] 병렬 프로그래밍 가이드 ( 병렬 앱 디자인 ) [iOS Study] 병렬 프로그래밍 가이드 ( 병렬 앱 디자인 ) https://developer.apple.com/library/ios/documentation/General/Conceptual/ConcurrencyProgrammingGuide/ConcurrencyandApplicationDesign/ConcurrencyandApplicationDesign.html#//apple_ref/doc/uid/TP40008091-CH100-SW1 -전통적 방법으로의 복수개의 코어를 사용하는 방법은 여러개의 thread 를 만들어 사용하는 것이다.그러나 thread 를 사용한 코드는 scale 측면에서 좋지 않다.core 가 처리하기 좋은 thread 의 갯수를 아는 것도 쉽지 않고, thread 들을 효율적으.. 2017. 7. 1.
[iOS Study] NSUserDefaults [iOS Study] NSUserDefaults 출처 : 아론 힐리가스의 iOS 프로그래밍 -사용자의 환경설정(preferences) 을 가진 plist 가 각 앱 번들 안에 저장된다.개발자는 NSUserDefaults 클래스를 사용하여 이 plist 에 접근할 수 있다.또한 앱의 환경설정 plist 는 설정 앱에서 수정할 수 있다.이를 허용하려면 앱 안에 설정 번들(settings bundle)을 만들어야 한다. -사용자의 기본 설정(default) 집합은 키-값 쌍의 모음이다.키는 기본 설정의 이름이고 값은 키에 해당하는 사용자가 선호하는 것을 나타내는 데이터이다.공유 사용자 기본값 객체에 그 키의 값을 요청한다.이것은 딕셔너리에서 객체를 가져오는 것과 다르지 않다. NSUserDefaults *de.. 2016. 3. 27.
[iOS Study] 유동글자 [iOS Study] 유동글자 출처 : 아론 힐리가스의 iOS 프로그래밍 -유동 글자(Dynamic Type)는 iOS7 에 도입된 기술이다.이는 읽기 편하도록 최적화되어 설계된 텍스트 스타일(text styles)을 제공한다.설정(Settings) 앱에서 일곱 가지의 선호하는 텍스트 크기 중 하나를 선택할 수 있고 유동 글자를 지원하는 앱이 폰트를 적절히 조절한다는 것이 매력이다. -유동 글자 시스템은 텍스트 스타일 중심이다.이 시스템은 텍스트 스타일을 요청받으면 적합한 폰트를 반환하기 위해 해당 텍스트 스타일과 연관된 사용자의 선호 텍스트 크기를 사용한다. -다음과 같은 코드로 쉽게 font 를 적용할 수 있다. UIFont *font = [UIFont preferredFontForTextStyle:.. 2016. 3. 9.
[iOS Study] 저장, 읽기, 앱 상태 [iOS Study] 저장, 읽기, 앱 상태 출처 : 아론 힐리가스의 iOS 프로그래밍 -여기서는 iOS 에서 파일 시스템을 통해 읽고 쓰는 데 필요한 개념과 기법을 배운다. -아카이빙은 iOS 에서 모델 객체를 저장하는 가장 흔한 방법 중 하나이다.객체의 아카이빙은 그 객체의 프로퍼티들을 모두 기록하고 파일시스템에 그 내용을 저장하는 것을 포함한다.언아카이빙(unarchiving)은 아카이브한 데이터로부터 객체를 다시 만든다. -인스턴스들을 아카이브하고 언아카이브해야 할 클래스들은 NSCoding 프로토콜을 반드시 따라야 하며, 두 필수 메소드 encodeWithCoder: 와 initWithCoder: 를 구현해야 한다. -encodeWithCoder: 메시지를 받으면, 전달된 인자인 NSCoder .. 2016. 3. 7.
[android] Lollipop (LOS) 부터는 Notification Icon 에 색상을 넣을 수 없다? [android] Lollipop (LOS) 부터는 Notification Icon 에 색상을 넣을 수 없다? 출처 : https://developer.android.com/intl/ko/about/versions/android-5.0-changes.html#BehaviorNotifications #Lollipop ( Android 5.0 ) 부터는 Notification 의 Icon 의 Color 값을 전부 무시하며, Non-Alpha Channel 은 모두 White 로 바꾸어 버린다.즉, Alpha 가 있는 부분은 transparent 로, Alpha 가 없는 부분은 모두 흰색으로 표시한다. ( Material Design 의 영향 ) #만약 기존과 같이 색상이 있는 Notification Icon.. 2016. 2. 14.
[android] Binder 와 Death Recipients 에 대한 이해 [android] Binder 와 Death Recipients 에 대한 이해 안드로이드는 기본적으로 multi-task 를 위해 만들어진 앱이다. 그래서 초창기에는 user 가 명시적으로 process 를 죽이지 못하도록 만들고, main activity 를 종료했을 때는 아주 낮은 priority 로 계속 process 를 살려둔다. 왜 그렇게 하냐? app switching 이 일어날 때 process 를 처음부터 만들려고 하면 너무 많은 시간이 들기 때문이다. 그럼 process 들을 유지함으로서 메모리가 부족하면 어떻게 하냐? 해당 process 를 최소한의 정보를 보존한 후 죽인다. 그리고 해당 process 가 다시 launch 되면 최소한의 정보를 통해 어느 정도 선까지는 상태복구를 해준다.. 2015. 12. 29.
[android] NotificationCompat and its Builder NotificationCompat.Builder.setSmallIcon( int resId ); setSmallIcon 이 지정되지 않으면 notification 은 등록이 아예 되지 않음.Small Icon 은 status bar 에 뜨는 아이콘과 notification view 안의 우측에 표시됨. 만약 large icon 이 지정되지 않으면 notification view 안에 있는 icon 도 이녀석으로 지정됨.만약 large icon 이 지정되어 있다면 content info 자리에 icon 이 같이 표시됨. NotificationCompat.Builder.setLargeIcon( Bitmap bitmap ); Notification View 안에 있는 icon 이 지정됨. Notificatio.. 2013. 11. 21.
[android] how can I detect if notification clear button is clicked? android, how can I detect if notification clear button is clicked? [En] Very easy.When you make Notification instance, just add delete intent with setDeleteIntent() method. private Notification getNotification( Context context, Intent intent, String pushMessage ){int notiCount = Application.getNotiMessageCount();NotificationCompat.Builder builder = new NotificationCompat.Builder(context).setSmal.. 2013. 10. 16.
[android] Nexus7 에서 잘 작동하는 앱 만들기. 안드로이드, Nexus 7 에서 잘 작동하는 앱 만들기. 1. 반응형 디자인을 적용하여 하나의 APK 로 폰은 물론 탭도 지원 가능하도록 만들자. 2. res/layout-sw600dp 와 res/layout-sw720dp 를 활용하여 7인치 /분만 아니라 10인치 타블렛도 지원하자. 만약 폰 레이아웃을 그대로 사용하고, 텍스트와 이미지가 차지하는 공간만 확대할 예정이라면 dimens.xml 을 잘 활용하자. 3. 하드웨어 기능에 대한 주의가 필요하다.넥서스 7은 저해상도 전면 카메라만 가지고 있다.넥서스 7은 전화 기능과 진동 기능이 없다.따라서 반드시 필요한 경우가 아니면 의 required 속성 값을 false 로 두자. 꼭 필요한 녀석이 아닐 경우에는 런타임에 해당 앱이 있는지 확인하여 유두리 있.. 2013. 9. 9.
반응형