SlideShare une entreprise Scribd logo
1  sur  22
Using Ruby for AndroidDevelopment
Background Android is a big step forward in mobile operating systems But… Java? Dynamic script languages are more productive And don’t have to be too slow Four main ways to leverage Ruby…
Leveraging  Ruby for Android Scripting: automate phone tasks and testing “From scratch” app development  replace Java Framework development Less Ruby, compiled Ruby App integration Full Ruby via server
Ruboto http://github.com/ruboto Ruboto-core [sudo] gem install ruboto-core Ruboto-core-irb Ruboto-demos * Ruboto slides here derived from earlier presentations by Daniel Jackoway.  Apologies for missing attribution in original post.
Android in Ruby public void Activity.onCreate(Bundle bundle) public void Activity.onPause() public void onClick(View view) handle_create do |bundle| handle_pause do handle_click do |view|
How It Works YourActivity < RubotoActivity < Activity ,[object Object]
They tell Ruby to exec blocks, pass params along,[object Object]
Activities only
Can’t ship .apk,[object Object]
Anything you can do with Java
Zero Java
Zero XML
Support plugins,[object Object]
JRuby (rvm)
Android SDK
Generate an emulator
gem install ruboto-core,[object Object]
$ --name andevcon   # Name of app
$ --target android-8  # Froyo
$ --activity MyActivity # Name of Activity,[object Object]
$ --name andevcon   # Name of app
$ --target android-8  # Froyo

Contenu connexe

Tendances

React Native for multi-platform mobile applications - Matteo Manchi - Codemo...
React Native for multi-platform mobile applications  - Matteo Manchi - Codemo...React Native for multi-platform mobile applications  - Matteo Manchi - Codemo...
React Native for multi-platform mobile applications - Matteo Manchi - Codemo...Codemotion
 
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017Matteo Manchi
 
Creating books app with react native
Creating books app with react nativeCreating books app with react native
Creating books app with react nativeAli Sa'o
 
A tour of React Native
A tour of React NativeA tour of React Native
A tour of React NativeTadeu Zagallo
 
Experiences building apps with React Native @DomCode 2016
Experiences building apps with React Native @DomCode 2016Experiences building apps with React Native @DomCode 2016
Experiences building apps with React Native @DomCode 2016Adrian Philipp
 
React Native for multi-platform mobile applications
React Native for multi-platform mobile applicationsReact Native for multi-platform mobile applications
React Native for multi-platform mobile applicationsMatteo Manchi
 
What is FED
What is FEDWhat is FED
What is FEDSam Lee
 
What's This React Native Thing I Keep Hearing About?
What's This React Native Thing I Keep Hearing About?What's This React Native Thing I Keep Hearing About?
What's This React Native Thing I Keep Hearing About?Evan Stone
 
Librerías Opensoure de Square
Librerías Opensoure de Square Librerías Opensoure de Square
Librerías Opensoure de Square betabeers
 
React Native "A Bad Idea Or A Game Changer" at Code Mania 101
React Native "A Bad Idea Or A Game Changer" at Code Mania 101React Native "A Bad Idea Or A Game Changer" at Code Mania 101
React Native "A Bad Idea Or A Game Changer" at Code Mania 101Ranatchai Chernbamrung
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React NativeWaqqas Jabbar
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with PythonTakuro Wada
 
Google flutter and why does it matter
Google flutter and why does it matterGoogle flutter and why does it matter
Google flutter and why does it matterAhmed Abu Eldahab
 
Lo mejor y peor de React Native @ValenciaJS
Lo mejor y peor de React Native @ValenciaJSLo mejor y peor de React Native @ValenciaJS
Lo mejor y peor de React Native @ValenciaJSMarcel Kalveram
 
Android is going to Go! Android and Golang
Android is going to Go! Android and GolangAndroid is going to Go! Android and Golang
Android is going to Go! Android and GolangAlmog Baku
 

Tendances (20)

React Native for multi-platform mobile applications - Matteo Manchi - Codemo...
React Native for multi-platform mobile applications  - Matteo Manchi - Codemo...React Native for multi-platform mobile applications  - Matteo Manchi - Codemo...
React Native for multi-platform mobile applications - Matteo Manchi - Codemo...
 
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017React-Native for multi-platform mobile applications @ Codemotion Rome 2017
React-Native for multi-platform mobile applications @ Codemotion Rome 2017
 
Creating books app with react native
Creating books app with react nativeCreating books app with react native
Creating books app with react native
 
A tour of React Native
A tour of React NativeA tour of React Native
A tour of React Native
 
Experiences building apps with React Native @DomCode 2016
Experiences building apps with React Native @DomCode 2016Experiences building apps with React Native @DomCode 2016
Experiences building apps with React Native @DomCode 2016
 
React native
React nativeReact native
React native
 
React Native for multi-platform mobile applications
React Native for multi-platform mobile applicationsReact Native for multi-platform mobile applications
React Native for multi-platform mobile applications
 
Flutter Intro
Flutter IntroFlutter Intro
Flutter Intro
 
What is FED
What is FEDWhat is FED
What is FED
 
What's This React Native Thing I Keep Hearing About?
What's This React Native Thing I Keep Hearing About?What's This React Native Thing I Keep Hearing About?
What's This React Native Thing I Keep Hearing About?
 
Librerías Opensoure de Square
Librerías Opensoure de Square Librerías Opensoure de Square
Librerías Opensoure de Square
 
Learn Once; Write Anywhere
Learn Once; Write AnywhereLearn Once; Write Anywhere
Learn Once; Write Anywhere
 
React Native "A Bad Idea Or A Game Changer" at Code Mania 101
React Native "A Bad Idea Or A Game Changer" at Code Mania 101React Native "A Bad Idea Or A Game Changer" at Code Mania 101
React Native "A Bad Idea Or A Game Changer" at Code Mania 101
 
Introduction to React Native
Introduction to React NativeIntroduction to React Native
Introduction to React Native
 
OpenAPI development with Python
OpenAPI development with PythonOpenAPI development with Python
OpenAPI development with Python
 
Google flutter and why does it matter
Google flutter and why does it matterGoogle flutter and why does it matter
Google flutter and why does it matter
 
React Native
React NativeReact Native
React Native
 
React Native
React NativeReact Native
React Native
 
Lo mejor y peor de React Native @ValenciaJS
Lo mejor y peor de React Native @ValenciaJSLo mejor y peor de React Native @ValenciaJS
Lo mejor y peor de React Native @ValenciaJS
 
Android is going to Go! Android and Golang
Android is going to Go! Android and GolangAndroid is going to Go! Android and Golang
Android is going to Go! Android and Golang
 

Similaire à Using Ruby in Android Development

Building native Android applications with Mirah and Pindah
Building native Android applications with Mirah and PindahBuilding native Android applications with Mirah and Pindah
Building native Android applications with Mirah and PindahNick Plante
 
React Native +Redux + ES6 (Updated)
React Native +Redux + ES6 (Updated)React Native +Redux + ES6 (Updated)
React Native +Redux + ES6 (Updated)Chiew Carol
 
Ruby On Rails Seminar Basis Softexpo Feb2010
Ruby On Rails Seminar Basis Softexpo Feb2010Ruby On Rails Seminar Basis Softexpo Feb2010
Ruby On Rails Seminar Basis Softexpo Feb2010arif44
 
Baruco 2014 - Rubymotion Workshop
Baruco 2014 - Rubymotion WorkshopBaruco 2014 - Rubymotion Workshop
Baruco 2014 - Rubymotion WorkshopBrian Sam-Bodden
 
Crossing the Bridge: Connecting Rails and your Front-end Framework
Crossing the Bridge: Connecting Rails and your Front-end FrameworkCrossing the Bridge: Connecting Rails and your Front-end Framework
Crossing the Bridge: Connecting Rails and your Front-end FrameworkDaniel Spector
 
Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!cloudbring
 
Mobile Development integration tests
Mobile Development integration testsMobile Development integration tests
Mobile Development integration testsKenneth Poon
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do ThatNathan Smith
 
Ruby On Rails Tutorial
Ruby On Rails TutorialRuby On Rails Tutorial
Ruby On Rails Tutorialsunniboy
 
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)Eric D. Schabell
 
Connect.js 2015 - Building Native Mobile Applications with Javascript
Connect.js 2015 - Building Native Mobile Applications with JavascriptConnect.js 2015 - Building Native Mobile Applications with Javascript
Connect.js 2015 - Building Native Mobile Applications with Javascriptjoshcjensen
 
