7

I have and Activity A calling Activity B. Then Activity B dials a number and then on the IDLE-OFFHOOK- IDLE state I call ActivityB.this.finish() so that activity A shows on front.

This all worked fine from Android 2.3.x till version 4.0.

Now it doesn't work on android 4.0.3 emulator and 4.0.2. Why?

Can someone help?

Michele La Ferla
  • 6,775
  • 11
  • 53
  • 79

2 Answers2

0

It might be the case that you have overridden onDestroy method and it is falling over because of an Exception (only occurring in 4.0), which is preventing the Activity from closing properly. Also just try to invoke finish() simply on Activity B.

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
user_CC
  • 4,686
  • 3
  • 20
  • 15
0

Better solution for this case is to use startActivityForResult.

You can switch activity from A to B, in activity B do your work and handle results in activity A at override method onActivityResult().

Vadim Kotov
  • 8,084
  • 8
  • 48
  • 62
Piotr Mądry
  • 221
  • 2
  • 7