Development/Android (Kotlin)

Android Studio의 기본 Directory & Hello, World 예제

수달05 2020. 7. 8. 14:57

안녕하세요~!

 

개발새발 개발자 수달입니다. :)

 

지금까지 안드로이드App의 기본적 이해와 Activity, Fragment의 수명주기에 대하여 알아보았는데요,

 

https://devlog-h.tistory.com/23

 

[Android] Application과 기본요소!

안녕하세요 :) 개발새발 초보 프로그래머 수달입니다. Android Studio를 이용하여 애플리케이션을 개발하기에 앞서, - 대체 이 Application은 무엇인지! - 무엇으로 구성되어 있는지! - 어떻게 구성해야 �

devlog-h.tistory.com

https://devlog-h.tistory.com/24

 

Activity와 Fragment의 수명주기에 대해 알아보자!

안녕하세요~! 개발새발 개발자 수달입니다 :) 저번 게시물에서 안드로이드 앱의 기본 요소에 대해 알아보았는데요~ https://devlog-h.tistory.com/23 [Android] Application과 기본요소! 안녕하세요 :) 개발새발.

devlog-h.tistory.com

 

 

오늘은, 지금까지 배운 내용을 실현시킬 수 있는 가장 기초적인 Android Studio App을 구현해보기로 할까요~~??

 

그럼 오늘도 화이팅 넘치게 출발!

출바알~!

 

 

 

가장 먼저, 설치한 Android Studio를 실행해줍니다~!

 

엥? 어떻게 설치하냐구요??

 

그거슨 저희가 아주아주 상세하게 정리해놓았답니다!

 

https://devlog-h.tistory.com/12

 

안드로이드 스튜디오 설치하기

안녕하세요! 휴몬랩 왕초보 개발자 (호박) 입니다! 이번엔 개발환경 세팅하기에 대해서 알아볼까 합니다. 이름하여 안드로이드 스튜디오 설치하기~~~!!! 안드로이드 스튜디오의 용량이 생각보다

devlog-h.tistory.com

설치가 되지 않으신 분들은 위 링크를 확인해보시고 설치를 진행해보시길 바랍니다 ㅎㅎ

 

 


 

Android Studio 시작화면

 

성공적으로 설치가 되었다면, 위 그림과 같은 프로그램의 첫 모습을 보실 수 있을거에요.

 

그럼 우리의 가장 기초적인 어플리케이션 'Hello, World'를 구성하기 위한 프로젝트를 새로 만들어 볼까요??

 

 

 

템플릿 설정 화면

 

프로젝트를 새로 생성하게 되면 Android Studio의 회사 IntelliJ에서 기본적으로 제공하는 Activity들의 예시들을 확인할 수 있어요!!

 

코드를 봐도 무슨말인지 모르겠다구요??

 

어떤 것을 골라야하는지 모르겠다구요..??

 

 

아무고또 몰라요~

저도 그렇습니다 ㅎㅎㅎ,,,, 그럴 땐 다 처음부터..! Empty Activity를 선택해줍시다!

 

 

Project 내용 설정화면

Empty Activity를 선택한 이후에도 뭔가 해야할게 많은 것 처럼 나옵니다..!

 

그럼 상세히 하나씩 살펴볼까요??

 

- Name : 이름입니다! "프로젝트의 이름을 어떤 것으로 설정할 것이냐?" => 특별히 설정해주지 않은 이상, 앱 이름이 됩니당

 

- Package name : 현재 구성하려는 프로젝트의 패키지 이름을 설정해주는 과정입니다. 이 부분은 이름을 설정하면 자연스럽게 함께 구성되니 건드리지 않아도 좋습니다 :)

 

- Save location : 본 프로젝트를 어디에 저장할 것인지를 작성하는 저장 공간 설정 값입니다! 한글이 포함되는 파일명이 존재할 시, 오류가 날 수 있으니 되도록이면 영어로 된 파일명에 저장해주세요!

 

(흑흑 죄송합니다 세종대왕님)

 

- Language : 어떤 언어로 개발을 진행할 것인지에 대한 기본 개발 언어를 설정하는 창입니다. 안드로이드 스튜디오는 Java와 Kotlin 언어 두 가지를 모두 컴파일할 수 있기 때문에 원하시는 언어를 선택하시면 됩니다.

 

(저희 프로젝트에서는 Kotlin으로 진행해보도록 하겠습니다!!)

 

- Minimun SDK : 안드로이드 운영체제의 최소 사양을 설정해주는 과정입니다. 제가 설정한 API 23은 Android 6.0 마쉬멜로우 버전까지 가능한 형태군요!!

 

 

그럼 Finish를 눌러 프로젝트 생성을 완료해봅시다!

 

 

 

MyApplication 예제 생성

 

위 같은 과정을 통해 성공적으로 예제 프로젝트 'MyApplication '을 제작하였습니다!

 

 

IntelliJ사에서 제공하는 기본적 예제 중 하나인 Empty Activity 또한 추가적인 코드작성 없이도, 곧바로 컴파일이 가능합니다.

 

그렇다면 어떻게 앱을 빌드하는지 살펴볼까요??

 

Build

기본적으로 오류가 없는 경우, 앱을 빌드하는 방법은 두 가지가 있습니다.

 

 

 

1) 가상기기(Virtual Device)를 이용한 앱 빌드 확인

 

