코틀린 4

[Android][Kotlin] 알림 권한(post_notifications) 허용 팝업 띄우기(target SDK 34)

이번 학기의 '모바일 프로그래밍' 강의에서 '공유 캘린더' 앱을 개발하게 되었다. 공유 캘린더란 말 그대로 여러 명의 사용자가 일정을 공유할 수 있는 캘린더이다. 그동안 시간이 없다는 핑계를 대며 개발 과정에 있던 내용들을 정리하지 못했지만 어느정도 시간적 여유가 생긴 지금이나마 관련 내용들을 정리해보고자 한다. 캘린더에 포함되는 여러 기능 중 알림 기능은 내가 아닌 다른 팀원이 담당한 부분이다. 따라서 나는 이 부분에 대해 깊이는 공부하지 않았다. 원래는 알림 기능에는 하나도 손을 대지 않으려 했으나 다른 팀원이 알림 권한을 허용받는 기능만 구현을 해달라 하였기에 구현을 마치고 그 내용을 정리해보려 한다. 구현을 위해 구글링을 진행할 때 구현 결과가 최상단에 있으면 좋겠다 생각했으므로 구현한 결과를 먼..

[Kotlin] :: 조건문(if, if ~ else, if ~ else if ~ else, when)

◎ 조건문 1) if 조건문 if는 다른 프로그래밍 언어에서 많이 접한 것과 동일하다. 형태는 다음과 같다. if (조건식) { 참일 경우에 실행할 부분 } 조건문을 괄호로 감싸야지 오류가 나지 않는 것에만 유의하면 된다. 1-1) if ~ else, if ~ else if ~ else if ~ else 문도 다른 프로그래밍 언어에서와 동일하다. 하나의 조건식에 대해 참과 거짓의 두 경우만을 다룰 때에 사용한다. 형태는 다음과 같다. if (조건식) { 참일 경우에 실행할 부분 } else { 거짓일 경우에 실행할 부분 } 만약 조건식을 여러개 두고자 한다면 if ~ else if ~ else 문을 사용하면 된다. else if의 수에는 제한이 없다. if ~ else if ~ else 문의 형태는 다음..

[Kotlin] :: 데이터 타입(기초 타입, Char, String, Any, Unit, Nothing), 컬렉션 타입(Array, List, Set, Map)

◎ 데이터 타입 1) 기초 타입(Primitive type) - Int, Short, Long, Float, Double, Boolean, Byte 다른 프로그래밍 언어에서 이미 많이 접했을 데이터 타입이다. 정수를 표현하는 Int, Short, Long과 실수를 표현하는 Float, Double과 2진수를 표현하는 Byte과 true, falst를 표현하는 Boolean이 있다. 이 중 Long 타입의 변수에 값을 할당할 때는 값 뒤에 'L'을 붙여주어야 하고 Float 타입의 변수에 값을 할당할 때는 값 뒤에 'F' 또는 'f'를 붙여주어야 한다. 2) 문자, 문자열 - Char, String - Char : 문자 타입 Char 타입은 문자 하나를 표현하는 타입이다. 문자를 작은따옴표(')로 감싸서 ..

[Kotlin] :: 변수(val, var, lateinit, lazy), 함수(반환타입, 매개변수)

◎ 코틀린에서 변수를 선언하는 2가지 방법 - val, var 코틀린에서 변수를 선언하는 방법에는 2가지가 있다. value를 뜻하는 val과 variable을 뜻하는 var이 있다. 1) val val은 한 번 초깃값이 할당되면 추후에 값의 변경이 불가하다. 상수 개념이라고 보면 된다. val로 변수를 선언하고 값의 변경을 시도하면 오류가 발생한다. 2) var var은 val과는 달리 초깃값이 할당된 이후에도 값의 변경이 가능하다. ◎ 변수 타입 지정 및 null 허용 코틀린에서는 변수의 타입을 지정할 수 있다. 변수명 뒤에 콜론(:)을 추가하여 타입을 명시할 수 있고 데이터에 따라 값의 추론이 가능한 경우에는 타입 지정을 생략할 수 있다. - 초깃값 할당 코틀린에서 최상위에 선언한 변수나 클래스의 ..