这是我的注册码:
protected void initializeManagerOpen(){
consoleWrite("initializeOpen");
if(mSipManager==null) {
return;
}
SipProfile.Builder builder;
try {
builder = new SipProfile.Builder("13", "10.0.0.4");
builder.setPassword("13");
builder.setPort(5062);
builder.setProtocol("UDP");
mSipProfile = builder.build();
try {
Intent intent = new Intent();
intent.setAction("android.SipDemo.INCOMING_CALL");
PendingIntent pendingIntent = PendingIntent.getBroadcast(mContext, 0, intent, Intent.FILL_IN_DATA);
mSipManager.open(mSipProfile, pendingIntent, null);
mSipManager.setRegistrationListener(mSipProfile.getUriString(), new SipRegistrationListener() {
public void onRegistering(String localProfileUri) {
mNotificationTask.endNotification();
mNotificationTask.createNotification(R.drawable.ic_stat_connecting,"Test","Connecting");
consoleWrite("Registering with SIP Server...");
}
public void onRegistrationDone(String localProfileUri, long expiryTime){
mNotificationTask.endNotification();
mNotificationTask.createNotification(R.drawable.ic_stat_connected,"Test","Connected");
consoleWrite("Ready");
}
public void onRegistrationFailed(String localProfileUri, int errorCode, String errorMessage){
mNotificationTask.endNotification();
mNotificationTask.createNotification(R.drawable.ic_stat_disconnected,"Test","Failed to connect:"+errorCode);
consoleWrite("Registration failed. Please check settings.");
consoleWrite(""+errorCode);
consoleWrite(errorMessage);
}
});
} catch (SipException e) {
e.printStackTrace();
}
} catch (ParseException e) {
e.printStackTrace();
}
}虽然有时它成功注册,但大多数时候我得到一个错误代码-9:
Registration failed. Please check settings.
-9
0我在参考网站上找到了这样的描述:
public static final int IN_PROGRESS
The client is in a transaction and cannot initiate a new one.
Constant Value: -9 (0xfffffff7)这到底意味着什么?我的手机上没有其他SIP应用程序在运行。
PS.当我第一次尝试连接时,它是起作用的。但第二次回来-9。也许我没有正确地关闭连接?我想我有问题,因为我试图关闭连接,但它没有关闭.
public void closeLocalProfile() {
if(mSipManager==null){
return;
}
try{
if(mSipProfile!=null){
mSipManager.close(mSipProfile.getUriString());
consoleWrite("mSipManager Closed - "+mSipProfile.getUriString());
}
}catch(Exception e){
consoleWrite("Failed to close local profile. - "+e);
}
}发布于 2014-09-17 13:08:28
从调用参数中删除所有SIP帐户并重试:
调用应用程序->参数->调用帐户internet删除所有帐户
对不起,我的电话不是英文的
发布于 2016-05-26 04:33:18
我也面临过同样的问题,zicos22 22的评论帮助我解决了这个问题。这个问题源于未关闭的SipProfiles,因此您需要在onPause()方法中运行closeLocalProfile() (当在onDestroy()中调用它时不起作用)。实际上,我认为我必须在单独的线程中运行这个sip文件,但现在我只是在onPause中关闭配置文件。在我使用ZenUI的安卓手机上,我能够在设置、->呼叫设置、->电话帐户设置、-> sip 中手动关闭当前打开的SIP配置文件。
https://stackoverflow.com/questions/20594095
复制相似问题