SlideShare una empresa de Scribd logo
1 de 30
Descargar para leer sin conexión
© 2010 WinWire TechnologiesWinWire Technologies, Inc. Confidential
Best Practices: Hybrid App Implementation
@WinWire
Wired2Win Webinar Series
© 2010 WinWire Technologies
Who We Are
IT solutions company
making information
actionable for the
enterprises in the
mobile-cloud world
Collaborative and
Analytics solutions
leveraging pre-built
solution accelerators
Cloud,
Collaboration &
Analytics Technologies
Mobility,
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Agenda
• Hybrid App: An Introduction
• Comparing Web, Native and Hybrid Development Approach
• Hybrid App Architecture: Web View & Native Wrapper Integration
• Performance Optimization
• Native/Web View Communication
• Benefits and Best Practices of Hybrid Application Development
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Hybrid App: An Introduction
A mobile app that primarily relies on providing
functionality by running web app or displaying Web
content inside of a native app container or wrapper
Hybrid App
© 2010 WinWire Technologies
Hybrid App
Web
Content
HTML5 Web pages
just displaying
information
Interactive
HTML5/JavaScript
web pages that also
include app
functionality
Web
Application
Content & App
functionality can
reside on the local
mobile device or
fetched from a
remote server on an
as-needed basis
Remote
& Local
Content-intensive
apps such as
newspapers,
magazines, support
forums, etc.
Optimal
Usage
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Comparison
Native
App functionality is built around native
device mobile programming languages
100% HTML5 mobile app without any
native components
Mobile Web
Contains no native components and
embeds web & own web extensions
(HTML5/CSS/JavaScript) into a native
shell
Hybrid Framework
(Phone Gap, Sencha Mobile)
Extended Native App to contain Web or
Hybrid Framework components
100% Native?
Objective C Java C#
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Web View
All Web
content/app runs
inside of Web
Views within a
Native
Wrapper/Container
© 2010 WinWire Technologies
Web View
Uniform Web content display within each defined Web View
Uniform Web page display across devices and browsers with no
change to the code base
Responsive Web Design
Optimal viewing experience
Easy reading & navigation
Minimum resizing, panning & scrolling
© 2010 WinWire Technologies
Web View
Multi Platform Support
Leveraging
Hybrid App for
Multi-platform
Support
Container is written in Native mobile language
HTML5 Web components can be reused across platforms without customization
Objective C Container + HTML5 Java Container + HTML5 C# Container + HTML5
Leveraging
Hybrid App for
Cross-platform
Support
Container is written in Cross-platform tool, only ONCE
HTML5 Web components can be reused across platforms without customization
+ +OR
© 2010 WinWire Technologies
Web View
Multi Form Factor Support
iPhone
5: 1136×640
4S: 640×960
1st & 2nd generations:
1024×768
3rd generation:
2048×1536
iPad
1024×768
iPad Mini
For various Screen Sizes:
Small: 426dp x 320dp
Normal: 470dp x 320dp
Large: 640dp x 480dp
Extra-large: 960dp x
720dp
Android
Phones
& Tablets
Responsive Web Design enables support across many form factors without a need to rewrite HTML5 code
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Performance Optimization
Responsive Web Design
Functionality
Graphics
Data Access
Faster performance
Tighter feature integration with the device
Implementation & access to complete set of device-specific functionality
Graphic-intensive pages tend to render slowly in HTML
Require bandwidth to be accessed from remote server
Animation is optimized within native view
Remote content access for dynamically generated HTML pages
Use Local HTML access for static content
Optimize Data Access
© 2010 WinWire Technologies
© 2010 WinWire Technologies
Native/Web View Communication
Web view component is weaved
along with native components
for seamless functioning
Separate functional entity
consisting of HTML, JavaScript
and CSS to send requests, fetch,
and display the response
To-and-fro communication with
native app to allow users to
control the web view from the
native and vice versa.
Native/Web View Communication
Cross platform Web View Functionality
© 2010 WinWire Technologies
Native to Web View
Direct Web View API Invocation
© 2010 WinWire Technologies
Native to Web View: Dos & Don’ts
Dos
Facilitate direct communication for opening URLs
Implement navigation methods using native UI components
Native aspects to be at the top and bottom and the web view to be in
between these
Don’ts
Creating a web view subclass to add an address bar and navigation controls
Placing native controls on top of the web view to perform actions
Using mobile devices for controlling the web view
© 2010 WinWire Technologies
Web View to Native
Direct Web View API Invocation
Web View Event Captures
© 2010 WinWire Technologies
Web View to Native: Dos & Don’ts
Dos
Implement event listeners for commonly used events
Implement events like swipe event, if user is notified of registration of swipe
event
Don’ts
Implementing all event listeners without looking into the effects
Implementing events counter-intuitively
© 2010 WinWire Technologies
JavaScript Injections
© 2010 WinWire Technologies
JavaScript Injections: Dos & Don’ts
Dos
Use ‘evalJS’ carefully to extract content out of the loaded web page in the
web view
Think of using ‘evalJS’ only as a last resort
Don’ts
Injecting JavaScript event listeners for events like scrolling, single tap
Using ‘evalJS’ as the only means to develop the app that requires web view
and native communication
Injecting very long JavaScript; injecting JavaScript into the web view
wherever possible
Exercise caution when trying to inject JavaScript into the web view on
different platforms
© 2010 WinWire Technologies
© 2010 WinWire Technologies
App Store
Discoverability
Single Codebase
Development Cost
Optimization
HTML5 Developer
Ubiquity
Native Mobile Device-
Specific Functionality
Rapid Development
Cycle
Maintenance Cost
Optimization
Benefits
© 2010 WinWire Technologies
Non-Native UI Interface:
Not as Attractive
Native UI Performance
Superior
Platform Variations for
Web View
Implementation
Latency in Fetching
Remote HTML Content
Extensive Native/Web
Data Integration
Non-Streamlined Coding
– Patchwork Under the
Hood
Challenges
© 2010 WinWire Technologies
Best Practices
Color Scheme consistency with Web Content
Avoids a Patchwork on the Presentation Layer
‘Illusion’ of Single App; not an App within App
Color Scheme
Cache Web Content
Minimizes Latency on Server Content
Allows for Offline Content Viewing
Content Search Functionality in Native View
Improves Search Return Performance
Device-specific function integration into Search
Mobile-Specific Features within Native App
Push Notification Settings
Calendar Synchronization Switch
Content
Search Mobility
© 2010 WinWire Technologies
Join us for our Next Webinar on Wired2Win Webinar Series!
Date: 15 May, 2014
Time: 9 am PT
© 2010 WinWire TechnologiesWinWire Technologies, Inc. Confidential
WinWire Technologies, Inc. Confidential
Reach out to us at marketing@winwire.com
Visit us: www.winwire.com
http://www.winwire.com/winwire-blog/
www.twitter.com/winwire
Thank You

