1. Adobe AIR cross platform development overview
Mario Vieira
@MazTwitties
info@mariovieira.net
blog.mariovieira.net
2. WiMP Desktop + R&D
Video distribution and live webcast platform
stream.regjeringen.no/portal/
dn.no/dntv/
stortinget.no/no/Hva-skjer-pa-Stortinget/Stortinget-akkurat-na/Nett-TV/
blog.mariovieira.net
Mario Vieira
@MazTwitties
info@mariovieira.net
blog.mariovieira.net
3. Today’s content
Coding for multiple platforms
App stores
Statistics + Adverts + Monetizing
Question
How many of you develop mobiles
solutions in AIR?
How many published applications
to the stores?
How many published paid
applications?
5. Coding for multiple platforms
Project setup
Question
How many of you develop mobiles
solutions in AIR?
How many published applications
to the stores?
How many published paid
applications?
6. Coding for multiple platforms
Project setup
Separating configuration from implementation
7. Coding for multiple platforms
Project setup anyone here used Spring
Action Script or
SwiftSuspenders XML
mapping ?
Separating configuration from implementation Whether at compile
time or run time
eg; vector of VOs with
automation of MVCS the information of the
mapping
SDK decoupling
11. Coding for multiple platforms Freely changing views
- Mediator has no concerns
- If I needed to make this view appear
in a PopUp I would need a Mediation,
and so I could simply create an instance
Project setup
of this Supervising and have it running
as fine
Separating configuration from implementation
Presentation Pattern: Supervising Presenter
12. - Benchmarks: up to 30% faster than
metaprograming (Injector, postConstruct
tahs)
- No configuration
- IInjector dependency as opposed to
metaprogramming strings ([PostConstruct])
- AIR 2.5 export swc in Flash killed
performance (still noticeable difference in
Flash, Flex is built in metaorograming)
13.
14.
15.
16. “BG Process is not triggered by a specific user interface interaction
(see Command pattern). It’s often triggered by a combination of data
changes, or any other set of conditions.
In order to ensure Separation of Concerns the background process shall
not operate with concrete implementations, but to access other
controls or logics. It may also work in combination with the command
pattern to broadcast operation execution requests for further abstraction“
18. Coding for multiple platforms
Project setup
DPIs, dimensions, performance, apis
Native extensions:
Adobe's
Android
@media queries css
MultiDPIBitmapSource and MultiDPIVerticalLayout
Jason’s mobile theme proof of concept
19. Coding for multiple platforms
Project setup
DPIs, dimensions, performance, apis
Native extensions:
Adobe's
Android
@media queries css
MultiDPIBitmapSource and MultiDPIVerticalLayout
Jason’s mobile theme proof of concept
Background Audio on iOS
- design an app that uses the microphone, grab it and you’re good
Can’t charge on Android market due to new licensing API
21. Coding for multiple platforms
Project setup
DPIs, dimensions, performance, apis
GPU
Desktop:
GPU great performance AND vector and bitmap rendering
22. Coding for multiple platforms
Project setup
DPIs, dimensions, performance, apis
GPU
Desktop:
GPU great performance AND vector and bitmap rendering
Mobile:
GPU great performance and rendering on bitmap AND poor vector rendering
Performance can be slower for manipulating display item objects, and vectors
Playbook: No auto orient (bug)
23. Coding for multiple platforms Freely changing views
- Mediator has no concerns
- If I needed to make this view appear
in a PopUp I would need a Mediation,
and so I could simply create an instance
Project setup
of this Supervising and have it running
as fine
DPIs, dimensions, performance, apis
GPU
Desktop:
GPU great performance AND vector and bitmap rendering
Mobile:
GPU great performance and rendering on bitmap AND poor vector rendering
Performance can be slower for manipulating display item objects, and vectors
Playbook: No auto orient (bug)
Microphone and cameras
24. GPU
Desktop
FXG
(sharp and clear)
PNG
PNG
Default Spark
RadioButton
PNG (sharp and clear)
25. GPU
Mobile (160 dpi iPad2)
FXG
(pixelated)
PNG
PNG
Default Spark
Radio Button
(pixelated)
PNG
26. CPU
Mobile (160 dpi iPad2)
FXG texture
FXG gradient and
alpha
27. GPU
Mobile (160 dpi iPad2)
FXG texture (gone)
FXG gradient and
alpha (gone)
28. - Jason’s mobile theme proof of concept
- CPU and GPU samples
Show iPad apps
29. App stores
- Follow agreement (15 to 20min reading)
30. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
31. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
32. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
33. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
34. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
35. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
36. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
37. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
- Offer promotion deals not based on pricing
38. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
- Offer promotion deals not based on pricing
Your shots Paulos FOTB
session
39. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
- Offer promotion deals not based on pricing
Your shots
- Icon + keywords
40. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
- Offer promotion deals not based on pricing
Your shots
- Icon + keywords
- Descriptions / clear features
41. App stores
- Follow agreement (15 to 20min reading)
- App web page with features in image and video
- Free support as feature
- Localise to south Europe (at least)
- Talk to your users
- Take advantage of AIR unique aspects
- Provide advertising to your app to start with
- Make sure your description does not disappoint your users
- Offer promotion deals not based on pricing
Your shots
- Icon + keywords
- Descriptions / clear features
- Web site / videos / screen shots
42. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
43. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
If you want to play
around with promo
phrases, push them
every Wed to you
get it for the
weekend
44. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
45. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
46. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
47. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
- Get an free ftp account
48. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
- Get an free ftp account
Android market
- Freedom
49. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
- Get an free ftp account
Android market
- Freedom
- Explicitly ask your users to use the support site instead of rating your app badly
50. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
- Get an free ftp account
Android market
- Freedom
- Explicitly ask your users to use the support site instead of rating your app badly
- Put ads to generate revenue that promotes the paid apps
51. App stores
Apple App Store
- Get approved, then change app description and metadata with NO approval
BlackBerry App World
- Work out a weekly based description, app description changes needs approval
- Add a ticket after sending the app for review with the “reviewer instructions”
Amazon app store
- Use captive run time (AIR will ask to be download via Android Market, which is ban)
- Make sure the review link points to Amazon apple store
*http://www.amazon.com/gp/mas/dl/android?p=uk.co.baremedia.videoMonitor
- Get an free ftp account
Android market
- Freedom
- Explicitly ask your users to use the support site instead of rating your app badly
- Put ads to generate revenue that promotes the paid apps
- Wait to be over 2.500 downloads, and start charging
* Licensing Adobe AIR apps
56. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
57. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
58. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
59. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
60. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
61. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
62. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
- Try different promotions
63. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
- Try different promotions
- Control the variants to better understand your site statistics
64. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
- Try different promotions
- Control the variants to better understand your site statistics
- Work hard in your descriptions
65. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
- Try different promotions
- Control the variants to better understand your site statistics
- Work hard in your descriptions
- Try getting all “unfair” comments out of your app store page
66. Statistics + Adverts + Monetizing
Statistics
- Google Analytics
- URL shorteners
- Ship signed AIR apps
KSoftware.net (U$99/yr 35% cheaper,)
Important: if you buy from them use the link above, FUGN will build credit for cheaper prices
Adverts
- AdMob generates credits in the free apps to advertise the paid ones (AdMod Flex comp)
- Try boosting you first two weeks of Apple app store “new release” sales with at least U$30,00 daily budget
- Runs multiple ads with specific public target by age,device, tablet, phone version, etc (weekly builds)
Monetizing
- Lower your expectations
- Try different promotions
- Control the variants to better understand your site statistics
- Work hard in your descriptions
- Try getting all “unfair” comments out of your app store page
- Work had in your descriptions