SlideShare a Scribd company logo
INTEGRATE YOUR ANDROID APP
                                       WITH THE EVERNOTE API


sexta-feira, 30 de novembro de 12
It’sa Me... MARCO

         Marcos Paulo Souza Damasceno
       Backend Developer @MobjoyGames




sexta-feira, 30 de novembro de 12
What is Evernote?

                                    Remember everything




  A single place to keep everything that you
 have, available from almost any device with a
          great search functionality.




   Everything you capture is automatically processed, indexed, and made searchable. If
         you like, you can add tags or organize your notes into different notebooks.

sexta-feira, 30 de novembro de 12
Evernote Beyond Evernote

                                     Evernote for Developers

                    Access Evernote WebServices
    Add value to the Notes people already have
           Create Notes for your own application

      Store your App’s data as notes:
      * HTML Notes (ENML)
      * Create Read Only Notes with your information and layout
      * Organize your app’s data
      * Attach Resources (Audio Clips, Images, PDFs, etc...)
      * Search Features.

sexta-feira, 30 de novembro de 12
The Evernote Cloud API

                                             Integrate your Application

            Same API used by Evernote’s Apps

                                                          Composed by a Data Model and its functions
     Access to API provided by SDK’s


                                    C++, C#, Objetive-C, Java, JavaME,
                                          Ruby, Python and etc

         Referenced as EDAM - the Evernote Data Acess
                     and Management API
sexta-feira, 30 de novembro de 12
Understanding the API

                                                       The basics

      UserStore:
          Manage user accounts
      NoteStore:
          The content of a User’s Evernote Account

                                    Process to start working with some user’s notes
           Login to Evernote
          Get authorization from the user to your App
          Get the NoteStore URL for user and Authetincation Token
                                     Do not hardcode NoteStore URL, it may differ by user
sexta-feira, 30 de novembro de 12
Understanding the API

                             Authentication


                          Evernote uses OAuth


      API function called using Access Token

                        Consumer Key and
                     Consumer Secret required




sexta-feira, 30 de novembro de 12
Understanding the API

                                              Authentication




                                        But don’t worry about it, the
                                    Android SDK handles OAuth for you




sexta-feira, 30 de novembro de 12
Understanding the API

                               Data Model




sexta-feira, 30 de novembro de 12
Evernote for Developers

            Evernote Sandbox

   Safe place for you to test your
  application, a separate instance of
         the Evernote Service

        Create an account at
    https://sandbox.evernote.com

    Your API Key will only work
    in the sandbox environment


sexta-feira, 30 de novembro de 12
Let’s Get It Started




sexta-feira, 30 de novembro de 12
Let’s Get It Started




                                    http://dev.evernote.com/documentation/cloud/


sexta-feira, 30 de novembro de 12
Let’s Get It Started

                                    Register for an API key




sexta-feira, 30 de novembro de 12
Let’s Get It Started




                                    http://dev.evernote.com/documentation/cloud/


sexta-feira, 30 de novembro de 12
Let’s Get It Started
                                    Download the API Android SDK




                                        https://github.com/evernote
sexta-feira, 30 de novembro de 12
Let’s Get It Started




                                    http://dev.evernote.com/documentation/cloud/


sexta-feira, 30 de novembro de 12
Studying HelloEDAM

                                          Overview

         Example application that comes         Create an “Android Project from an
                 with the SDK                   Existing Code” in Eclipse pointing to
                                                         the SDK root folder




sexta-feira, 30 de novembro de 12
Studying HelloEDAM
                                    Getting Authentication




sexta-feira, 30 de novembro de 12
Studying HelloEDAM
                                    Creating a Resource




sexta-feira, 30 de novembro de 12
Studying HelloEDAM
                                    Creating a new Note




                                                              ENL, more about it at
                                                    http://dev.evernote.com/documentation
                                                           /cloud/chapters/ENML.php
sexta-feira, 30 de novembro de 12
Studying HelloEDAM




                                    Creating a Notebook live coding!!!




sexta-feira, 30 de novembro de 12
Studying HelloEDAM




                            Creating a Note With Tag live coding!!!




sexta-feira, 30 de novembro de 12
Studying HelloEDAM




                         Creating a Read-Only Note live coding!!!




sexta-feira, 30 de novembro de 12
The Reference API




             The reference for the API data,
               functions and everything


     http://dev.evernote.com/documentation/reference/




sexta-feira, 30 de novembro de 12
Why Use Evernote to store your app’s data?
sexta-feira, 30 de novembro de 12
Why Use Evernote to store your app’s data?
                                    Because your app’s data will be everywhere,
                                     well organized and with a pretty interface




                                             Because you will give data
                                              mobility to your users
