Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Binding Third-Party Objective-C Libraries

Binding Third-Party Objective-C Libraries

Want to learn how to use Objective-C controls, libraries, and SDKs in your Xamarin.iOS app? Look no further! Discover how to bind Objective-C code using Xamarin's new Objective Sharpie tool that reduces the need to know Objective-C in order to bind libraries!

Pierce Boggan

July 23, 2013
Tweet

Other Decks in Technology

Transcript

  1. Potential Obstacles •  Complicated •  Just another thing to learn

    •  No Objective-C knowledge •  No knowledge of the process
  2. Simplicity •  No Objective-C knowledge is required (for most simple

    libraries) •  Tools that cut down time to bind •  Very mechanical, repeatable process
  3. 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
  4. 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
  5. Finding & Downloading Libraries WHAT: •  UI Controls •  SDKs

    •  Helper Libraries WHERE: •  CocoaControls •  Github •  Twitter
  6. 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
  7. Process Review: Optional 1.  Create Demo Project 2.  Open-source on

    Github 3.  Submit to the Xamarin Component Store
  8. Moving Forward: Reading Up •  Programming with Objective-C (Apple) • 

    Binding Objective-C Libraries (Xamarin) •  Binding Types Reference (Xamarin) •  .NET Framework Design Guidelines (Microsoft)
  9. 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
  10. Q&A