Air on Mobile (2011)

9,861 views

Published on

Published in: Technology
  • swf based ios apps which software is best .

    www.linefocus.com
       Reply 
    Are you sure you want to  Yes  No
    Your message goes here

Air on Mobile (2011)

  1. 1. AIRonMOBILEMaso Lin2011/4/18
  2. 2. 人活得好好的幹嘛寫手機APP?
  3. 3. 全球68億人口
  4. 4. 有34億人有手機
  5. 5. 但不只34億”台”手機
  6. 6. 2010年底超過50億台
  7. 7. 那手機很多 關我什麼事 俺是閃客啊ActionScriptHero.org
  8. 8. SmartPhone+Tablet > PC+NB 預計今年超越 2013達到2倍
  9. 9. 日本MIXI手機連線85%電腦連線15%
  10. 10. FACEBOOK則是 4:1左右
  11. 11. TWITTER約2:1
  12. 12. AT&T過去3年行動上網量 成長50倍
  13. 13. 全球行手上網量 預估未來5年 將再成長26倍
  14. 14. SOLOMO via John Doerr
  15. 15. SOCIALLOCALMOBILE
  16. 16. 準備工作
  17. 17. • Flash CS5 (AIR2.0)• Flash CS5.5 (AIR 2.6)• Flash Builder4.5 (Spark mobile component)
  18. 18. • Android SDK• 保護費 $25(終身)• Android Phone/Pad若干
  19. 19. • ARMv7• Android 2.2以上
  20. 20. • Mac電腦乙部(會比較方便)• 保護費 $99(年)• iPhone, iPad 少許
  21. 21. • iPod Touch 3代以上• iPhone3Gs以上• iPad• iOS 4.0以上
  22. 22. • CertifiedDevices http://www.adobe.com/flashplatform/ certified_devices/
  23. 23. Photo via Mike Chambers 可以玩哪些
  24. 24. Accelerometerimport flash.events.AccelerometerEvent;import flash.sensors.Accelerometer;var accelerometer:Accelerometer;accelerometer = new Accelerometer();accelerometer.addEventListener(AccelerometerEvent.UPDATE, accUpdateHandler);function accUpdateHandler(event:AccelerometerEvent):void{ xSpeed -= event.accelerationX * 2; ySpeed += event.accelerationY * 2;} http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/sensors/Accelerometer.html
  25. 25. Geolocationimport flash.events.GeolocationEvent;import flash.sensors.Geolocation;var geo:Geolocation;geo = new Geolocation();geo.addEventListener(GeolocationEvent.UPDATE,geoUpdateHandler);function geoUpdateHandler(event:GeolocationEvent):void{ trace(event.latitude); trace(event.longitude);} http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/sensors/ Geolocation.html
  26. 26. Multitouch : Touch PointMultitouch.inputMode = MultitouchInputMode.TOUCH_POINT;addEventListener(TouchEvent.TOUCH_BEGIN, onTouchBegin);addEventListener(TouchEvent.TOUCH_END, onTouchEnd);addEventListener(TouchEvent.TOUCH_MOVE, onTouchMove);function onTouchBegin(eBegin:TouchEvent) { trace(eBegin.touchPointID); trace(eMove.stageX); trace(eMove.stageY);}function onTouchMove(eMove:TouchEvent) { trace(eMove.stageX); trace(eMove.stageY);}function onTouchEnd(eEnd:TouchEvent) { trace(eEnd.touchPointID);} http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/events/TouchEvent.html
  27. 27. Multitouch : GestureMultitouch.inputMode = MultitouchInputMode.GESTURE;addEventListener(TransformGestureEvent.GESTURE_ROTATE,onRotate)addEventListener(TransformGestureEvent.GESTURE_ZOOM,onZoom)addEventListener(TransformGestureEvent.GESTURE_PAN,onPan)addEventListener(TransformGestureEvent.GESTURE_SWIPE,onSwipe)function onRotate(e:TransformGestureEvent):void{ trace(e.rotation);}function onZoom(e:TransformGestureEvent):void{ trace([e.scaleX,e.scaleY])}function onPan(e:TransformGestureEvent):void{ trace([e.offsetX,e.offsetY])}function onSwipe(e:TransformGestureEvent):void{} http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/events/GestureEvent.html
  28. 28. StageWebViewimport flash.media.StageWebView;var webView:StageWebView = new StageWebView();webView.stage = this.stage;webView.viewPort = new Rectangle( 0, 0,stage.stageWidth, stage.stageHeight );webView.loadURL( "http://www.example.com" );webView.loadString( "<html></html>" ); http://help.adobe.com/en_US/FlashPlatform/beta/reference/actionscript/3/flash/media/ StageWebView.html#includeExamplesSummary
  29. 29. Microphone,Camerahttp://help.adobe.com/zh_TW/AS3LCR/Flash_10.0/flash/media/Microphone.html
  30. 30. CameraUI, CameraRollvar deviceCameraApp:CameraUI = new CameraUI();var imageLoader:Loader;deviceCameraApp.addEventListener( MediaEvent.SELECT,imageCaptured );deviceCameraApp.addEventListener( Event.CANCEL,captureCanceled );deviceCameraApp.addEventListener( ErrorEvent.ERROR,cameraError );deviceCameraApp.launch( MediaType.IMAGE );function imageCaptured( event:MediaEvent ):void{ var imagePromise:MediaPromise = event.data; imageLoader = new Loader(); imageLoader.loadFilePromise( imagePromise );}//CameraRoll.addBitmapData() http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/CameraUI.html
  31. 31. 多工/Idle : flash.desktop.NativeApplication硬體鍵 : Keyboard.BACK/Keyboard.MENU畫面轉向:stage.addEventListener(Event.RESIZE,onResize)
  32. 32. 效能淺談
  33. 33. 先看個Demo-Comb Over Charliehttp://www.youtube.com/watch?v=5rp7UNCWbyc-iPhone Testhttp://vimeo.com/21382542
  34. 34. 原本做Web Flash用的效能技巧大都適用 除此之外…
  35. 35. 多用點陣少用向量點陣圖也盡量不要太大張盡量不用:Filter, Blend modes, 透明等
  36. 36. mySprite.cacheAsBitmap=true;mySprite.cacheAsBitmapMatrix=new Matrix();
  37. 37. <renderMode>gpu</renderMode> <renderMode>cpu</renderMode> <renderMode>auto</renderMode>
  38. 38. Motion Graphic 可Animation仍太弱
  39. 39. 關於設計
  40. 40. 熟知各device的尺寸、長寬、解析度
  41. 41. 以手指操作,而非游標
  42. 42. 務必多放在device上實測
  43. 43. 操作方式的重新思考
  44. 44. 簡化聚焦
  45. 45. AIR on Mobile優缺點
  46. 46. 原有的熟悉語言Web - Mobile連動成熟的IDE工具
  47. 47. 侷限在中高階手機 API 支援度 效能
  48. 48. 堪用以上實用未滿
  49. 49. 參考資料Top Mobile Internet Trendshttp://www.scribd.com/doc/48589047/Top-Mobile-Internet-Trends-2011-from-KPCBDeveloping AIR for Android with Flash Professional CS5http://www.slideshare.net/chrisgriffith/developing-air-for-android-with-flash-professional-cs5-7562915Mobile First by Luke Wroblewskihttp://www.lukew.com/presos/preso.asp?26Rethinkingthe Mobile Web by Yiibu by Bryan Riegerhttp://www.slideshare.net/bryanrieger/rethinking-the-mobile-web-by-yiibuInternetTrends 2010 by Morgan Stanley Researchhttp://www.slideshare.net/CMSummit/ms-internet-trends060710finalABI Researchhttp://www.abiresearch.com/press/1684-Worldwide+Mobile+Subscriptions+Forecast+to+Exceed+Five+Billion+by+4Q-2010AppleiPhone and iPod touch Capture U.S.Video Game Market Share by Flurry.comhttp://blog.flurry.com/bid/31566/Apple-iPhone-and-iPod-touch-Capture-U-S-Video-Game-Market-Share
  50. 50. Q&Ahttp://maslin.blogspot.com

×