Tech(24)
-
[Android]Android 앱 간 데이터 공유(ContentProvider와 ContentResolver)
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 [Android] Android 4대 컴포넌트 중 Content Provider(콘텐츠 제공자)을 정리하면서, 앱 간 데이터 공유에서 좀 더 자세히 다뤄보겠다고 한적 있습니다. 오늘은 Android의 앱들 사이에서 데이터 공유를 어떻게 하는지 알아보려 합니다. 안드로이드에서 앱간에 데이터를 공유(전달받을 때)할 때가 있기 때문입니다. 연락처 앱의 연락처를 받아온다거나가 그러한 경우죠. 앱들 간에 데이터를 공유하는 방법은 다양합니다. 서버를 이용하는 방식, DB, BroadcastReceiver 등등… 이번에는 그중에서도 'ContentProvider'와 'ContentResolver'를 이용하는 방식에 대해 알아보겠습니다. 참고로 코딩 방법이..
2022.04.11 -
[Android]JVM, JRE, JDK
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 안드로이드를 처음 접하는 사람들, Java를 처음 접하는 사람들은 JVM, JRE, JDK에 관하여 많이들 헷갈려한다고 합니다. 풀네임을 알면 사실 어려울 게 없지만, 처음부터 풀네임을 유추하는 사람이 몇 명이나 될까요? 오늘은 이 세 가지가 각각 어떤 것인지 알아보려 합니다. JVM Java Virtual Machine의 약자. 해석하면 자바 가상 머신입니다 다. 이 녀석은 Java소스 코드로부터 만들어지는 바이너리 파일의 바이너리 코드를 읽고 바이너리 코드가 정상 작동하는지 검증하고 검증된 바이너리 코드를 실행해서 프로그램을 구동 위 과정을 통하여, Java 바이너리 코드가 실행될 수 있는 런타임 환경을 제공하는 규격입니다. 이름에서 볼 ..
2022.04.10 -
[Android]Android 4대 Component(안드로이드 4대 구성 요소)
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 안드로이드 앱을 만들 때 주로 사용되는 Activity, Service, ContentProvider, BroadcastReceiver라는 4개의 컴포넌트가 있습니다. 이들이 사실상 거의 모든 구성요소라고 해도 과언이 아닐 거라 생각합니다. Unity native 관련 작업을 할 때 필요에 의해 알아본 간단한 개념만 살펴보도록 하겠습니다. Intent(인텐트) 위 그림에서 보면 가운데 존재하는 Intent라는 것이 있습니다. 간단히 말하면 컴포넌트 간의 메시지를 주고받는 메시징 오브젝트라고 생각하면 됩니다. 컴포넌트끼리 전활 될 때에는 Intent를 거쳐서 전환되게 됩니다. 그렇기에 전환 시 진행할 작업이나 데이터 등을 함께 전달하기도 합니다..
2022.04.10 -
[Network]http(s) 패킷(packet)
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 이전에 올린 Network 관련 글들에서, 데이터를 전송한다는 표현을 많이 했습니다. 그럼 데이터의 전송은 어떻게 이뤄질까요? 본론에 들어가기 앞서, 일반적으로 물건을 옮긴다는 상황을 생각해 보겠습니다. 저 같은 경우 간단하게 장을 보기도 하지만, 종종 손으로 들고 가기에는 많은 양의 물건을 사곤 합니다. 그럴 경우 여러 번 왔다 갔다 할까요? 아니죠, 봉지나 바구니 등 물건을 담을 수 있는 무언가에 물건들을 담고 들고 갑니다. 데이터도 마찬가지입니다. 바구니 같은 보관 수단에 담아 주고받는 게 일반적이죠. 이미지 파일을 주고받는 상황에서 이미지 파일의 정보뿐 아니라, 어디서 온 것인지, 어떤 프로토콜을 사용하는지, 암호화가 되어있다면 키는 ..
2022.04.10 -
[Network]프로토콜(Protocol) - https의 보안
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 이전 글에서 프로토콜 중 http와 https에 관하여 간단히 알아봤었습니다. 오늘은 그중 https, 정확히는 보안을 어떤 식으로 하는지 간단히 알아보려 합니다. http는 이름에서도 볼 수 있듯이, 텍스트 데이터를 주고받는다 이야기했습니다. https는 이 텍스트 데이터를 SSL이나 TLS 프로토콜을 한번 거쳐 암호화를 한 뒤 이용하는 구조입니다. 보안의 수준은 웹브라우저 에서의 구현 정확도와 서버 소프트웨어, 암호화 알고리즘에 따라서 천차만별이라고 합니다. 여담으로 SSL이 확산되다가 국제표준기구인 IETF로 넘어가면서 TLS로 이름이 바뀌었다고 하네요. 결국 둘은 같은 거라고 봐도 무방할 듯싶습니다. SSL / TLS SSL과 TLS ..
2022.04.10 -
[Network]프로토콜(Protocol) - http / https
이 글은 이전에 운영하던 깃 블로그에서 옮겨온 글입니다. 서론 실제 라이브 되는 서비스의 개발을 하다 보면, 아무리 클라이언트 프로그래머라고 해도 네트워크 쪽 지식을 필요로 하는 경우가 있습니다. 네트워크의 기초 프로토콜이나 인증, Wep handling 등 클라이언트와 밀접한 작업을 하는 경우가 있기 때문입니다. 이 글에서는 기초적인 Network 관련 지식 중 프로토콜, 그중 가장 대중적인 http/https에 관해서 다뤄보려 합니다. 프로토콜(Protocol) 네트워크 관련된 공부를 하거나 작업을 하다 보면, 프로토콜(Protocol)이라는 단어를 자주 듣게 됩니다. HTTP, HTTPS, SSH, Telnet 등등 모두 프로토콜의 종류들입니다. 사실 이 단어는 외교에서 사용하는 의례(혹은 의정서)..
2022.04.10