2014-01-17 1 views
0

Привет Я разрабатываю небольшое приложение для Android. Поэтому мое приложение содержит следующие вещи. 3 Мероприятия рассматривают A1, A2, A3. A1 - это моя активация. мое приложение также содержит одно фоновое обслуживание. Поэтому, когда я нажимаю на кнопку внутри А1, она запустит фоновое обслуживание.Невозможно приостановить исключение активности в android

Внутри службы фона Я начинаю A2. Я также выполняю некоторые вычисления в сервисе, поэтому после этих вычислений я начинаю деятельность A3 только с сервисов. SO моя проблема здесь, когда я начинаю обслуживание с A1, он откроет A2 из сервиса. Если я отступлю оттуда (от A2 до A1), он вернется в A1. Но в случае (A1 -> service -> A2 -> A3 (это также началось с сервиса)), если я нажму на него, это приведет к невозможности приостановить ошибку исключения активности. Он не возобновит A1.

Когда я начинаю работу со службы, я использую Intent.FLAG_ACTIVITY_NEW_TASK. В чем проблема? Нужна помощь в Спасибо

Смотрите это мой журнал ошибок:

01-17 14:45:03.689: E/AndroidRuntime(27805): FATAL EXCEPTION: main 
01-17 14:45:03.689: E/AndroidRuntime(27805): java.lang.RuntimeException: Unable to pause activity { ABC/ ABC.map.MapActivity}: java.lang.IllegalStateException 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2709) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2665) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.handlePauseActivity(ActivityThread.java:2643) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.access$800(ActivityThread.java:124) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1159) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.os.Handler.dispatchMessage(Handler.java:99) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.os.Looper.loop(Looper.java:137) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.main(ActivityThread.java:4436) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at java.lang.reflect.Method.invokeNative(Native Method) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at java.lang.reflect.Method.invoke(Method.java:511) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:784) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:551) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at dalvik.system.NativeStart.main(Native Method) 
01-17 14:45:03.689: E/AndroidRuntime(27805): Caused by: java.lang.IllegalStateException 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.media.MediaPlayer._stop(Native Method) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.media.MediaPlayer.stop(MediaPlayer.java:977) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at ABC.map.MapActivity.onPause(MapActivity.java:170) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.Activity.performPause(Activity.java:4564) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.Instrumentation.callActivityOnPause(Instrumentation.java:1195) 
01-17 14:45:03.689: E/AndroidRuntime(27805): at android.app.ActivityThread.performPauseActivity(ActivityThread.java:2696) 
01-17 14:45:03.689: E/AndroidRuntime(27805): ... 12 more 
+0

Пожалуйста, разместите свой логарифм и соответствующий код. Благодарю. – fasteque

+0

Да, конечно, жу ждать мин. Я отправлю его – nilkash

+0

Переопределите метод onBackPressed() внутри действия A2 и начните действие с помощью намерения. – Loganathan

ответ

3

Это происходит потому, что ваш A2 Activity не запускается. Вам необходимо проверить, что onCreate() и onStart() закончены в вашем A2 Activity, и только после этого вы должны начать A3 Activity.

+0

Благодарим вас за помощь. Я не получаю вашу мысль. Показывая интерфейс для A2, тогда как я могу сказать, что A2 не запущен. и от A3 до A2 на задней панели работают нормально только от A2 до A1, которые не работают. среднее (от A2 до A1). Но (от A3 до A2 до A1 не работает). Есть ли решение для этого? – nilkash

+0

Может быть, у yuo есть исключение в методе MapActivity.onPause()? –

+0

Что делать, если я использую прозрачный верх для A2 и A3. Потому что мне не нужно сохранять эти два, когда я нажимаю на спину. Это нормально ? – nilkash