본문 바로가기

분류 전체보기

안드로이드 프래그먼트 라이프 사이클(생명주기) 알고 쓰기~!! 안드로이드 플래그먼트 라이프사이클 입니다. 최근에는 플래그먼트를 지양하고자 하는 분들도 있지만 어쨋든 우리는 알아야 합니다. 플래그먼트 라이프 사이클은 액티비티와 다르게 조금 복잡합니다. 왜냐. 액티비티에서 시작되어 만들어진 객체이기 때문이죠. 액티비티에서 부터 순서대로 따라가다 보면 이해가 빠르실겁니다. 그럼 최대한 단순하게 로그를 찍어서 확인 해보죠. 우선 액티비티 를 만들어줍시다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 package com.example.test.mynewapplication; import android.support.v4.app.Fragm.. 더보기
안드로이드 웹뷰 기초 ~ 알아보기 안드로이드 웹뷰 기초 안녕하세요. 모바일과 웹은 우리 일상생활에서 필수가 되버린지 오래인 것 같네요. 안드로이드 개발시에도 역시나 웹은 필수 요소중 하나 이기도 합니다. 개발시 웹뷰 라는 객체를 활용하여 앱내에서도 기존의 모바일 브라우저 처럼 사용할 수 있습니다. 우리 앱내부에 브라우저를 심는다고 생각하면 편할 것 같네요. 그러나 웹 브라우저들의 막강한 기능을 다 지원하지는 않습니다. 그래도 대부분은 어떤 꼼수를 써서든 구현이 되긴 합니다^^;; 웹뷰 사용법 기초에 대해서 알아봅시다. #웹뷰 #웹뷰사용법 #웹뷰기초 안드로이드 웹뷰의 경우 초기에는 매우 제약적인 기능만 사용이 가능했습니다. 이는 우리가 원하는 하이브리드 웹과 거리가 멀었죠. 그러던 중 반가운 소식이 들려옵니다. 구글은 '안드로이드킷캣' 을.. 더보기
안드로이드 액티비티 라이프 사이클 알아보기 안드로이드 액티비티 라이프사이클 안드로이드 개발시 기본이자, 제일 중요한 부분일 수 있는 액티비티의 라이프 사이클 입니다. 뭐든것은 순서가 있듯이... 우리의 액티비티가 생성되는 순간에도 내부에서는 여러가지 일이 생기고 있죠. 매우 간단한 예제를 통해 알아보겠습니다. 각각의 메서드에서 해당문자를 출력하여 라이프 사이클 시점을 알아 보도록 합니다. 1 2 3 4 08-30 08:09:04.280 8736-8736/com.example.test.mynewapplication I/TAG: ---onCreate--- 08-30 08:09:04.305 8736-8736/com.example.test.mynewapplication I/TAG: ---onStart--- 08-30 08:09:04.329 8736-87.. 더보기
안드로이드 API 26 업그레이드 요구사항 안드로이드 api 업그레이드 요구사항 안녕하세요. 이번에 앱 업데이트를 하던중 요딴걸 발견 했습니다. 무려 구글이 날린 경고 였죠. '2018년 후반부터 API 레벨 대상 지정 요구사항' 뭔소리야 하고 알아봤더니 여러가지로 귀찮은 내용입니다. 심호흡 하시고 후우... *2018년 하반기에 Google Play는 새 앱과 앱 업데이트 시 최신 Android API 레벨을 대상으로 지정하도록 요구할 것입니다. 2018년 8월에 새 앱에 대해, 그리고 2018년 11월에 기존 앱의 업데이트에 대해 이를 요구할 것입니다. 이는 보안 및 성능에 최적화된 최신 API를 기반으로 앱을 빌드하도록 보장하기 위한 것입니다. *Google Play는 2019년 8월에 네이티브 라이브러리를 포함한 새 앱과 앱 업데이트에서 .. 더보기
안드로이드 런타임 퍼미션 깨부수기 안드로이드 지식 공유 런타임 퍼미션 관리하기 안드로이드는 6.0(API 23) 마시멜로우를 기점으로 런타임 퍼미션이 적용되었습니다. 기존에 사용하던 설치시점에서의 권한 부여 방식은 잊으셔야 합니다. 런타임 퍼미션 적용으로 인해 사용자가 직접 권한을 허용/거부할수 있으며 설정으로 들어가면 언제든 허용/거부를 다시 컨트롤 할 수 있습니다. * 주의 : 런타임 퍼미션 적용은 상당히 귀찮고 피곤함을 야기시킵니다. 안드로이드 시스템의 권한의 경우 두가지로 나눠 볼 수 있는데요. 1. normal 2. dangerous 1은 그야말로 권한 설정을 해도 아무 위험이 없는 경우, 2는 개인정보 등의 이유로 위험이 되는경우 입니다. 1의 경우 메니페스트 설정을 통해 나열하면 시스템에 권한이 부여됩니다. 문제는 2 인데요.. 더보기
초보강좌 안드로이드 버튼과 텍스트 출력 안드로이드 초보 강좌 버튼과 텍스트 출력 안녕하세요. 안드로이드 초보 강좌 시간 입니다. 오늘은 개발시 가장 많이 쓰인다고 봐도 무방한 버튼 위젯과 그에 따른 동작을 구현해 보겠습니다. 매우 간단한 예제 이지만 매우 중요한 부분 이므로 한번 만들어 보셔도 좋을 것 같네요. 오늘 알고 가야 할 부분! - 이벤트 발생과 그에 따른 동작을 이해하고 구현한다 - 유저가 버튼을 클릭하는 동작이 이벤트 발생 이고 - 로그를 찍고 토스트를 통해 텍스트를 출력하는 것이 그에따른 동작이다. 우선은 안드로이드 스튜디오를 켜주시고요. 액티비티를 하나 만들어 줍니다. 아래의 스크린샷을 참고 하시죠. (원본보기 클릭) 원하는 이름으로 만들어주시구요. 아. 안드로이드의 경우 카멜... 명명법을 따르고 있으니 참고 하시구요. 그게.. 더보기
자바 메모리 Stack 과 Heap 영역에 대하여 안드로이드 지식 공유 자바 메모리 영역 - stack and heap 그냥 만들어도 만들수 있습니다. 그렇지만 알고 만드는 것과 알고 만드는 것은 많은 차이가 있죠. 개발시 가장 기본이자 기본. 메모리 구조. 정말 중요하지만 쓰다보면 까먹는 게 또 바로 이 메모리 영역에 대한 이해 입니다. 눈에 보이지 않기 때문이죠...ㅠㅠ 자바는 메모리 관리를 따로 해줄수가 없습니다. 순전히 가비지 컬렉션에 의지해서 잘 관리 해주길 바랄 뿐이죠 ^^;;;;;;; 자바 메모리 영역은 여러가지가 있지만 오늘은 크게 두가지로 나누어 알아보겠습니다. 바로 stack과 heap 입니다. 스택은 말 그대로 메모리에 정보를 쌓는 구조로 설계 되어 있죠. 그에 반면 heap에 있는 데이터는 반드시 주소(참조)값이 있어야 원하는 위치.. 더보기
안드로이드 웹뷰 핀치 줌 인 / 아웃 안드로이드 지식 공유 안드로이드 웹뷰 - 줌 인 아웃 적용 안드로이드 개발시 매우 귀찮게 하는 녀석이 있습니다. 바로 웹뷰 인데요. 최근의 앱들은 거의 대부분 하이브리드 형태로 만들어 지고 있습니다. * 여기서 말하는 하이브리드는 네이티브개발영역 + 웹 영역이 결합된 형태 입니다. 이 웹뷰가 여러가지로 귀찮은 녀석입니다. 기존의 브라우저 처럼 잘 동작해주지 않기 때문이죠. 그래도 여러가지 설정을 참고하시면 브라우저 못지 않게 잘 사용하실수 있습니다. 오늘은 핀치 줌인/아웃 입니다. 아이폰의 경우 뷰포트 설정만 해주면 잘 동작하는데요. 우리의 안드로이드는 그런거 없습니다. ^^;;;;; 1. 우선은 웹페이지 상의 소스를 수정해주셔야 합니다. 우선 웹페이지 상에 뷰포트 설정을 해주시구요. maximum 으로.. 더보기