sexta-feira, 30 de novembro de 12
Why Use Evernote to store your app’s data?




            HTML (ENML) customization for Notes!




sexta-feira, 30 de novembro de 12
Why Use Evernote to store your app’s data?
                                         The Evernote Trunk

              Apps made using Evernote platform are added to the Evernote Trunk




                         Available through the Web, the MacOS App and the Windows App
sexta-feira, 30 de novembro de 12
Evernote Hackaton Brazil
sexta-feira, 30 de novembro de 12
Evernote Hackaton Brazil 2012
                                    The last one took place in São Paulo,
                                           November 9th to 11th

 The goal was develop an Android App using Evernote API
                                                     The main prize was a travel to Silicon Valley
                                                      for 2 people of the winner group to visit the
                                                                     Evernote HQ




sexta-feira, 30 de novembro de 12
Evernote Hackaton Brazil 2012
                                    The last one took place in São Paulo,
                                           November 9th to 11th

          We were there, we didn’t win but we’ve learnt a lot.
               Don’t let the next opportunity pass by.




sexta-feira, 30 de novembro de 12
Contacts
                                      Any questions or suggestions
                                    about the Evernote Android SDK



                                                             Tyler Smith
                                                  Sr. Android Engineer @Evernote
                                                            @TylerSmithNet
                                                         tsmith@evernote.com




sexta-feira, 30 de novembro de 12
Contacts

                                      The Speaker!


                                              Marcos Paulo Damasceno
                                                     @marcospaulosd
                                            linkedin.com/in/marcosdamasceno
                                                 github.com/marcospaulo

                                                 slideshare.net/mpsddspm


                                    THANKS!!!!!!
sexta-feira, 30 de novembro de 12
Questions?

sexta-feira, 30 de novembro de 12

More Related Content

Viewers also liked

Year 9
Year 9Year 9
Year 9
hodder
 
Ron suber-prosper-altfi
Ron suber-prosper-altfiRon suber-prosper-altfi
Ron suber-prosper-altfi
Ron Suber
 
A sample of the propasals i do
A sample of the propasals i doA sample of the propasals i do
A sample of the propasals i do
Daniel Kimotho
 
โครงงานเชิงประพันธ์
โครงงานเชิงประพันธ์โครงงานเชิงประพันธ์
โครงงานเชิงประพันธ์maerimwittayakom school
 
Pirita- Kose sügisretk
Pirita- Kose sügisretkPirita- Kose sügisretk
Pirita- Kose sügisretkMairi
 
Gwt.org.ua (ukr)
Gwt.org.ua (ukr)Gwt.org.ua (ukr)
Gwt.org.ua (ukr)
Oleksandr Pryymak
 
Cicloenes industriales mcat®
Cicloenes industriales mcat®Cicloenes industriales mcat®
Cicloenes industriales mcat®07mcat07
 

Viewers also liked (7)

Year 9
Year 9Year 9
Year 9
 
Ron suber-prosper-altfi
Ron suber-prosper-altfiRon suber-prosper-altfi
Ron suber-prosper-altfi
 
A sample of the propasals i do
A sample of the propasals i doA sample of the propasals i do
A sample of the propasals i do
 
โครงงานเชิงประพันธ์
โครงงานเชิงประพันธ์โครงงานเชิงประพันธ์
โครงงานเชิงประพันธ์
 
Pirita- Kose sügisretk
Pirita- Kose sügisretkPirita- Kose sügisretk
Pirita- Kose sügisretk
 
Gwt.org.ua (ukr)
Gwt.org.ua (ukr)Gwt.org.ua (ukr)
Gwt.org.ua (ukr)
 
Cicloenes industriales mcat®
Cicloenes industriales mcat®Cicloenes industriales mcat®
Cicloenes industriales mcat®
 

Similar to DevFest Keynote - Android Apps with Evernote API

iOS Development. Some practices.
iOS Development. Some practices.iOS Development. Some practices.
iOS Development. Some practices.
Alexander Lobunets
 
Working With Social APIs - SoMeT12
Working With Social APIs - SoMeT12Working With Social APIs - SoMeT12
Working With Social APIs - SoMeT12
Mario Vasquez
 
App Inventor - ACSE
App Inventor - ACSEApp Inventor - ACSE
App Inventor - ACSE
Peter McAsh
 
Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!
Codemotion
 
Sebastian Burkhart — Berlin.apps.js Nov 2012 Talk
Sebastian Burkhart — Berlin.apps.js Nov 2012 TalkSebastian Burkhart — Berlin.apps.js Nov 2012 Talk
Sebastian Burkhart — Berlin.apps.js Nov 2012 Talk
Sebastian Burkhart
 
