본문 바로가기
반응형

프로그램112

캠월드 개발일지 2(디자인가이드 적용) 캠월드 멀티모듈에 이어서 본격 개발을 진행하기전 디자인 가이드 적용을 선행해야 할거같다. 전체적인 색상과 텍스트 스타일, 버튼타입, 리스트타입, 카드타입등등 테마와 공통 컴포넌트 작업을 먼저 진행하였다.(아래는 디자인된 가이드)    먼저 색상을 작업 진행하였고 상황, 상태별 색상을 담기위한 DataClass를 생성하였으며, data class ThemeColor( val primary: Color = Color.Unspecified, val primaryHover: Color = Color.Unspecified, val primaryActive : Color = Color.Unspecified,}  Light  Color 와 Dark Color를 각각 정의를 아래와 같이 진행하고 sta.. 2024. 9. 24.
안드로이드 구글로그인 기능 회사에서 카카오와 네이버 의외에 구글로그인 기능도 추가 개발을 요구하여 구글 기능을 붙이게 되면서 글을 쓰게 되었습니다. 구글로그인은 예전에 해보고 간만에 해봐서 조금 구글링을 하여 작업을 진행했습니다. 일단 먼저 해줘야하는 Firebase에 앱 등록이 있는데 그건 넘어가도록 하겠습니다. 등록 후 구글 API에 들어가서 사용할 키를 생성해줘야합니다.(클릭)1. 메뉴 > API 및 서비스 > 사용자 인증 정보 클릭  2. 사용자 인증정보 만들기 > OAuth 클라이언트 ID 선택 3. 웹 어플리케이션을 선택 4. 아래와같이 뭐 별다른거 없이 만들기  5. 웹 어플리케이션 다음 Android  어플리케이션 추가를 히야한다. 다음은 위와 다르게 패키지명과 SHA-1인증서 디지털 지문이 필요하다. 지문을 구하는.. 2024. 9. 19.
[캠월드] 캠월드 개발일지 1(멀티모듈 적용) 와이프와 함께 캠핑을 다닌지 벌써 5개월이 된거 같다. 캠핑을 다니면서 든 생각이 좋은 캠핑장은 미리미리 예약이 꽉차있고 몇일부터 캠핑장 예약제가 열리고  전화로만 예약이 가능하고 등등 무수히 다양한 형식으로 되어있어서 앱을 만들어서 관리하고 그 이상으로 유지해 나가보자 라는 형식으로  술잔을 붙이치면서 얘기를 하게 되었고, 언제 개발하냐 이렇게 얘기가 나오다가 본격적으로 개발을 진행하게 되었다. 각자의 일이 있는만큼 빠르게 개발을 진행하지는 못하겠지만 시간이 나는데로 개발을 진행하게 되었다. 일단 유능한 와이프가 디자인을 뽑아서 나온 디자인의 형태  이렇게 이쁘게 디자인을 뽑아주니깐 열심히 한번 만들어 봐야지 하고 개발을 진행하여 오랜만에 github에 들어가 프로젝트를 뚫고 프로젝트 셋팅을 시작! 신.. 2024. 9. 12.
안드로이드 google-services.json을 여러개 사용하기 회사 서비스 프로젝트를 런칭하고 난 뒤 지속적으로 유지보수를 진행하며, 추가 개발을 진행하여야 해서 프로젝트 관리를 관리하는 부분에 대하여 체크하다가 Firebase에 프로젝트를 추가로 만들어서 google-services.json을 2개를 활용하여 관리하고 싶어졌다. 이유는 사내에서 테스트를 돌려서 발생한 크러쉬 리포트와 릴리즈용 리포트를 별도로 체크를 하는것이며, 각종 수집 데이터 등등 테스트케이스까지 쌓고 싶지가 않아서, 해당부분들을 분리시키기 위해서 작업을 진행하도록 하였다. google-services.json을 2개를 활용하는 방법은 간단하였다. FlavorDimensions을 사용하면 간단하게 할수있다. 1. Firebase에서 프로젝트를 2개 생성(릴리즈용, 개발용) 2. FlavorDim.. 2022. 2. 21.
안드로이드 해시키(Hash Key) 추출 앱 개발을 진행하면서 페이스북, 카카오sdk를 사용하기 위해서는 해시키(Hash key)를 등록해야한다. 해시키(Hash key)는 기본적으로 디버그용과 릴리즈용이 있으므로 배포전 반드시 체크하여 해시키값을 추출하여 등록하여야한다. private fun getHashKey() { var packageInfo: PackageInfo? = null runCatching { packageInfo = packageManager.getPackageInfo(packageName, PackageManager.GET_SIGNATURES) }.onFailure { it.printStackTrace() }.onSuccess { for (signature in packageInfo!!.signatures) { runCatc.. 2022. 2. 17.
BottomSheetBehavior 사용법 및 후기 회사 신규 서비스 프로젝트를 진행하면서 골머리를 앓게 만들었던 BottomSheetBehavior... 기본적으로 사용하는 이런 기능은 BottomSheetDialog와 BottomSheetBehavior가 있다. 회사 프로젝트는 바텀시트에서 지속적으로 스택이 쌓여야 하는 기획이므로 BottomSheetBehavior를 사용할수 밖에 없었다. 기본적으로 BottomSheetBehavior를 사용하는 방법이다. behavior_expandedOffset : 바텀시트를 끌어 올렸을때 Top영역부터의 마진값 behavior_fitToContents : 바텀시트 half를 사용할 것인지 유무 behavior_halfExpandedRatio : 바텀시트 half를 화면에서 몇퍼센트정도의 비율로 할것인지 beha.. 2022. 2. 16.
반응형