개발을 하다보면 규모도 커지고 라이브러리 사용량도 많아지게 되는데 어느순간 하단과 같은 빌드 오류를 만날 수 있다. 이번 포스팅에서는 Multidex 에 대해 알아보자. Cannot fit requested classes in a single dex file (# methods: 67827 > 65536) cs Multidex ? Android 는 JVM(Java Virtual Machine) 기반의 DVM(Dalvik Virtual Machine) 에서 application 이 동작한다. ◼ Android 5.0 이상부터는 DVM -> ART 로 변경 (Dex 처리 방식 변경) DVM or ART 위에서 동작하기 위해 Android code 는 하단 이미지와 같이 dex 라는 파일로 컴파일 된다. De..
이번 포스팅에서는 Android display 단위에 대해 알아보자. px (pixel) 화면에 표시되는 점 하나의 단위 ◼ 안드로이드 내부적으로는 모든 단위를 px 로 변환하여 사용한다. 하지만, 다양한 디바이스의 해상도를 고려하지 않고 pixel 을 사용한다면 각 화면에 맞춰 다르게 나올 것이다. 따라서, 개발자들은 pixel 사용을 배제해야 한다. (가급적 하단에서 설명할 dp 를 사용하자) 각 다른 해상도의 단말에 px 단위를 사용한 경우 ◼ dip = pixel / (density/160) Density or dpi (Dots Per Inch) 1 인치당 pixel 의 수 ◼ Android 에서는 160 dpi(mdpi) 를 기본으로 한다. dp or dip (density-independent..
이번 포스팅에서는 Java collection 에 대해 알아보자. Java Collection Framework (JCF) Java 에서 collection 이란 데이터의 집합, 그룹을 의미한다. JCF 는 이러한 데이터, 자료구조인 collection 과 이를 구현하는 class 를 정의하는 interface 를 제공한다. Collection ◼ ArrayList Arraylist 는 List 인터페이스를 구현하며 Array 데이터 구조를 기반으로 한다. (배열이면서 List 성격을 가짐) 데이터의 저장순서가 유지되고 null 을 포함한 중복도 허용한다. 단방향 포인터 구조로 데이터의 순차적 접근에는 용이하나 용량을 변경할 경우 효율이 떨어진다. ◼ Vector ArrayList 와 거의 같지만 동기화..
지난 포스팅에서는 Google Drive 연동을 위한 설정에 대해 다뤘다. 이번에는 실제 샘플을 이용해서 Google Drive 연동이 정상 동작 하는지 확인해보자. [Android] - Google Drive REST API v3 for Android (1) Google sample project ◼ Github 주소 https://github.com/gsuitedevs/android-samples/tree/master/drive/deprecation ◼ Menifest 하단 package 명과 OAuth 클라이언트 ID 의 패키지 이름과 일치해야 한다. (참고로, sample project 에는 gradle 의 applicationId 를 사용하지 않아 menifest 의 package 를 참조한다...
이번 포스팅에서는 SHA1 key 를 쉽게 알아내는 방법에 대해 쓰려한다. Google drive API 를 연동하는 과정에서 SHA1 key 를 넣으라고 하는데 다소 귀찮았던 기억이 있다. 하지만, 알고보니 너무나 쉬운 방법이 있다. Google guide 하단과 같이 google guide 에서는 keytool command 를 이용하라고 안내하고 있다. Authorizing Android Apps | Drive API for Android (Deprecated) The Keytool prints the fingerprint to the shell. For example: $ keytool -exportcert -alias androiddebugkey -keystore ~/.android/debug...
이번 포스팅에서는 REST API 에 대해 쓰려한다. 사실 Google drive API 를 연동하는 블로그를 쓰다가 곁다리로 추가하는 거라 상세히 다루지는 않겠다. Rest API? Representational State Transfer API 의 약자. HTTP URI 를 통해 자원을 명시하고, HTTP method(post, get, put, delete) 를 통해 CRUD(create, read, update, delete) 를 처리하는 방식이다. POST 자원 생성(Create) GET 자원 조회(Read) PUT 자원 수정(Update) DELETE 자원 삭제(Delete) Rest API 구성요소 ◼ Resource - 모든 자원은 서버에 존재하고 각 자원은 고유 ID 가 존재한다. - 자..
이번 포스팅에서는 구글 드라이브를 안드로이드에 연동하는 방법을 알아보자. 현재 최신인 Google Drive REST API v3 을 이용한다. REST API v3 기존 Google Play services SDK 를 통해 접근 했던 Google Drive Android API 가 deprecated 되고, 2019 년 12 월 6 일에는 연결이 불가능해진다. ◼ 하단은 Google Drive Android API 에 대한 deprecation 안내다. (https://developers.google.com/drive/android/deprecation) ◼ Rest API v3 (https://developers.google.com/drive/api/v3/about-sdk) ◼ Rest API v2 ..
RelativeLayout 은 하단과 같이 view 들을 서로 간의 상대적 위치에 따라 배치 한다. How to ◼ RelativeLayout in XML RelativeLayout.LayoutParams View group 이 view 를 배치할 때 따르는 규칙이다. ◼ ViewGroup.LayoutParams View 의 크기를 설정한다. - layout_width : view 너비 - layout_height : view 높이 ◼ ViewGroup.MarginLayoutParams View 주변의 여백을 설정한다. XML 속성 의미 상세 그림 layout_margin 해당 view 의 상, 하, 좌, 우 여백 설정 layout_marginLeft 해당 view 의 좌측 여백 설정 layout_mar..
LinearLayout 은 하단과 같이 view 를 수평 혹은 수직으로 배치한다. How to ◼ LinearLayout in XML LinearLayout.LayoutParams View group 이 view 를 배치할 때 따르는 규칙이다. ◼ ViewGroup.LayoutParams View 의 크기를 설정한다. - layout_width : view 너비 - layout_height : view 높이 ◼ ViewGroup.MarginLayoutParams View 주변의 여백을 설정한다. XML 속성 의미 상세 그림 layout_margin 해당 view 의 상, 하, 좌, 우 여백 설정 layout_marginLeft 해당 view 의 좌측 여백 설정 layout_marginTop 해당 view..
FrameLayout 은 하단과 같이 부모뷰 영역내 gravity 를 이용하여 view 를 배치한다. 또한, view 를 겹쳐서 배치할 수 있는 view group 이다. How to ◼ FrameLayout in XML FrameLayout.LayoutParams View group 이 view 를 배치할 때 따르는 규칙이다. ◼ ViewGroup.LayoutParams View 의 크기을 설정한다. - layout_width : view 너비 - layout_height : view 높이 ◼ ViewGroup.MarginLayoutParams View 주변의 여백을 설정한다. XML 속성 의미 상세 그림 layout_margin 해당 view 의 상, 하, 좌, 우 여백 설정 layout_margin..
- Total
- Today
- Yesterday
- android flag activity
- onContextItemSelected
- 앱테크 추천
- android intent
- Android Service
- 리워드앱
- M2E
- onCreateContextMenu
- BroadcastReceiver
- task 생성
- notifyDataSetChanged
- 채굴앱
- p2e
- 안드로이드 서비스
- 무료채굴
- RoomDatabase
- 앱테크
- StringUtils
- StartService
- 리워드 어플
- mPANDO
- task
- android activity flag
- WEMIX
- Intent
- 안드로이드 인텐트
- bindservice
- 무료 채굴
- android task
- registerForContextMenu
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |