SlideShare uma empresa Scribd logo
1 de 43
Kickstarting
FireFox OS
App Development
A.Mohammed Adam
Activist in FSFTN
Contributor in Mozilla
Yes you can!
• You can start building Firefox os apps right now
if...
•You know HTML basics
•You know basics of JavaScript
•You have some idea with CSS
Contents
1. Intro
2. Organization
3.Tools you'll need
4. Hello,World
5.Tips & Tricks
1. Intro
• A brand new OS for smart phones
• User-interface & Apps are written with HTML,
CSS & JS
• We're interested in building apps which runs in
devices having FirefoxOS
It's already live!
2. Organization of FirefoxOS Apps
To develop any application, we worry
about two things...
(Next Slides Will Tell)
User Interface
Pages, Forms, Buttons, sliders...
& Controls!
Organization
While building FirefoxOS apps, we

Build user interface with HTML & CSS

& Javascript does the programming!
Philosophy

So, FirefoxOs apps are basically Web Apps!

And since HTML/CSS/JavaScripts are standards, these apps
run not only in FirefoxOs devices, but on any device that have
a browser!!! (Yes, on your Android too*)

Don't misunderstand web apps - they run offline, too!

* Some APIs don't work in all browsers.
Let's Start!
3. Tools

Any text editor (to write code)

Firefox browser 37.0+ (to see output!)
Optionally (highly recommended):

FirefoxOs Simulator

Firebug (for debugging)
Text Editor

Any text editor will work.We'll be making following types of
files:

HTML (.html)

JavaScript (.js)

CSS (.css)

You can use Sublime, Notepad++, Netbeans, Eclipse or
even the basic editor which comes with your OS.
Firefox Browser
To see the complete functionality of your app, we'll use
Firefox Browser - the desktop browser we all love.
We'll open the HTML files with our browser.
App Manager

App Manager comes built-in with Firefox37.0+.

App manager can be used to Install Firefox OS simulator or
to send apps to your device.
Simulator
Hello, World!
It's time for a "HelloWorld" app, right now!
Step 1: Create a directory
named hello

Create a directory named hello anywhere in your computer.

This will be the base directory - we put all files of our app here.
Step 2: Create file named
index.html
Create a file index.html (it doesn't need to be index.html, it
could be any name with .html extention) in the hello directory.
See it in your browser
Open the index.html file with your Firefox Browser.You can
double-click or right-click then open with FirefoxBrowser.
Output
TIPS
But...doesn't look like a mobile app!
Because, we've not taken care of screen size & others.
To test mobile screens with various sizes, press Control +
Shift + M in your Firefox!
Pressing ctrl + shft + M gives a
mobile app look-&-feel!
Step 3: Create Manifest file

All Firefox OS apps need a manifest file.

The manifest file tells the app's name, description, permissions it
requires and some other basic settings.

Manifest file can have any name, but it should have .webapp
extension.
Create manifest.webapp file in
project directory
We create manifest.webapp file (note the .webapp
extention) in hello directory:
Install app in the simulator!
1. Open App Manager by typing about:app-manager in the
address bar of browser
2. click Start Simulator > Firefox OS 1.4 from the bottom
bar
3. Click Add Packaged App & select the folder which contains
manifest.webapp file you just created.
4. Click update
Bingo! Go to the simulator & fine our app installed.
App in Firefox OS Simulator
We've added a Batman Icon
Too!
More Fun: Add some scripts
We will add a text input box and a button in our simple app.
When user clicks button, an alert box with the text in the input
field will be shown.
Change the index.html file
to add the input elements
Create a file named hello.js
inside your project directory
Open Simulator and click
Update
Congratulations!
You have created your first
FirefoxOs app!
Tips &Tricks
Do we need to use the
Simulator?
Not really.You can test your app using the Firefox Browser. I
can test all the functionalities almost, using the browser &
mobile view.
So each time you update your app you can test by just
refreshing the browser.
Using Frameworks

To give your app a mobile application like look and feel, you can
use many frameworks.

jQuery Mobile is a cool framework, which turns your HTML
stuffs into cool mobile app!

Also handle mobile input events like tap, tap-&-hold, swipe
etc!

Building an app in 6 minutes using jQuery Mobile - you
won't regret this!

