진행중인 파일을 다운로드하는 활동이 있습니다. 사용자가 "숨기기"버튼을 누르면 알림이 생성되고 진행 대화 상자가 숨겨집니다. 사용자가 알림을 클릭하면 진행률 대화 상자에 활동이 다시 표시됩니다. 어떻게 "뒤로"버튼을 누르면 다시 작업으로 전환 할 수 있습니까?활동을 숨기려면 어떻게해야합니까?
4
A
답변
1
finish()
으로 전화하여 Activity
을 스택에서 제거해야합니다. 그런 다음 알림에서,이 같은, 당신이 그것을 클릭하면 Activity
의 이름을 호출 할 뭔가를 설정 : 당신은 당신의 활동을 파괴하지 않는 경우
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification = new Notification(R.drawable.icon,
"A new notification", System.currentTimeMillis());
// Specify the called Activity
Intent intent = new Intent(this, YourActivityName.class);
intent.putBoolean("isDownloading", true); // check this value in Activity
PendingIntent activity = PendingIntent.getActivity(this, 0, intent, 0);
notification.setLatestEventInfo(this, "This is the title",
"This is the text", activity);
notificationManager.notify(0, notification);
6
당신이 single_instance
에 acitvity 발사 모드를 설정해야하며, moveTaskToBack(true)
을 사용하여 배경으로 보내십시오.
아니요, 다시 표시 할 progressDialog에 대한 모든 정보가 포함 된 활동을 파괴하고 싶지 않습니다. 내 말을 이해 하셨어요? 죄송합니다. 제 영어 실력이 좋지 않습니다. – ruslanys
"moveTaskToBack (true)"를 호출하지 않으면 집 단추가 수행하는 작업을 "숨길"방법이 없습니다. 어쨌든 알림을 클릭하면 활동이 열리고 onCreate()가 호출되므로 숨길 지 여부는 중요하지 않습니다. – Carnal
귀하의 경우에는 서비스를 구현하고이를이 액티비티에 바인딩 할 것이므로 알림을 클릭하고 onCreate()를 호출 할 때 PendingIntent와 함께 보내지는 Intent를 확인하십시오. 다운로드가 진행 중임을 나타내는 값. 따라서 사용자는 intent.putBoolean ("isDownloading", true); 그런 다음이 부울 값에 따라 원하는대로 할 수 있습니다. – Carnal