SlideShare une entreprise Scribd logo
1  sur  41
Télécharger pour lire hors ligne
Android Tips and Tricks
                  360idev 9/30/09



            Prepared by Alex Shah, TeamSOA




www.teamsoa.com                          alex@teamsoa.
TeamSOA Background

   Founded 2004

   Core Competency
      High availability, distributed, solutions
      Image Search IP
      Web 2.0, Social Networks
      iPhone / Android / Blackberry app development

   Awards
     Won UCSD Connect, Most Innovative New Product
     WebTechniques Web Tools Award for Web Site Mgmt


www.teamsoa.com                               alex@teamsoa.
Market


      10,000 apps in android market (10% that of iPhone App
      store), 36% paid, 64% unpaid*

      1.1 million phones sold (20 million iphones)




 http://seekingalpha.com/article/160286-android-market-now-over-10-000-applications-strong



www.teamsoa.com                                                                alex@teamsoa.
Market (cont)




http://www.techcrunch.com/2009/08/31/top-developer-reveals-android-markets-meager-sales/
        http://www.techcrunch.com/2009/08/31/top-developer-reveals-android-markets-meager-sales/
Usage Over Time




           http://www.pinchmedia.com/appstore-secrets/
www.teamsoa.com                                          alex@teamsoa.
App Development


www.teamsoa.com   alex@teamsoa.
Architecture
WEB 2.0
                   "HUGE!"



www.teamsoa.com              alex@teamsoa.
WEB 2.0

                          YES!
   WebKit Rocks
   Build Android Java <=> Javascript bridge
   Redirect Javascript console to android console
   Store application components locally
   SQLite Rocks




www.teamsoa.com                                alex@teamsoa.
WebKit Rocks

   http://webkit.org/
   iPhone / Android / Blackberry

   Text shadows, compositing, scaling, rotating, animation,
   opacity, layering, masks

   Client-side Database
       var database = openDatabase("Database Name",
       "Database Version");

   jQuery


www.teamsoa.com                                 alex@teamsoa.
Javascript <=> Java

   phonegap
   g2p = new GiftToPhone(this, appView);
   appView.addJavascriptInterface(g2p, "GiftToPhone");
   appView.loadUrl("javascript:$('#back').click();");




www.teamsoa.com                               alex@teamsoa.
Store Locally

    Data URLS:

 <img src="data:image/jpeg;base64,#####" />

 <script type="text/javascript" src="data:

 load url -- url can be:
 data:text/html;charset=utf-8;base64,PGh0bWw

    Look at SQLLite API



www.teamsoa.com                                alex@teamsoa.
jQuery

   parsing XML example
   $('#node').data({name : value}) method




www.teamsoa.com                             alex@teamsoa.
Android Gotchas

   1.1 and above: you can no longer load local files
    too many contacts
   No javascript interface to SQLite
   Java garbage collector




www.teamsoa.com                                 alex@teamsoa.
User Interface


www.teamsoa.com     alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
UI Guidelines

   Do only ONE thing
   Wizards are GOOD
   I Love alerts
   Use Text instead of Icons




www.teamsoa.com                     alex@teamsoa.
UI Guidelines

   Study built-in applications
   Avoid inconsistencies
      "This is weird, cancel is usually over there"




www.teamsoa.com                                   alex@teamsoa.
HOW TO MAKE APPS
               VIRAL?




www.teamsoa.com         alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
Launching Mail app

   mailto:alex@teamsoa,alex@facedouble.com?
   subject=XXX&cc=noreply@facedouble.com&body=XXX
   HTML? YES!




www.teamsoa.com                         alex@teamsoa.
Friend Experience




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
FaceDouble UI




www.teamsoa.com                   alex@teamsoa.
Facebook API

   Now available on android: http://code.google.
   com/p/fbconnect-android/




www.teamsoa.com                                    alex@teamsoa.
AppStore Tips


www.teamsoa.com    alex@teamsoa.
First Impressions Count

   'good' or 'trustworthy' app
   quick gravitate to search
   Initial perception of app is largely influenced by icon design
        vibrant colors
        nice crisp icon
        catchy names
        60x60 not 59x59




    http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone-
                                    presentation/


www.teamsoa.com                                                  alex@teamsoa.
First Impressions Count

   Bad reviews are not a death sentence
      "If a friend liked it I would try it"
      "taken with a grain of salt"




    http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone-
                                    presentation/


www.teamsoa.com                                                  alex@teamsoa.
Paid Apps

   "$4.99 is reasonable"
      "Would be a good price point, although I'd be more
      willing to pay for something like Quicken than for a
      memo pad"




    http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone-
                                    presentation/


www.teamsoa.com                                                  alex@teamsoa.
Paid Apps (cont)

    $.99
       "I'd wonder what it was, does it really have that much
       value, is this malware?"
       "I usually look at the apps that are Free or cost around
       99c because that the iTunes price for music"
       "Easy to buy. 99c means its been around a long time"




    http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone-
                                    presentation/


www.teamsoa.com                                                  alex@teamsoa.
Free Apps

   "I love those"
   "If it's $4.99 and they don't have a trial version, I'd say forget
   it. I would not blindly pay for it, even if it did get a good
   review"
   "I never buy the full version, the trial version is always good
   enough"
   "I'd like to get the real app with a timeout. Light vs. full
   creates confusion - are you getting all the features in the
   light version?"

    http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone-
                                    presentation/


www.teamsoa.com                                                  alex@teamsoa.
No Free


   Give for free for 1st month - BAD
   Making it free does drive traffic, up to 250x more




                   http://majicjungle.com/blog/?p=66


www.teamsoa.com                                        alex@teamsoa.
No 99c

   No room to move
   Everyone who may otherwise not buy your app are
   welcome to give it a one star review
   ranking drops with price
      4 stars to 2 stars after free 2 week offer




                  http://majicjungle.com/blog/?p=66


www.teamsoa.com                                       alex@teamsoa.
AppStore Pricing

   Think upside down
      If you are high in the charts, you can get higher by
      lowering price
      If your are out of the charts, you will earn more by
      increasing your price
      close to top to #100 ==> lower price to get higher
      ranking
      near top #10 ==> raise price to get better revenue



                   http://majicjungle.com/blog/?p=66


www.teamsoa.com                                        alex@teamsoa.
AppStore Tricks

   Build new versions
   Change pricing.. have promotional pricing
   IT DOES NOT COST YOU ANYTHING TO ADD APPS




www.teamsoa.com                     alex@teamsoa.
Useful Links



   WWW.TEAMSOA.COM
alex@teamsoa.com
   http://www.meetup.com/San-Diego-iPhone-Android-developers/
     http://docs.google.com/present/view?id=dfvttpf7_30ffns2cgh
              http://code.google.com/p/fbconnect-android/




www.teamsoa.com                                    alex@teamsoa.
THANKS

www.teamsoa.com   alex@teamsoa.

Contenu connexe

Plus de John Wilker

Physics Solutions for Innovative Game Design
Physics Solutions for Innovative Game DesignPhysics Solutions for Innovative Game Design
Physics Solutions for Innovative Game DesignJohn Wilker
 
Getting Oriented with MapKit: Everything you need to get started with the new...
Getting Oriented with MapKit: Everything you need to get started with the new...Getting Oriented with MapKit: Everything you need to get started with the new...
Getting Oriented with MapKit: Everything you need to get started with the new...John Wilker
 
Getting Started with iPhone Game Development
Getting Started with iPhone Game DevelopmentGetting Started with iPhone Game Development
Getting Started with iPhone Game DevelopmentJohn Wilker
 
Internationalizing Your Apps
Internationalizing Your AppsInternationalizing Your Apps
Internationalizing Your AppsJohn Wilker
 
Optimizing Data Caching for iPhone Application Responsiveness
Optimizing Data Caching for iPhone Application ResponsivenessOptimizing Data Caching for iPhone Application Responsiveness
Optimizing Data Caching for iPhone Application ResponsivenessJohn Wilker
 
I Phone On Rails
I Phone On RailsI Phone On Rails
I Phone On RailsJohn Wilker
 
Integrating Push Notifications in your iPhone application with iLime
Integrating Push Notifications in your iPhone application with iLimeIntegrating Push Notifications in your iPhone application with iLime
Integrating Push Notifications in your iPhone application with iLimeJohn Wilker
 
Starting Core Animation
Starting Core AnimationStarting Core Animation
Starting Core AnimationJohn Wilker
 
P2P Multiplayer Gaming
P2P Multiplayer GamingP2P Multiplayer Gaming
P2P Multiplayer GamingJohn Wilker
 
Using Concurrency To Improve Responsiveness
Using Concurrency To Improve ResponsivenessUsing Concurrency To Improve Responsiveness
Using Concurrency To Improve ResponsivenessJohn Wilker
 
Leaving Interface Builder Behind
Leaving Interface Builder BehindLeaving Interface Builder Behind
Leaving Interface Builder BehindJohn Wilker
 
Mobile WebKit Development and jQTouch
Mobile WebKit Development and jQTouchMobile WebKit Development and jQTouch
Mobile WebKit Development and jQTouchJohn Wilker
 
Accelerometer and OpenGL
Accelerometer and OpenGLAccelerometer and OpenGL
Accelerometer and OpenGLJohn Wilker
 
Deep Geek Diving into the iPhone OS and Framework
Deep Geek Diving into the iPhone OS and FrameworkDeep Geek Diving into the iPhone OS and Framework
Deep Geek Diving into the iPhone OS and FrameworkJohn Wilker
 
NSNotificationCenter vs. AppDelegate
NSNotificationCenter vs. AppDelegateNSNotificationCenter vs. AppDelegate
NSNotificationCenter vs. AppDelegateJohn Wilker
 
From Flash to iPhone
From Flash to iPhoneFrom Flash to iPhone
From Flash to iPhoneJohn Wilker
 
Managing And Optimizing Memory Usage
Managing And Optimizing Memory UsageManaging And Optimizing Memory Usage
Managing And Optimizing Memory UsageJohn Wilker
 
Using the Addressbook
Using the AddressbookUsing the Addressbook
Using the AddressbookJohn Wilker
 
Web or SDK Development
Web or SDK DevelopmentWeb or SDK Development
Web or SDK DevelopmentJohn Wilker
 

Plus de John Wilker (20)

Physics Solutions for Innovative Game Design
Physics Solutions for Innovative Game DesignPhysics Solutions for Innovative Game Design
Physics Solutions for Innovative Game Design
 
Getting Oriented with MapKit: Everything you need to get started with the new...
Getting Oriented with MapKit: Everything you need to get started with the new...Getting Oriented with MapKit: Everything you need to get started with the new...
Getting Oriented with MapKit: Everything you need to get started with the new...
 
Getting Started with iPhone Game Development
Getting Started with iPhone Game DevelopmentGetting Started with iPhone Game Development
Getting Started with iPhone Game Development
 
Internationalizing Your Apps
Internationalizing Your AppsInternationalizing Your Apps
Internationalizing Your Apps
 
Optimizing Data Caching for iPhone Application Responsiveness
Optimizing Data Caching for iPhone Application ResponsivenessOptimizing Data Caching for iPhone Application Responsiveness
Optimizing Data Caching for iPhone Application Responsiveness
 
I Phone On Rails
I Phone On RailsI Phone On Rails
I Phone On Rails
 
Integrating Push Notifications in your iPhone application with iLime
Integrating Push Notifications in your iPhone application with iLimeIntegrating Push Notifications in your iPhone application with iLime
Integrating Push Notifications in your iPhone application with iLime
 
Starting Core Animation
Starting Core AnimationStarting Core Animation
Starting Core Animation
 
P2P Multiplayer Gaming
P2P Multiplayer GamingP2P Multiplayer Gaming
P2P Multiplayer Gaming
 
Using Concurrency To Improve Responsiveness
Using Concurrency To Improve ResponsivenessUsing Concurrency To Improve Responsiveness
Using Concurrency To Improve Responsiveness
 
Leaving Interface Builder Behind
Leaving Interface Builder BehindLeaving Interface Builder Behind
Leaving Interface Builder Behind
 
