Rav*_*tam 0 iphone sip ios linphone
我正在使用Linphone创建基于voip呼叫的项目,并且我还成功构建并运行了Linphone项目并成功运行了音频和视频呼叫。现在,我正在将Linphone集成到我自己的项目中,与此同时我面临许多问题。我使用以下一些链接寻求帮助,但没有完整的说明。谁能为我提供完整的运行步骤-
http://shallwelearn.com/blog/build-linphone-for-iphone-and-ipad/
http://www.linphone.org/technical-corner/linphone/overview
http://lists.gnu.org/archive/html/linphone-developers/2014-09/msg00109.html
http://www.successmonkey.co.nz/blog/building-linphone-for-ios
LinphoneManager类已经包含了许多有用的功能-例如良好的监视和对linphone内核的使用以及良好的日志记录等,等等,但并非全部(不幸的是)。
使用 Xcode 11 使用 macos 10.15.6 Catalina
\nhttps://github.com/BelledonneCommunications/linphone-sdk/blob/master/README.md
\n使用本地 linphone SDK\n从 gitlab 克隆 linphone-sdk 存储库:
\n$ git clone https://gitlab.linphone.org/BC/public/linphone-sdk.git --recursive \n$ git submodule update --init --recursive\nRun Code Online (Sandbox Code Playgroud)\n或者
\n$ git clone --recurse-submodules https://gitlab.linphone.org/BC/public/linphone-sdk.git\nRun Code Online (Sandbox Code Playgroud)\n重建项目:
\nPODFILE_PATH= pod install\n其中是 linphone-sdk 项目的构建目录,其中包含 linphone-sdk.podspec 文件和包含构建框架和资源的 linphone-sdk ouptut 目录。
\nPod 文件看起来像
\nsource "https://gitlab.linphone.org/BC/public/podspec.git"\nsource "https://github.com/CocoaPods/Specs.git"\n\ndef common_pods\n use_frameworks!\n\n pod \'linphone-sdk\', \'4.4.0\'\nend\nRun Code Online (Sandbox Code Playgroud)\n然后使用 Xcode 打开 linphone.xcworkspace 来构建并运行应用程序。
\n$ git clone https://gitlab.linphone.org/BC/public/linphone-sdk.git -- recursive\n$ git submodule update --init --recursive\nRun Code Online (Sandbox Code Playgroud)\n或者
\n$ git clone --recurse-submodules https://gitlab.linphone.org/BC/public/linphone-sdk.git\nRun Code Online (Sandbox Code Playgroud)\n进入构建目录
\n$ mkdir build && cd build\nRun Code Online (Sandbox Code Playgroud)\n\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2 \x80\x94\xe2\x80\x94\xe2\x80\x94
\nhttps://gitlab.linphone.org/BC/public/linphone-cmake-builder/blob/ios-3.13.19/README.python.md
\n首先,安装brew
\n$ brew install cmake\n$ brew install yasm\n$ brew install pkg-config\nRun Code Online (Sandbox Code Playgroud)\n安装点->
\n$ curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py\n$ python get-pip.py\n\n$ python -m pip install pystache //Check by $ python -m pip list\n\n$ brew install doxygen\nRun Code Online (Sandbox Code Playgroud)\n\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2\x80\x94\xe2 \x80\x94\xe2\x80\x94\xe2\x80\x94
\n$ cmake .. -G Xcode -DLINPHONESDK_PLATFORM=IOS -DENABLE_G729=YES -DENABLE_G729B_CNG=YES -DENABLE_VCARD=OFF -DENABLE_ILBC=OFF -DENABLE_SILK=OFF -DENABLE_ISAC=OFF -DENABLE_MKV=OFF -DENABLE_GSM=OFF -DENABLE_DOC=OFF -DENABLE_UNIT_TESTS=OFF -DENABLE_LIME=OFF -DENABLE_GPL_THIRD_PARTIES=OFF -DENABLE_NON_FREE_CODECS=OFF\nRun Code Online (Sandbox Code Playgroud)\n注意 - 在此步骤中,我们还将在 linphone sdk 中启用 G729 dedec 支持。
\n$ cmake --build . --config RelWithDebInfo\nRun Code Online (Sandbox Code Playgroud)\n编译过程完成现在需要与Xcode集成
\n在下面的目录中找到编译好的sdk\nlinphone-sdk -> build -> linphone-sdk -> apple-darwin
\n6(可选)。如果体验脚本由于使用了我们的项目的 fat 库而导致应用程序崩溃,则脚本中有一个微小的更改,我从此 URL 找到了解决方案 - Errors Building Xcode Project after add in Run Script fatal error: lipo: input file
\nAPP_PATH="${TARGET_BUILD_DIR}/${WRAPPER_NAME}"\n\nfind "$APP_PATH" -name \'*.framework\' -type d | while read -r FRAMEWORK\ndo\n FRAMEWORK_EXECUTABLE_NAME=$(defaults read "$FRAMEWORK/Info.plist" CFBundleExecutable)\n FRAMEWORK_EXECUTABLE_PATH="$FRAMEWORK/$FRAMEWORK_EXECUTABLE_NAME"\n echo "Executable is $FRAMEWORK_EXECUTABLE_PATH"\n\n# Start of Script modify - identify if the framework is FAT. If it is, then it skips it.\n if [ ! -f "${FRAMEWORK_EXECUTABLE_PATH}" ]; then\n continue\n fi\n\n if xcrun lipo -info "${FRAMEWORK_EXECUTABLE_PATH}" | grep --silent "Non-fat"; then\n echo "Framework non-fat, skipping: $FRAMEWORK_EXECUTABLE_NAME"\n continue\n fi\n\n echo "Thinning framework $FRAMEWORK_EXECUTABLE_NAME"\n# end of Script modify\n\n EXTRACTED_ARCHS=()\n\n for ARCH in $ARCHS\n do\n echo "Extracting $ARCH from $FRAMEWORK_EXECUTABLE_NAME"\n lipo -extract "$ARCH" "$FRAMEWORK_EXECUTABLE_PATH" -o "$FRAMEWORK_EXECUTABLE_PATH-$ARCH"\n EXTRACTED_ARCHS+=("$FRAMEWORK_EXECUTABLE_PATH-$ARCH")\n done\n\n echo "Merging extracted architectures: ${ARCHS}"\n lipo -o "$FRAMEWORK_EXECUTABLE_PATH-merged" -create "${EXTRACTED_ARCHS[@]}"\n rm "${EXTRACTED_ARCHS[@]}"\n\n echo "Replacing original executable with thinned version"\n rm "$FRAMEWORK_EXECUTABLE_PATH"\n mv "$FRAMEWORK_EXECUTABLE_PATH-merged" "$FRAMEWORK_EXECUTABLE_PATH"\n\ndone\nRun Code Online (Sandbox Code Playgroud)\n注意:如果您的情况是添加脚本导致应用程序崩溃,正如我在第六点中提到的,但每次添加脚本时,都必须 pod deintegra 帮助我避免它。
\n:) 现在可以在您的项目中享受使用 linphone sdk 的乐趣了。
\n#更新 - 添加第五点编译以将应用程序上传到应用程序商店和 G729 编解码器配置。
\n| 归档时间: |
|
| 查看次数: |
6111 次 |
| 最近记录: |