코틀린/코틀린 문법

Git Book 문법 [안드로이드 스튜디오와 앱]

정혜현 2024. 5. 28. 12:56

 

용어정리

더보기
더보기
  • SDK Software Development Kit : 소프트웨어 개발도구 모음 
  • dp Device independence Pixel : 다양한 화면 크기에서 동일한 비율로 출력되도록 하는 픽셀 단위
  • View 뷰 : 레이아웃처럼 사용자에게 보이는 것들을 통칭

 

안드로이드 스튜디오 Android studio

 

 

SDK

안드로이드 스튜디오는 편집을 편하게 해주는 도구일 뿐, 실제 개발환경은 모두 SDK에 있고 이 SDK에서 최종 설치파일을 만들어준다. SDK Platforms에서는 플랫폼 버전별로 확인 가능하고 SDK Tools의 주요 설명은 아래와 같다.

  • Android SDK Build-Tools : 리소스 아이디를 가지고 있는 R 파일을 생성하고 설치 파일인 APK 파일을 최적화 하는 도구. 자바 바이트코드(Java Bytecode)를 달빅 바이트코드(Dalvik Bytecode)로 변환하는 도구도 포함.

  • Android Emulator : 가상의 스마트폰 환경으로 앱을 설치하고 테스트 가능.

  • Android SDK Platform-Tools : 에뮬레이터와 스마트폰에 연결하기 위한 ADB(Android Debug Bridge)와 성능 분석 도구인 Systrace가 제공.

  • Intel x86 Emulator Accelerator(HAXM installer) : 에뮬레이터의 처리 속도를 빠르게 해주는 하드웨어 가속기. 설치되어 있지 않으면 에뮬레이터를 사용할 수 없을 정도로 느려질 수 있다.

 

프로젝트 Project

소스 코드, 리소스(이미지, 음악, 텍스트 파일 등)를 체계적으로 관리하는 최상위 디렉터리. 안드로이드 앱을 만들기 위해서는 프로젝트를 생성해야 한다. 안드로이드 뷰는 개발을 편하게 하기 위해 재배치한 가상의 디렉터리 구조를 보여주고 있어 실제 디렉터리 뷰인 프로젝트 뷰와 다를 수 있다. 프로젝트 뷰가 훨씬 복잡하므로 리소스를 변경하는 등 꼭 필요한 작업을 제외하고는 안드로이드 뷰로 작업하는 것이 효율적.

  • 안드로이드 뷰 Android view
    app : 코딩하면서 생성한 파일 저장. manifests(설치정보), java(소스코드), res(리소스)
    Gradle Scripts : 빌드에 필요한 정보 저장
  • 프로젝트 뷰 Project view
    app : 앱관련
    src : 내가 만든 소스
    java : 소스코드
    res : 리소스
    AndroidManifest.xml : 설치정보
    build.gradle : 빌드정보

 

 

앱이 만들어지는 과정

  • 프로젝트 생성 : 패키지명은 앱ID. 소문자로만 입력해야하며 나중에 변경가능하다. example을 포함할 경우 플레이스토어에 업로드 할 수 없다. 
  • 레이아웃 편집 : xml 파일확장자는 레이아웃 편집기로 열린다. 소스코드에 setContentView 함수는 res/layout아래에 있는 activity_main.xml파일을 사용하여 화면에 표시한다는 코드이다.
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)

 

   Constraints 세가지 모드

  • Wrap Content : 내용물에 크기 맞춤
  • Fixed : 입력된 크기에 맞게 가로세로를 고정
  • Match Constraint : 연결부에 크기 맞춤
  • 소스코드 연결 : 뷰의 요소를 동작시키기 위해 소스코드와 연결. build.gradle(Module: app) 파일에 viewBinding 설정을 추가하면 뷰바인딩을 사용할 수 있다.
  • 앱 실행 : 소스코드 연결을 마치고 에뮬레이터에서 실행.

 

 

 

로그 Log

동작에 대해 기록하는 안드로이드 라이브러리. Log 클래스를 사용하여 원하는 로그를 찾아 코드의 흐름, 앱의 실행과 결과 등을 확인할 수 있다. 

Log 클래스의 다섯가지 함수

  • v(verbose) : 상세한 로그 내용을 출력하기 위해 사용
  • i(information) : 정보성의 일반적인 메시지를 전달하기 위해 사용
  • d(debug) : 개발에 필요한 내용을 출력하기 위해 사용

  • w(warning) : 에러는 아니지만 경고성 메시지를 전달하기 위해 사용

  • e(error) : 실제 에러 메시지를 출력하기 위해 사용

     

    Log.d("태그", "출력 메세지"); 형태로 사용가능

     

로그캣Logcat

출력되는 로그를 모아서 보는 도구. 내가 작성한 로그만 볼 수도 있고, 태그를 필터로 활용해 특정 로그만 확인할 수도 있다.