我们想要在Android 2.3.3上创建SIP应用程序,并且在android.sip堆栈(默认SIP堆栈)中存在一些问题。我们的移动应用发送寄存器sip数据包,但是 1.)默认情况下OpenIMS核心响应400错误请求P-Visited-Network-ID头丢失 2.)在我们设置端口号为4060的情况下-PCSCF /builder.setPort (4060)/ OpenIMS核心将此请求从4060发送到4060(相同的端口,相同的IP,相同的CSCF,相同的数据包),直到OpenIMS核心发送响应移动应用 - 504服务器超时为止。 我们也尝试了SipDemo,CSipSimple,我们也遇到了同样的问题。 当我们尝试怪兽通讯器或IMSDroid时,它的工作原理!具有授权的SIP堆栈注册包
工作和有问题的应用程序之间有一个区别 - 工作应用程序也发送注册包与授权字段。
部分代码:
public SipManager mSipManager = null;
public SipProfile mSipProfile = null;
SipProfile.Builder builder = new SipProfile.Builder(username, domain);
builder.setPassword(password);
builder.setDisplayName(username);
builder.setProfileName(username + "@" + domain);
port = Integer.parseInt(4060);
builder.setProtocol(protocol);
mSipProfile = builder.build();
...
try { mSipManager.open(mSipProfile);} catch (SipException e) { ...}
try {
mSipManager.register(mSipProfile, 30, new SipRegistrationListener(){
public void onRegistering(String localProfileUri) {
}
public void onRegistrationDone(String localProfileUri, long expiryTime) {
}
public void onRegistrationFailed(String localProfileUri, int errorCode, String errorMessage) {
}
});
} catch (SipException e) {
.... }
如何给授权场登记在经典的SIP协议栈包?
我们还试图J-SIP但它显示错误:转换为Dalvik的格式错误1.
每一个答案,将是非常赞赏失败。