Also shows usage of drag & drop interface to build UI!
Responsive Frameworks
Instead of building a framework from scratch, using a framework
that support responsive design would be good idea.
Jquery Mobile is responsive!
Many other responsive frameworks exist, of course.
Building Blocks
Check out Building Blocks to easily apply native look & feel and
UI elements, transitions etc.
Many works are done already for your app!
Publishing your app
Once you've completed your app, you need to upload it in a
server, and share the link.
Firefox Marketplace
You can submit your app in the Firefox Marketplace for more
publicity!
Mozilla Developer Network (MDN)
MDN Will be your one-stop center for docs.You may also check
out:

HTML5

JavaScript

CSS Docs
For Demos: Apps Showdown
Need inspiration?
See some cool apps in action in the Demo Studio.
You may also try the Marketplace from Simulator.
FirefoxOs App Development by Adam

Mais conteúdo relacionado

Mais procurados

DeveloperWeek2018 - Let's Build a Chatbot
DeveloperWeek2018 - Let's Build a ChatbotDeveloperWeek2018 - Let's Build a Chatbot
DeveloperWeek2018 - Let's Build a ChatbotTessa Mero
 
Introduction to Adobe Brackets
Introduction to Adobe BracketsIntroduction to Adobe Brackets
Introduction to Adobe BracketsMihai Corlan
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildTerry Ryan
 
How to place a webapp icon on ios homescreen
How to place a webapp icon on ios homescreen How to place a webapp icon on ios homescreen
How to place a webapp icon on ios homescreen Thomas Hein
 
How to add your power point
How to add your power pointHow to add your power point
How to add your power pointAlex Fitzgerald
 
Students
StudentsStudents
Students07Deeps
 
eTwinning New Twinspace - How To Add Web Content Page
eTwinning New Twinspace - How To Add Web Content PageeTwinning New Twinspace - How To Add Web Content Page
eTwinning New Twinspace - How To Add Web Content PageOwain Wright
 
Embedding a Video to your Netvibes Dashboard
Embedding a Video to your Netvibes DashboardEmbedding a Video to your Netvibes Dashboard
Embedding a Video to your Netvibes DashboardCatherine Hainstock
 
Posting Presentations to Ning
Posting Presentations to NingPosting Presentations to Ning
Posting Presentations to NingOnline
 
Evaluation question 6
Evaluation question 6Evaluation question 6
Evaluation question 6seftonmedia
 
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department Saving postscript file from Computer to Plate (CTP) in Pre-Press Department
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department Jumar "Henson - "Turn idea to reality""
 
Whats New In Visual Studio 2010
Whats New In Visual Studio 2010Whats New In Visual Studio 2010
Whats New In Visual Studio 2010Daniel Egan
 
Google Drive: How to edit or view documents in offline mode
Google Drive: How to edit or view documents in offline modeGoogle Drive: How to edit or view documents in offline mode
Google Drive: How to edit or view documents in offline modeProtect and Access
 
Filling Your Design Toolkit: Premium Assets on a Shoestring Budget
Filling Your Design Toolkit: Premium Assets on a Shoestring BudgetFilling Your Design Toolkit: Premium Assets on a Shoestring Budget
Filling Your Design Toolkit: Premium Assets on a Shoestring BudgetMike Taylor
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web DevelopmentTerry Ryan
 

Mais procurados (20)

DeveloperWeek2018 - Let's Build a Chatbot
DeveloperWeek2018 - Let's Build a ChatbotDeveloperWeek2018 - Let's Build a Chatbot
DeveloperWeek2018 - Let's Build a Chatbot
 
Staff training
Staff trainingStaff training
Staff training
 
Introduction to Adobe Brackets
Introduction to Adobe BracketsIntroduction to Adobe Brackets
Introduction to Adobe Brackets
 
Windows phone apps
Windows phone appsWindows phone apps
Windows phone apps
 
Chatbots
ChatbotsChatbots
Chatbots
 
Icon in iphone itouch
Icon in iphone itouchIcon in iphone itouch
Icon in iphone itouch
 
Skip the IDE with PhoneGap Build
Skip the IDE with PhoneGap BuildSkip the IDE with PhoneGap Build
Skip the IDE with PhoneGap Build
 
How to place a webapp icon on ios homescreen
How to place a webapp icon on ios homescreen How to place a webapp icon on ios homescreen
How to place a webapp icon on ios homescreen
 
How to add your power point
How to add your power pointHow to add your power point
How to add your power point
 
Students
StudentsStudents
Students
 
eTwinning New Twinspace - How To Add Web Content Page
eTwinning New Twinspace - How To Add Web Content PageeTwinning New Twinspace - How To Add Web Content Page
eTwinning New Twinspace - How To Add Web Content Page
 
Embedding a Video to your Netvibes Dashboard
Embedding a Video to your Netvibes DashboardEmbedding a Video to your Netvibes Dashboard
Embedding a Video to your Netvibes Dashboard
 
Posting Presentations to Ning
Posting Presentations to NingPosting Presentations to Ning
Posting Presentations to Ning
 
EasiShare AWS Setup Guide
EasiShare AWS Setup GuideEasiShare AWS Setup Guide
EasiShare AWS Setup Guide
 
Evaluation question 6
Evaluation question 6Evaluation question 6
Evaluation question 6
 
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department Saving postscript file from Computer to Plate (CTP) in Pre-Press Department
Saving postscript file from Computer to Plate (CTP) in Pre-Press Department
 
Whats New In Visual Studio 2010
Whats New In Visual Studio 2010Whats New In Visual Studio 2010
Whats New In Visual Studio 2010
 
Google Drive: How to edit or view documents in offline mode
Google Drive: How to edit or view documents in offline modeGoogle Drive: How to edit or view documents in offline mode
Google Drive: How to edit or view documents in offline mode
 
Filling Your Design Toolkit: Premium Assets on a Shoestring Budget
Filling Your Design Toolkit: Premium Assets on a Shoestring BudgetFilling Your Design Toolkit: Premium Assets on a Shoestring Budget
Filling Your Design Toolkit: Premium Assets on a Shoestring Budget
 
Adobe and Modern Web Development
Adobe and Modern Web DevelopmentAdobe and Modern Web Development
Adobe and Modern Web Development
 

Destaque

New Framework for Improving Bigdata Analaysis Using Mobile Agent
New Framework for Improving Bigdata Analaysis Using Mobile AgentNew Framework for Improving Bigdata Analaysis Using Mobile Agent
New Framework for Improving Bigdata Analaysis Using Mobile AgentMohammed Adam
 
Internet Surveillance
Internet Surveillance Internet Surveillance
Internet Surveillance Mohammed Adam
 
Basic commands of linux By Adam
Basic commands of linux By Adam Basic commands of linux By Adam
Basic commands of linux By Adam Mohammed Adam
 
Mozilla Tamil Localization
Mozilla Tamil LocalizationMozilla Tamil Localization
Mozilla Tamil LocalizationMohammed Adam
 
Blogging ( How to Create a Blog)
Blogging ( How to Create a Blog)Blogging ( How to Create a Blog)
Blogging ( How to Create a Blog)Mohammed Adam
 
FSA recognition System
FSA recognition System FSA recognition System
FSA recognition System Mohammed Adam
 
Cloudcomputing By Adam
Cloudcomputing By Adam Cloudcomputing By Adam
Cloudcomputing By Adam Mohammed Adam
 
Linux distro and its features by adam
Linux distro and its features by adamLinux distro and its features by adam
Linux distro and its features by adamMohammed Adam
 
Creation of Own Cloud
Creation of Own Cloud Creation of Own Cloud
Creation of Own Cloud Mohammed Adam
 

Destaque (9)

New Framework for Improving Bigdata Analaysis Using Mobile Agent
New Framework for Improving Bigdata Analaysis Using Mobile AgentNew Framework for Improving Bigdata Analaysis Using Mobile Agent
New Framework for Improving Bigdata Analaysis Using Mobile Agent
 
Internet Surveillance
Internet Surveillance Internet Surveillance
Internet Surveillance
 
Basic commands of linux By Adam
Basic commands of linux By Adam Basic commands of linux By Adam
Basic commands of linux By Adam
 
Mozilla Tamil Localization
Mozilla Tamil LocalizationMozilla Tamil Localization
Mozilla Tamil Localization
 
Blogging ( How to Create a Blog)
Blogging ( How to Create a Blog)Blogging ( How to Create a Blog)
Blogging ( How to Create a Blog)
 
FSA recognition System
FSA recognition System FSA recognition System
FSA recognition System
 
Cloudcomputing By Adam
Cloudcomputing By Adam Cloudcomputing By Adam
Cloudcomputing By Adam
 
Linux distro and its features by adam
Linux distro and its features by adamLinux distro and its features by adam
Linux distro and its features by adam
 
Creation of Own Cloud
Creation of Own Cloud Creation of Own Cloud
Creation of Own Cloud
 

Semelhante a FirefoxOs App Development by Adam

Apps development for Firefox OS & introduction to WebAPIs
Apps development for Firefox OS & introduction to WebAPIsApps development for Firefox OS & introduction to WebAPIs
Apps development for Firefox OS & introduction to WebAPIsRashik Ishrak Nahian
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />tutorialsruby
 
wexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentationwexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentationtutorialsruby
 
iPhone application development training day 1
iPhone application development training day 1iPhone application development training day 1
iPhone application development training day 1Shyamala Prayaga
 
Adobe phonegap-workshop-2013
Adobe phonegap-workshop-2013Adobe phonegap-workshop-2013
Adobe phonegap-workshop-2013Haig Armen
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile developmentMihai Corlan
 
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...InnovationM
 
Life cycle of iPhone application
Life cycle of iPhone applicationLife cycle of iPhone application
Life cycle of iPhone applicationSiva Prasad K V
 
Life Cycle of an iPhone App
Life Cycle of an iPhone AppLife Cycle of an iPhone App
Life Cycle of an iPhone AppJohn McKerrell
 
Step-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdfStep-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdfBytes Technolab Inc.
 
Best iOS Application Development Tools.pdf
Best iOS Application Development Tools.pdfBest iOS Application Development Tools.pdf
Best iOS Application Development Tools.pdfFuGenx Technologies
 
Step-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docxStep-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docxBytes Technolab Inc.
 
Firefox OS Application Development
Firefox OS Application DevelopmentFirefox OS Application Development
Firefox OS Application DevelopmentAnam Ahmed
 
Mobile App Development Tools For Building Apps
Mobile App Development Tools For Building AppsMobile App Development Tools For Building Apps
Mobile App Development Tools For Building AppsXongoLab Technologies LLP
 
Web browser extensions development
Web browser extensions developmentWeb browser extensions development
Web browser extensions developmentdragoslargu
 
Progressive Web Application by Citytech
Progressive Web Application by CitytechProgressive Web Application by Citytech
Progressive Web Application by CitytechRitwik Das
 
Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Katy Slemon
 

Semelhante a FirefoxOs App Development by Adam (20)

Apps development for Firefox OS & introduction to WebAPIs
Apps development for Firefox OS & introduction to WebAPIsApps development for Firefox OS & introduction to WebAPIs
Apps development for Firefox OS & introduction to WebAPIs
 
<img src="../i/r_14.png" />
<img src="../i/r_14.png" /><img src="../i/r_14.png" />
<img src="../i/r_14.png" />
 
wexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentationwexarts.org iPhone Project: Developer Documentation
wexarts.org iPhone Project: Developer Documentation
 
iPhone application development training day 1
iPhone application development training day 1iPhone application development training day 1
iPhone application development training day 1
 
Adobe phonegap-workshop-2013
Adobe phonegap-workshop-2013Adobe phonegap-workshop-2013
Adobe phonegap-workshop-2013
 
