기타/프로그래밍 분류

android - 기본 Package Explorer 알아보기

zelkova 2016. 4. 6. 00:34

<목차로 돌아가기>


버전에 따라서 설명이 다를 수 있습니다.


  안드로이드 기본 Package Explorer 알아보기


src 패키지에 있는 에 있는 java파일

메인 소스파일으로 저희가 코딩해야할 파일입니다.


gen 패키지에 있는 R.java 파일

여러가지 객체에 접근할 수 있는 아이디를 정해주는 파일인데

툴이 자동으로 관리하는 파일이므로 손댈필요 없습니다.


android (version)

저같은 경우는 android 6.0입니다. 

프로그램을 작성할때 모여있는 패키지들 모음입니다. 신경안쓰셔도 됩니다.


assets폴더

오디오나 비디오같은 파일을 저장하는 폴더입니다.


res폴더

각종이미지를 저장해 주는 파일입니다. 

해상도별로 나뉘어져 있습니다. 


layout 폴더 

말그대로 배치나 구조(ㄹ 파일들


values 

문자열 파일입니다.


AndroidMainfest.xml 

프로젝트에 대한 모든 정보를 가지고 있는 파일입니다.


default.properties 

프로젝트에 만들 타겟을 명시해주는 것.


proguard-project.txt

디컴파일 방지하기위한 것.



  소스파일


package com.example.test_android;


import android.support.v7.app.ActionBarActivity;

import android.os.Bundle;

import android.view.Menu;

import android.view.MenuItem;


public class MainActivity extends ActionBarActivity { 

//ActionBarActivity에서 상속을 받음


@Override

protected void onCreate(Bundle savedInstanceState) { //OnCreate메소드 재정의

super.onCreate(savedInstanceState);

             //super클래스의 activity초기화 즉, 표준 초기화

setContentView(R.layout.activity_main);

             //setContentView 호출해서 화면에 내용물을 채우게 됨.

}


@Override

public boolean onCreateOptionsMenu(Menu menu) {

// Inflate the menu; this adds items to the action bar if it is present.

getMenuInflater().inflate(R.menu.main, menu);

return true;

}


@Override

public boolean onOptionsItemSelected(MenuItem item) {

// Handle action bar item clicks here. The action bar will

// automatically handle clicks on the Home/Up button, so long

// as you specify a parent activity in AndroidManifest.xml.

int id = item.getItemId();

if (id == R.id.action_settings) {

return true;

}

return super.onOptionsItemSelected(item);

}

}





  AndroidMainfest.xml



<?xml version="1.0" encoding="utf-8"?>

<manifest xmlns:android="http://schemas.android.com/apk/res/android"

    package="com.example.test_android"

    android:versionCode="1"

    android:versionName="1.0" >


    <uses-sdk

        android:minSdkVersion="8" //안드로이드 버전코드

        android:targetSdkVersion="21" />//안드로이드의 버전


    <application

        android:allowBackup="true"

        android:icon="@drawable/ic_launcher"

        android:label="@string/app_name"

        android:theme="@style/AppTheme" > //이것이 하나의 어플

        <activity

            android:name=".MainActivity" 

            android:label="@string/app_name" >

            <intent-filter> // 각각의 컴포넌트의 통신연결

                <action android:name="android.intent.action.MAIN" />


                <category android:name="android.intent.category.LAUNCHER" />

            </intent-filter>

        </activity>

    </application>


</manifest>





  복잡하게 나뉘어져 있는 이유


1. 이렇게 소스가 나눠져 있는 이유는 디자이너와 개발자 여러 사람들이 분업하기 편합니다. 

2. 컴파일 속도(개발속도)가 빨라진다.

3. 재사용성이 편해진다.











반응형