목록MyCloud (85)
MyCloud
안드로이드의 SharedPreference 보통 안드로이드에서 데이터를 저장하는 방법으로 데이터베이스를 사용합니다.하지만 데이터베이스를 사용하지 않고도 데이터를 저장할 수 있는 방법이 있습니다.바로 SharedPreference를 사용하는 방법입니다 ! SharedPreference는 Map구조인 key-value 형태로 데이터를 저장합니다.이렇게 저장된 데이터는 어플리케이션이 삭제되기 전까지 내부에 파일형태로 보관됩니다. SharedPreference 사용하는 방법 SharedPreference를 사용하기 위해서는 먼저 클래스를 생성해야 합니다.SharedPreferences pref = getSharedPreferences("Game", Activity.MODE_PRIVATE);위의 생성과정에서 "G..
네트워크 전송기기 정리 리피터(Repeater) : 전기적 신호를 받아 이진수로 바꿔서 다시 전기적 신호로 전해주는 기기라우터(Router) : 두 개의 네트워크 사이에서 정보를 전달하도록 도와주는 기기, 보안 기능을 제공허브(Herb) : 이더넷 케이블을 통해 연결하여 네트워크의 컴퓨터 간에 통신을 도와주는 기기, 스위치보다 느림스위치(Switch) : 허브와 동일하게 작동하지만 대상을 식별 가능하며 정보를 동시에 주고 받을 수 있음브릿지(Bridge) : 여러 네트워크를 연결하도록 스위치를 업그레이드 시킨 기기, 4G ↔ 3G ↔ Wifi 변환시켜주는 에그게이트웨이(Gateway) : 네트워크 간의 통로 역할을 하는 장치, 다른 기종 간의 프로토콜을 적절히 변환시켜주는 역할 가격순 : 라우터 > 스위..
OSI Reference Model은 네트워크 통신 과정을 7개의 계층으로 구분한 산업 표준 참조 모델입니다.자세히 알아보기 전에 먼저 계층 구조가 어떤 것인지, 적용하면 어떤 점이 좋은지를 알 필요가 있습니다.계층 구조(Layered)는 네트워크 뿐만 아니라 운영체제 등 다양한 분야에서 적용되는데,계층 구조를 사용하는 목적은 분할 정복(Divide and Conquer) 때문입니다.어떠한 복잡한 문제를 해결하고자 할 때, 나누어 생각하면 쉽게 해결할 수 있는 것 입니다.또한, 계층 구조의 특징은 위, 아래 층으로만 이동할 수 있다는 점입니다.건너뛰어 한번에 맨위 또는 아래로 갈 수 없습니다. OSI 7 Layered Model 초창기의 네트워크는 각 컴퓨터마다 시스템이 달랐기 떄문에하드웨어와 소프트웨어..
네트워크 상에서 호스트와 호스트 간에 정보(data)를 주고 받는 전달 방식에는 회선 교환 방식 (Circuit switching)과 패킷 교환 방식 (Packet switching)이 있습니다. Packet - switching 먼저 Packet switching은 데이터를 패킷(packet)이라는 단위로 쪼개서 전송하는 방식입니다.패킷은 다음 링크로 전송하기 전에 저장을 한 뒤 전달하는 store and forward 방식을 따릅니다.패킷의 헤더에는 출발지(source)와 목적지(destination) 정보가 있습니다. 라우팅 알고리즘을 이용하여 경로를 설정하고, 중간의 라우터들을 거쳐 최종 목적지에 도달하게 됩니다.이러한 과정에서 패킷은 다음 라우터로 이동하기 위해 큐에서 대기(queueing)하는..
안드로이드 액티비티의 상태 안드로이드에서 액티비티는 어플리케이션 컴포넌트로서, 창이 하나씩 주어져 이곳에 사용자 인터페이스(UI)를 끌어올 수 있습니다. 한 액티비티가 새로운 액티비티의 시작으로 인해 중단된 경우, 이 상태 변경은 수명주기 콜백 메서드를 통해 알려집니다.따라서, 액티비티가 가질 수 있는 상태와 이 상태 변화에 따른 콜백 메서드에는 어떤 것이 있는지 수명주기를 통해 알아보겠습니다. 상 태 설 명 실행 (Running) 화면 상에 액티비티가 보이면서 실행되어 있는 상태 액티비티 스택의 최상위에 있으며 포커스를 가지고 있음 일시중지 (Paused) 사용자에게 보이기는 하지만 다른 액티비티가 위에 있어 포커스를 받지 않는 상태, 대화상자가 위에 있어 일부가 가려지는 경우에 해당 중지 (Stopp..
안드로이드로 위젯을 구성하다보면 android.support.v7.appcompat 이라는 라이브러리도 있고android.support.design.widget 이라는 라이브러리도 나타나게 됩니다.과거에 사용했던 것과 어떤 차이가 있고 어떤 기능이 새로 생겼는지 알아보겠습니다. AppCompat Library android.support.v7.appcompat 라이브러리는 14년 10월에 공개되었으며,롤리팝 SDK의 머티리얼 디자인을 지원하기 위해 만들어졌습니다.support.v7 은 안드로이드 하위 버전을 지원하기 위한 확장 서포트 라이브러리 입니다. 1. Toolbar widget 안드로이드 초창기에는 ActionBarSherlock을 이용해 액션바를 구현하는 경우가 있었지만이후에 ActionBarA..
언어에 따른 리소스 설정방법 글로벌 서비스를 운영하는 경우에 기기마다 언어가 다르기 때문에 이를 처리하는 것이 필요합니다.안드로이드에서는 기기의 언어설정 내용을 불러와 어플에 적용하는 방법을 제공합니다.아래와 같이 res/values 폴더에서 디렉토리명으로 구분하여 올바른 언어에 따른 문자를 자동으로 올려줍니다. 디렉토리명 설명 /res/values-ko/strings.xml 언어를 한글로 설정 /res/values-en/strings.xml 언어를 영어로 설정 /res/values-fr/strings.xml 언어를 불어로 설정 /res/values-ja/strings.xml 언어를 일본어로 설정 이와 같이 values-en 처럼 구분하는 것을 대체 리소스라고 부릅니다.언어에 따른 문자 설정 뿐만 아니라..
해상도에 따른 이미지 저장방법 안드로이드 기기 별로 지원하는 해상도가 다르기 때문에 이를 처리하는 것이 필요합니다.안드로이드에서는 화면의 해상도에 따라 서로 다른 이미지를 로딩할 수 있는 방법을 제공합니다.아래와 같이 res 폴더에서 디렉토리명으로 구분하여 올바른 이미지를 자동으로 올려줍니다. 디렉토리명 설명 /res/drawable-ldpi 저밀도 화면, 약 120 dpi /res/drawable-mdpi 중밀도 화면, 약 160 dpi /res/drawable-hdpi 고밀도 화면, 약 240 dpi /res/drawable-xdpi 초고밀도 화면, 약 320 dpi 이와 같이 drawable-ldpi 처럼 구분하는 것을 대체 리소스라고 부릅니다.해상도에 따른 이미지 저장 뿐만 아니라 언어에 따른 구..
안드로이드 레이아웃 구현 안드로이드의 레이아웃은 일반적으로 XML을 통해 구현합니다. 위와 같이 Design 탭을 이용해 컴포넌트를 옮겨서 완성하는 방법이 있고또는 자바코드로 구현할 수도 있습니다. XML로 구현했을 때의 장점은 우선 편리하다는 점입니다.코드를 작성할 필요없이 안드로이드 스튜디오를 통해 쉽게 구현할 수 있으며 시각화 할 수 있습니다.그리고 가장 큰 이점은 어플리케이션을 행동을 제어하는 코드로부터 따로 표시하기 좋다는 점입니다.자바에서 소스코드를 수정하고 다시 컴파일링하지 않아도 수정 또는 변경할 수 있습니다. 위와 같이 첫줄에 인코딩 정보를 뷰마다 한번씩 입력하게 되고각 컴포넌트는 트리 구조를 이루게 됩니다. id 속성은 XML 내에서 보기를 식별하기 위해 사용되며 과정은 다음과 같습니다..
안드로이드 레이아웃 종류와 속성 안드로이드에서 제공하는 대표적인 레이아웃은 크게 5가지가 있습니다.각 레이아웃마다 뷰의 배치 방식이 다르기 때문에 상황에 맞는 레이아웃을 선택하는 것이 중요합니다. 종류 설명 LinearLayout 박스(Box) 모델 사각형 영역들을 이용해 화면을 구성하는 방법 RelativeLayout 규칙(Rule) 기반 모델 부모 컨테이너나 다른 뷰와의 상대적 위치를 이용해 화면을 구성하는 방법 FrameLayout 기본 단위 모델 하나의 뷰만 보여주는 방법 여러 개의 뷰를 추가하는 경우 중첩시킬 수 있으므로 뷰를 중첩한 후 각 뷰를 전환하여 보여주는 방식으로 사용 TableLayout 격자(Grid) 모델 격자 모양의 배열을 이용하여 화면을 구성하는 방법 HTML에서 많이 사용하는..