Más contenido relacionado

Más de WinWire Technologies Inc

Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service WinWire Technologies Inc
 
Azure Arc - Managing Hybrid and Multi-Cloud Platforms
Azure Arc - Managing Hybrid and Multi-Cloud PlatformsAzure Arc - Managing Hybrid and Multi-Cloud Platforms
Azure Arc - Managing Hybrid and Multi-Cloud PlatformsWinWire Technologies Inc
 
Build a Modern Workplace using Microsoft Teams
Build a Modern Workplace using Microsoft TeamsBuild a Modern Workplace using Microsoft Teams
Build a Modern Workplace using Microsoft TeamsWinWire Technologies Inc
 
Build distributed, highly scalable applications in .NET using Microsoft Orleans
Build distributed, highly scalable applications in .NET using Microsoft OrleansBuild distributed, highly scalable applications in .NET using Microsoft Orleans
Build distributed, highly scalable applications in .NET using Microsoft OrleansWinWire Technologies Inc
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeWinWire Technologies Inc
 
Secure Your Cloud Environment with Azure Active Directory (AD)
Secure Your Cloud Environment with Azure Active Directory (AD)Secure Your Cloud Environment with Azure Active Directory (AD)
Secure Your Cloud Environment with Azure Active Directory (AD)WinWire Technologies Inc
 
Building Hybrid Cloud Apps with Azure and Azure stack
Building Hybrid Cloud Apps with Azure and Azure stackBuilding Hybrid Cloud Apps with Azure and Azure stack
Building Hybrid Cloud Apps with Azure and Azure stackWinWire Technologies Inc
 
Microsoft Teams – The Future of Teamwork in Office 365
Microsoft Teams – The Future of Teamwork in Office 365Microsoft Teams – The Future of Teamwork in Office 365
Microsoft Teams – The Future of Teamwork in Office 365WinWire Technologies Inc
 
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...WinWire Technologies Inc
 