Starting mobile development
Starting mobile developmentStarting mobile development
Starting mobile development
 
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
Firebase crashlytics integration in iOS swift (dSYM File Required Problem Res...
 
Ios - Introduction to swift programming
Ios - Introduction to swift programmingIos - Introduction to swift programming
Ios - Introduction to swift programming
 
Life cycle of iPhone application
Life cycle of iPhone applicationLife cycle of iPhone application
Life cycle of iPhone application
 
Life Cycle of an iPhone App
Life Cycle of an iPhone AppLife Cycle of an iPhone App
Life Cycle of an iPhone App
 
Step-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdfStep-by-Step Guide to Developing a Successful iOS App.pdf
Step-by-Step Guide to Developing a Successful iOS App.pdf
 
Hybrid Mobile App
Hybrid Mobile AppHybrid Mobile App
Hybrid Mobile App
 
Hybrid mobile app
Hybrid mobile appHybrid mobile app
Hybrid mobile app
 
Best iOS Application Development Tools.pdf
Best iOS Application Development Tools.pdfBest iOS Application Development Tools.pdf
Best iOS Application Development Tools.pdf
 
Step-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docxStep-by-Step Guide to Developing a Successful iOS App.docx
Step-by-Step Guide to Developing a Successful iOS App.docx
 
Firefox OS Application Development
Firefox OS Application DevelopmentFirefox OS Application Development
Firefox OS Application Development
 
Mobile App Development Tools For Building Apps
Mobile App Development Tools For Building AppsMobile App Development Tools For Building Apps
Mobile App Development Tools For Building Apps
 
Web browser extensions development
Web browser extensions developmentWeb browser extensions development
Web browser extensions development
 
Progressive Web Application by Citytech
Progressive Web Application by CitytechProgressive Web Application by Citytech
Progressive Web Application by Citytech
 
Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021Top mobile app development frameworks to consider in 2021
Top mobile app development frameworks to consider in 2021
 

Mais de Mohammed Adam

Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Mohammed Adam
 
Android Penetration testing - Day 2
 Android Penetration testing - Day 2 Android Penetration testing - Day 2
Android Penetration testing - Day 2Mohammed Adam
 
Android Penetration Testing - Day 1
Android Penetration Testing - Day 1Android Penetration Testing - Day 1
Android Penetration Testing - Day 1Mohammed Adam
 
Wireless Penetration Testing
Wireless Penetration TestingWireless Penetration Testing
Wireless Penetration TestingMohammed Adam
 
Network Penetration Testing
Network Penetration TestingNetwork Penetration Testing
Network Penetration TestingMohammed Adam
 
Basic Foundation For Cybersecurity
Basic Foundation For CybersecurityBasic Foundation For Cybersecurity
Basic Foundation For CybersecurityMohammed Adam
 
Golden Ticket Attack - AD - Domain Persistence
Golden Ticket Attack - AD - Domain PersistenceGolden Ticket Attack - AD - Domain Persistence
Golden Ticket Attack - AD - Domain PersistenceMohammed Adam
 
Evading Antivirus software for fun and profit
Evading Antivirus software for fun and profitEvading Antivirus software for fun and profit
Evading Antivirus software for fun and profitMohammed Adam
 
Introduction to Network Fundamentals
Introduction to Network FundamentalsIntroduction to Network Fundamentals
Introduction to Network FundamentalsMohammed Adam
 
Breaking out of crypto authentication
Breaking out of crypto authenticationBreaking out of crypto authentication
Breaking out of crypto authenticationMohammed Adam
 
Cybersecurity Awareness Session by Adam
Cybersecurity Awareness Session by AdamCybersecurity Awareness Session by Adam
Cybersecurity Awareness Session by AdamMohammed Adam
 
Career Guidance on Cybersecurity by Mohammed Adam
Career Guidance on Cybersecurity by Mohammed AdamCareer Guidance on Cybersecurity by Mohammed Adam
Career Guidance on Cybersecurity by Mohammed AdamMohammed Adam
 
Introduction to null villupuram community
Introduction to null villupuram communityIntroduction to null villupuram community
Introduction to null villupuram communityMohammed Adam
 
BugBounty Roadmap with Mohammed Adam
BugBounty Roadmap with Mohammed AdamBugBounty Roadmap with Mohammed Adam
BugBounty Roadmap with Mohammed AdamMohammed Adam
 
Webinar On Ethical Hacking & Cybersecurity - Day2
Webinar On Ethical Hacking & Cybersecurity - Day2Webinar On Ethical Hacking & Cybersecurity - Day2
Webinar On Ethical Hacking & Cybersecurity - Day2Mohammed Adam
 
OSINT - Open Soure Intelligence - Webinar on CyberSecurity
OSINT - Open Soure Intelligence - Webinar on CyberSecurityOSINT - Open Soure Intelligence - Webinar on CyberSecurity
OSINT - Open Soure Intelligence - Webinar on CyberSecurityMohammed Adam
 
Android Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamAndroid Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamMohammed Adam
 
Vulnerability assessment & Penetration testing Basics
Vulnerability assessment & Penetration testing Basics Vulnerability assessment & Penetration testing Basics
Vulnerability assessment & Penetration testing Basics Mohammed Adam
 
What is SSL ? The Secure Sockets Layer (SSL) Protocol
What is SSL ? The Secure Sockets Layer (SSL) ProtocolWhat is SSL ? The Secure Sockets Layer (SSL) Protocol
What is SSL ? The Secure Sockets Layer (SSL) ProtocolMohammed Adam
 

Mais de Mohammed Adam (20)

Android Penetration Testing - Day 3
Android Penetration Testing - Day 3Android Penetration Testing - Day 3
Android Penetration Testing - Day 3
 
Android Penetration testing - Day 2
 Android Penetration testing - Day 2 Android Penetration testing - Day 2
Android Penetration testing - Day 2
 
Android Penetration Testing - Day 1
Android Penetration Testing - Day 1Android Penetration Testing - Day 1
Android Penetration Testing - Day 1
 
Wireless Penetration Testing
Wireless Penetration TestingWireless Penetration Testing
Wireless Penetration Testing
 
Network Penetration Testing
Network Penetration TestingNetwork Penetration Testing
Network Penetration Testing
 
Basic Foundation For Cybersecurity
Basic Foundation For CybersecurityBasic Foundation For Cybersecurity
Basic Foundation For Cybersecurity
 
Golden Ticket Attack - AD - Domain Persistence
Golden Ticket Attack - AD - Domain PersistenceGolden Ticket Attack - AD - Domain Persistence
Golden Ticket Attack - AD - Domain Persistence
 
Evading Antivirus software for fun and profit
Evading Antivirus software for fun and profitEvading Antivirus software for fun and profit
Evading Antivirus software for fun and profit
 
Introduction to Network Fundamentals
Introduction to Network FundamentalsIntroduction to Network Fundamentals
Introduction to Network Fundamentals
 
Breaking out of crypto authentication
Breaking out of crypto authenticationBreaking out of crypto authentication
Breaking out of crypto authentication
 
Cybersecurity Awareness Session by Adam
Cybersecurity Awareness Session by AdamCybersecurity Awareness Session by Adam
Cybersecurity Awareness Session by Adam
 
Career Guidance on Cybersecurity by Mohammed Adam
Career Guidance on Cybersecurity by Mohammed AdamCareer Guidance on Cybersecurity by Mohammed Adam
Career Guidance on Cybersecurity by Mohammed Adam
 
Introduction to null villupuram community
Introduction to null villupuram communityIntroduction to null villupuram community
Introduction to null villupuram community
 
Internet security
Internet securityInternet security
Internet security
 
BugBounty Roadmap with Mohammed Adam
BugBounty Roadmap with Mohammed AdamBugBounty Roadmap with Mohammed Adam
BugBounty Roadmap with Mohammed Adam
 
Webinar On Ethical Hacking & Cybersecurity - Day2
Webinar On Ethical Hacking & Cybersecurity - Day2Webinar On Ethical Hacking & Cybersecurity - Day2
Webinar On Ethical Hacking & Cybersecurity - Day2
 
OSINT - Open Soure Intelligence - Webinar on CyberSecurity
OSINT - Open Soure Intelligence - Webinar on CyberSecurityOSINT - Open Soure Intelligence - Webinar on CyberSecurity
OSINT - Open Soure Intelligence - Webinar on CyberSecurity
 
Android Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed AdamAndroid Application Penetration Testing - Mohammed Adam
Android Application Penetration Testing - Mohammed Adam
 
Vulnerability assessment & Penetration testing Basics
Vulnerability assessment & Penetration testing Basics Vulnerability assessment & Penetration testing Basics
Vulnerability assessment & Penetration testing Basics
 
What is SSL ? The Secure Sockets Layer (SSL) Protocol
What is SSL ? The Secure Sockets Layer (SSL) ProtocolWhat is SSL ? The Secure Sockets Layer (SSL) Protocol
What is SSL ? The Secure Sockets Layer (SSL) Protocol
 

Último

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
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
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
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
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
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
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
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
 
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
 
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
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)wesley chun
 

