Getting Started: Building for UWP and Windows Phone 8.x
Moved to https://docs.pjsip.org/en/latest/get-started/windows-phone/build_instructions.html
TracNav
Getting Started- Moved to: https://docs.pjsip.org/en/latest/index.html#get-started
Preparation
Build for Desktop
Build for Mobile
- iOS: Apple iPhone, iPad, and iPod Touch
- Android
- BlackBerry 10 (BB10)
- Windows Mobile
- Windows Phone 8.x and UWP
Symbian...
- Build for Other
Next: Using the libraries
See Also
- Build Preparation
- Requirements
- Building and running the Projects
- Debugging Application
- Other References
Build Preparation
- Get the source code, if you haven't already. UWP and WP8 support is available since PJSIP 2.6.
- It is important that you create a config_site.h as described in Build Preparation
Requirements
Tools and SDKs
- Microsoft Visual Studio 2015 Update 3
- UWP SDK for UWP/Windows 10 target.
- Windows Phone 8 SDK for Windows Phone 8 target.
- Configuring device for development:
Host requirements
For the host, the following are required:
- Operating System type : 64-bit Windows 8 Professional or higher.
Building and running the Projects
UWP
Follow the steps below to build the libraries and sample application using Visual Studio 2015:
- Using any text editor, open build\vs\pjproject-vs14-api-def.props and set API_Family to UWP, i.e:
... <API_Family>UWP</API_Family> ...
Note: if pjproject-vs14.sln solution is opened, you need to close and reopen the solution after changing API family. - Open pjproject-vs14.sln solution file.
- Set solution platform to:
- ARM to build for UWP/Windows 10 device
- Win32 to build for emulator
- Set Voip as Startup Project.
- Build the project. This will build Voip application and all libraries needed by Voip.
- Run
Windows Phone 8.x
Follow the steps below to build the libraries and sample application using Visual Studio 2015:
- Using any text editor, open build\vs\pjproject-vs14-api-def.props and set API_Family to Winphone8, i.e:
... <API_Family>Winphone8</API_Family> ...
Note: if pjproject-vs14.sln solution is opened, you need to close and reopen the solution after changing API family. - Open pjproject-vs14.sln solution file.
- Set ARM as the solution platform.
- Set pjsua_cli_wp as Startup Project.
- Build the project. This will build pjsua_cli_wp application and all libraries needed by pjsua_cli_wp.
- Run/deploy the pjsua_cli_wp application on a registered Windows phone device.
- You will see telnet instructions on the device's screen. Telnet to this address to operate the application. See PJSUA CLI Manual for command reference.
Debugging Application
To Debug native(C/C++) part of the application:
- Set the Debugger type of project properties [Debug menu] to Native Only.
To Debug managed(C#) part of the application:
- Set the Debugger type of project properties [Debug menu] to Managed Only.
Assert Problem on Debugging Native Code
As described here, assertion will cause process exiting (instead of just stopping). Adding the following code in the application would make process stopping on assertion:
#ifndef NDEBUG signal(SIGABRT, [](int) { __debugbreak(); }); #endif
Other References
- VoIP apps for Windows Phone 8
- Ticket #1900 about porting to Windows 10/UWP