I would like to use some thridparty libraries found in cocoapods but those libraries are not available in Nuget.
Basically I would like to use these libraries in xamarin.
I have asked the same question in stackoverflow also
http://stackoverflow.com/q/42728094/7621990
Please help me with detailed steps
Answers
Our docs already have the steps outlined. Please see:
https://developer.xamarin.com/guides/ios/advanced_topics/binding_objective-c/
and
https://developer.xamarin.com/guides/cross-platform/macios/binding/objective-sharpie/examples/cocoapod/
These docs are meant for Objective c based cocoapods but how about Swift based cocoapods library ?
Unfortunately our binding engine does not work with Swift libraries at this time.
I'm trying to follow that documentation, maybe I'm missing something. My goal is to install the Firebase Cloud Messaging component for iOS. The Getting Started directs me to the Google instructions which says to use Cocoapods. Am I correct that Sharpie is the prefererred method for a Xamarin project?
The "real world example" page referred above says to do: "sharpie pod init ios AFNetworking".
My real world is different:
$ sharpie pod init ios 'Firebase/Core'
error: invalid SDK identifier: ios
$ sharpie pod init iOS 'Firebase/Core'
error: invalid SDK identifier: iOS
This is in a Forms project with iOS and Android.
Any ideas what I'm missing?
UPDATE: The answer in my case, pieced together from a number of different SO posts was that sharpie is hard-coded to look for the iOS sdk's through XCode's default location of /Applications/Xcode.app. That's not where mine was. Plus xcodebuild wasn't pointing to Xcode's Developer directory. Now on to other errors, LOL:
[ERROR] FATAL UNHANDLED EXCEPTION: Sharpie.ProcessException: 'pod --version' exited with error code 1
at Sharpie.ProcessRunner.Run[T] (FilePath executablePath, Sharpie.ProcessArguments arguments, System.Func
3 readHandler, Boolean redirectStandardOutput, Boolean redirectStandardError) <0x109403b80 + 0x0037a> in <filename unknown>:0 at Sharpie.CocoaPods.Pod.get_Version () <0x1094038a0 + 0x0020d> in <filename unknown>:0 at Sharpie.PodTool+PodCommandTool.CheckForCocoaPods () <0x1094036a0 + 0x00010> in <filename unknown>:0 at Sharpie.PodTool+InitTool.Run () <0x1094025b0 + 0x00171> in <filename unknown>:0 at Sharpie.Tooling.Tool.Run (IEnumerable
1 args) <0x1093f1070 + 0x0064a> in :0at Sharpie.Tooling.ToolRunnerTool.Run () <0x109400140 + 0x00289> in :0
at Sharpie.Tooling.Tool.Run (IEnumerable
1 args) <0x1093f1070 + 0x0064a> in <filename unknown>:0 at Sharpie.Tooling.ToolRunnerTool.Run () <0x109400140 + 0x00289> in <filename unknown>:0 at Sharpie.Entry+SharpieToolRunnerTool.Run () <0x109400070 + 0x0002c> in <filename unknown>:0 at Sharpie.Tooling.Tool.Run (IEnumerable
1 args) <0x1093f1070 + 0x0064a> in :0at Sharpie.Tooling.ToolRunnerTool.Run (IEnumerable
1 args, System.Action
1 aboutToRunToolHandler) <0x1093f0fd0 + 0x0005c> in :0at Sharpie.Entry.Main (System.String[] args) <0x10608ae60 + 0x0032b> in :0
@HowardFore.0656 Shouldn't the preferred method be using the component from Xamarin Component store? I'm not too familiar with the Visual Studio IDE, but at least for Visual Studio for Mac there is a Components folder where you can edit your components.
If you right click that folder, click edit components, and log into your Xamarin account, you should be able to search the store and download the firebase component without going through Objective Sharpie.
Hi,
I know this is an old post, I saw an article which uses objc-automatic tool.
sorokoletov.com/2017/02/05/objc-automatic-easy-way-to-create-xamarin-bindings-ios/
-anoop