Último (20)

GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
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...
 
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
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
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...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
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
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
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
 
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
 
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
 
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
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 

FirefoxOs App Development by Adam

  • 1. Kickstarting FireFox OS App Development A.Mohammed Adam Activist in FSFTN Contributor in Mozilla
  • 2.
  • 3. Yes you can! • You can start building Firefox os apps right now if... •You know HTML basics •You know basics of JavaScript •You have some idea with CSS
  • 4. Contents 1. Intro 2. Organization 3.Tools you'll need 4. Hello,World 5.Tips & Tricks
  • 5. 1. Intro • A brand new OS for smart phones • User-interface & Apps are written with HTML, CSS & JS • We're interested in building apps which runs in devices having FirefoxOS
  • 7. 2. Organization of FirefoxOS Apps To develop any application, we worry about two things... (Next Slides Will Tell)
  • 8. User Interface Pages, Forms, Buttons, sliders...
  • 10. Organization While building FirefoxOS apps, we  Build user interface with HTML & CSS  & Javascript does the programming!
  • 11. Philosophy  So, FirefoxOs apps are basically Web Apps!  And since HTML/CSS/JavaScripts are standards, these apps run not only in FirefoxOs devices, but on any device that have a browser!!! (Yes, on your Android too*)  Don't misunderstand web apps - they run offline, too!  * Some APIs don't work in all browsers.
  • 13. 3. Tools  Any text editor (to write code)  Firefox browser 37.0+ (to see output!) Optionally (highly recommended):  FirefoxOs Simulator  Firebug (for debugging)
  • 14. Text Editor  Any text editor will work.We'll be making following types of files:  HTML (.html)  JavaScript (.js)  CSS (.css)  You can use Sublime, Notepad++, Netbeans, Eclipse or even the basic editor which comes with your OS.
  • 15. Firefox Browser To see the complete functionality of your app, we'll use Firefox Browser - the desktop browser we all love. We'll open the HTML files with our browser.
  • 16. App Manager  App Manager comes built-in with Firefox37.0+.  App manager can be used to Install Firefox OS simulator or to send apps to your device.
  • 18. Hello, World! It's time for a "HelloWorld" app, right now!
  • 19. Step 1: Create a directory named hello  Create a directory named hello anywhere in your computer.  This will be the base directory - we put all files of our app here.
  • 20. Step 2: Create file named index.html Create a file index.html (it doesn't need to be index.html, it could be any name with .html extention) in the hello directory.
  • 21. See it in your browser Open the index.html file with your Firefox Browser.You can double-click or right-click then open with FirefoxBrowser.
  • 23. TIPS But...doesn't look like a mobile app! Because, we've not taken care of screen size & others. To test mobile screens with various sizes, press Control + Shift + M in your Firefox!
  • 24. Pressing ctrl + shft + M gives a mobile app look-&-feel!
  • 25. Step 3: Create Manifest file  All Firefox OS apps need a manifest file.  The manifest file tells the app's name, description, permissions it requires and some other basic settings.  Manifest file can have any name, but it should have .webapp extension.
  • 26. Create manifest.webapp file in project directory We create manifest.webapp file (note the .webapp extention) in hello directory:
  • 27. Install app in the simulator! 1. Open App Manager by typing about:app-manager in the address bar of browser 2. click Start Simulator > Firefox OS 1.4 from the bottom bar 3. Click Add Packaged App & select the folder which contains manifest.webapp file you just created. 4. Click update Bingo! Go to the simulator & fine our app installed.
  • 28. App in Firefox OS Simulator
  • 29. We've added a Batman Icon Too!
  • 30. More Fun: Add some scripts We will add a text input box and a button in our simple app. When user clicks button, an alert box with the text in the input field will be shown.
  • 31. Change the index.html file to add the input elements
  • 32. Create a file named hello.js inside your project directory
  • 33. Open Simulator and click Update
  • 34. Congratulations! You have created your first FirefoxOs app!
  • 36. Do we need to use the Simulator? Not really.You can test your app using the Firefox Browser. I can test all the functionalities almost, using the browser & mobile view. So each time you update your app you can test by just refreshing the browser.
  • 37. Using Frameworks  To give your app a mobile application like look and feel, you can use many frameworks.  jQuery Mobile is a cool framework, which turns your HTML stuffs into cool mobile app!  Also handle mobile input events like tap, tap-&-hold, swipe etc!  Building an app in 6 minutes using jQuery Mobile - you won't regret this!  Also shows usage of drag & drop interface to build UI!
  • 38. Responsive Frameworks Instead of building a framework from scratch, using a framework that support responsive design would be good idea. Jquery Mobile is responsive! Many other responsive frameworks exist, of course.
  • 39. Building Blocks Check out Building Blocks to easily apply native look & feel and UI elements, transitions etc. Many works are done already for your app!
  • 40. Publishing your app Once you've completed your app, you need to upload it in a server, and share the link. Firefox Marketplace You can submit your app in the Firefox Marketplace for more publicity!
  • 41. Mozilla Developer Network (MDN) MDN Will be your one-stop center for docs.You may also check out:  HTML5  JavaScript  CSS Docs
  • 42. For Demos: Apps Showdown Need inspiration? See some cool apps in action in the Demo Studio. You may also try the Marketplace from Simulator.