EC3 Workshop - Evernote API with Mobile SDKs
EC3 Workshop - Evernote API with Mobile SDKs EC3 Workshop - Evernote API with Mobile SDKs
EC3 Workshop - Evernote API with Mobile SDKs
Mustafa Furniturewala
 
100% JS
100% JS100% JS
100% JS
__lucas
 
Debian on EC2
Debian on EC2Debian on EC2
Debian on EC2
Aya Komuro
 
DF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
DF1 - ML - Petukhov - Azure Ml Machine Learning as a ServiceDF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
DF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
MoscowDataFest
 
PuppetConf track overview: Windows
PuppetConf track overview: WindowsPuppetConf track overview: Windows
PuppetConf track overview: Windows
Puppet
 
Data Loading for Ext GWT
Data Loading for Ext GWTData Loading for Ext GWT
Data Loading for Ext GWT
Sencha
 
Advanced Performance Tuning in Ext GWT
Advanced Performance Tuning in Ext GWTAdvanced Performance Tuning in Ext GWT
Advanced Performance Tuning in Ext GWT
Sencha
 
Vaadin 7
Vaadin 7Vaadin 7
Vaadin 7
Codemotion
 
Introduction to Vaadin 7
Introduction to Vaadin 7Introduction to Vaadin 7
Introduction to Vaadin 7
lastrand
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android Studio
Akshay Chordiya
 
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
Google Developer Relations Team
 
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Jazkarta, Inc.
 
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
Patrick Chanezon
 
RMCAD and Markit on Demand collaboration
RMCAD and Markit on Demand collaborationRMCAD and Markit on Demand collaboration
RMCAD and Markit on Demand collaboration
Cumulus Digital Culture
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
Wojciech Koszek
 

Similar to DevFest Keynote - Android Apps with Evernote API (20)

iOS Development. Some practices.
iOS Development. Some practices.iOS Development. Some practices.
iOS Development. Some practices.
 
Working With Social APIs - SoMeT12
Working With Social APIs - SoMeT12Working With Social APIs - SoMeT12
Working With Social APIs - SoMeT12
 
App Inventor - ACSE
App Inventor - ACSEApp Inventor - ACSE
App Inventor - ACSE
 
Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!Choosing a backend for your mobile app? Don’t roll the dice!
Choosing a backend for your mobile app? Don’t roll the dice!
 
Sebastian Burkhart — Berlin.apps.js Nov 2012 Talk
Sebastian Burkhart — Berlin.apps.js Nov 2012 TalkSebastian Burkhart — Berlin.apps.js Nov 2012 Talk
Sebastian Burkhart — Berlin.apps.js Nov 2012 Talk
 
EC3 Workshop - Evernote API with Mobile SDKs
EC3 Workshop - Evernote API with Mobile SDKs EC3 Workshop - Evernote API with Mobile SDKs
EC3 Workshop - Evernote API with Mobile SDKs
 
100% JS
100% JS100% JS
100% JS
 
Debian on EC2
Debian on EC2Debian on EC2
Debian on EC2
 
DF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
DF1 - ML - Petukhov - Azure Ml Machine Learning as a ServiceDF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
DF1 - ML - Petukhov - Azure Ml Machine Learning as a Service
 
PuppetConf track overview: Windows
PuppetConf track overview: WindowsPuppetConf track overview: Windows
PuppetConf track overview: Windows
 
Data Loading for Ext GWT
Data Loading for Ext GWTData Loading for Ext GWT
Data Loading for Ext GWT
 
Advanced Performance Tuning in Ext GWT
Advanced Performance Tuning in Ext GWTAdvanced Performance Tuning in Ext GWT
Advanced Performance Tuning in Ext GWT
 
Vaadin 7
Vaadin 7Vaadin 7
Vaadin 7
 
Introduction to Vaadin 7
Introduction to Vaadin 7Introduction to Vaadin 7
Introduction to Vaadin 7
 
Exploring Android Studio
Exploring Android StudioExploring Android Studio
Exploring Android Studio
 
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
Google Developer Day 2010 Japan: Part 1: Google App Engine for Business の概要 P...
 
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
Scalable Plone hosting with Amazon EC2 for Rice University's Rhaptos open lea...
 
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
GDD Brazil 2010 - What's new in Google App Engine and Google App Engine For B...
 
RMCAD and Markit on Demand collaboration
RMCAD and Markit on Demand collaborationRMCAD and Markit on Demand collaboration
RMCAD and Markit on Demand collaboration
 