sMash at May NYPHP UG
sMash at May NYPHP UGsMash at May NYPHP UG
sMash at May NYPHP UGProject Zero
 
Connecting with the enterprise - The how and why of connecting to Enterprise ...
Connecting with the enterprise - The how and why of connecting to Enterprise ...Connecting with the enterprise - The how and why of connecting to Enterprise ...
Connecting with the enterprise - The how and why of connecting to Enterprise ...Kevin Poorman
 

Similaire à Using Ruby in Android Development (20)

Building native Android applications with Mirah and Pindah
Building native Android applications with Mirah and PindahBuilding native Android applications with Mirah and Pindah
Building native Android applications with Mirah and Pindah
 
Rhodes Overview
Rhodes OverviewRhodes Overview
Rhodes Overview
 
React Native +Redux + ES6 (Updated)
React Native +Redux + ES6 (Updated)React Native +Redux + ES6 (Updated)
React Native +Redux + ES6 (Updated)
 
Intro to PhoneGap
Intro to PhoneGapIntro to PhoneGap
Intro to PhoneGap
 
Ruby On Rails Seminar Basis Softexpo Feb2010
Ruby On Rails Seminar Basis Softexpo Feb2010Ruby On Rails Seminar Basis Softexpo Feb2010
Ruby On Rails Seminar Basis Softexpo Feb2010
 
Baruco 2014 - Rubymotion Workshop
Baruco 2014 - Rubymotion WorkshopBaruco 2014 - Rubymotion Workshop
Baruco 2014 - Rubymotion Workshop
 
Crossing the Bridge: Connecting Rails and your Front-end Framework
Crossing the Bridge: Connecting Rails and your Front-end FrameworkCrossing the Bridge: Connecting Rails and your Front-end Framework
Crossing the Bridge: Connecting Rails and your Front-end Framework
 
Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!Rapid Prototyping FTW!!!
Rapid Prototyping FTW!!!
 
Unlocking Android
Unlocking AndroidUnlocking Android
Unlocking Android
 
Sst hackathon express
Sst hackathon expressSst hackathon express
Sst hackathon express
 
Mobile Development integration tests
Mobile Development integration testsMobile Development integration tests
Mobile Development integration tests
 
HTML5 Can't Do That
HTML5 Can't Do ThatHTML5 Can't Do That
HTML5 Can't Do That
 
Intro to Rails
Intro to RailsIntro to Rails
Intro to Rails
 
Ruby On Rails Tutorial
Ruby On Rails TutorialRuby On Rails Tutorial
Ruby On Rails Tutorial
 
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
An OpenShift Primer for Developers to get your Code into the Cloud (PTJUG)
 
Connect.js 2015 - Building Native Mobile Applications with Javascript
Connect.js 2015 - Building Native Mobile Applications with JavascriptConnect.js 2015 - Building Native Mobile Applications with Javascript
Connect.js 2015 - Building Native Mobile Applications with Javascript
 
Ruby On Rails Introduction
Ruby On Rails IntroductionRuby On Rails Introduction
Ruby On Rails Introduction
 
Ruboto
RubotoRuboto
Ruboto
 
sMash at May NYPHP UG
sMash at May NYPHP UGsMash at May NYPHP UG
sMash at May NYPHP UG
 
Connecting with the enterprise - The how and why of connecting to Enterprise ...
Connecting with the enterprise - The how and why of connecting to Enterprise ...Connecting with the enterprise - The how and why of connecting to Enterprise ...
Connecting with the enterprise - The how and why of connecting to Enterprise ...
 

Plus de Adam Blum

Sensing Mobile Devices talk from QCon London 2013
Sensing Mobile Devices talk from QCon London 2013Sensing Mobile Devices talk from QCon London 2013
Sensing Mobile Devices talk from QCon London 2013Adam Blum
 
Mobile Computing Summit: Best Practices in Enterprise Smartphone Apps
Mobile Computing Summit: Best Practices in Enterprise Smartphone AppsMobile Computing Summit: Best Practices in Enterprise Smartphone Apps
Mobile Computing Summit: Best Practices in Enterprise Smartphone AppsAdam Blum
 
Mobile Connections: Rhomobile Training
Mobile Connections: Rhomobile TrainingMobile Connections: Rhomobile Training
Mobile Connections: Rhomobile TrainingAdam Blum
 