Mobile WebKit Development and jQTouch
Mobile WebKit Development and jQTouchMobile WebKit Development and jQTouch
Mobile WebKit Development and jQTouch
 
Accelerometer and OpenGL
Accelerometer and OpenGLAccelerometer and OpenGL
Accelerometer and OpenGL
 
Deep Geek Diving into the iPhone OS and Framework
Deep Geek Diving into the iPhone OS and FrameworkDeep Geek Diving into the iPhone OS and Framework
Deep Geek Diving into the iPhone OS and Framework
 
NSNotificationCenter vs. AppDelegate
NSNotificationCenter vs. AppDelegateNSNotificationCenter vs. AppDelegate
NSNotificationCenter vs. AppDelegate
 
Using SQLite
Using SQLiteUsing SQLite
Using SQLite
 
From Flash to iPhone
From Flash to iPhoneFrom Flash to iPhone
From Flash to iPhone
 
Managing And Optimizing Memory Usage
Managing And Optimizing Memory UsageManaging And Optimizing Memory Usage
Managing And Optimizing Memory Usage
 
Using the Addressbook
Using the AddressbookUsing the Addressbook
Using the Addressbook
 
Web or SDK Development
Web or SDK DevelopmentWeb or SDK Development
Web or SDK Development
 

Dernier

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DaySri Ambati
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxLoriGlavin3
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...Fwdays
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsPixlogix Infotech
 

Dernier (20)

How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo DayH2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
H2O.ai CEO/Founder: Sri Ambati Keynote at Wells Fargo Day
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptxMerck Moving Beyond Passwords: FIDO Paris Seminar.pptx
Merck Moving Beyond Passwords: FIDO Paris Seminar.pptx
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks..."LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
"LLMs for Python Engineers: Advanced Data Analysis and Semantic Kernel",Oleks...
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptxE-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
E-Vehicle_Hacking_by_Parul Sharma_null_owasp.pptx
 
The Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and ConsThe Ultimate Guide to Choosing WordPress Pros and Cons
The Ultimate Guide to Choosing WordPress Pros and Cons
 