Getting Ready for Hybrid SharePoint – SharePoint On-Premise, Office 365 & Az...
Getting Ready for Hybrid SharePoint –  SharePoint On-Premise, Office 365 & Az...Getting Ready for Hybrid SharePoint –  SharePoint On-Premise, Office 365 & Az...
Getting Ready for Hybrid SharePoint – SharePoint On-Premise, Office 365 & Az...WinWire Technologies Inc
 
Azure Serverless with Functions, Logic Apps, and Event Grid
Azure Serverless with Functions, Logic Apps, and Event Grid  Azure Serverless with Functions, Logic Apps, and Event Grid
Azure Serverless with Functions, Logic Apps, and Event Grid WinWire Technologies Inc
 
Drive Your Digital Transformation with Microsoft Dynamics 365
Drive Your Digital Transformation with Microsoft Dynamics 365 Drive Your Digital Transformation with Microsoft Dynamics 365
Drive Your Digital Transformation with Microsoft Dynamics 365 WinWire Technologies Inc
 
Modernize Your Infrastructure and Apps with Microsoft Azure
Modernize Your Infrastructure and Apps with Microsoft AzureModernize Your Infrastructure and Apps with Microsoft Azure
Modernize Your Infrastructure and Apps with Microsoft AzureWinWire Technologies Inc
 
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL DatabaseModern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL DatabaseWinWire Technologies Inc
 
Building Intelligent Cloud with Microsoft Azure
Building Intelligent Cloud with Microsoft AzureBuilding Intelligent Cloud with Microsoft Azure
Building Intelligent Cloud with Microsoft AzureWinWire Technologies Inc
 
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5)
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5) ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5)
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5) WinWire Technologies Inc
 

Más de WinWire Technologies Inc (20)

Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service Accelerate Application Innovation Journey with Azure Kubernetes Service
Accelerate Application Innovation Journey with Azure Kubernetes Service
 
CRM Technology Trends to Watch in 2020
CRM Technology Trends to Watch in 2020CRM Technology Trends to Watch in 2020
CRM Technology Trends to Watch in 2020
 
Azure Synapse Analytics
Azure Synapse AnalyticsAzure Synapse Analytics
Azure Synapse Analytics
 
Azure Arc - Managing Hybrid and Multi-Cloud Platforms
Azure Arc - Managing Hybrid and Multi-Cloud PlatformsAzure Arc - Managing Hybrid and Multi-Cloud Platforms
Azure Arc - Managing Hybrid and Multi-Cloud Platforms
 
Build a Modern Workplace using Microsoft Teams
Build a Modern Workplace using Microsoft TeamsBuild a Modern Workplace using Microsoft Teams
Build a Modern Workplace using Microsoft Teams
 
Build distributed, highly scalable applications in .NET using Microsoft Orleans
Build distributed, highly scalable applications in .NET using Microsoft OrleansBuild distributed, highly scalable applications in .NET using Microsoft Orleans
Build distributed, highly scalable applications in .NET using Microsoft Orleans
 
Getting Started with Infrastructure as Code
Getting Started with Infrastructure as CodeGetting Started with Infrastructure as Code
Getting Started with Infrastructure as Code
 
Box to OneDrive Migration
Box to OneDrive MigrationBox to OneDrive Migration
Box to OneDrive Migration
 
Secure Your Cloud Environment with Azure Active Directory (AD)
Secure Your Cloud Environment with Azure Active Directory (AD)Secure Your Cloud Environment with Azure Active Directory (AD)
Secure Your Cloud Environment with Azure Active Directory (AD)
 
Building Hybrid Cloud Apps with Azure and Azure stack
Building Hybrid Cloud Apps with Azure and Azure stackBuilding Hybrid Cloud Apps with Azure and Azure stack
Building Hybrid Cloud Apps with Azure and Azure stack
 
Microsoft Teams – The Future of Teamwork in Office 365
Microsoft Teams – The Future of Teamwork in Office 365Microsoft Teams – The Future of Teamwork in Office 365
Microsoft Teams – The Future of Teamwork in Office 365
 
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...
Designing Resilient Applications on Microsoft Azure/Disaster Recovery of Appl...
 