Building an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learnedBuilding an Open Source iOS app: lessons learned
Building an Open Source iOS app: lessons learned
 

Recently uploaded

GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
Neo4j
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
Mydbops
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
akankshawande
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
AstuteBusiness
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
MichaelKnudsen27
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
Jason Packer
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
Hiroshi SHIBATA
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
Jason Yip
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
Fwdays
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
christinelarrosa
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
DianaGray10
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
ssuserfac0301
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
christinelarrosa
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Pitangent Analytics & Technology Solutions Pvt. Ltd
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
Vadym Kazulkin
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
Pablo Gómez Abajo
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
operationspcvita
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
Ivo Velitchkov
 

Recently uploaded (20)

GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge GraphGraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
GraphRAG for LifeSciences Hands-On with the Clinical Knowledge Graph
 
Must Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during MigrationMust Know Postgres Extension for DBA and Developer during Migration
Must Know Postgres Extension for DBA and Developer during Migration
 
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development ProvidersYour One-Stop Shop for Python Success: Top 10 US Python Development Providers
Your One-Stop Shop for Python Success: Top 10 US Python Development Providers
 
Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |Astute Business Solutions | Oracle Cloud Partner |
Astute Business Solutions | Oracle Cloud Partner |
 
Nordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptxNordic Marketo Engage User Group_June 13_ 2024.pptx
Nordic Marketo Engage User Group_June 13_ 2024.pptx
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024Columbus Data & Analytics Wednesdays - June 2024
Columbus Data & Analytics Wednesdays - June 2024
 
