SlideShare a Scribd company logo
1 of 25
Best Practices and
Work Around in
Mobile Hybrid Applications
#a11yTO Camp 2016
Bobby Bristol
Senior Developer, TD
Hybrid Mobile Application
A hybrid application (hybrid app) is one that combines elements
of both native and Web applications.
DEVICE
APIS
PLUGIN
S DEVICE PLUGINS
HTML
Javascript
CSS
Objective
C/Swift
Java
Voiceover vs. Talkback
IOS – Voiceover
 Screen reader is embedded on the app.
 Does not require internet connection.
 Very stable.
Android – Talkback
 Web/hybrid app’s screen reader is injected on each pages.
 Will not work without internet connection.
 Standards keep changing on each Android version.
 Not as stable as Voiceover.
Note about Android
Websites or applications when opened in Android’s
Native Browser, or Chrome, or Firefox for Android
has different accessibility support.
They will give different results with Talkback.
Hybrid mobile application, by default uses the
native browser.
ARIA Tags
IOS : Ignored on span, div, p, blockquotes, tables
Android: Works as expected
<p aria-label=“Name”>This paragraph</p>
Voiceover reads: “This paragraph” and ignores “Name”
Talkback reads “Name” “This paragraph”
, aria-label aria-labelledby, aria-label
aria-describedby
Coding Best Practices & Work
Around
BEST PRACTICE:
Use the right HTML semantics
If you need to display a label as header, use header tag.
If you need a button, use the input button tag.
Proper:
<h1>Subject</h1>
Wrong:
<div class=“header1”>Subject</div>
Work around?
<div class=“header1” role=“heading”>
Subject</div>
Common Problems:
Incorrect Semantics
Proper:
<input type=button value=Submit/>
Wrong:
<div onclick=“javascript:submit()”
class=“button”> Submit</div>
Proper:
<input type=button value=Submit/>
Wrong:
<div onclick=“javascript:submit()”
class=“button”> Submit</div>
Work around:
<div role=“button”
onclick=“javascript:submit()”
class=“button”> Submit</div>
Possible Role values
 alert
 alertdialog
 button
 checkbox
 dialog
 menuitem
 option
 tab
 banner
 navigation
Common Issues with Tables
Proper:
<table>
<thead>
<tr>
<th>Header 1</th>
<th>Header 2</th>
</tr>
</thead>
<tbody>
<tr>
<td>Content 1</td>
<td>Content 2</td>
</tr>
<tbody>
</table>
Wrong:
<table>
<tr>
<td>Header 1</td>
<td>Header 2</td>
</tr>
<tr>
<td>Content 1</td>
<td>Content 2</td>
</tr>
</table>
Custom controls?
Third party controls?
Controls you can’t modify
Labels that means something
more?
Common Problems:
Incorrect/incomplete labels
Labels that means something more?
Balance : (230.00)
YTD Amount: 10,500.00
Work around:
<span class=”font-size:0px;width:0;height:0;
overflow-hidden;”> Text to Speak </span>
Balance : (230.00)
Balance: <span class=”a11yHidden”>-</span>
<span>230</span>
YTD Amount: 10,500.00
<span class=”a11yHidden”>Year to date</span>
<span aria-hidden=“true”>YTD </span>
<span>Amount: 10,500.00</span>
CSS:
. a11yHidden
{ font-size:0px; width:0; height:0; opacity:1;
overflow:hidden;}
<td>
<span class=”a11yHidden”>Header 1</span>
<span id=1>Content 1</span>
</td>
<td>
<span class=”a11yHidden”>Header 2</span>
<span id=2>Content 2</span>
</td>
How to fix the table and any
custom control?
1. Use Javascript
2. Use proper ID for the control or element
3. Once the control codes are loaded, find the elements from the
HTML’s DOM
4. For each element you need to change, inject the html code
Common Problems:
Incorrect focus
All pop ups, modal windows, session timeout
notifications, etc. must receive focus from the
underlying application.
1. Once the popup window appears, change the
parent window to “aria-hidden=true”
2. By javascript, move the focus to the popup
window
popupNode.focus()
popupNode.tabindex = -1
3. When the popup window is closed, turn the
parent window back to “aria-hidden=false”
Parent
windowPopup,
dialog
If the popup is modal
1. Once the popup window appears, change the parent
window to “aria-hidden=true”
2. By javascript, move the focus to the popup window
popupNode.focus()
popupNode.tabindex = -1
3. Set back the parent window to aria hidden to false
setTimeout(lang.hitch(this, function() {
parentWindow. aria-hidden = false;
}),3000);
Parent
window
Popup,
dialog
If the popup is non- modal
Accessibility on IOS Native
BEST PRACTICE:
Use the right IOS object semantics
Accessibility options in IOS
THANK YOU!
Questions?
Resources
http://accessibility.arl.org/standards-best-practices/
https://www.marcozehe.de/
IOS:
https://developer.apple.com/accessibility/ios/
About me
 Senior IOS developer in TD
 Worked on both hybrid and native IOS development
 Extensive background in web development
 Certified usability analyst and user experience designer
 Connect with me bobbybristol@yahoo.com

