首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >将Linphone应用程序集成到我的iOS应用程序中

将Linphone应用程序集成到我的iOS应用程序中
EN

Stack Overflow用户
提问于 2013-08-06 13:09:12
回答 2查看 5.3K关注 0票数 7

在StackOverflow的Linphone构建中有大约20个问题。他们中有几个询问如何将Linphone集成到现有的xcode项目中。我跟踪了他们所有人。我能够成功地构建和运行Linphone项目。

不过,为配合我现有的计划,我已包括:

  • linphone-sdk/apple-darwin/includelinphone-sdk/apple-darwin/lib给我的项目。
  • Xcode项目->Build>搜索路径/头搜索路径:子模块/linphone/coreapi子模块/linphone/mediastreamer2 2/include子模块/linphone/纵隔器2/include子模块/linphone/oRTP//gsm/子模块/外部/osip子模块/外部/包括子模块/外部/外部/包括子模块/外部/speex/包括类/Utils/NinePatch/Classes/Utils/ the /oRTP
  • 使用目标成员资格将所有.a标记为当前目标

为了让Linphone在我的项目中工作,我还应该做什么?还是我应该为Linphone创建一个静态库?如果是的话,我应该关心什么?

EN

回答 2

Stack Overflow用户

发布于 2015-07-16 15:15:20

为了能够在Swift项目上构建和运行Linphone,我必须执行以下步骤:

  1. Downlaod最新的SDK (带有wget)来自: http://www.linphone.org/snapshots/ios/liblinphone-iphone-sdk-latest.zip
  2. 在项目中复制、粘贴和插入:

代码语言:javascript
复制
- liblinphone-sdk/apple-darwin/include
- liblinphone-sdk/apple-darwin/lib
- liblinphone-sdk/apple-darwin/share/images
- liblinphone-sdk/apple-darwin/share/sounds

  1. 用:创建桥接-Header.h

代码语言:javascript
复制
- `#import <Foundation/Foundation.h>`
- `#import <UIKit/UIKit.h>`
- `#import <linphone/linphonecore.h>`

  1. 创建一个导入桥接头的PrefixHeader.pch:

代码语言:javascript
复制
- `#import "Bridging-Header.h"`

  1. 集成了以下豆荚:

代码语言:javascript
复制
- `pod 'xmlrpc', '~> 2.3.4'`
- `pod 'Tortuga22-NinePatch', '~> 0.1.1'`

  1. 配置生成设置:

`

代码语言:javascript
复制
GCC_PRECOMPILE_PREFIX_HEADER = YES
GCC_PREFIX_HEADER = path/to/PrefixHeader.pch
OTHER_LDFLAGS = -ObjC $(inherited)
FRAMEWORK_SEARCH_PATHS = $(inherited)
HEADER_SEARCH_PATHS = $(inherited) ${PODS_ROOT}/Headers/Public $(PROJECT_DIR)/External/liblinphone-sdk/apple-darwin/include
LIBRARY_SEARCH_PATHS = $(inherited) $(PROJECT_DIR)/External/liblinphone-sdk/apple-darwin/lib $(PROJECT_DIR)/External/liblinphone-sdk/apple-darwin/lib/mediastreamer/plugins

`

  1. 配置宏:

`

代码语言:javascript
复制
GCC_PREPROCESSOR_DEFINITIONS = $(inherited) HAVE_OPENH264 HAVE_SILK HAVE_SSL
OTHER_SWIFT_FLAGS = $(inherited) -D HAVE_OPENH264 -D HAVE_SILK -D HAVE_SSL

`

  1. 库与框架:

首先,从文件夹(和子文件夹)添加liblinphone-sdk/apple-darwin/lib中的所有库。然后确保添加以下列表:

吊舱:

  • libPods.a

动态自由联盟:

  • libz.dylib
  • libiconv.dylib
  • libxml2.dylib
  • libsqlite3.dylib
  • libc++.dylib
  • libstdc++.6.dylib
  • libresolv.dylib

框架:(对不起,我不确定它们是否都是100%需要的,但这就是我如何实现库构建的方法)

  • AudioToolbox.framework
  • UIKit.framework
  • QuartzCore.framework
  • OpenGLES.framework
  • MessageUI.framework
  • MediaPlayer.framework
  • CoreGraphics.framework
  • MobileCoreServices.framework
  • AddressBookUI.framework
  • AddressBook.framework
  • SystemConfiguration.framework
  • CFNetwork.framework
  • AssetsLibrary.framework
  • AVFoundation.framework
  • CoreAudio.framework
  • CoreMedia.framework
  • CoreTelephony.framework
  • CoreVideo.framework
  • Foundation.framework
  • CoreLocation.framework

如何测试:

为了验证它是否有效,我从Linphone应用程序中集成了一些示例代码,并在我的视图控制器中做了一些小设置。为此,我在项目中集成了以下类:

  • H,m
  • LinphoneManager.h .h
  • LinphoneCoreSettingsStore.h,m
  • FastAddressBook.h
  • LinphoneIOSVersion.h
  • pod 'InAppSettingsKit','~> 2.6‘

PS:我必须更新它们,以便在没有警告或错误的情况下进行构建。

我希望有一天这会对某人有所帮助!

票数 9
EN

Stack Overflow用户

发布于 2013-10-30 09:33:40

检查以下标题搜索路径。还设置其他链接器标志 -ObjC

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/18081140

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档