제목을 잘못 지어서 그런건지 orz

아뭏튼

Main.java
     private void showTurnOn() {
        try {
            final ImageView iv = (ImageView) findViewById(R.id.ivBackground);

            AnimationListener listener = new AnimationListener() {
                @Override
                public void onAnimationStart(Animation arg0) {
                    // TODO Auto-generated method stub
                }

                @Override
                public void onAnimationRepeat(Animation arg0) {
                    // TODO Auto-generated method stub
                }

                @Override
                public void onAnimationEnd(Animation arg0) {
                    AnimationSet set = new AnimationSet(true);

                    Animation animation = new TranslateAnimation(
                            Animation.RELATIVE_TO_SELF, 0.0f,
                            Animation.RELATIVE_TO_SELF, 0.0f,
                            Animation.RELATIVE_TO_SELF, 0.0f,
                            Animation.RELATIVE_TO_SELF, 1.0f);
                    animation.setDuration(500);

                    set.addAnimation(animation);

                    animation = new AlphaAnimation(1.0f, 0.0f);
                    animation.setDuration(500);

                    set.addAnimation(animation);
                    set.setFillAfter(true);

                    iv.setAnimation(set);
                    iv.startAnimation(set);
                }
            };

            AnimationSet set = new AnimationSet(true);

            Animation animation = new AlphaAnimation(0.2f, 1.0f);
            animation.setDuration(500);
            animation.setRepeatCount(21);
            animation.setRepeatMode(Animation.REVERSE);
            animation.setAnimationListener(listener);

            set.addAnimation(animation);

            animation = new TranslateAnimation(Animation.RELATIVE_TO_SELF,
                    0.0f, Animation.RELATIVE_TO_SELF, 0.0f,
                    Animation.RELATIVE_TO_SELF, -1.0f,
                    Animation.RELATIVE_TO_SELF, 0.0f);
            animation.setDuration(500);
            set.addAnimation(animation);
            set.setDetachWallpaper(true);

            iv.setVisibility(View.VISIBLE);
            iv.setAnimation(set);
            iv.startAnimation(set);

            long[] pattern = { 0, 200, 500, 200, 500, 200, 500 };

            if (vibrator == null) {
                vibrator = (Vibrator) getSystemService(Context.VIBRATOR_SERVICE);
            }
            if (ringtone == null) {
                ringtone = RingtoneManager.getRingtone(this, RingtoneManager
                        .getDefaultUri(RingtoneManager.TYPE_ALARM));
            }

            updateHandler.postDelayed(terminateAlarm, 500 * 21);

            vibrator.vibrate(pattern, 1);
            ringtone.play();
        } catch (Exception e) {
            Toast.makeText(this, e.getMessage(), Toast.LENGTH_LONG).show();
        }
    }


위와 같이 하여 특정 시간에 이미지에 효과를 주어 알림이 발생 되도록 하였습니다.
문제는 홈버튼 눌러서 activity가 비활성화 되면 애니메이션이 진행 되고 있지 않다가 재생이 됩니다.
물론 진행 중에 홈버튼 누르면 소리와 진동은 이미 끝났지만 애니메이션이 다시 activity가 활성화 되어야 진행이됩니다.

activity가 비활성화 되어도 애니메이션은 진행 되도록 바꿀 수 없을까요?