iPhoneDevCon: Building Effective Enterprise Smartphone Apps
iPhoneDevCon: Building Effective Enterprise Smartphone AppsiPhoneDevCon: Building Effective Enterprise Smartphone Apps
iPhoneDevCon: Building Effective Enterprise Smartphone AppsAdam Blum
 
Transform Your Enterprise with Smartphones
Transform Your Enterprise with SmartphonesTransform Your Enterprise with Smartphones
Transform Your Enterprise with SmartphonesAdam Blum
 
MobiCASE: Effective Informational Smartphone Apps
MobiCASE: Effective Informational Smartphone AppsMobiCASE: Effective Informational Smartphone Apps
MobiCASE: Effective Informational Smartphone AppsAdam Blum
 
Writing Native Smartphone Apps in Rhodes 2.0
Writing Native Smartphone Apps in Rhodes 2.0Writing Native Smartphone Apps in Rhodes 2.0
Writing Native Smartphone Apps in Rhodes 2.0Adam Blum
 
Rhomobile.dist
Rhomobile.distRhomobile.dist
Rhomobile.distAdam Blum
 
Building Native Smartphone Apps with Rhodes
Building Native Smartphone Apps with RhodesBuilding Native Smartphone Apps with Rhodes
Building Native Smartphone Apps with RhodesAdam Blum
 
Best Practices in Smartphone Business Apps
Best Practices in Smartphone Business AppsBest Practices in Smartphone Business Apps
Best Practices in Smartphone Business AppsAdam Blum
 
Whither Smartphone Development
Whither Smartphone DevelopmentWhither Smartphone Development
Whither Smartphone DevelopmentAdam Blum
 
best practices in smartphone business apps
best practices in smartphone business appsbest practices in smartphone business apps
best practices in smartphone business appsAdam Blum
 
Rhodes E Ruby Con
Rhodes E Ruby ConRhodes E Ruby Con
Rhodes E Ruby ConAdam Blum
 
Rhodes Future Ruby
Rhodes Future RubyRhodes Future Ruby
Rhodes Future RubyAdam Blum
 
Rhodes Ruby Nation
Rhodes Ruby NationRhodes Ruby Nation
Rhodes Ruby NationAdam Blum
 
Rhodes Eu Ru Ko
Rhodes Eu Ru KoRhodes Eu Ru Ko
Rhodes Eu Ru KoAdam Blum
 

Plus de Adam Blum (16)

Sensing Mobile Devices talk from QCon London 2013
Sensing Mobile Devices talk from QCon London 2013Sensing Mobile Devices talk from QCon London 2013
Sensing Mobile Devices talk from QCon London 2013
 
Mobile Computing Summit: Best Practices in Enterprise Smartphone Apps
Mobile Computing Summit: Best Practices in Enterprise Smartphone AppsMobile Computing Summit: Best Practices in Enterprise Smartphone Apps
Mobile Computing Summit: Best Practices in Enterprise Smartphone Apps
 
Mobile Connections: Rhomobile Training
Mobile Connections: Rhomobile TrainingMobile Connections: Rhomobile Training
Mobile Connections: Rhomobile Training
 
iPhoneDevCon: Building Effective Enterprise Smartphone Apps
iPhoneDevCon: Building Effective Enterprise Smartphone AppsiPhoneDevCon: Building Effective Enterprise Smartphone Apps
iPhoneDevCon: Building Effective Enterprise Smartphone Apps
 
Transform Your Enterprise with Smartphones
Transform Your Enterprise with SmartphonesTransform Your Enterprise with Smartphones
Transform Your Enterprise with Smartphones
 
MobiCASE: Effective Informational Smartphone Apps
MobiCASE: Effective Informational Smartphone AppsMobiCASE: Effective Informational Smartphone Apps
MobiCASE: Effective Informational Smartphone Apps
 
Writing Native Smartphone Apps in Rhodes 2.0
Writing Native Smartphone Apps in Rhodes 2.0Writing Native Smartphone Apps in Rhodes 2.0
Writing Native Smartphone Apps in Rhodes 2.0
 
Rhomobile.dist
Rhomobile.distRhomobile.dist
Rhomobile.dist
 
Building Native Smartphone Apps with Rhodes
Building Native Smartphone Apps with RhodesBuilding Native Smartphone Apps with Rhodes
Building Native Smartphone Apps with Rhodes
 