본 방법에는 추가적인 기기가 필요없으며, Open AVD Manager를 눌러 가상기기를 추가한 후, 빌드하는 방법입니다.

컴퓨터에 가상기기를 설치하는 과정을 거쳐 진행하는 방법이며, 컴퓨터 사양에 따라 속도차이가 있을 수 있습니다.

 

 

2) Android 디바이스를 연결하여 앱 빌드

 

두 번째 방법은 Android 디바이스를 직접 연결하여 앱을 빌드하는 방법인데요,

 

최근의 안드로이드 운영체제에서는 허가되지 않은 어플리케이션은 보안적으로 안전하지 않다고 판단하여 앱 빌드가 실패하는 경우가 존재합니다.

 

이러한 부분을 해결하기 위해 개발자 모드를 켜주셔야 하는데요~

 

오늘의 주된 내용은 "Hello, World" 출력을 앱 빌드로 진행하는 것이기 때문에, 세부적인 사항은 다루지 않고 넘어가도록 하겠습니다.

 

 

(스마트폰 기종에 따라 다른 경우도 많기 때문에, 자신의 디바이스로 개발자모드를 켜는 방법을 검색해보시길 바랍니다.)

하하,,, Google 선생님,,, 알려주세요

 

 

 

'/app/src/main/java/com.example.myapplication/MainActivity'의 위치를 통해 여러분들의 기본 액티비티 코드를 확인할 수 있습니다.

 

 

현재, 생성된 Project의 코틀린 코드를 살펴보면, 다음과 같은 코드가 작성되어있습니다.

package com.example.myapplication

import androidx.appcompat.app.AppCompatActivity
import android.os.Bundle

class MainActivity : AppCompatActivity() {
    override fun onCreate(savedInstanceState: Bundle?) {
        super.onCreate(savedInstanceState)
        setContentView(R.layout.activity_main)
    }
}

 

myapplication이라는 패키지에 있는 코드다!

 

즉, 디렉토리의 위치를 나타내는 package com.example.myapplication 코드와 함께 시작하는데요,

 

 

기본적인 기능을 사용하기 위해 import를 진행해준 모습입니다.

 

여기서, class부분을 살펴볼까요???

 

 

onCreate()... 어디서 본 것 같지 않나요??

 

아니라구요?!!?!

 

https://devlog-h.tistory.com/24

 

Activity와 Fragment의 수명주기에 대해 알아보자!

안녕하세요~! 개발새발 개발자 수달입니다 :) 저번 게시물에서 안드로이드 앱의 기본 요소에 대해 알아보았는데요~ https://devlog-h.tistory.com/23 [Android] Application과 기본요소! 안녕하세요 :) 개발새발.

devlog-h.tistory.com

 

네 ㅎㅎㅎ,,, 바로 저번 글에서 본 수명주기의 첫 생성부분, 바로 onCreate()였습니다.

 

즉, Activity를 생성할 때, 이런 코드가 실행된다는 것인데요, MainActivity에 연동된 View인 activity_main을 살펴보면서, 어떤 View가 펼쳐질 지 확인해봅시다!

 

 

activity_main.xml 파일은 여러분들의 프로젝트의 app/src/main/res/layout에 존재합니다. :)

 

본 파일의 디렉토리는 Activity와 연결된 화면의 구성을 담당하는 표본같은 것이라고 보시면 되는데요~

 

쉽게말해 사용자가 직접적으로 보는 화면을 구성하는 Layout을 구성할 수 있는 부분인 셈입니다!!

 

activity_main.xml 파일

 

activity_main.xml 파일을 확인해보면 다음과 같은 결과화면이 나온다는 모습을 볼 수 있는데요, 

 

<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
    xmlns:app="http://schemas.android.com/apk/res-auto"
    xmlns:tools="http://schemas.android.com/tools"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    tools:context=".MainActivity">

    <TextView
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Hello World!"
        app:layout_constraintBottom_toBottomOf="parent"
        app:layout_constraintLeft_toLeftOf="parent"
        app:layout_constraintRight_toRightOf="parent"
        app:layout_constraintTop_toTopOf="parent" />

</androidx.constraintlayout.widget.ConstraintLayout>

 

TextView의 정의를 통하여 android:text="Hello World!" 를 설정해준 것을 볼 수 있습니다.

 

그럼 저 안의 Text를 변경하면 여러분들이 볼 수 있는 Text도 달라지겠죠??

 

Text 변경 예시

 

이렇게 말이죠!!

 

그러면 바로 빌드를 진행해볼까요??

 

빌드는 'shift + F10' 혹은 우측 상단의 초록색 재생버튼을 눌러주시면 됩니다. :)

 

 

(저는 android기반의 핸드폰을 통하여 빌드를 진행해보았습니다.)

 

안녕 안드로이드!

 

잘 빌드가 진행되었군요!!

 

 

 

 

 

 

오늘은 기본적으로 프로젝트를 생성하고 예제 코드를 디버깅하여 빌드하는 방법에 대하여 알아보았는데요,

 

컴퓨터에 설치된 프로그램의 버전에 따라 차이가 있을 수 있다는 점...!!

 

그러니, 빌드가 잘 진행되지 않거나, 어려운 부분이 있다면 댓글로 남겨주세요!! :)

 

 

그럼 오늘은 여기까지~~~!