안드로이드 개발 질문/답변
(글 수 45,052)
안녕하세요.
RSS Reader를 공부하고 있습니다. 간단한 RSS Reader를 구해서
거기다가 RssAppWidgetProvider.java 클래스를 만들어서 이걸 위젯으로 만드는 중인데요.
Android Guide 를 보고 따라 만들어서 AppWidgetProvider 를 extend 하는 class 입니다.
궁금한 점은,
현재는 바탕화면에서 long key 로 widget 중에 Rss Reader Widget 을 선택하면
바탕화면에 하나의 RSS 채널이 하나의 widget으로 나타나는 데요, 이 위젯을 click 하면 rss channel list activity가 실행됩니다.
이 시나리오를 변경하고 싶은데요
Widget select 에서 Rss Reader Widget을 선택하면, RssReader 어플리케이션의 channel list activity가 뜨고 여기서 선택된 channel 을 위젯으로 바탕화면에 뿌려주도록 만들고 싶습니다. Channel list는 RssChannelList.java 가 가지고 있구요.
이걸 어떻게 하면 될까 고민을 해봤는데,
RssAppWidgetProvider.java 에서 intent로
Intent channelIntent = new Intent(context,RssChannelList.class);
startActivityForResult(intent, 1);
위와 같이 호출하려고 하니 빌드에러가 나더군요. startActivityForResult 는 Activity를 상속하는 class 에서만 수행이 되네요.
intent로 channlelist 를 부르고 결과를 StartActivityForResult 로 받을려고 했는데.. 결국 이 방법은 위젯에서는 사용할 수가 없습니다.
어떻게 하면.. 위젯 클래스에서 다른 activity를 호출해서 결과값을 받을 수 있을까요?
아시는 분의 조언 부탁드립니다.
감사합니다.
RSS Reader를 공부하고 있습니다. 간단한 RSS Reader를 구해서
거기다가 RssAppWidgetProvider.java 클래스를 만들어서 이걸 위젯으로 만드는 중인데요.
Android Guide 를 보고 따라 만들어서 AppWidgetProvider 를 extend 하는 class 입니다.
궁금한 점은,
현재는 바탕화면에서 long key 로 widget 중에 Rss Reader Widget 을 선택하면
바탕화면에 하나의 RSS 채널이 하나의 widget으로 나타나는 데요, 이 위젯을 click 하면 rss channel list activity가 실행됩니다.
이 시나리오를 변경하고 싶은데요
Widget select 에서 Rss Reader Widget을 선택하면, RssReader 어플리케이션의 channel list activity가 뜨고 여기서 선택된 channel 을 위젯으로 바탕화면에 뿌려주도록 만들고 싶습니다. Channel list는 RssChannelList.java 가 가지고 있구요.
이걸 어떻게 하면 될까 고민을 해봤는데,
RssAppWidgetProvider.java 에서 intent로
Intent channelIntent = new Intent(context,RssChannelList.class);
startActivityForResult(intent, 1);
위와 같이 호출하려고 하니 빌드에러가 나더군요. startActivityForResult 는 Activity를 상속하는 class 에서만 수행이 되네요.
intent로 channlelist 를 부르고 결과를 StartActivityForResult 로 받을려고 했는데.. 결국 이 방법은 위젯에서는 사용할 수가 없습니다.
어떻게 하면.. 위젯 클래스에서 다른 activity를 호출해서 결과값을 받을 수 있을까요?
아시는 분의 조언 부탁드립니다.
감사합니다.
2009.11.18 17:40:17
저도 비슷한 고민을 했었는데요.
appwidgetprovider를 상속한 클래스에서 activity를 호출하려고 할때 아래 방법을 사용했습니다.
근데 저도 onActivityResult처럼 결과값을 가지고 처리하는 부분에서 막히고 있습니다.
진행하시다가 결과 나오시면 공유 부탁드릴게요~ ^^
Intent intent;
PendingIntent pendingIntent;
intent = new Intent(context,RssChannelList.class);
pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);
appwidgetprovider를 상속한 클래스에서 activity를 호출하려고 할때 아래 방법을 사용했습니다.
근데 저도 onActivityResult처럼 결과값을 가지고 처리하는 부분에서 막히고 있습니다.
진행하시다가 결과 나오시면 공유 부탁드릴게요~ ^^
Intent intent;
PendingIntent pendingIntent;
intent = new Intent(context,RssChannelList.class);
pendingIntent = PendingIntent.getActivity(context, 0, intent, 0);