내 앱 내에서 Activity가 호출되었는지 어떻게 확인할 수 있습니까?내 앱 내에서 Activity가 호출되었는지 확인하십시오.
내 문제는 사용자가 다른 앱에서 왔고 배경이 아직 사용자 인 경우에만 데이터를 업데이트하려고한다는 것입니다.
감사합니다.
내 앱 내에서 Activity가 호출되었는지 어떻게 확인할 수 있습니까?내 앱 내에서 Activity가 호출되었는지 확인하십시오.
내 문제는 사용자가 다른 앱에서 왔고 배경이 아직 사용자 인 경우에만 데이터를 업데이트하려고한다는 것입니다.
감사합니다.
onRestart 이벤트를 사용할 수 있습니까?
가능성있는 아이디어는 프로세스를 역으로 수행하는 것입니다. 즉, 앱에서 활동을 시작했는지 파악할 수 있습니다.
당신이 당신의 다른 활동에서 돌아 왔는지 여부를 onResume()에서 찾고자하는 활동 A가 있다고 가정 해 보겠습니다. startActivityWithResult()를 사용하여 A에서 나가는 다른 모든 활동을 시작하고 결과에 대해 onActivityResult()를 체크인 할 수 있어야합니다. onActivityResult()는 onResume()보다 먼저 호출되므로 onResume()에서 확인할 부울 필드를 설정할 수 있습니다.
그래서 코드는 다음과 같습니다 불가능
private static final int RANDOM_ACTION_CODE= 42;
private Button fButton;
private boolean returning= false;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
fButton= (Button) findViewById(R.id.button1);
fButton.setOnClickListener(this);
}
@Override
public void onClick(View v) {
Intent i= new Intent(this, SecondActivity.class);
startActivityForResult(i, RANDOM_ACTION_CODE);
}
@Override
protected void onResume() {
super.onResume();
Toast.makeText(this, "returning = " + returning, Toast.LENGTH_LONG).show();
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == RANDOM_ACTION_CODE)
returning= true;
else
returning= false;
}
아니오. – Patrick