본문 바로가기

나의 플랫폼/안드로이드

[Java] Wrapper Class Wrapper Class를 이해하는데 좋은 블로그 내용이 있어서 공유 하고자 합니다. -------------------------------------------------------------------------------------------------------------------------------------------------------------------- 자바는 기본형(primitive type), 참조형(reference type) 으로 나뉘는 것은 모두가 아는 사실.자바를 공부했다 해도 wrapper class가 뭔지 모르는 사람이 은근히?! 있음..그래서 오늘은 참조형(reference type) wrapper class에 대하여 정리를 해볼까 한다. wrapper class.. 더보기
[Java] WeakReference, SoftReferernce, StrongReference 제가 생각 하는 WeakReference, SoftReference, StrongReference에 대해 공유 하고자 합니다. GC가 메모리를 확보하게 위해 쓰레기 취급 하는 동급 형태WeakReference > SoftReference > StrongReferece 1. WeakReference - GC가 언제든지 쓰레기 취급 할 수 있는 Reference : 따라서 메모리 처리에 크게 신경 쓸 필요가 없다. - new WeakReference(new Object()); 형태 2. SoftReference - GC가 메모리가 부족(OutOfMemory 상태 가기 직전) 일 경우, 쓰레기 취급 해버리는 Reference - new SoftReference(new Object()); 형태 3. String.. 더보기
[Firebase] Make sure to call FirebaseApp.initializeApp(Context) first Make sure to call FirebaseApp.initializeApp(Context) first 혹시 빌드가 잘되고 앱 설치까지 했는데, 아래 소스 부분에서 에러 나오시는 분들 참고 해보세요. FirebaseDatabase.getInstance().getReference() 에러 문구만 보면 FirebaseApp.initalizesApp(Context)를 호출하라고 합니다. 하지만 Application 이나 Activity onCreate 함수에 아무리 넣어봐도 에러가 계속 배출 되지요. 그럼 app/build.gradle 맨 하단에 아래와 같이 추가해보세요. apply plugin: 'com.google.gms.google-services' 그럼 문제 없이 동작이 이뤄지는 것을 확인 하실 수 .. 더보기
[Kotlin] unresolved reference databinding Kotlin 기본 설정 : http://gogorchg.tistory.com/entry/Kotlin-Kotlin%EC%9D%84-%EC%82%AC%EC%9A%A9%ED%95%98%EA%B8%B0-%EC%9C%84%ED%95%9C-%EA%B8%B0%EB%B3%B8-%EC%84%A4%EC%A0%95 Kotlin 기본 설정을 한 후, Android DataBinding을 같이 사용하고자 해서 아래와 같이 databinding 을 추가 합니다. android { ... dataBinding { enabled = true } ... } 그리고 빌드하면 문제 없이 잘 빌드가 완료 됩니다. DataBinding 소스도 문제 없이 동작 되구요. 코딩이 깔끔하게 작성이 됩니다. 하지만! Launching App을 할 경.. 더보기
[Kotlin] Kotlin을 사용하기 위한 기본 설정 Kotlin을 android studio에서 사용하기 위해 gradle 기본 설정을 어떻게 해야 하는지 공유 하고자 합니다. 이 설정은 Android Studio에서 Empty Project를 먼저 만든 상태에서 gradle을 설정 하는 부분만 추가한 소스 입니다.참고로 현재 블로그에 올린 소스는 Android Studio 2.2.3. 버전 입니다. 0. Android Studio에서 Kotlin 플러그인 설치 File -> Settings 를 선택 합니다. Plugins -> Install JetBrains plugin... 버튼을 클릭 합니다. Kotlin으로 검색 한 후 Kotlin 을 선택 합니다.Install 버튼을 누르면 설치가 되고Android Studio를 Restart 하면 플러그인 설치.. 더보기
[Android] Shake Event를 위한 참고 Library 핸드폰을 흔들면 먼가 이벤트를 주기 위해 조사를 해 보았습니다. 여러 방법을 알아보고, 테스트를 해본 결과 아래 두 OpenSource가 괜찮은 것 같더라구요. KitKat 하위 버전 : https://github.com/tbouron/ShakeDetector KitKat 상위 버전 : https://github.com/square/seismic 아마 seismic library 만으로 충분히 Shake Event를 이용할 수 있습니다. 하지만 위와 같이 Kitkat 하위 버전에서는 Shake Event가 생각보다 잘 발생을 하지 않더라구요. 그래서 찾는 도중 tbouron library를 이용하니 나름 괜찮게 동작 되더라구요. 혹시 Shake Event를 이용하고자 하시는 분들은 참고 하시면 좋을 듯 .. 더보기
[Kotlin]Databinding OnClick 시 에러 나시는 분 참고 요즈음 MVVM 패턴에 관심이 많아서 계속 사용하고 있는데요. Databinding 시, xml에 정의 이기 때문인지 에러 확인이 어렵더라구요. Error:java.lang.RuntimeException: Found data binding errors. 위와 같이 딸랑 에러 메세지 하나 나오고 세세한 내용을 확인하기가 어려웠습니다. 에러가 나온 원인은 아래 소스를 보시면 되는데요. ## layout.xml ## ViewModel.ktfun onClick(v: TextView?) { Log.d("Test","Clicked") } 위 소스 같이 하면 발생 됩니다. 에러가 떠서 빌드 진행이 되지가 않죠... 무엇이 문제 일까요.? 전 .TextView이기 때문에 TextView를 그대로 받을려고 했더니 Dat.. 더보기
[Kotlin] Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter intent Parameter specified as non-null is null: method kotlin.jvm.internal.Intrinsics.checkParameterIsNotNull, parameter intent 혹시 Kotlin을 쓰시다가 위와 같은 에러를 보신적 있으신가요?? 내용을 보면 Parameter 중에 Notnull 인데 null이 넘어 온다는 의미 네요.그리고 그 Parameter는 intent 라는 이야기 입니다. 에러가 발생한 부분은 Service 에서 아래 함수 때문이네요.override fun onStartCommand(intent: Intent, flags: Int, startId: Int): Int { return super.onStartCommand(intent, flags.. 더보기