CreateTransportFailure с помощью PortSip

Я пытаюсь создать базовое приложение вызова на Android с помощью PortSip, но получаю сообщение об ошибке из метода setUser (ошибка -60098: CreateTransportFailure). Я думаю, что я следовал за всеми шагами как их пример приложения, и я использовал те же учетные данные, которые работают с примером приложения. Я пытался использовать другой локальный порт (как предложено в другом посте), но безуспешно. Вот мои шаги:

context = this.getApplicationContext();
callingSDK = new PortSipSdk();
callingSDK.setOnPortSIPEvent(this);
callingSDK.CreateCallManager(context);

int initStatus = callingSDK.initialize(PortSipEnumDefine.ENUM_TRANSPORT_UDP, 
      "0.0.0.0", 5771, PortSipEnumDefine.ENUM_LOG_LEVEL_DEBUG, LogPath, 200,
      "PortSIP VoIP Calling App", 0, 0, "", "", false);
// initialize returns ECoreErrorNone

callingSDK.setSrtpPolicy(PortSipEnumDefine.ENUM_SRTPPOLICY_NONE);

int licenseStatus = callingSDK.setLicenseKey("PORTSIP_TEST_LICENSE");
// setLicenseKey return ECoreTrialVersionLicenseKey, as expected

int userStatus = callingSDK.setUser(accountName, displayName, authName, password,
      domain, server, 5060, "", 0, null, 5060);

1 ответ

По-видимому, еще одним фактором в этом состоянии ошибки является обеспечение приложения соответствующими разрешениями. Добавление их в манифест устраняет проблему с setUser.

<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
Другие вопросы по тегам