목록안드로이드 (7)
라떼는말이야
지난 달 네이버 부스트캠프 7기 챌린지에 어렵게 합격한 이후 굉장히 바쁜 한 달을 보냈다. 그리고 어제 최종 합격을 통보받게 되어서 짧은 후기를 작성하려고 한다. 사실 저번에 작성했던 부스트캠프 7기 챌린지 합격 후기 글에 멤버십 결과가 발표된 어제부터 검색 유입이 들어오기 시작해서 조회수 쪽쪽하려고 챌린지 후기도 남기려고 급하게 작성한다 ㅋㅋ (이전 글이 궁금하다면 -> 2022.07.15 - 부스트캠프 - 6기 탈락부터 7기 합격까지) 위 내용은 부스트캠프 홈페이지에서 가져온 내용이다 (공식적으로 공개된 내용이니 사용해도 되겠지...?) 개인 미션을 수행하면서 7시까지 제출하는 것이 원칙이었고, 7시까지 해결하지 못했다면 계속해서 미션을 수행할 수 있었다. 아니, 그런 날이 대부분이었다. (챌린지 기..
여러 명이 관여하는 프로젝트를 수월하게 진행하기 위해서는 적절한 협업 도구 활용이 필수로 필요하다. 특히 코딩을 하는 프로젝트의 경우 Github 이 없어서는 안된다. (2016년도에 프로젝트를 할 때는 Github을 쓰지 않아서 프로젝트 전체를 압축해서 주고 받았는데 최종.zip 최최종.zip 진짜최종.zip 제출용.zip 최종제출용.zip ... 이런 식으로 되어버려서..ㅋㅋ 끔찍했던 기억이 난다) 팀에 합류하기 전 팀원들은 아직 실질적인 코딩은 시작하지 않은 상태였고, 회의를 한 내용은 Google Docs에 기록해 회의록 링크를 카카오톡 공지로 공유하고 있었다. (Github은 사용하기로 되어있던 상태) 이전에 내가 프로젝트를 할 뻔(?) 한 적이 있는데 당시에 알아보고 살짝 사용해 봤던 협업 도..
프로젝트 시작 계기 약 한 달 전에 우연한 계기로 개발 동아리에 가입하게 되었고, 운 좋게도 막 시작하려던 프로젝트 팀원들을 만나 개발 멤버로 합류하게 되었다. 팀원 중 한 분이 수원대 시간표 앱인 수원대타임(일명 수타) 앱을 개발해 배포하고 있었고, 이번 프로젝트는 시간표 기능만 있던 이 앱에 로그인 및 강의 평가 기능을 추가하는 프로젝트이다. 기존의 수타 앱은 안드로이드 앱으로만 개발되었지만 이번 프로젝트를 통해 ios앱을 클론 코딩하고, 강의 평가 파트는 웹 부분도 제작하기로 했다. 그래서 현재 안드로이드, ios, 프론트엔드, 백엔드 이렇게 4개 파트로 구분되었다. 사용할 언어 및 환경 사용할 기술은 내가 프로젝트에 합류하기 직전 결정된 사항들이었다. 안드로이드 - Android Studio, K..
시작하기 전에... 로그를 남기는 방법이나 액티비티의 생명 주기에 관해서 아래의 링크에서 상세히 다뤘었다. 아직 액티비티의 생명 주기에 익숙하지 않다면 먼저 공부를 하고 오는 것을 추천한다. 프래그먼트의 생명 주기는 액티비티의 생명 주기와 비슷한 면이 많이 때문이다. 2021.12.09 - [Android] 실습으로 알아보는 액티비티 생명주기 : Android activity lifecycle [Android] 실습으로 알아보는 액티비티 생명주기 : Android activity lifecycle 시작하기 전에... 본 포스트에서 사용한 코드와 코드랩은 밑의 링크에서 다운 받아 사용할 수 있습니다. 단일 액티비티(MainActivity.kt)로 구성되어 있는 앱입니다. 직접 따라하며 익혀도 되고 빠르 l..
시작하기 전에... 본 포스트에서 사용한 코드와 코드랩은 밑의 링크에서 다운 받아 사용할 수 있습니다. 단일 액티비티(MainActivity.kt)로 구성되어 있는 앱입니다. 직접 따라하며 익혀도 되고 빠르게 개념만 익혀가도 좋습니다 😎👍 앞 부분은 로그를 남기는 방법에 대한 설명이니 생명 주기에 대한 내용을 바로 보시려면 초록색으로 "액티비티 라이프 사이클" 라고 적힌 부분까지 쭉 내려가면 됩니다! 안드로이드 앱 GitHub - google-developer-training/android-kotlin-fundamentals-starter-apps: android-kotlin-fundamentals-starter-apps android-kotlin-fundamentals-starter-apps. Cont..
fun createNotificationChannel(context: Context) { try { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { val notificationManager = context.getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager val notificationChannel = NotificationChannel( NOTIFICATION_CHANNEL_ID, "수업시작 알림", NotificationManager.IMPORTANCE_HIGH ) notificationChannel.description = "수업 시작 전 알림을 띄웁니다." notificat..
개요 일반적인 디자인에서 marginLeft와 marginStart는 동일한 효과를 가진다. 마찬가지로 marginRight와 marginEnd는 동일한 효과를 가진다. 하지만 margin을 주고자 하는 컴포넌트가 textView나 editText와 같은 문자와 관련된 컴포넌트라면 이야기가 달라진다. 언어별 특성 차이로 인해 발생하는 불편을 최소화하기 위해 Left대신 Start, Right 대신 End를 사용해야 한다. 언어별 특징 대부분의 문자는 왼쪽에서 오른쪽으로 쓰고, 읽는다. 이를 LTR언어 라고 칭한다. 하지만 일부 언어(아랍어, 히브리어, 페르시아어, 우르두어 등)는 오른쪽 -> 왼쪽으로 쓰고, 읽는다. . 이를 RTL언어 라고 칭한다. 그림을 보면 이해가 갈 것이다. 영어와 같은 LTR언어..