Binding Objective-C Libraries in Xamarin.iOS

16
Binding Objective-C Libraries Pierce Boggan Xamarin Support Engineer [email protected] m [email protected]

description

Ever wondered how to use Objective-C libraries in your Xamarin.iOS project? Now you can learn, with Binding Objective-C Libraries in Xamarin.iOS. Video: Coming Objective Sharpie: http://docs.xamarin.com/guides/ios/advanced_topics/binding_objective-c_libraries/objective_sharpie QBFlatButton: https://github.com/questbeat/QBFlatButton FlatButton: https://github.com/pierceboggan/FlatButton Producing Better Bindings: http://blog.xamarin.com/producing-better-bindings-for-xamarin.ios-and-xamarin.mac/

Transcript of Binding Objective-C Libraries in Xamarin.iOS

Page 1: Binding Objective-C Libraries in Xamarin.iOS

Binding Objective-C Libraries

Pierce BogganXamarin Support [email protected]@pierceboggan.com

Page 2: Binding Objective-C Libraries in Xamarin.iOS

Why?

• Time

• Money

• Creativity

• “Great artists steal”

Page 3: Binding Objective-C Libraries in Xamarin.iOS

Potential Obstacles

• Complicated

• Just another thing to learn

• No Objective-C knowledge

• No knowledge of the process

Page 4: Binding Objective-C Libraries in Xamarin.iOS

Simplicity

• No Objective-C knowledge is required (for most simple libraries)

• Tools that cut down time to bind

• Very mechanical, repeatable process

Page 5: Binding Objective-C Libraries in Xamarin.iOS

Binding vs. Converting

Binding

• Little-to-no Objective-C knowledge required

• Quick and straightforward

• Less customization and extensibility

Converting

• Objective-C knowledge is a must

• Quite tedious

• More customization and extensibility

Page 6: Binding Objective-C Libraries in Xamarin.iOS

Expectations

WON’T:

• Be a bindings expert

• Be able to bind complex libraries

WILL:

• Be able to bind simple libraries with no Objective-C knowledge

• Have a solid foundation moving forward

Page 7: Binding Objective-C Libraries in Xamarin.iOS

Finding & Downloading Libraries

WHAT:

• UI Controls

• SDKs

• Helper Libraries

WHERE:

• CocoaControls

• Github

• Twitter

Page 8: Binding Objective-C Libraries in Xamarin.iOS

First Time Downloads

• Objective Sharpie

• Xcode Command Line Tools

• Other SDKs to bind against

Page 9: Binding Objective-C Libraries in Xamarin.iOS

DEMO

Page 10: Binding Objective-C Libraries in Xamarin.iOS

QBFlatButton

• Open-sourced on Github

• Text version

Page 11: Binding Objective-C Libraries in Xamarin.iOS

Process Review

1. Identify & Download Library

2. Create an Objective-C Static Library

3. Generate Bindings with Objective Sharpie

4. Create iOS Binding Project in Xamarin Studio

Page 12: Binding Objective-C Libraries in Xamarin.iOS

Process Review: Optional

1. Create Demo Project

2. Open-source on Github

3. Submit to the Xamarin Component Store

Page 13: Binding Objective-C Libraries in Xamarin.iOS

Moving Forward: Reading Up

• Programming with Objective-C (Apple)

• Binding Objective-C Libraries (Xamarin)

• Binding Types Reference (Xamarin)

• .NET Framework Design Guidelines (Microsoft)

Page 14: Binding Objective-C Libraries in Xamarin.iOS

Moving Forward: Practice

• Remember: Practice makes perfect!

• Examine other bindings in the mono/monotouch-bindings repository

• Make small additions/fixes to existing bindings

• Bind progressively larger libraries on your own

Page 15: Binding Objective-C Libraries in Xamarin.iOS

Q&A

Page 16: Binding Objective-C Libraries in Xamarin.iOS

THANK YOU