Skip to content

Issues integrating VLCKit

Description

I'm having a hard time integrating VLCKit in an iOS project.
Below is a description of each path i have tried.
Using carthage and building manually didn't work.
Using cocoapods worked with a little tweak.
If my issues are reproducible, i think the installation steps on the README.md should be updated.

Integrating w/ Carthage : failure

Xcode : Version 11.2.1 (11B500)
Carthage : 0.34.0

  1. Created a new Single View App with Xcode
  2. cd FooBarApp/
  3. touch Cartfile
  4. echo "binary \"https://code.videolan.org/videolan/VLCKit/raw/master/Packaging/MobileVLCKit.json\" ~> 3.3.0" >> Cartfile
  5. carthage update terminal output
  6. drag and drop Carthage/Build/iOS/MobileVLCKit.framework into Frameworks, Libraries, and Embedded Content (app target's General tab)
    1. Verify that Framework Search Paths is automatically updated in Build Settings.
    2. Verify that Embed Frameworks phase is automatically created in Build Phases.
  7. Create an empty objc file to trigger FooBarApp-Bridging-Header.h creation.
  8. Delete objc file previously created.
  9. add #import <MobileVLCKit/MobileVLCKit.h> to the bridging header.
  10. Try to Build & Run on simulator. Build succeeds. Get an error pop-up This app could not be installed at this time. with this description
  11. Try to Build & Run on device. Build succeeds. Get an error pop-up Unable to install "FooBarApp" with this description

Failed attempt

Based on what i found online, I tried to codesign -f the produced FooBarApp.app then drag and drop it directly in my iPhone through the Devices & Simulators window. But it didn't work either.

Integrating w/ CocoaPods : success

Xcode : Version 11.2.1 (11B500)
CocoaPods: 1.7.4

  1. Created a new Single View App with Xcode
  2. cd FooBarApp/
  3. pod init
  4. Based on README.md wrote inside Podfile
source 'https://github.com/CocoaPods/Specs.git'

target 'FooBarApp' do
    platform :ios, '8.4'
    pod 'MobileVLCKit', '3.3.0'
end
  1. pod install terminal output
  2. open FooBarApp.xcworkspace
  3. Create an empty objc file to trigger FooBarApp-Bridging-Header.h creation.
  4. Delete objc file previously created.
  5. add #import <MobileVLCKit/MobileVLCKit.h> to the bridging header.
  6. Try to Build & Run on simulator. Build succeeds. Run succeeds. Hurray!
  7. Try to Build & Run on device. Build fails on linking step with this description
  8. On app's target i set Enabe Bitcode to No in the Build Settings.
  9. Successfully Build & Run.

Integrating w/ manual build : failure

TODO: Document my steps

Edited by lofo
To upload designs, you'll need to enable LFS and have an admin enable hashed storage. More information