Getting Ready for Hybrid SharePoint – SharePoint On-Premise, Office 365 & Az...
Getting Ready for Hybrid SharePoint –  SharePoint On-Premise, Office 365 & Az...Getting Ready for Hybrid SharePoint –  SharePoint On-Premise, Office 365 & Az...
Getting Ready for Hybrid SharePoint – SharePoint On-Premise, Office 365 & Az...
 
Azure Serverless with Functions, Logic Apps, and Event Grid
Azure Serverless with Functions, Logic Apps, and Event Grid  Azure Serverless with Functions, Logic Apps, and Event Grid
Azure Serverless with Functions, Logic Apps, and Event Grid
 
Drive Your Digital Transformation with Microsoft Dynamics 365
Drive Your Digital Transformation with Microsoft Dynamics 365 Drive Your Digital Transformation with Microsoft Dynamics 365
Drive Your Digital Transformation with Microsoft Dynamics 365
 
Modernize Your Infrastructure and Apps with Microsoft Azure
Modernize Your Infrastructure and Apps with Microsoft AzureModernize Your Infrastructure and Apps with Microsoft Azure
Modernize Your Infrastructure and Apps with Microsoft Azure
 
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL DatabaseModern Data Security for the Enterprises – SQL Server & Azure SQL Database
Modern Data Security for the Enterprises – SQL Server & Azure SQL Database
 
Migration from eRoom to office 365
Migration from eRoom to office 365 Migration from eRoom to office 365
Migration from eRoom to office 365
 
Building Intelligent Cloud with Microsoft Azure
Building Intelligent Cloud with Microsoft AzureBuilding Intelligent Cloud with Microsoft Azure
Building Intelligent Cloud with Microsoft Azure
 
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5)
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5) ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5)
ASP.NET Core 1.0: Understanding ASP.NET Core 1.0 (ASP.NET 5)
 

Último

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?Igalia
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 

Último (20)

IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 

