안드로이드 13

Gradle Version Downgrade

안드로이드 멀티 모듈 프로그래밍을 하다가 얘기치 못한 문제를 마주하게 되어 gradle version을 downgrade하기로 결정했다. (6.0 에서 5.6.4로 다운그레이드) 1. File -> Project Structure -> Project 탭에서 Gradle Version을 원하는 버전으로 변경한다. 2. root 디렉터리의 gradle-wrapper.properties의 distributionUrl이 선택한 버전으로 변경되고, sync 할 수 있는 상태표시바가 노출된다. 3. Sync를 누른다. 여기까지가 가장 기본적인 단계이다. 하지만, 안드로이드는 Gradle Plugin과 Gradle Version을 매칭시켜줘야 하기 때문에 매칭이되지 않을 경우 android minimum suppor..

안드로이드 2020.07.10

안드로이드 키보드 Show/Hide 확인하기

안드로이드의 키보드가 현재 보여지고 있는지의 여부에 따른 개발이 필요할 때가 있다.자바로 된 내용은 종종 보이는데 코틀린이 안보여서.. (사실 바로 컨버팅 하면 되지만 귀찮으니..)글을 작성해본다. 방법은 어렵지 않다. 키보드가 올라올 뷰에 위와 같이 이벤트를 달면 된다.디스플레이의 크기와 현재 보여지는 화면의 크기로 비교하여 계산하는 방식이다.

안드로이드 2019.01.27

Flutter 시작하기 for Window

윈도우 설치도 크게 어려울게 없더라.. 1. 초기 필요 환경 설정하기(Windows PowerShell 5.0 or git) 필요.파워쉘보다 깃이 설치가 더 편하니 깃을 설치하도록 한다. 링크 2. Flutter SDK 설치Flutter 공식 홈페이지에 올라와 있는 SDK를 설치한다. 링크 3. 압축 해제설치한 경로로 이동하여 합축을 해제한다. (이 때 주의할 점은 압축 해제한 파일의 경로에는 한글이 있으면 안된다.) 4. 환경 변수 설정윈도우즈키 + R로 실행창을 열고sysdm.cpl 입력 후 확인고급 탭으로 이동하여 하단에 환경변수 클릭사용자 변수에 Path를 더블클릭 하여 설치한 Flutte의 경로를 등록한다.(설치 경로\flutter\bin) 5. Flutter 실행설치된 Flutter 경로로 가..

안드로이드 2018.11.10

Flutter 시작하기 for Mac

구글에서 열심히 밀고 있는 (개인적인 생각..) Flutter를 다뤄보기로 했다.Android와 iOS를 하나의 프레임워크로 만들 수 있다는 점에서 기존 네이티브 앱 보다 좋은 이점을 가지고는 있으나..역시 새로운 언어를 배우는 것은... 흥미롭다 (응?) Flutter은 공식 홈페이지를 제외하고는 아직 자료가 그렇게 풍부하지 않은 것 같다. (이것 또한 개인 생각..)우선은 설치부터 알아보기로.. 이 글의 설치 기준은.. Mac OS윈도우는 열심히 공식 홈페이지를... 1. Flutter SDK 설치하기Flutter 공식 홈페이지에서 제공하는 SDK를 설치한다. (https://flutter.io/setup-macos/)2. 압축된 파일을 받아왔기 때문에 압축을 해제한다.(설치 한 폴더에서 해도 좋고,..

안드로이드 2018.10.20

MVC vs MVP vs MVVM 용어 정리

MVC (Model View Controller) Model데이터를 의미한다.데이터를 관리/수정/수집 등을 하게 되는 부분이다. ViewUI를 그리는 곳이다. 화장자 .xml이나 안드로이드의 layout등이 이곳에 속한다. ControllerView와 Model을 연결해주는 역할이다.안드로이드에서는 Activity, Fragment등이 이 역할을 수행하며, V와 C의 역할 구분이 모호하여 안드로이드에서는 사용이 쉽지 않다.최근에는 xml을 강화하여 MVC를 사용하기 쉽게 만들어지고 있다. MVP (Model View Presenter) ModelMVC와 마찬가지로 데이터를 의미한다. ViewPresenter에서 전달받은 View의 이벤트를 처리한다. PresenterView에서 전달된 이벤트에 대한 처리..

안드로이드 2017.12.31

안드로이드 네이버 지도 사용하기 (Fragment)

네이버 지도 API를 사용 해보면 알겠지만.. 엄청나게 불편하다. Fragment에서 사용하는 방법을 위해 엄청난 노가다 끝에 만드는데 성공했다. 1. 라이브러리 추가하기https://github.com/navermaps/maps.android가장 최신 버전의 라이브러리를 app단 build.gradle에 추가한다. (현재 최신)dependencies { compile 'com.naver.maps.open:naver-map-api:2.1.2@aar'} 2. 필요한 클래스 파일을 만든다. - https://github.com/navermaps/maps.android/blob/master/app/src/main/java/com/nhn/android/mapviewer/NMapFragment.java - htt..

안드로이드 2017.12.26

안드로이드 리사이클러 뷰 그리드 레이아웃 아이템 세로 동적 비율

이미지를 가져오다 보니 모든 디스플레이에서 균등한 비율로 작업해야 할 일이 생겨버렸다. 단순 글라이드 라이브러리를 사용하여 wrap_content로 할 경우 재사용 뷰의 특성 때문에 스크롤 시 이미지의 사이즈를 0으로 두기에 다시 불러오면서 스크롤의 부자연스러움이 생긴다. 해결 방법으로 동적 사이즈를 자바 코드로 하여금 만들었다. [ 해결방법 ] 1. 아이템의 레이아웃은 부모 레이아웃을 제외하고는 모두 match_parent로 바꾼다. (필요 시 가로만, 혹은 세로만 바꾼다.) 2. 리사이클러뷰의 adapter로 들어가 onBindViewHolder에 다음과 같은 라인을 작성한다. DisplayMetrics displayMetrics = new DisplayMetrics();((Activity) hold..

안드로이드 2017.12.23

다음 지도 api 갤럭시 s8 .so 파일 찾을 수 없는 오류 해결 방법

다른 핸드폰 잘 되는데 사용하고 있는 갤8+에서 so 파일 못찾는다고 터진다. E/net.daum.mf.map.n.api.NativeMapLibraryLoader: Can`t load DaumMapEngineApi.so file 구글링을 통해 해볼 수 있는 방법을 다 해보다가 겨우 발견.. 엄청난 삽질.... 우선.. 아마 이 글을 보기 전 jniLibs 폴더와 so 파일을 main에 잘 넣었는지 확인하자. https://m.blog.naver.com/PostView.nhn?blogId=mingjn&logNo=221014259167&proxyReferer=&proxyReferer=https%3A%2F%2Fwww.google.co.kr%2F 진짜 이 분은 구원자다. 덕분에 해결.. [ 해결 방법 ] app..

안드로이드 2017.12.21