목록안드로이드 (21)
NOW OR NEVER

개요 하는 이유 : 카카오 지도 API Key를 숨기기 위해 목표 : local.properties의 값을 manifest에 할당하기 및 BuildConfig 파일에 저장하기 방법 0. local.properties에 사용하고자 하는 값 저장하기 manifestPlaceholder를 통해 manifest에서 사용 할 API Key라면 !!!절대!!! 따옴표 붙여서 작성하지 마세요 : 따옴표로 넣어서 저장하면 api와 통신할때 따옴표도 같이 들어가기 때문에 Autentication 오류가 납니다. 1. 앱 수준 build.gradle 파일에서 local.properties 파일을 Properties 객체로 만들어 값 가져오는 코드 작성 // local.properties 파일을 Properties 객체로 ..
Time Picker 목표 : 5분 단위로 interval 설정 첫 번째 시도 방법 (실패) xml 파일 자체에서 android:minuteInterval 속성으로 5 설정 안드로이드 12부터 구현이 가능한 속성이라 실패하나 싶어 앱 수준 그래들 파일에서 targetSdkVersion을 31 이상으로 설정해봤는 데 안됐다. -> 코틀린 코드로 직접 구현해야겠다는 생각이 들었다,,, 두 번째 시도 방법(성공) 5분 단위 배열 생성해서 분 선택 spinner에 적용시키기 padStart(문자열 길이, 늘어난 길이만큼 추가할 문자열) -> 예를 들어 값이 3인 문자열을 padStart(2,'0') 한다면 03으로 반환 fragmentMakeScheduleBinding.run { makeScheduleTimeP..

- File - Local History - Show History 순으로 들어가면 파일 변경 이력을 시간 별로 볼 수 있다 - 코드 계속 고치다가 오류가 나서 뒤로 가야 할 순간이 왔었는 데 깃에도 안올린 상태여서 너무 필요했었다,,, 아무리 귀찮아도 깃에 올리는 것을 생활화 하자

JUnit 자바에서의 단위테스트를 위한 프레임워크 https://developer.android.com/training/testing/unit-testing/local-unit-tests?hl=ko 순서 1. app 수준 gradle에 해당 구문 depencies 블럭 안에 추가 testImplementation 'junit:junit:4.13.2' 2. 보는 기준을 Tests로 설정한 다음 src/test/java에 테스트 클래스 추가 3. 테스트 클래스에 테스트 할 메서드 작성 어노테이션 @Test: 테스트 메서드를 정의할 때 사용하는 어노테이션 @Before: 테스트 메서드 실행 전에 실행할 코드를 포함하는 메서드에 지정되는 애너테이션입니다. 초기화 작업에 사용 @After: 테스트 메서드 실행 후..

tools:context 제거 바꿔주니 빨간 줄도 안뜬다 구글링 하면서 참고하면서 똑같이 따라해보고 내 코드에 맞게 적용하는 과정 속에서 발생했다. 찾아본 결과 tools 는 레이아웃 에디터에서 레이아웃 디자인을 미리 볼 때 사용되는 것이므로. 실제 앱을 실행할 때는 사용되지 않으니 삭제하거나 수정해도 무방하다.

갑자기 프로젝트 중 main activity가 인식이 안돼서 찾아본 방법 앱 설정에서 해당 프로젝트 앱 삭제하기 Manifest 내 작동되지 않는 activity 태그 속성 android:name =“패키지명.MainActivity”로 설정하기 앱 수준 그래들에서 applicationId 확인하기 ‘package 패키지명’ 을 인식 안되는 activity 코드 파일 맨 위에 작성하기 내 경우는 마지막 방법으로 해결되었다. Import 구문 수정하다가 모르고 삭제해버린 것 같다. 해당 방법들 중 하나씩 선택해서 해보는 것을 추천한다. 이제 빨간 줄도 안뜬다!
Image view에 등록된 사진이 안보이는 현상 해결 안보이는 현상이 발생한 코드 해결 방법 : tools:src="@drawable/sample_img" 이부분을 android:src="@drawable/sample_img" 이렇게 변경

sqliteBrowser로 DB 파일 생성 안드로이드 프로젝트에서 Assets 폴더 생성 : File - new -Folder - Assets folder assets 내 폴더에 DB파일 넣기 SQLiteOpenHelper class 활용해서 assets 내 폴더에 있는 DB를 data/data/패키지이름/databases 폴더로 복붙하는 코드 작성 import android.content.Context import android.database.sqlite.SQLiteDatabase import android.database.sqlite.SQLiteOpenHelper import android.util.Log import java.io.File import java.io.FileOutputStream ..

Material 3 Design https://m3.material.io/ Material Design Build beautiful, usable products faster. Material Design is an adaptable system—backed by open-source code—that helps teams build high quality digital experiences. m3.material.io 현재 기준으로 jetpack 사용하는 경우 material3가 적용이 안될 수 있어 material2 권장 현재 기준 공식 버전 : 1.9.0 뭐하고 같이 쓸 때는 무조건 material tool bar로 배치 적용 방법 build.gradle(app) 에서 com.google.andro..
문제 1 . 안드로이드 4대 컴포넌트는 [액티비티, 서비스 ,브로드 캐스트 리시버, 프래그먼트]로 구성되어있다. ( X ) - 안드로이드 4대 컴포넌트는 액티비티(Activity), 서비스(Service), 브로드 캐스터(BroadCast Receiver), 콘텐츠 제공자(Content Provider) 문제 2. 안드로이드 12버전 이후로 스플래시 화면은 Activity로 구현하는 것을 권장한다.( X ) - 두 개의 화면이 뜨게 되서 권장하지 않는다,,,? 문제 3. 내부 저장소를 사용할 때는 FileInputStream, FileOutputStream을 사용하고, 외부 저장소를 사용할 때는 openFileOutput, openFileInput을 사용한다.( X ) - 내부 저장소를 사용할 때는 op..