Best Practices - Hybrid App Implementation

  • 1. © 2010 WinWire TechnologiesWinWire Technologies, Inc. Confidential Best Practices: Hybrid App Implementation @WinWire Wired2Win Webinar Series
  • 2. © 2010 WinWire Technologies Who We Are IT solutions company making information actionable for the enterprises in the mobile-cloud world Collaborative and Analytics solutions leveraging pre-built solution accelerators Cloud, Collaboration & Analytics Technologies Mobility,
  • 3. © 2010 WinWire Technologies
  • 4. © 2010 WinWire Technologies Agenda • Hybrid App: An Introduction • Comparing Web, Native and Hybrid Development Approach • Hybrid App Architecture: Web View & Native Wrapper Integration • Performance Optimization • Native/Web View Communication • Benefits and Best Practices of Hybrid Application Development
  • 5. © 2010 WinWire Technologies
  • 6. © 2010 WinWire Technologies Hybrid App: An Introduction A mobile app that primarily relies on providing functionality by running web app or displaying Web content inside of a native app container or wrapper Hybrid App
  • 7. © 2010 WinWire Technologies Hybrid App Web Content HTML5 Web pages just displaying information Interactive HTML5/JavaScript web pages that also include app functionality Web Application Content & App functionality can reside on the local mobile device or fetched from a remote server on an as-needed basis Remote & Local Content-intensive apps such as newspapers, magazines, support forums, etc. Optimal Usage
  • 8. © 2010 WinWire Technologies
  • 9. © 2010 WinWire Technologies Comparison Native App functionality is built around native device mobile programming languages 100% HTML5 mobile app without any native components Mobile Web Contains no native components and embeds web & own web extensions (HTML5/CSS/JavaScript) into a native shell Hybrid Framework (Phone Gap, Sencha Mobile) Extended Native App to contain Web or Hybrid Framework components 100% Native? Objective C Java C#
  • 10. © 2010 WinWire Technologies
  • 11. © 2010 WinWire Technologies Web View All Web content/app runs inside of Web Views within a Native Wrapper/Container
  • 12. © 2010 WinWire Technologies Web View Uniform Web content display within each defined Web View Uniform Web page display across devices and browsers with no change to the code base Responsive Web Design Optimal viewing experience Easy reading & navigation Minimum resizing, panning & scrolling
  • 13. © 2010 WinWire Technologies Web View Multi Platform Support Leveraging Hybrid App for Multi-platform Support Container is written in Native mobile language HTML5 Web components can be reused across platforms without customization Objective C Container + HTML5 Java Container + HTML5 C# Container + HTML5 Leveraging Hybrid App for Cross-platform Support Container is written in Cross-platform tool, only ONCE HTML5 Web components can be reused across platforms without customization + +OR
  • 14. © 2010 WinWire Technologies Web View Multi Form Factor Support iPhone 5: 1136×640 4S: 640×960 1st & 2nd generations: 1024×768 3rd generation: 2048×1536 iPad 1024×768 iPad Mini For various Screen Sizes: Small: 426dp x 320dp Normal: 470dp x 320dp Large: 640dp x 480dp Extra-large: 960dp x 720dp Android Phones & Tablets Responsive Web Design enables support across many form factors without a need to rewrite HTML5 code
  • 15. © 2010 WinWire Technologies
  • 16. © 2010 WinWire Technologies Performance Optimization Responsive Web Design Functionality Graphics Data Access Faster performance Tighter feature integration with the device Implementation & access to complete set of device-specific functionality Graphic-intensive pages tend to render slowly in HTML Require bandwidth to be accessed from remote server Animation is optimized within native view Remote content access for dynamically generated HTML pages Use Local HTML access for static content Optimize Data Access
  • 17. © 2010 WinWire Technologies
  • 18. © 2010 WinWire Technologies Native/Web View Communication Web view component is weaved along with native components for seamless functioning Separate functional entity consisting of HTML, JavaScript and CSS to send requests, fetch, and display the response To-and-fro communication with native app to allow users to control the web view from the native and vice versa. Native/Web View Communication Cross platform Web View Functionality
  • 19. © 2010 WinWire Technologies Native to Web View Direct Web View API Invocation
  • 20. © 2010 WinWire Technologies Native to Web View: Dos & Don’ts Dos Facilitate direct communication for opening URLs Implement navigation methods using native UI components Native aspects to be at the top and bottom and the web view to be in between these Don’ts Creating a web view subclass to add an address bar and navigation controls Placing native controls on top of the web view to perform actions Using mobile devices for controlling the web view
  • 21. © 2010 WinWire Technologies Web View to Native Direct Web View API Invocation Web View Event Captures
  • 22. © 2010 WinWire Technologies Web View to Native: Dos & Don’ts Dos Implement event listeners for commonly used events Implement events like swipe event, if user is notified of registration of swipe event Don’ts Implementing all event listeners without looking into the effects Implementing events counter-intuitively
  • 23. © 2010 WinWire Technologies JavaScript Injections
  • 24. © 2010 WinWire Technologies JavaScript Injections: Dos & Don’ts Dos Use ‘evalJS’ carefully to extract content out of the loaded web page in the web view Think of using ‘evalJS’ only as a last resort Don’ts Injecting JavaScript event listeners for events like scrolling, single tap Using ‘evalJS’ as the only means to develop the app that requires web view and native communication Injecting very long JavaScript; injecting JavaScript into the web view wherever possible Exercise caution when trying to inject JavaScript into the web view on different platforms
  • 25. © 2010 WinWire Technologies
  • 26. © 2010 WinWire Technologies App Store Discoverability Single Codebase Development Cost Optimization HTML5 Developer Ubiquity Native Mobile Device- Specific Functionality Rapid Development Cycle Maintenance Cost Optimization Benefits
  • 27. © 2010 WinWire Technologies Non-Native UI Interface: Not as Attractive Native UI Performance Superior Platform Variations for Web View Implementation Latency in Fetching Remote HTML Content Extensive Native/Web Data Integration Non-Streamlined Coding – Patchwork Under the Hood Challenges
  • 28. © 2010 WinWire Technologies Best Practices Color Scheme consistency with Web Content Avoids a Patchwork on the Presentation Layer ‘Illusion’ of Single App; not an App within App Color Scheme Cache Web Content Minimizes Latency on Server Content Allows for Offline Content Viewing Content Search Functionality in Native View Improves Search Return Performance Device-specific function integration into Search Mobile-Specific Features within Native App Push Notification Settings Calendar Synchronization Switch Content Search Mobility
  • 29. © 2010 WinWire Technologies Join us for our Next Webinar on Wired2Win Webinar Series! Date: 15 May, 2014 Time: 9 am PT
  • 30. © 2010 WinWire TechnologiesWinWire Technologies, Inc. Confidential WinWire Technologies, Inc. Confidential Reach out to us at marketing@winwire.com Visit us: www.winwire.com http://www.winwire.com/winwire-blog/ www.twitter.com/winwire Thank You