소규모 개발사들은 안드로이드, 아이폰, 윈도우폰등등 모든 스마트폰을 대응 할 수 없다. 
“모든 스마트폰에 기본으로 탑재되어있는 브라우저 기술을 이용한다면 대응할 수 있지 않을까?” 라는 개념으로 시작된게 하이브리드 애플리케이션이다.
이런 스크립트 프레임워크가 꽤 많이 나왔는데, 각각의 장단점을 비교 해놓은 자료이다.
어떤 프레임워크가 좋다 나쁘다는 없지만, 그래도 개요라도 정리가 되어있어서 선택에 도움이 될것으로 보인다.


swfobject 오픈 소스 프로젝트로 진행중이다.
http://code.google.com/p/swfobject/

웹표준에 부합하지 않는 플래시를 좋아하진 않지만, 플래시를 어쩔 수 없이 써야하는 경우가 있다. 동적인 컨텐츠를 로드한다랄지 클라이언트에서 그렇게 원한다던지…

근데 Internet Explorer와 FireFox는 서로 다른 방식으로 HTML 태그(embed, object)를 사용한다. 그리고 그 파라미터는 복잡해서 매번 컨텐츠를 넣을때마다 외울 수도 없고 항상 찾아서 넣어야 한다. swfojbect를 사용하면 이러한 불편함을 줄일 수 있고, 태그를 잘못썼나 하는 고민에서 해방될 수 있다. 그리고 무엇보다 몇줄만 추가하면 되고 스펙에 정의된대로 뿌려줄 수 있기 때문에 매우 편리하다.

기존 플래시 가져오는 코드

  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  2. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  3.   <head>
  4.     <title>SWFObject – step 3</title>
  5.     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  6.     <script type="text/javascript" src="swfobject.js"></script>
  7.  
  8.     <script type="text/javascript">
  9.     swfobject.registerObject("myId", "9.0.115", "expressInstall.swf");
  10.     </script>
  11.  
  12.   </head>
  13.   <body>
  14.     <div>
  15.  
  16.       <object id="myId" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" width="780" height="420">
  17.  
  18.         <param name="movie" value="myContent.swf" />
  19.         <!–[if !IE]>–>
  20.         <object type="application/x-shockwave-flash" data="myContent.swf" width="780" height="420">
  21.         <!–<![endif]–>
  22.           <p>Alternative content</p>
  23.         <!–[if !IE]>–>
  24.         </object>
  25.         <!–<![endif]–>
  26.       </object>
  27.     </div>
  28.   </body>
  29. </html>

swfobject 사용후 변경된코드

  1.  
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" lang="en" xml:lang="en">
  4.   <head>
  5.     <title>SWFObject dynamic embed – step 3</title>
  6.     <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
  7.     <script type="text/javascript" src="swfobject.js"></script>
  8.      
  9.     <script type="text/javascript">
  10.     swfobject.embedSWF("myContent.swf", "myContent", "300", "120", "9.0.0");
  11.     </script>
  12.  
  13.   </head>
  14.   <body>
  15.     <div id="myContent">
  16.       <p>Alternative content</p>
  17.     </div>
  18.   </body>
  19. </html>

한줄로 쉽게 사용할 수 있다는게 매우 매력적이다.

Tagged with:  
많은 웹 2.0을 지향하는 서비스들에는 구글(지메일) 연락처를 가져와서 서비스를 한번에 홍보하거나 친구로 등록할 수 있는 기능들이 있다.
이를 휴팟에 구현하려고 하다가 그 난해함과 국내 자료가 부족하였다. OAuth도 공부하게 되었는데 문제는 구글에서 소개하는 PHP로 하는 방법을 사용하면 오류가 나고 공부해서 구현하려면 몇일은 그냥 까먹을거 같았다.
결국 구글링을 하면서 씨름을하다가 IBM Developerworks 에서 찾아냈다.
PHP + Zend Framework 기반이라 사용하기도 쉽고, 서버에 따로 작업을 할 필요가 없다는 점이 장점이다.

PHP 애플리케이션과 Google Contacts 통합하기
요약:  Google Contacts Data API는 사용자의 개인용 Gmail 연락처 정보를 읽고 수정할 수 있는 강력한 클라이언트 중립적 API를 제공합니다. 애플리케이션 컨텍스트에서 이 API와 함께 사용자 정의 PHP 애플리케이션을 통해 연락처를 검색, 추가, 삭제 및 수정하는 방법에 대해 설명합니다.
구글 주소록 레퍼런스
Tagged with:  
Weboy