Protopage 란것을 발견했는데 StartOn 과 상당히 유사한 서비스를 제공하네요. 약간 다른점은 각 페이지로 구별을 할수 있고 public혹은 private으로도 설정해 공유여부를 결정할수 있습니다. 저도 함 만들어봤습니다. http://www.protopage.com/kwangsub Use it to catch up with news from hundreds of sources (including the BBC, CNN, Reuters, New York Times, London Times, CNET, ESPN, ...) Put color coded sticky notes, todo lists and reminders on it Keep your frequently accessed bookmarks on it Name it (e.g. as www.protopage.com/yourname ) Share parts of your page with friends, or keep it private Use it to share photos
참고 : http://developer.android.com/reference/android/media/MediaPlayer.html TF에서 MediaPlayer를 Override할 일이 생겨 테스트하는데 Play/Stop을 하면 연신 IllegalStateException를 일으킨다. MediaPlayer문서를 보니 답이 있다. 잊기전에 주요한 내용들 정리해보자. 아래 State Diagram는 MediaPlayer가 사용자 액션을 받아 취해지는 상태(State)를 의미 객체가 생성되면 Idle상태에서 사용자 이벤트(메소드호출)에 따라 상태가 변함, (편의를 위해 만든 create는 Initialized상태로 됨.) 촉이 한개인 화살표는 Sync, 쌍촉? 화살표는 Async로 이벤트가 처리되는 것을 의미 [중요] 상태(State)흐름이 Stopped가 되면 그 상태에서 Paused, Started, PlaybackCompleted로 이동하지 못한다. 즉, stop()메소드가 불러지면 start(), seekTo(), pause() 메소드를 다시 부를 수 없다는 의미이다. 내가 혼돈했던것이 이부분이다. 보통 Start/Stop을 할 수 있다고 생각하지 않나? 그건 내생각이고 그 원하는 바로 되려면 Start/Pause이다. Stop된 객체를 다시 Start하고 싶으면 Prepare()해야한다. 이렇게 State이동을 잘못하면 IllegalStateException이 발생한다. MediaPlayer를 이용한 작업을 마치면 반드시 release()를 해서 리소스 반환 MediaPlayer 객체를 생성하는 방법 create()와 new, create()를 사용하면 바로 Initialized상태로 진입, new를 사용하면 Idle상태로 진입. 당연한것이 create()를 할때 datasource를 넣어 객체를 한다.
안녕하세요. 댓글을 좀 늦게 발견했습니다. 요즘 바빠서 블로그에 잘 들어가보지도 못했네요. 잘지내시죠? 저도 그날 즐거웠답니다.~^^; 또 다른 인연이 있기 바라며, 여름날 몸조심하세요~^^;
답글삭제@박정근 - 2007/06/08 10:41
답글삭제정말 재미있었어요. 다음에 또 같이 해요`~