이 예는 Android에서 현재 전경 활동 컨텍스트를 가져오는 방법을 보여줍니다.
1단계 − Android Studio에서 새 프로젝트를 생성하고 파일 ⇒ 새 프로젝트로 이동하여 필요한 모든 세부 정보를 입력하여 새 프로젝트를 생성합니다.
2단계 − src/MyApp.java에 다음 코드 추가
패키지 app.tutorialspoint.com.sample;import android.app.Activity;import android.app.Application;public class MyApp extends Application { private Activity mCurrentActivity =null; @Override 공개 무효 onCreate() { super .onCreate(); } 공개 활동 getCurrentActivity() { mCurrentActivity를 반환합니다. } 공개 무효 setCurrentActivity (활동 mCurrentActivity) { this . mCurrentActivity =mCurrentActivity; }}
3단계 − src/MyBaseActivity.java
에 다음 코드 추가패키지 app.tutorialspoint.com.sample;import android.app.Activity;import android.os.Bundle;import android.support.v7.app.AppCompatActivity;public class MyBaseActivity extends AppCompatActivity { protected MyApp mMyApp; 공개 무효 onCreate(SavedInstanceState 번들) { 슈퍼 .onCreate(savedInstanceState); mMyApp =(MyApp) 이 .getApplicationContext(); } 보호 무효 onResume() { 슈퍼 .onResume(); mMyApp .setCurrentActivity( this ); } 보호 무효 onPause() { clearReferences(); 슈퍼 .onPause(); } 보호 무효 onDestroy() { clearReferences(); 슈퍼 .onDestroy(); } 개인 무효 clearReferences() { 활동 currActivity =mMyApp .getCurrentActivity(); if ( 이 .equals(currActivity)) mMyApp .setCurrentActivity( null ); }}
4단계 − src/MainActivity.java
에 다음 코드 추가패키지 app.tutorialspoint.com.sample;import android.app.Activity;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;public class MainActivity extends AppCompatActivity { @Override protected void onCreate (Bundle SavedInstanceState) { 슈퍼 .onCreate(savedInstanceState); setContentView(R.layout.activity_main); 활동 currentActivity =((MyApp) getApplicationContext()).getCurrentActivity(); }}
5단계 − androidManifest.xml에 다음 코드 추가
<전> xml 버전="1.0" 인코딩="utf-8" ?><매니페스트 xmlns:android ="https://schemas.android.com/apk/res/android" 패키지="app.tutorialspoint.com.sample">