Porting from iPhone to Android, Blackberry, Palm, etc. using Web 2.0 technologies -- success and pitfalls

  • 1. Android Tips and Tricks 360idev 9/30/09 Prepared by Alex Shah, TeamSOA www.teamsoa.com alex@teamsoa.
  • 2. TeamSOA Background Founded 2004 Core Competency High availability, distributed, solutions Image Search IP Web 2.0, Social Networks iPhone / Android / Blackberry app development Awards Won UCSD Connect, Most Innovative New Product WebTechniques Web Tools Award for Web Site Mgmt www.teamsoa.com alex@teamsoa.
  • 3. Market 10,000 apps in android market (10% that of iPhone App store), 36% paid, 64% unpaid* 1.1 million phones sold (20 million iphones) http://seekingalpha.com/article/160286-android-market-now-over-10-000-applications-strong www.teamsoa.com alex@teamsoa.
  • 4. Market (cont) http://www.techcrunch.com/2009/08/31/top-developer-reveals-android-markets-meager-sales/ http://www.techcrunch.com/2009/08/31/top-developer-reveals-android-markets-meager-sales/
  • 5. Usage Over Time http://www.pinchmedia.com/appstore-secrets/ www.teamsoa.com alex@teamsoa.
  • 8. WEB 2.0 "HUGE!" www.teamsoa.com alex@teamsoa.
  • 9. WEB 2.0 YES! WebKit Rocks Build Android Java <=> Javascript bridge Redirect Javascript console to android console Store application components locally SQLite Rocks www.teamsoa.com alex@teamsoa.
  • 10. WebKit Rocks http://webkit.org/ iPhone / Android / Blackberry Text shadows, compositing, scaling, rotating, animation, opacity, layering, masks Client-side Database var database = openDatabase("Database Name", "Database Version"); jQuery www.teamsoa.com alex@teamsoa.
  • 11. Javascript <=> Java phonegap g2p = new GiftToPhone(this, appView); appView.addJavascriptInterface(g2p, "GiftToPhone"); appView.loadUrl("javascript:$('#back').click();"); www.teamsoa.com alex@teamsoa.
  • 12. Store Locally Data URLS: <img src="data:image/jpeg;base64,#####" /> <script type="text/javascript" src="data: load url -- url can be: data:text/html;charset=utf-8;base64,PGh0bWw Look at SQLLite API www.teamsoa.com alex@teamsoa.
  • 13. jQuery parsing XML example $('#node').data({name : value}) method www.teamsoa.com alex@teamsoa.
  • 14. Android Gotchas 1.1 and above: you can no longer load local files too many contacts No javascript interface to SQLite Java garbage collector www.teamsoa.com alex@teamsoa.
  • 21. UI Guidelines Do only ONE thing Wizards are GOOD I Love alerts Use Text instead of Icons www.teamsoa.com alex@teamsoa.
  • 22. UI Guidelines Study built-in applications Avoid inconsistencies "This is weird, cancel is usually over there" www.teamsoa.com alex@teamsoa.
  • 23. HOW TO MAKE APPS VIRAL? www.teamsoa.com alex@teamsoa.
  • 25. Launching Mail app mailto:alex@teamsoa,alex@facedouble.com? subject=XXX&cc=noreply@facedouble.com&body=XXX HTML? YES! www.teamsoa.com alex@teamsoa.
  • 29. Facebook API Now available on android: http://code.google. com/p/fbconnect-android/ www.teamsoa.com alex@teamsoa.
  • 31. First Impressions Count 'good' or 'trustworthy' app quick gravitate to search Initial perception of app is largely influenced by icon design vibrant colors nice crisp icon catchy names 60x60 not 59x59 http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone- presentation/ www.teamsoa.com alex@teamsoa.
  • 32. First Impressions Count Bad reviews are not a death sentence "If a friend liked it I would try it" "taken with a grain of salt" http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone- presentation/ www.teamsoa.com alex@teamsoa.
  • 33. Paid Apps "$4.99 is reasonable" "Would be a good price point, although I'd be more willing to pay for something like Quicken than for a memo pad" http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone- presentation/ www.teamsoa.com alex@teamsoa.
  • 34. Paid Apps (cont) $.99 "I'd wonder what it was, does it really have that much value, is this malware?" "I usually look at the apps that are Free or cost around 99c because that the iTunes price for music" "Easy to buy. 99c means its been around a long time" http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone- presentation/ www.teamsoa.com alex@teamsoa.
  • 35. Free Apps "I love those" "If it's $4.99 and they don't have a trial version, I'd say forget it. I would not blindly pay for it, even if it did get a good review" "I never buy the full version, the trial version is always good enough" "I'd like to get the real app with a timeout. Light vs. full creates confusion - are you getting all the features in the light version?" http://www.slideshare.net/createwithcontext/how-people-really-use-the-iphone- presentation/ www.teamsoa.com alex@teamsoa.
  • 36. No Free Give for free for 1st month - BAD Making it free does drive traffic, up to 250x more http://majicjungle.com/blog/?p=66 www.teamsoa.com alex@teamsoa.
  • 37. No 99c No room to move Everyone who may otherwise not buy your app are welcome to give it a one star review ranking drops with price 4 stars to 2 stars after free 2 week offer http://majicjungle.com/blog/?p=66 www.teamsoa.com alex@teamsoa.
  • 38. AppStore Pricing Think upside down If you are high in the charts, you can get higher by lowering price If your are out of the charts, you will earn more by increasing your price close to top to #100 ==> lower price to get higher ranking near top #10 ==> raise price to get better revenue http://majicjungle.com/blog/?p=66 www.teamsoa.com alex@teamsoa.
  • 39. AppStore Tricks Build new versions Change pricing.. have promotional pricing IT DOES NOT COST YOU ANYTHING TO ADD APPS www.teamsoa.com alex@teamsoa.
  • 40. Useful Links WWW.TEAMSOA.COM alex@teamsoa.com http://www.meetup.com/San-Diego-iPhone-Android-developers/ http://docs.google.com/present/view?id=dfvttpf7_30ffns2cgh http://code.google.com/p/fbconnect-android/ www.teamsoa.com alex@teamsoa.
  • 41. THANKS www.teamsoa.com alex@teamsoa.