[Android/Error]java.lang.NumberFormatException: Expected an int but was 106112471000
·
Android/에러 및 이슈 사항
위와 연결하여 로또 당첨번호를 받아오는 도중 다음과 같은 에러를 만났다. 느낌에 106112471000를 포맷화할 수 없어 생긴 오류 같았다. 106112471000는 해당 로또 회차의 총 판매금액이었고, 이걸 나는 Int로 받아오고 있었다. 받아오는 변수 타입을 Long으로 바꿔주면 된다. long 최대값 : 9,223,372,036,854,775,807 int 최대값 : 2,147,483,647
[Android/Gradle]Gradle에서 APK 생성 타입 설정하기
·
Android/Android 기초
Gradle에서 APK 생성 타입 설정하기 회사에서 apk를 추출하는데 자동으로 이름이 생성이 되고, 직접 폴더를 만들어 그 폴더에도 저장이 된다. gradle에 해당 코드가 있었고, 찾아보니 gradle을 통해 설정할 수 있는 기능이었다. 1. apk 생성 시 빌드타입, 날짜, 버전명 자동 기입 build.gradle (:app) android { ... buildTypes { ... applicationVariants.all { variant -> variant.outputs.all { def name = parent.project.getName() def buildType = variant.buildType.name def versionName = variant.versionName outputFi..
[Android/Basic]BaseActivity
·
Android/Android 기초
BaseActivity란? 여러 Activity를 사용할 때 중복되는 코드를 미리 정의하여 필요한 코드만 구현하도록 사용하는 기본 액티비티 T: ViewDataBinding , R: BaseViewModel => 코드의 중복을 줄이고 가독성 강화 AppCompatActivity란? setSupportActionBar(Toolbar) API를 사용하여 action item, navigation mode 등을 포함하는 action bar를 지원 Theme.AppCompat.DayNight 테마를 사용하며 AppCompatDelegate.setDefaultNightMode(int) API를 사용하여 다크 모드를 지원 getDrawerToggleDelegate() API를 사용하여 DrawerLayout과 통합
[Android/Jetpack]ViewModel + Databinding + LiveData
·
Android/Jetpack
구현을 위한 이전글 [프로그래밍]MVVM 패턴 MVVM패턴이란? View - ViewModel - Model View: 사용자에게 보이는 화면 ViewModel: View를 표현하기 위해 만든 View를 위한 Model && View를 나타내주기 위한 데이터 처리 담당 Model: 어플에서 사용되는 데이터 및 anovice-dp.tistory.com [Android/Jetpack]Databinding 사용하기 (1) 기본 세팅 build.gradle (java는 아래 코드만 추가) android { ... dataBinding { enabled = true } ... } build.gradle (kotlin의 경우, 아래 코드도 추가) apply plugin: 'kotlin-kapt' ... depend..
[Android/Jetpack]LiveData
·
Android/Jetpack
LiveData란? 식별 가능한 데이터 홀더 클래스. 스스로 수명주기를 인식함 Data의 변경을 관찰할 수 있는 Data Holder 클래스 UI와 데이터 상태의 일치 보장 메모리 누출이 없음 비정상 종료가 없음 수명주기를 자동으로 관리 최신의 데이터 유지 기기회전 등 프래그먼트나 액티비티가 재생성되어도 데이터의 변화가 없음 ViewModel과 함께해야 효과가 커짐 ViewModel 안에 있는 LiveData 객체를 DataBinding을 통해 UI에서 관찰만 할 수 있도록 만들면 액티비티나 프래그먼트에서 일일히 데이터를 갱신할 필요 없이 알아서 UI에 최신 데이터가 보이게 될 것 Observable과 다르게 LifeCycle을 알고있음 → 활성(active:STARTED/RESUMED)상태일 때만 데이..
뿌꾸 빵
개발새발 안드로그