无法为IOS

时间:2017-11-28 16:12:02

标签: ios objective-c xcode cocoa-touch libvlc

我尝试为IOS制作应用程序的最后几天包括VLCKit。我试图遵循我找到的所有方法和教程,但我无法正确编译应用程序。

我尝试过使用cocoapods pod ' MobileVLCKit','〜> 2.2' 即可。但是当我尝试编译应用程序时,由于缺少二进制文件,最终会出现编译错误。我告诉xcode不要使用二进制文件,但由于缺少函数,这只会导致更多的编译错误。 所以我遵循了Forum

的建议
  1. 创建一个虚拟Xcode项目,使用可可豆荚下载 MobileVLCkit

  2. 复制下载的" MobileVLCKit.framework "虚拟项目中的文件,进入项目根文件夹。

  3. 转到项目的目标构建设置,并将以下行添加到"标题搜索路径" (也加上引号)

    " $(PROJECT_DIR)/MobileVLCKit.framework/Headers"

    " $(BUILT_PRODUCTS_DIR)"

  4. 在项目的目标构建设置中,将以下行添加到框架搜索路径中(也添加引号)

    " $(SRCROOT)/MobileVLCKit.framework"

    " $(PROJECT_DIR)"

  5. 在其他链接器标志中添加以下行

    -l" BZ2"

    -l"的iconv"

    -framework" MobileVLCKit"

  6. 一般>链接的框架和库通过单击+ icon libstdc ++添加以下库.6.tbd

  7. 最重要的是通过包含以下行添加对Bridging-Header.h的引用

    导入" MobileVLCKit / MobileVLCKit.h"

  8. 键入VLCMediaPlayerDelegate进行测试,查看该自动是否完成。如果是这样,通过将他们指向此处来帮助他人,那么请回溯您的步骤 看看你错过了什么。

  9. 但最终它会给出同样的错误。

    ............

    然后我尝试按照官方文档Documentation

    手动添加库

    但它永远不会正确结束。 经过多次搜索后,似乎最新版本可能出现故障。所以我尝试了这个Suggestion,但就像以前一样,它不起作用。

    1. rm -Rf VLCKit#删除VLCKit的当前克隆以从新的克隆重启。

    2. git clone https://code.videolan.org/videolan/VLCKit.git #clone VLCKit当前版本

    3. cd VLCKit #move to VLCKit directory

    4. git reset --hard 2453a955435b9cae2c1637274416a4841ce66909 #move to working commit version

    5. 编辑buildMobileVLCKit.sh以使用上面的@ssbmaccom补丁添加bitcode支持

    6. ./ buildMobileVLCKit.sh -fb #Build VLCKit for device and Simulator with bitcode

    7. ................

      知道怎么解决吗?

      我的操作系统是 - > MacOS Sierra 10.12.6

      xcode的版本是 - > 9.0.1

        

      最后,我设法让它发挥作用,包括视频和音频。   测试我找到的库的所有版本和配置   一个似乎有效,或至少做我需要的。

           

      pod' MobileVLCKit-prod',' 2.7.9'

           

      禁用二进制文件。

2 个答案:

答案 0 :(得分:0)

您需要自己添加MobileVLCKit.framework。 enter image description here

enter image description here

enter image description here enter image description here

答案 1 :(得分:0)

你试过Cocoapods吗?这很简单:

  1. 将广告单MobileVLCKit添加到Podfile并运行pod install
  2. 将VLC添加为窗格后,您的项目不再需要链接。就我而言,我 有78个链接错误。要修复它,只需添加一个Objective-C ++文件 (例如forVLCLink.mm
  3. 编译项​​目后,您可以在桥接标题中导入MobileVLCKit
  4. 以下是您使用MobileVLCKit播放视频的方式:

    let mediaPlayer = VLCMediaPlayer()
    
    func playURI(uri: String) {
        mediaPlayer.drawable = self.movieView
        let url = URL(string: uri)
        let media = VLCMedia(url: url)
        mediaPlayer.media = media
    
        mediaPlayer.play()
    }
    
  5. 本文末尾的更多信息:https://hackernoon.com/live-stream-an-onvif-camera-on-your-ios-app-57fe9cead5a5