본문 바로가기

HELLO_WORLD48

[지식공유] 안드로이드 런타임 퍼미션 깨부수기 안드로이드 지식 공유 런타임 퍼미션 관리하기 안드로이드는 6.0(API 23) 마시멜로우를 기점으로 런타임 퍼미션이 적용되었습니다. 기존에 사용하던 설치시점에서의 권한 부여 방식은 잊으셔야 합니다. 런타임 퍼미션 적용으로 인해 사용자가 직접 권한을 허용/거부할수 있으며 설정으로 들어가면 언제든 허용/거부를 다시 컨트롤 할 수 있습니다. * 주의 : 런타임 퍼미션 적용은 상당히 귀찮고 피곤함을 야기시킵니다. 안드로이드 시스템의 권한의 경우 두가지로 나눠 볼 수 있는데요. 1. normal2. dangerous 1은 그야말로 권한 설정을 해도 아무 위험이 없는 경우, 2는 개인정보 등의 이유로 위험이 되는경우 입니다. 1의 경우 메니페스트 설정을 통해 나열하면 시스템에 권한이 부여됩니다. 문제는 2 인데요... 2018. 8. 24.
[초보강좌] 안드로이드 버튼과 텍스트 출력 안드로이드 초보 강좌 버튼과 텍스트 출력 안녕하세요. 안드로이드 초보 강좌 시간 입니다. 오늘은 개발시 가장 많이 쓰인다고 봐도 무방한 버튼 위젯과 그에 따른 동작을 구현해 보겠습니다. 매우 간단한 예제 이지만 매우 중요한 부분 이므로 한번 만들어 보셔도 좋을 것 같네요. 오늘 알고 가야 할 부분! - 이벤트 발생과 그에 따른 동작을 이해하고 구현한다- 유저가 버튼을 클릭하는 동작이 이벤트 발생 이고- 로그를 찍고 토스트를 통해 텍스트를 출력하는 것이 그에따른 동작이다. 우선은 안드로이드 스튜디오를 켜주시고요. 액티비티를 하나 만들어 줍니다. 아래의 스크린샷을 참고 하시죠. (원본보기 클릭) 원하는 이름으로 만들어주시구요. 아. 안드로이드의 경우 카멜... 명명법을 따르고 있으니 참고 하시구요.그게 뭐냐.. 2018. 8. 22.
[지식공유] 자바 메모리 Stack 과 Heap 영역에 대하여 안드로이드 지식 공유 자바 메모리 영역 - stack and heap 그냥 만들어도 만들수 있습니다. 그렇지만 알고 만드는 것과 알고 만드는 것은 많은 차이가 있죠. 개발시 가장 기본이자 기본. 메모리 구조. 정말 중요하지만 쓰다보면 까먹는 게 또 바로 이 메모리 영역에 대한 이해 입니다. 눈에 보이지 않기 때문이죠...ㅠㅠ 자바는 메모리 관리를 따로 해줄수가 없습니다. 순전히 가비지 컬렉션에 의지해서 잘 관리 해주길 바랄 뿐이죠 ^^;;;;;;; 자바 메모리 영역은 여러가지가 있지만 오늘은 크게 두가지로 나누어 알아보겠습니다. 바로 stack과 heap 입니다. 스택은 말 그대로 메모리에 정보를 쌓는 구조로 설계 되어 있죠. 그에 반면 heap에 있는 데이터는 반드시 주소(참조)값이 있어야 원하는 위치.. 2018. 8. 18.
[지식공유] 안드로이드 웹뷰 핀치 줌 인 / 아웃 안드로이드 지식 공유 안드로이드 웹뷰 - 줌 인 아웃 적용 안드로이드 개발시 매우 귀찮게 하는 녀석이 있습니다. 바로 웹뷰 인데요. 최근의 앱들은 거의 대부분 하이브리드 형태로 만들어 지고 있습니다. * 여기서 말하는 하이브리드는 네이티브개발영역 + 웹 영역이 결합된 형태 입니다. 이 웹뷰가 여러가지로 귀찮은 녀석입니다. 기존의 브라우저 처럼 잘 동작해주지 않기 때문이죠. 그래도 여러가지 설정을 참고하시면 브라우저 못지 않게 잘 사용하실수 있습니다. 오늘은 핀치 줌인/아웃 입니다. 아이폰의 경우 뷰포트 설정만 해주면 잘 동작하는데요. 우리의 안드로이드는 그런거 없습니다. ^^;;;;; 1. 우선은 웹페이지 상의 소스를 수정해주셔야 합니다. 우선 웹페이지 상에 뷰포트 설정을 해주시구요. maximum 으로.. 2018. 8. 18.
[지식공유] UI쓰레드에서 긴작업을 하면 안되는 이유 안드로이드 지식 공유 UI 쓰레드와 백그라운드 쓰레드 Main 쓰레드와 백그라운드 쓰레드를 어떻게 사용해야 할까? 저는 안드로이드 개발 초기에 UI 개발에 대한 개념이 부족하다 보니 많은 어려움이 있었습니다. 게다가 쓰레드에 대한 개념이 명확하지 않아서 정확하게 일을 처리할 수 없었죠. 지금은 쓰레드가 너무 재미있습니다. 기억을 거슬러 한번 정리하면서 메인쓰레드, 백그라운드 쓰레드를 언제 만들어서 사용하는지 구분해서 알아보겠습니다. 몇가지 규칙을 지킨면 그야말로 유저친화적인 앱을 만들수 있습니다. 1. 긴 시간이 걸리는 작업은 반드시 백그라운드 작업자를 통해 사용하도록 한다 2. UI(화면) 관련 제어가 필요하다면 반드시 UI 쓰레드(Main Thread)에게 맡겨라 이것이 전부 입니다. 간단하죠? 이 .. 2018. 8. 14.
[지식공유] HandlerThread 의 활용 안드로이드 지식 공유 HandlerThread 의 활용 우리가 전편에서 구경했던? Handler 는 매우 쉽고 간편하게 비동기적 처리를 담당해주는 고마운 녀석이 었습니다. 그러나 백그라운드 작업에서 핸들러를 설정하려면 여러가지로 셋팅해줘야 할 부분들이 생기죠. 쓰레드의 동작 까지 신경써야 합니다. 그리하여 우리는 HandlerThread 라는 녀석과 만나게 됩니다. https://developer.android.com/reference/android/os/HandlerThread 이 녀석은 쉽게말해 우리가 쓰레드를 생성하고 그안에 핸들러 셋팅까지 했던 것을 자동으로 해주는 고마운 친구 입니다. 즉 Thread Looper MessageQueue 의 복잡함을 자동으로 관리해준다는 말이죠. 동작방법은 너무도.. 2018. 8. 12.
[지식공유] Handler 에 대한 이해 안드로이드 지식 공유 Handler 에 대한 이해 안드로이드를 개발하면서 Handler 에 대해서 과연 알고 사용하는 것인가? 에 대한 의문이 들었습니다. 편해서 혹은 그냥 아무생각 없이 핸들러를 너무도 막 사용하기 때문이죠. 그게 틀렸다는게 아니고 알고 쓰면 더 좋겠다!! 라는 생각에서 정리해보려 합니다^^ https://developer.android.com/reference/android/os/Handler Handler 는 안드로이드 API 1 레벨 부터 사용되어진 매우 익숙한 존재입니다. 비동기적으로 처리해야할 로직을 아주 간단하게 그리고 편리하게 처리할 수 있죠. 사실 내부에 어떤 방식으로 동작하는지에 대해서는 굳이 알필요가 없을 수도 있습니다. 그냥 편하게 쓰고자 하면 말이죠. 1234567.. 2018. 8. 11.
[초보강좌] 1. 일단 만들어 봅시다 안드로이드 개발 같이 배워요! 1. 일단 만들어 봅시다 안드로이드/자바 공부 첫번째 시간 입니다. 이 강의는 시리즈 물로써 기본적인 지식습득을 목적으로 합니다.모든것을 이해할 수는 없지만 우선은 실습! 해보자 라는 취지로 진행하며 최대한 제가 안드로이드 입문 시절 느꼈던 어려움에 대한 부분을 최대한 풀어서 설명해 보도록 노력하겠습니다. 본 강좌는 우리들이 자바 랭귀지에 대한 사전지식을 가지고 있다는 가정하에 작성되었습니다. 이 강좌를 다 본다고 안드로이드 개발을 자유 자재로 할 수 없습니다. 그저 조큼. 아주 쵸큼 더 풀어쓴 기초 지식의 습득 정도로 생각하시면 이해가 빠르겠네요. 강의를 통하여 자바언어의 이해와 안드로이드 개발에 ... 1 이라도 도움이 된다면 좋겠습니다. 라는 컨셉의 강의로써 천천히.... 2018. 8. 9.