왜 안드로이드 어플리케이션 클래스를 사용해야할까?
1. 안드로이드에서 Activity간 어떠한 클래스를 공유함은 물론 Application 객체의 멤버는 프로세스 어디에서나 참조 가능
2. 공통으로 전역 변수를 사용하고 싶을 때 Application 클래스를 상속받아 사용할 수 있다.
Application을 상속 받아 클래스를 만들고,
TestApplication extends Application
set, get으로 값저장 한 후
// Application 에서 정보 가져와 사용
TestApplication app = (TestApplication)getApplicationContext();
app.getIP();
app.getPort();
3. 안드로이드 앱이 시작하면 무조건 Application을 상속 받은 쪽을 먼저 탄다.
안드로이드 어플리케이션 메쏘드
onCreate() : 애플리케이션이 생성될 때 호출된다. 엑티비티나 서비스보다 항상 먼저 호출 되므로 진정한 진입점임.
응용프로그램의 시작점임으로 신속히 처리해야함. 여기서 지연되면 시작이 느려짐
onTerminate() : 애플리케이션 객체와 모든 컴포넌트가 종료될 때 호출, but, 항상 발생되지 않음. 종료처리할 때만 사용됨
onLowMemory() : 시스템이 메모리 리소스가 부족할 때 호출.
onConfigurationChanged() : 애플리케이션은 구성변경을 위해 재시작하지 않음. 변경이 필요하다면 이곳에서 핸들러를 재정의 하면 됨.
안드로이드 어플리케이션 메쏘드
<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.android.memberregistration">
<application
android:allowBackup="true"
android:icon="@mipmap/ic_launcher"
android:label="@string/app_name"
android:supportsRtl="true"
android:name=".AppAplication"
android:theme="@style/AppTheme">
<activity android:name=".MemberRegistrationActivity">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>
참고 :
http://developer.android.com/intl/ko/reference/android/app/Application.html
http://mainia.tistory.com/703
http://aldehyde7.tistory.com/152
'IT이야기 > Android' 카테고리의 다른 글
안드로이드 스튜디오에서 새프로젝트 생성시 빌드가 안될때 (0) | 2017.06.02 |
---|---|
[개발] 안드로이드 Fragment란? (3) | 2017.05.29 |
안드로이드 개발, Color의 모든것 (1) | 2017.04.02 |
사내에서 안드로이드 개발 삽질기 (0) | 2017.03.22 |
안드로이드 애플리케이션 구성요소 (0) | 2017.02.20 |