More Related Content

Viewers also liked

Introduction to Accessibility Best Practices
Introduction to Accessibility Best PracticesIntroduction to Accessibility Best Practices
Introduction to Accessibility Best Practicesshawtrusta11y
 
Accessibility Standards For Customer Service
Accessibility Standards For Customer ServiceAccessibility Standards For Customer Service
Accessibility Standards For Customer ServiceEngine Communications
 
Developing for Diversity
Developing for DiversityDeveloping for Diversity
Developing for DiversityInclusiveUX
 
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)Association of University Presses
 
503 web accessibility - best practices
503   web accessibility - best practices503   web accessibility - best practices
503 web accessibility - best practicesJoanna Wiebe
 
WCAG 2.0 for Designers
WCAG 2.0 for DesignersWCAG 2.0 for Designers
WCAG 2.0 for DesignersBrunner
 
WCAG 2.0, Simplified
WCAG 2.0, SimplifiedWCAG 2.0, Simplified
WCAG 2.0, Simplifiedciwstudy
 
Html & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopHtml & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopVero Rebagliatte
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsAidan Tierney
 
Assistive technologies and devices for visually impaired
Assistive technologies and devices for visually impairedAssistive technologies and devices for visually impaired
Assistive technologies and devices for visually impairedUmar Shuaib
 
Early prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsEarly prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsAidan Tierney
 
CSUN - Accessibility and Rapid e-Learning Tools
CSUN - Accessibility and Rapid e-Learning ToolsCSUN - Accessibility and Rapid e-Learning Tools
CSUN - Accessibility and Rapid e-Learning ToolsEduardo Meza-Etienne
 

Viewers also liked (12)

Introduction to Accessibility Best Practices
Introduction to Accessibility Best PracticesIntroduction to Accessibility Best Practices
Introduction to Accessibility Best Practices
 
Accessibility Standards For Customer Service
Accessibility Standards For Customer ServiceAccessibility Standards For Customer Service
Accessibility Standards For Customer Service
 
Developing for Diversity
Developing for DiversityDeveloping for Diversity
Developing for Diversity
 
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)
AAUP 2016: Accessibility Standards from the Inside Out (M. Rothberg)
 
503 web accessibility - best practices
503   web accessibility - best practices503   web accessibility - best practices
503 web accessibility - best practices
 
WCAG 2.0 for Designers
WCAG 2.0 for DesignersWCAG 2.0 for Designers
WCAG 2.0 for Designers
 
WCAG 2.0, Simplified
WCAG 2.0, SimplifiedWCAG 2.0, Simplified
WCAG 2.0, Simplified
 
Html & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshopHtml & CSS - Best practices 2-hour-workshop
Html & CSS - Best practices 2-hour-workshop
 
Mobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & TrendsMobile Accessibility Best Practices & Trends
Mobile Accessibility Best Practices & Trends
 
Assistive technologies and devices for visually impaired
Assistive technologies and devices for visually impairedAssistive technologies and devices for visually impaired
Assistive technologies and devices for visually impaired
 
Early prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviewsEarly prevention of accessibility issues with mockup & wireframe reviews
Early prevention of accessibility issues with mockup & wireframe reviews
 
CSUN - Accessibility and Rapid e-Learning Tools
CSUN - Accessibility and Rapid e-Learning ToolsCSUN - Accessibility and Rapid e-Learning Tools
CSUN - Accessibility and Rapid e-Learning Tools
 

Similar to Accessibility for Hybrid Mobile

Christian Mladenov @ Intuitics
Christian Mladenov @ IntuiticsChristian Mladenov @ Intuitics
Christian Mladenov @ IntuiticsPAPIs.io
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1Heather Rock
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...John Hartley
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX DesignersAshlimarie
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven DevelopmentRichard Ruiter
 
Intro to Android for iOS developers
Intro to Android for iOS developersIntro to Android for iOS developers
Intro to Android for iOS developersChiu-Ki Chan
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application DevelopmentImranahmed_19
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesPlatypus
 
The Web Platform - State of the Union '17
The Web Platform - State of the Union '17The Web Platform - State of the Union '17
The Web Platform - State of the Union '17Abdelrahman Omran
 
Building iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360FlexBuilding iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360Flexdanielwanja
 
How To Build An Accessible Web Application
How To Build An Accessible Web ApplicationHow To Build An Accessible Web Application
How To Build An Accessible Web ApplicationDennis Lembree
 
Breaking the Box: Pushing the Boundaries of UX with Drupal
Breaking the Box: Pushing the Boundaries of UX with DrupalBreaking the Box: Pushing the Boundaries of UX with Drupal
Breaking the Box: Pushing the Boundaries of UX with DrupalAcquia
 