Introduction of Cybersecurity with OSS at Code Europe 2024
Introduction of Cybersecurity with OSS  at Code Europe 2024Introduction of Cybersecurity with OSS  at Code Europe 2024
Introduction of Cybersecurity with OSS at Code Europe 2024
 
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
[OReilly Superstream] Occupy the Space: A grassroots guide to engineering (an...
 
"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota"Choosing proper type of scaling", Olena Syrota
"Choosing proper type of scaling", Olena Syrota
 
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptxPRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
PRODUCT LISTING OPTIMIZATION PRESENTATION.pptx
 
What is an RPA CoE? Session 1 – CoE Vision
What is an RPA CoE?  Session 1 – CoE VisionWhat is an RPA CoE?  Session 1 – CoE Vision
What is an RPA CoE? Session 1 – CoE Vision
 
Taking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdfTaking AI to the Next Level in Manufacturing.pdf
Taking AI to the Next Level in Manufacturing.pdf
 
Christine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptxChristine's Supplier Sourcing Presentaion.pptx
Christine's Supplier Sourcing Presentaion.pptx
 
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
Crafting Excellence: A Comprehensive Guide to iOS Mobile App Development Serv...
 
High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024High performance Serverless Java on AWS- GoTo Amsterdam 2024
High performance Serverless Java on AWS- GoTo Amsterdam 2024
 
Mutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented ChatbotsMutation Testing for Task-Oriented Chatbots
Mutation Testing for Task-Oriented Chatbots
 
Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024Northern Engraving | Nameplate Manufacturing Process - 2024
Northern Engraving | Nameplate Manufacturing Process - 2024
 
The Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptxThe Microsoft 365 Migration Tutorial For Beginner.pptx
The Microsoft 365 Migration Tutorial For Beginner.pptx
 
Apps Break Data
Apps Break DataApps Break Data
Apps Break Data
 

DevFest Keynote - Android Apps with Evernote API

  • 1. INTEGRATE YOUR ANDROID APP WITH THE EVERNOTE API sexta-feira, 30 de novembro de 12
  • 2. It’sa Me... MARCO Marcos Paulo Souza Damasceno Backend Developer @MobjoyGames sexta-feira, 30 de novembro de 12
  • 3. What is Evernote? Remember everything A single place to keep everything that you have, available from almost any device with a great search functionality. Everything you capture is automatically processed, indexed, and made searchable. If you like, you can add tags or organize your notes into different notebooks. sexta-feira, 30 de novembro de 12
  • 4. Evernote Beyond Evernote Evernote for Developers Access Evernote WebServices Add value to the Notes people already have Create Notes for your own application Store your App’s data as notes: * HTML Notes (ENML) * Create Read Only Notes with your information and layout * Organize your app’s data * Attach Resources (Audio Clips, Images, PDFs, etc...) * Search Features. sexta-feira, 30 de novembro de 12
  • 5. The Evernote Cloud API Integrate your Application Same API used by Evernote’s Apps Composed by a Data Model and its functions Access to API provided by SDK’s C++, C#, Objetive-C, Java, JavaME, Ruby, Python and etc Referenced as EDAM - the Evernote Data Acess and Management API sexta-feira, 30 de novembro de 12
  • 6. Understanding the API The basics UserStore: Manage user accounts NoteStore: The content of a User’s Evernote Account Process to start working with some user’s notes Login to Evernote Get authorization from the user to your App Get the NoteStore URL for user and Authetincation Token Do not hardcode NoteStore URL, it may differ by user sexta-feira, 30 de novembro de 12
  • 7. Understanding the API Authentication Evernote uses OAuth API function called using Access Token Consumer Key and Consumer Secret required sexta-feira, 30 de novembro de 12
  • 8. Understanding the API Authentication But don’t worry about it, the Android SDK handles OAuth for you sexta-feira, 30 de novembro de 12
  • 9. Understanding the API Data Model sexta-feira, 30 de novembro de 12
  • 10. Evernote for Developers Evernote Sandbox Safe place for you to test your application, a separate instance of the Evernote Service Create an account at https://sandbox.evernote.com Your API Key will only work in the sandbox environment sexta-feira, 30 de novembro de 12
  • 11. Let’s Get It Started sexta-feira, 30 de novembro de 12
  • 12. Let’s Get It Started http://dev.evernote.com/documentation/cloud/ sexta-feira, 30 de novembro de 12
  • 13. Let’s Get It Started Register for an API key sexta-feira, 30 de novembro de 12
  • 14. Let’s Get It Started http://dev.evernote.com/documentation/cloud/ sexta-feira, 30 de novembro de 12
  • 15. Let’s Get It Started Download the API Android SDK https://github.com/evernote sexta-feira, 30 de novembro de 12
  • 16. Let’s Get It Started http://dev.evernote.com/documentation/cloud/ sexta-feira, 30 de novembro de 12
  • 17. Studying HelloEDAM Overview Example application that comes Create an “Android Project from an with the SDK Existing Code” in Eclipse pointing to the SDK root folder sexta-feira, 30 de novembro de 12
  • 18. Studying HelloEDAM Getting Authentication sexta-feira, 30 de novembro de 12
  • 19. Studying HelloEDAM Creating a Resource sexta-feira, 30 de novembro de 12
  • 20. Studying HelloEDAM Creating a new Note ENL, more about it at http://dev.evernote.com/documentation /cloud/chapters/ENML.php sexta-feira, 30 de novembro de 12
  • 21. Studying HelloEDAM Creating a Notebook live coding!!! sexta-feira, 30 de novembro de 12
  • 22. Studying HelloEDAM Creating a Note With Tag live coding!!! sexta-feira, 30 de novembro de 12
  • 23. Studying HelloEDAM Creating a Read-Only Note live coding!!! sexta-feira, 30 de novembro de 12
  • 24. The Reference API The reference for the API data, functions and everything http://dev.evernote.com/documentation/reference/ sexta-feira, 30 de novembro de 12
  • 25. Why Use Evernote to store your app’s data? sexta-feira, 30 de novembro de 12
  • 26. Why Use Evernote to store your app’s data? Because your app’s data will be everywhere, well organized and with a pretty interface Because you will give data mobility to your users sexta-feira, 30 de novembro de 12
  • 27. Why Use Evernote to store your app’s data? HTML (ENML) customization for Notes! sexta-feira, 30 de novembro de 12
  • 28. Why Use Evernote to store your app’s data? The Evernote Trunk Apps made using Evernote platform are added to the Evernote Trunk Available through the Web, the MacOS App and the Windows App sexta-feira, 30 de novembro de 12
  • 30. Evernote Hackaton Brazil 2012 The last one took place in São Paulo, November 9th to 11th The goal was develop an Android App using Evernote API The main prize was a travel to Silicon Valley for 2 people of the winner group to visit the Evernote HQ sexta-feira, 30 de novembro de 12
  • 31. Evernote Hackaton Brazil 2012 The last one took place in São Paulo, November 9th to 11th We were there, we didn’t win but we’ve learnt a lot. Don’t let the next opportunity pass by. sexta-feira, 30 de novembro de 12
  • 32. Contacts Any questions or suggestions about the Evernote Android SDK Tyler Smith Sr. Android Engineer @Evernote @TylerSmithNet tsmith@evernote.com sexta-feira, 30 de novembro de 12
  • 33. Contacts The Speaker! Marcos Paulo Damasceno @marcospaulosd linkedin.com/in/marcosdamasceno github.com/marcospaulo slideshare.net/mpsddspm THANKS!!!!!! sexta-feira, 30 de novembro de 12