Mastering Cross-Platform Development with Xamarin.
Master the skills required to steer cross-platform applications from drawing board to app store(s) using XamarinAbout This Book Develop your Xamarin development skills with this comprehensive guide on various patterns and features so you can create elegant and high-quality applications Create adapti...
Clasificación: | Libro Electrónico |
---|---|
Autor principal: | |
Formato: | Electrónico eBook |
Idioma: | Inglés |
Publicado: |
Birmingham :
Packt Publishing, Limited
March 2016.
|
Temas: | |
Acceso en línea: | Texto completo |
Tabla de Contenidos:
- Cover
- Copyright
- Credits
- About the Authors
- About the Reviewers
- www.PacktPub.com
- Table of Contents
- Preface
- Chapter 1: Developing with Xamarin
- Cross-platform projects with Xamarin
- Xamarin as a platform
- Xamarin as a product
- Target platforms
- Xamarin on Android
- Xamarin on iOS
- Windows Runtime apps
- Setting up the development environment
- Choosing the right development OS
- Xamarin Studio setup and configuration
- Visual Studio setup and configuration
- Emulator options
- Emulators for Android
- iOS emulation
- A typical Xamarin solution structure
- Portable class libraries
- Shared projects
- Xamarin. Forms
- NuGet packages
- Components
- Quality in cross-development
- Reusability
- Abstraction
- Loose-coupling
- Nativity
- Summary
- Chapter 2: Memory Management
- Application Component lifecycle
- Activity lifecycle (Android)
- Active/Running
- Paused
- Backgrounded
- Stopped
- Restarted
- Application lifecycle (iOS)
- Garbage collection
- GC on Xamarin projects
- SGen garbage collector
- Boehm garbage collector (iOS only)
- Platform-specific concepts
- Object reference types
- Automatic Reference Counting (ARC)
- Troubleshooting and diagnosis
- Xamarin Profiler
- Allocations instrument
- Time Profiler
- Device Monitor (Android only)
- Instruments (iOS only)
- Monotouch Profiler (iOS only)
- Patterns and best practices
- Disposable objects
- The lapsed listener problem
- Weak references
- Cross-domain objects
- Cyclic references (cycles)
- Summary
- Chapter 3: Asynchronous Programming
- Multithreading on Xamarin
- Single thread model
- Task-based Asynchronous Pattern
- Concurrency model on iOS
- Asynchronous methods
- Continuation
- Cancellation
- Progress
- Task batches
- Parallel execution
- Patterns and best practices.
- Async pattern conversions
- Multi-threading with tasks
- Exception handling
- Initialization pattern
- Semaphores
- Background tasks
- Background tasks on iOS
- Services (Android only)
- Summary
- Chapter 4: Local Data Management
- Data in mobile applications
- State
- App data
- Local files
- External data
- Application data
- Installation directory
- Android
- iOS
- Local storage
- Android
- iOS
- Temporary storage
- Local filesystem
- SQLite
- Patterns and best practices
- Application preferences
- File picker
- Backup/Roaming
- Android and Backup API
- iOS and ubiquitous storage
- Summary
- Chapter 5: Networking
- Connected apps
- Web services
- Transport
- Messaging
- SOAP/XML services
- RESTful services
- OData and OAuth
- OData
- OAuth
- SignalR
- Patterns and best practices
- Async conversions
- Data model abstraction
- Service cache
- Platform-specific concepts
- Permissions
- NSUrlConnection/NSUrlSession (iOS Only)
- Background downloads
- Push notifications
- Cloud integration
- Azure Mobile Services
- Azure offline data
- Azure authentication
- Summary
- Chapter 6: Platform Extras
- Content sharing
- File pickers and contracts (Windows Store apps)
- Document Provider extensions (iOS)
- ContentProvider and ContentResolver (Android)
- Peripherals
- Bluetooth
- Wi-Fi Direct
- Near Field Communication
- Location data
- Android location and Google Play services
- Location services on iOS
- Location data on Windows Runtime
- Geofencing
- Native libraries
- Managed callable wrappers (Android)
- Linking versus binding (iOS)
- Summary
- Chapter 7: View Elements
- Design philosophy
- User expectations
- Platform imperatives
- Hardware dependency
- Design metrics on Android
- Design metrics on iOS
- Design metrics on Windows Runtime
- Design elements.
- The basic layout
- Navigation
- Horizontal navigation
- Vertical navigation
- Jump navigation
- Content elements
- Collection views
- Modal views
- Text views
- Web views
- Feedback
- Indeterminate progress
- Determinate progress
- User interaction
- Interactive controls
- Text input
- Dropdown selection
- Option selection
- Gestures
- Summary
- Chapter 8: Xamarin. Forms
- Under the hood
- Anatomy of Xamarin. Forms
- Project structure
- Components
- Pages
- Tabbed page
- The MasterDetail page
- NavigationPage
- CarouselPage
- ContentPage
- Layouts
- Views
- Extending forms
- Styles
- Triggers and behaviors
- Custom renderers
- Patterns and best practices
- Messaging infrastructure
- Dependency injection
- Shared project versus portable project
- Platform-specific fine-tuning
- Summary
- Chapter 9: Reusable UI Patterns
- Visual assets
- Text resources
- Xamarin. Android
- Xamarin.iOS
- Windows Phone
- Image resources
- Adaptive visual assets
- Reusable assets
- Localization
- Locale and culture
- Windows Phone
- Xamarin.iOS
- Xamarin. Android
- Xamarin. Forms
- Architectural patterns
- MVC
- iOS app architecture
- MVVM
- Windows Runtime
- MVVM on Xamarin.iOS and Xamarin. Android
- MVVM with Xamarin. Forms
- Summary
- Chapter 10: ALM
- Developers and QA
- Development pipeline
- Troubleshooting and diagnostics
- Unit testing
- Platform-agnostic unit tests
- Platform-specific unit tests
- UI testing
- Xamarin. UITests and Xamarin Test Cloud
- Xamarin Test Recorder
- Coded UI tests (Windows Phone)
- Calabash
- Summary
- Chapter 11: ALM
- Project and Release Management
- Source control
- TFVC
- Git
- TFS/Git scenarios
- Git bridge
- NuGet packages
- Subversion (SVN)
- Continuous integration
- Visual Studio Team Services
- TeamCity
- Other
- Automated testing.
- Beta deployment
- HockeyApp
- Crashlytics
- TestFlight
- Package distribution
- Live telemetry
- Xamarin Insights
- Application Insights
- Summary
- Chapter 12: ALM
- App Stores and Publishing
- Release packages
- Xamarin. Android app package (.apk)
- Disabling debugging
- Linking
- Packing options
- Packaging
- Xamarin.iOS app bundle (.ipa)
- Build options
- Linking
- Provisioning profile
- Windows Phone app package (.appx)
- Distribution options
- App store(s)
- Ad-hoc
- Line of Business apps
- Private channel distribution (Android)
- Apple Developer Enterprise Program
- Windows Phone private distribution
- Summary
- Index.