Fix regression: accept incoming call when other exist.
This commit is contained in:
parent
e2585f9330
commit
68f2df4abc
1 changed files with 11 additions and 12 deletions
|
@ -18,6 +18,8 @@ Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||||
*/
|
*/
|
||||||
package org.linphone;
|
package org.linphone;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
import org.linphone.LinphoneManagerWaitHelper.LinphoneManagerReadyListener;
|
import org.linphone.LinphoneManagerWaitHelper.LinphoneManagerReadyListener;
|
||||||
import org.linphone.LinphoneSimpleListener.LinphoneOnCallStateChangedListener;
|
import org.linphone.LinphoneSimpleListener.LinphoneOnCallStateChangedListener;
|
||||||
import org.linphone.core.LinphoneAddress;
|
import org.linphone.core.LinphoneAddress;
|
||||||
|
@ -28,7 +30,6 @@ import org.linphone.ui.SlidingTab;
|
||||||
import org.linphone.ui.SlidingTab.OnTriggerListener;
|
import org.linphone.ui.SlidingTab.OnTriggerListener;
|
||||||
|
|
||||||
import android.app.Activity;
|
import android.app.Activity;
|
||||||
import android.content.Intent;
|
|
||||||
import android.net.Uri;
|
import android.net.Uri;
|
||||||
import android.os.Bundle;
|
import android.os.Bundle;
|
||||||
import android.view.KeyEvent;
|
import android.view.KeyEvent;
|
||||||
|
@ -53,16 +54,6 @@ public class IncomingCallActivity extends Activity implements LinphoneManagerRea
|
||||||
private LinphoneManagerWaitHelper mHelper;
|
private LinphoneManagerWaitHelper mHelper;
|
||||||
private SlidingTab mIncomingCallWidget;
|
private SlidingTab mIncomingCallWidget;
|
||||||
|
|
||||||
private void findIncomingCall(Intent intent) {
|
|
||||||
String stringUri = intent.getStringExtra("stringUri");
|
|
||||||
// Only one call ringing at a time is allowed
|
|
||||||
mCall = LinphoneManager.getLc().getCurrentCall();
|
|
||||||
if (mCall == null) {
|
|
||||||
Log.e("Couldn't find incoming call from ", stringUri);
|
|
||||||
finish();
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected void onCreate(Bundle savedInstanceState) {
|
protected void onCreate(Bundle savedInstanceState) {
|
||||||
setContentView(R.layout.incoming);
|
setContentView(R.layout.incoming);
|
||||||
|
@ -98,8 +89,16 @@ public class IncomingCallActivity extends Activity implements LinphoneManagerRea
|
||||||
@Override
|
@Override
|
||||||
public void onResumeWhenManagerReady() {
|
public void onResumeWhenManagerReady() {
|
||||||
LinphoneManager.addListener(this);
|
LinphoneManager.addListener(this);
|
||||||
findIncomingCall(getIntent());
|
// Only one call ringing at a time is allowed
|
||||||
|
List<LinphoneCall> calls = LinphoneUtils.getLinphoneCalls(LinphoneManager.getLc());
|
||||||
|
for (LinphoneCall call : calls) {
|
||||||
|
if (State.IncomingReceived == call.getState()) {
|
||||||
|
mCall = call;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
if (mCall == null) {
|
if (mCall == null) {
|
||||||
|
Log.e("Couldn't find incoming call");
|
||||||
finish();
|
finish();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue