2012-12-19 16 views
11

Nexus 7'ye ve Nexus 7'ye basit SIP çağrılarını göstermek için oluşturmaya çalıştığım hızlı bir örnek uygulamam var. Cihaz şu anda Android 4.2.1 çalıştırıyor. API docs (kod) görmekAndroid SIP API: Desteklenenleri gösterir, henüz 'desteklemiyor' hatası '

SipBroadcastRequest/SIP VOIP not supported: com.android.phone.SIP_REMOVE_PHONE

SipManager.isApiSupported (Bağlam bağlamı) false dönerse bunun gerçekleşmesini:

LogCat hata gösterir.

SipManager.isVoipSupported(this);
SipManager.isApiSupported(this);

ve her iki return true: iyi ölçmek için, ben de kontrol ettim. Ayrıca (API kodundan), api çağrısı yanlış olursa, SipManager.newInstance(Context context)'un null değerini döndüreceğini de görüyorum. SipManager.newInstance(this); ile bir yönetici oluşturduğumda geçerli bir yönetici geri dönüyorum.

Benzer sorunlar için pek çok ileti görüyorum, ancak SipManager.isVoipSupported(Context context) araması için bu true raporunu bulamadılar. Herhangi bir fikir?

Not: Bu önemli olup olmadığından emin değilim, ancak cSipSimple (android için başka bir SIP/Voip uygulaması) Bu cihazda çalışır.

UPDATE (12/20/12): SipDemo'yu her istekte denedim. Bu da işe yaramıyor. Hem bu uygulama hem de uygulamam kayıt adımı sırasında başarısız oluyor. Hata ayıklayıcısını kullanarak, SipRegistrationListener için onRegistrationFailed geri çağrısını bozuyorum. Buradan bir int errorCode -9 ve String errorMessage "0" görebiliyorum. Bu hata kodu baktı ve o (SIP API docs alınmıştır) Aşağıdakilerden karşılık gelir:

public static final int IN_PROGRESS 

Added in API level 9
The client is in a transaction and cannot initiate a new one.
Constant Value: -9 (0xfffffff7)

ben çalışan hiçbir diğer SIP programları var. Uygulamam yalnızca yeni yüklü ve şu anda çalışmıyor. Diğer işlemlerin ortasında ne olduğundan emin değilim?

+1

CSipSimple bir dış kütüphane kullanır, bu yüzden gerçekten çalışıp çalışmadığını belirtmez. SipDemo'yu deneyin, yerel kütüphaneyi kullanır. – plmaheu

cevap

0

Sana wifi ile bağlıyken android SIP Eğer wifi ile değil bağlandığında bağlantı sağlar, çünkü

<uses-permission android:name="android.permission.USE_SIP" /> 
<uses-permission android:name="android.permission.INTERNET" /> 
<uses-feature android:name="android.hardware.sip.voip" android:required="true" /> 
<uses-feature android:name="android.hardware.wifi" android:required="true" /> 
<uses-feature android:name="android.hardware.microphone" android:required="true" /> 

Ayrıca bu test emin olun, size Manifest'inizde izni aşağıdaki söz var umut diğer ağ ile.

İlgili konular