Eric Duran and Roger López discuss the benefits and challenges of building
the native iOS and Android DrupalCampNYC apps.
Topics include:
Why native? Why not use PhoneGap or Titanium?
A quick look at how each app was built:
What libraries were used.
How was Drupal used.
How to get started with each platform.
Difficulties learning a new language and platform.
7. PhoneGap
Pros Cons
• Cross-platform • Limited by the WebKit
wrapper
• HTML, CSS and JavaScript
• Non-native controls and
• Nothing new to learn
animations
• Leverage existing code
Monday, December 12, 11
8. Appcelerator Titanium
Pros Cons
• Cross-platform • Cross-platform anomalies
• Compiles to native code • Near* native speed
• Near* native speed • Lack of relevant
documentation
• You already know
javascript! • You (probably) don’t know
the Titanium API.
Monday, December 12, 11
10. App Demo
• Yep, live demo :-P @robbiethegeek
• Lets launch the emulator!
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
11. Android SDK & Eclipse
Pros Cons
• Nice Integrated • ECLIPSE!
environment (ADT)
• Emulator is slowwww
• Seamless Market Upload
• Super simple device testing
• TONS of sample code out
there.
Monday, December 12, 11
12. Useful Libraries
• iosched* (http://code.google.com/p/iosched/)
– This accounted for 75% of the app.
• json-simple
• Android Compatibility Library
• Android ViewPagerIndicator
• Google Analytics
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
13. Putting it all together
• Logic/Code in Java
• Layout in XML
• Multiple device support is possible (Just time
consuming)
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
18. Useful Libraries
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
19. Useful Libraries
• RestKit
– https://github.com/RestKit/RestKit
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
20. Useful Libraries
• RestKit
– https://github.com/RestKit/RestKit
• SDWebImage
– https://github.com/rs/SDWebImage
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
21. Useful Libraries
• RestKit
– https://github.com/RestKit/RestKit
• SDWebImage
– https://github.com/rs/SDWebImage
• PullToRefresh
– https://github.com/leah/PullToRefresh
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
22. Useful Libraries
• RestKit
– https://github.com/RestKit/RestKit
• SDWebImage
– https://github.com/rs/SDWebImage
• PullToRefresh
– https://github.com/leah/PullToRefresh
• OHAttributedLabel
– https://github.com/AliSoftware/OHAttributedLabel
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11
23. TestFlight
• Ad-Hoc beta testing
• In-app updates
• Session reporting & Checkpoints
• User feedback from within the app
• Crash reporting and logging
SEND QUESTIONS BY MARKING YOUR TWEETS WITH BOTH #dcnyc10 AND #mobile
Monday, December 12, 11