목록Develop/Android (190)
woong's
Kotlin Extensions 사용하기 kotlin을 학습하면서 좀더 Kotlin 답게 사용해보려고 노력해보고 있습니다. 기존의 자바에서 FindViewById 로 Xml 을 View 객체로 생성해서 사용 하고 있습니다.복잡한 경우 전역 변수의 View 들과 FindViewById 를 통해서 생성한 코드들이 생각보다 많은 경우들이 있습니다.이런 반복적이고 비생산적인 코드를 Kotlin Extensions 를 사용 하면 편하게 돌아갈수 있습니다. Kotlin Extensions 준비 준비과정은 정말 간단합니다. kotlin-android-extensions 플러그인을 추가합니다. Kotlin Extensions 사용방법 기존에 findViewById 로 생성했던 코드를 삭제하고 바로 사용하면 Import..
Kotlin 으로 RecyclerView 만들어 보기 이번 포스트에서는 Kotlin 으로 RecyclerView 를 만들어 보려 합니다. :D Android 나 IOS 의 시작은 항상 ListView , TableView 로 시작을!! 화면에 RecyclerView 를 보여주기 위해서는 첫번째로 화면에 보여줄데이터가필요합니다. VO 를 만들고 List 에 데이터를 먼저 생성해 보겠습니다. 1234class MusicVO(title:String) { var title: String = title}cs 간단하게 음악 타이틀을 가지고 있는 VO 를 생성 했습니다. Kotlin 에서는Class 를 생성하면서 바로 생성자를 만들수 있어서 title 을 받는 VO를 만들어 보았습니다.또한 Kotlin의 VO 는 G..
Kotlin 기본 문법 공부하기 Kotlin 사용하기 위한 준비 작업하기 를 통해서 환경 및 준비 작업 을 해보았습니다. 이번에는 간단한 문법, 많이 쓰이는 문법을 익혀 보도록 하려 합니다. 1. 변수 선언변수 선언에서는 val , var 의 키워드를 사용합니다. val 읽기전용 상수를 의미1234val a: Int = 1val b = 1 // `Int` 타입 추론valc:Int //값을할당하지않을경우타입필요c = 1 // 확정(definite) 할당cs var 는 변경 가능한 변수 12var x = 5 // `Int` 타입 추론 x += 1cs 2. 함수 정의함수 정의 한때는 키워드는 fun 파라미터가 앞에 존재 하고 타입이 뒤에 있습니다.리턴 타입의 정의는 : 기호를 사용해서 하고 있습니다.리턴 값이..
Kotlin 사용하기 위한 준비 작업 하기 안녕하세요. 이번에 Android 에서 kotlin을 공식언어로 발표를 해서 뒤늦게 Kotlin을 공부해보려 합니다. 아직 생소해서 잘 모르지만 하나씩 준비해보려 합니다.Kotlin 을 사용하기 위해서 Android Studio에서 Plugin 설치가 필요 합니다.이번 포스트에서는 준비 과정 및 설정에 대해서 작성해 보도록 하겠습니다. 준비과정Android Studio Preferences 창을 활성화 < Plugins < Browse repositories 선택Kotlin 검색 < 선택후 < Install
Proguard 사용하지 않았을시 문제점 - 프로젝트 코드가 난독화가 되지 않아 디버그 시 코드 노출이 우려 - 불필요한 코드가 앱 컴파일시 포함 되어 불필요하게 앱의 용량(비용) 이 증가 - 불필요한 코드가 컴파일 포함 되기 때문에 개발시 메서드 65536 개 초과로 멀티덱스 사용을 피할수 없음 장점 - 프로젝트 코드 난독화 (디컴파일시 난독화가 되어 코드를 읽기가 어려움) - 프로젝트에서 사용하지 않는 메서드 제거 - 불필요한 메서드 제거로 인해 멀티덱스 사용하지 않을수 있음 proguard를 사용하면서 불편점 - 난독화가 진행 되어 프로젝트 클래스 이름 , 라인 넘버가 제거 되어 디버그가 어려움 - 다른 라이브러리가 추가시 난독화시 warning 이 발생 proguard 불편점 해결방법- 난독화가 ..
Android ButterKnife 사용하기 프로젝트를 진행하면서 findViewById , 데이터 바인딩등 반복 작업을 아무생각없이 계속 반복해서 작업하고 있었다. 이전부터 ButterKnife 를 알고 있었지만, 도입해보지 않았지만 이번 프로젝트부터사용해 보려 합니다. 사용하면서 장단점을 비교해보고 장점이 큰경우 프로젝트 진행시에 도입해보려 합니다. http://jakewharton.github.io/butterknife/ 1. 준비 과정 12compile 'com.jakewharton:butterknife:8.5.1'annotationProcessor 'com.jakewharton:butterknife-compiler:8.5.1'cs android Build.gradle 에 라이브러리를 추가합니다...
Android Trasitions API 사용하기 Android Animation 을 좀더 쉽게 사용할수 있는 Trasitions API 가 있어서 정리해 보려 합니다. 앱구성시 자주 쓰일것 같은 애니메이션만 예제로 작성해 보려 합니다. Transitions API 구글은 액티비티간 화면 전환을 위해 Android 5.0부터 이 API를 제공 좋은 소식은 더 아래 버전에서도 사용할 수 있다는 점. Transitions Everywhere는 안드로이드 Transition API의 백포트입니다.(안드로이드 4.0이상 애니메이션 백포트 지원, 안드로이드 2.2이상 API호환가능) 123dependencies { compile "com.andkulikov:transitionseverywhere:1.6.5"}Co..
Android 국가별 폴더 분기 Language familyLanguage nameNative name639‑1639‑2/T639‑2/B639‑3639‑6NotesNorthwest CaucasianAbkhazаҧсуа бызшәа, аҧсшәаababkabkabkabksAfro-AsiaticAfarAfarafaaaaraaraaraarsIndo-EuropeanAfrikaansAfrikaansafafrafrafrafrsNiger–CongoAkanAkanakakaakaaka + 2macrolanguage, Twi is [tw/twi], Fanti is [fat]Indo-EuropeanAlbanianShqipsqsqialbsqi + 4macrolanguage, "Albanian Phylozone" in 639-..
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384public class MyApplication extends Application { // ... @Override public void onCreate() { super.onCreate(); registerActivityLifecycleCallbacks(new Application.ActivityLifecycleCallbacks() { // ... @Override public void onActivityResumed(A..
Android Zxing 사용하기 안녕하세요. 이번에 QR 리더기를 만들어 볼 기회가 있어 포스트를 작성을 통해 정리해 보려 합니다. 이전에 도서 관리 어플을 만들면서 Zxing 을 사용했었는데 .. 그때는 패키지를 몽땅 가져다가 사용해서 에러도많이 나타나고 커스텀을 해서 사용해서 많이 번거로웠던 기억이 있습니다. 그때 이후로 시간이 2년이상 지나고버전이 업그레이드되어서 쉽게 접근하는 방법을 찾아보니 역시 있어서 간단하게 정리해 보려 합니다. Android Zxing 참고 홈페이지 1.준비과정 build.gradle dependencies 를 추가 12compile 'com.journeyapps:zxing-android-embedded:3.2.0@aar'compile 'com.google.zxing:co..