본문 바로가기
[android] Direct Reply Tutorial https://blog.stylingandroid.com/nougat-direct-reply/ -Direct Reply 는 Notification 으로부터 App Launch 없이 바로 답장을 보내는 기능이다.Message App 에 한정되지 않고 모든 앱이 사용 가능하다. -Direct Reply 는 Android N Nougat 버전에 한해 사용 가능하다. -Direct Reply 의 키는, Notification 을 만들 때 remoteInput 을 추가하는 것이다.// notification 생성private static final String REPLY_KEY = “reply”;private static final String REPLY_LABEL = “Input reply”; // Action.. 2018. 2. 28.
[Kotlin Tutorial] Kotlin 의 Type system #2 [Kotlin Tutorial] Kotlin 의 Type system #2 참조 : Kotlin in action 6.2. Primitive and other basic types 6.2.1. Primitive types: Int, Boolean, and more -Kotlin 은 primitive type 과 wrapper type 을 구분하지 않는다. -그렇다면 Int 가 object 라면 Kotlin 은 모든 primitive type 을 실제로 object 로 만드는가?당연히 그렇게 안 했다.compiler 가 대부분의 Int type 을 Java 의 primitive type 으로 변형시킨다.generic, collection 등은 원래 Java 의 Integer 형태만 담을 수 있으므로 이 경.. 2017. 8. 22.
[iOS Study] 병렬 프로그래밍 가이드 ( dispatch source ) [iOS Study] 병렬 프로그래밍 가이드 ( dispatch source ) https://developer.apple.com/library/ios/documentation/General/Conceptual/ConcurrencyProgrammingGuide/GCDWorkQueues/GCDWorkQueues.html#//apple_ref/doc/uid/TP40008091-CH103-SW1 About dispatch source -dispatch source 는 low-level system event 를 처리하기 위한 data type 이다. -Timer dispatch source 는 주기적인 noti 를 만든다. -Signal dispatch source 는 UNIX signal 이 도착하면 not.. 2017. 7. 3.
[Java] Condition 은 어떻게 쓰는걸까? 예를 통해 함 보자. - Condition 에 대해 예로 잘 등장하는 코드는 아래와 같다. ( Oracle Java Doc 에 나와 있는 코드 ) /** * 이 Buffer 는 array index 재배치를 하지 않고, front 와 rear 값을 두고 control 해서 rear < front 일수도 있는 형태이다. */ public class BoundedBuffer { private final String[] buffer; private final int capacity; private int front; private int rear; private int count; private final Lock lock = new ReentrantLock(); private final Condition notFull = loc.. 2017. 5. 12.
[Java Concurrency] 동기화 클래스 구현 14.1. 상태 종속성 관리 - 병렬 객체의 상태 종속적인 메소드는 선행 조건이 만족하지 않았을 때 오류가 발생하는 문제에서 비켜날 수도 있겠지만, 비켜나는 일보다는 선행 조건을 만족할 때까지 대기하는 경우가 많아진다. - 자바에 내장된 조컨 큐 메커니즘(condition queue mechanism)은 실행 중인 스레드가 특정 객체가 원하는 상태에 진입할 때까지 대기할 수 있도록 도와주며, 원하는 상태에 도달해서 스레드가 계속해서 실행할 수 있게 되면 대기 상태에 들어가 있던 스레드를 깨워주는 역할도 담당한다. - 일단 선행 조건을 만족하지 않았다면 락을 다시 풀어줘야 다른 스레드에서 상태 변수를 변경할 수 있다. 만약 락을 풀어주지 않고 계속 잡고 있다면 다른 스레드에서 상태 변수의 값을 변경할 수 .. 2017. 5. 8.
[Java Concurrency] 객체구성 [Java Concurrency] 객체구성 4.1. 스레드 안전한 클래스 설계 - 객체가 갖고 있는 여러 가지 정보를 해당 객체 내부에 숨겨두면 전체 프로그램을 다 뒤져볼 필요 없이 객체 단위로 스레드 안전성이 확보되어 있는지 확인할 수 있다. - 클래스가 스레드 안전성을 확보하도록 설계하고자 할 때에는 다음과 같이 세 가지를 고려해야 한다. 객체의 상태를 보관하는 변수가 어떤 것인가? 객체의 상태를 보관하는 변수가 가질 수 있는 값이 어떤 종류, 어떤 범위에 해당하는가? 객체 내부의 값을 동시에 사용하고자 할 때, 그 과정을 관리할 수 있는 정책 - n 개의 변수를 갖는 객체의 상태는 n개 변수가 가질 수 있는 값의 전체 조합이다. A라는 객체 내부에 다른 객체 B를 가리키는 변수를 사용하고 있다면, .. 2017. 4. 18.
[Effective Java] wait 와 notify 대신 동시성 유틸리티를 사용하자. [Effective Java] wait 와 notify 대신 동시성 유틸리티를 사용하자. - wait 와 notify 를 사용할 이유가 거의 없다. 자바 1.5 배포판 기준으로 고수준 동시성 유틸리티를 제공한다. wait와 notify 를 올바르게 사용하기 어렵다면, 그 대신에 고수준 동시성 유틸리티를 사용해야 한다. - java.util.concurrent 패키지의 고수준 유틸리티는 세 부류로 나누어진다. 실행자 프레임워크(executor framework) 동시적 컬렉션 및 동기자(synchronizer) - 동시적 컬렉션은 List, Queue, Map 과 같은 표준 컬렉션 인터페이스를 고성능의 동시적 구현체로 제공한다. 높은 동시성을 제공하기 위해 이 구현체들은 내부적으로 자기 나름의 동기화를 한.. 2017. 3. 13.
[android] v7 에 추가된 RecyclerView 에 대해 알아보자 #1 v7 에 추가된 RecyclerView 에 대해 알아보자 #1 참조 : http://antonioleiva.com/recyclerview RecyclerView? 그게 뭐야? RecyclerView 는 새로운 ViewGroup 이며, ListView 의 확장판이라고도 불린다.최신 support-v7 에 포함되었다. RecyclerView 는 확장성을 고려하여 생성되었다. RecyclerView 를 사용하기 위해서는 RecyclerView.Adapter, LayoutManager 이렇게 2개의 컴퍼넌트가 필요하고, 필요에 따라 ItemAnimator, ItemDecorator 등이 추가될 수 있다. RecyclerView.Adatper RecyclerView 의 Adapter 는 기존에 사용되던 패턴을 포.. 2015. 6. 15.
[android] Notification 에 대한 모든 것. 안녕하세요. 돼지왕 왕돼지입니다. 오늘은 Notification 에 대한 모든 것 이라는 주제로 Notification 에 대해 한번 알아보도록 하죠. Notification APIs. Notification (int icon, CharSequence tickerText, long when); 필드 설명 number Notification Icon에 겹쳐서 출력될 숫자 지정 ex) 메세지 여러개 도착시 덮어쓰면서 숫자를 표시할 수 있다. 0이나 음수시 숫자 표시 X sound Notification 시 출력할 소리를 Uri 객체로 지정 vibrate 진동방식 지정, 진동시간과 멈출 시간을 배열로 전달 ledARGB 불빛의 색상 지정. LED 능력에 따라 표현능력 다름 ledOnMs, ledOffMs LE.. 2012. 2. 18.
반응형