Web Engineering
Web Engineering  Web Engineering
Web Engineering Al Mamun
 
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...Roni Banerjee
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampChris Love
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseDoing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseChris Love
 
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsNathan Smith
 
Insider's Guide to Creating Multilingual Websites That Drive Revenue
Insider's Guide to Creating Multilingual Websites That Drive RevenueInsider's Guide to Creating Multilingual Websites That Drive Revenue
Insider's Guide to Creating Multilingual Websites That Drive RevenueFlorian Auckenthaler
 

Similar to Accessibility for Hybrid Mobile (20)

Christian Mladenov @ Intuitics
Christian Mladenov @ IntuiticsChristian Mladenov @ Intuitics
Christian Mladenov @ Intuitics
 
GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1GDI Seattle Intermediate HTML and CSS Class 1
GDI Seattle Intermediate HTML and CSS Class 1
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
 
Progressive Web Apps - deep dive
Progressive Web Apps - deep diveProgressive Web Apps - deep dive
Progressive Web Apps - deep dive
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX Designers
 
Behaviour Driven Development
Behaviour Driven DevelopmentBehaviour Driven Development
Behaviour Driven Development
 
Bcs 053 solved assignment 2014-15
Bcs 053 solved assignment 2014-15Bcs 053 solved assignment 2014-15
Bcs 053 solved assignment 2014-15
 
Intro to Android for iOS developers
Intro to Android for iOS developersIntro to Android for iOS developers
Intro to Android for iOS developers
 
Android Application Development
Android Application DevelopmentAndroid Application Development
Android Application Development
 
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issuesMaximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
Maximising Online Resource Effectiveness Workshop Session 3/8 Priority issues
 
The Web Platform - State of the Union '17
The Web Platform - State of the Union '17The Web Platform - State of the Union '17
The Web Platform - State of the Union '17
 
Building iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360FlexBuilding iPad apps with Flex - 360Flex
Building iPad apps with Flex - 360Flex
 
How To Build An Accessible Web Application
How To Build An Accessible Web ApplicationHow To Build An Accessible Web Application
How To Build An Accessible Web Application
 
Breaking the Box: Pushing the Boundaries of UX with Drupal
Breaking the Box: Pushing the Boundaries of UX with DrupalBreaking the Box: Pushing the Boundaries of UX with Drupal
Breaking the Box: Pushing the Boundaries of UX with Drupal
 
Web Engineering
Web Engineering  Web Engineering
Web Engineering
 
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
“Good design is obvious. Great design is transparent.” — How we use Bootstrap...
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code CampDoing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise NYC Code Camp
 
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the EnterpriseDoing Modern Web, aka JavaScript and HTML5 in the Enterprise
Doing Modern Web, aka JavaScript and HTML5 in the Enterprise
 
Use Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile AppsUse Web Skills To Build Mobile Apps
Use Web Skills To Build Mobile Apps
 
Insider's Guide to Creating Multilingual Websites That Drive Revenue
Insider's Guide to Creating Multilingual Websites That Drive RevenueInsider's Guide to Creating Multilingual Websites That Drive Revenue
Insider's Guide to Creating Multilingual Websites That Drive Revenue
 

Recently uploaded

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Alan Dix
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Neo4j
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubKalema Edgar
 

Recently uploaded (20)

Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...Swan(sea) Song – personal research during my six years at Swansea ... and bey...
Swan(sea) Song – personal research during my six years at Swansea ... and bey...
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
#StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024Build your next Gen AI Breakthrough - April 2024
Build your next Gen AI Breakthrough - April 2024
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
Unleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding ClubUnleash Your Potential - Namagunga Girls Coding Club
Unleash Your Potential - Namagunga Girls Coding Club
 

Accessibility for Hybrid Mobile

Editor's Notes

  1. Hybrid app should be installed on the device. There are hybrid apps that the source code (html, javascript, css), some its just webview inside the app. This talk will focus more on hybrid app because naturally, mobile apps that are done in native code are usually good enough for accessibiltiy. Normally, minimal changes. But html on a mobile, there are always issues.
  2. With no internet connection, it will always just say “webview”
  3. Rules that apply on html also applies on an hybrid mobile application. Therefore, ARIA tags would be the same. Remind everyone that Voiceover is the name of the screenreader for IOS. Talkback is the screen reader for Android.
  4. Role only applies to HTML5
  5. What accessibility guideline are we violating here? “Ensure users can complete and submit all forms”
  6. Role is only applicable in HTML 5, which is perfectly fine for mobile, all browsers are in HTML 5
  7. Voiceover will ignore the the parentheses and will not say the number is of negative value YTD may be something you want to the whole word not the acronym. Sometimes you can only put the acronym, sometimes in table.
  8. Document Object Model
  9. Tabindex is needed to make sure the element will be put first from the list of elements.
  10. Tabindex is needed to make sure the element will be put first from the list of elements