Best Practices in Smartphone Business Apps
Best Practices in Smartphone Business AppsBest Practices in Smartphone Business Apps
Best Practices in Smartphone Business Apps
 
Whither Smartphone Development
Whither Smartphone DevelopmentWhither Smartphone Development
Whither Smartphone Development
 
best practices in smartphone business apps
best practices in smartphone business appsbest practices in smartphone business apps
best practices in smartphone business apps
 
Rhodes E Ruby Con
Rhodes E Ruby ConRhodes E Ruby Con
Rhodes E Ruby Con
 
Rhodes Future Ruby
Rhodes Future RubyRhodes Future Ruby
Rhodes Future Ruby
 
Rhodes Ruby Nation
Rhodes Ruby NationRhodes Ruby Nation
Rhodes Ruby Nation
 
Rhodes Eu Ru Ko
Rhodes Eu Ru KoRhodes Eu Ru Ko
Rhodes Eu Ru Ko
 

Dernier

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
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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
 
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
 
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
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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
 
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
 
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
 
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
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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
 
🐬 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
 
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 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
 

Dernier (20)

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)
 
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
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
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
 
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
 
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
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
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
 
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
 
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...
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
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 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
 

Using Ruby in Android Development

  • 1. Using Ruby for AndroidDevelopment
  • 2. Background Android is a big step forward in mobile operating systems But… Java? Dynamic script languages are more productive And don’t have to be too slow Four main ways to leverage Ruby…
  • 3. Leveraging Ruby for Android Scripting: automate phone tasks and testing “From scratch” app development replace Java Framework development Less Ruby, compiled Ruby App integration Full Ruby via server
  • 4. Ruboto http://github.com/ruboto Ruboto-core [sudo] gem install ruboto-core Ruboto-core-irb Ruboto-demos * Ruboto slides here derived from earlier presentations by Daniel Jackoway. Apologies for missing attribution in original post.
  • 5. Android in Ruby public void Activity.onCreate(Bundle bundle) public void Activity.onPause() public void onClick(View view) handle_create do |bundle| handle_pause do handle_click do |view|
  • 6.
  • 7.
  • 9.
  • 10. Anything you can do with Java
  • 13.
  • 17.
  • 18. $ --name andevcon # Name of app
  • 20.
  • 21. $ --name andevcon # Name of app
  • 23.
  • 28.
  • 29. linear_layout :orientation => LinearLayout::VERTICAL do
  • 30. @text_view = text_view :text => "What hath Matz wrought?"
  • 31. button :text => "M-x butterfly", :width => :wrap_content
  • 32. end
  • 35. if view.getText == 'M-x butterfly'
  • 36. @text_view.setText "What hath Matz wrought!"
  • 37. toast 'Flipped a bit via butterfly'
  • 38. end
  • 40.
  • 41.
  • 42. Rhodes Architecture your app code You write: RhoSync Server model model HTML templates controller Rhodes app generator Backend app source adapter model model HTML templates controller Backend app source adapter Rhodes components ORM (Rhom) Ruby executor We provide: Device capabilities RhoSync client Backend app smartphone device
  • 43. Rhodes vs. Competition Only one that supports all devices Only one with synchronized data Only MVC framework First Ruby on the device First and only hosted development service for mobile
  • 44. Ruby for App Integration…RhoSync [sudo] gem install rhosync Write a “source adapter” Query Create Update Delete Eliminates many tasks in app integration No device integration/connection code (assumes in database) Removes data storage step If its Rails backend, not even source adapter is necessary Better user experience Data is realtime updated No wait for data to be retrieved
  • 45. RhoSync Source Adapter rhosync app YourApp cdYourApp rhosync source Product Generates … class Product <SourceAdapter def query(params=nil) # TODO: Query your backend data source and assign the records # to a nested hash structure called @result. For example: end def create(create_hash,blob=nil) # TODO: Create a new record in your backend data source end end
  • 46. RhoHub First and only “Development as a Service for mobile” More than 10,000 developers signed up in the last year ~100 more per day Hosted development – WRITE APPS FOR IPHONES FROM WINDOWS Web-based IDE for ease of use Build for all smartphones online – no need to install SDKs Hosted runtime No need to set up RhoSync server Collaboration Work with other developers on same project over the web
  • 47.
  • 52.