이틀동안 고생한 문제입니다.
버튼이 있는 간단한 Activity에서 버튼을 클릭하면 특정 appWidget을 실행하고 싶습니다.
appWidget을 실행하기는 하였으나 방법이 잘못되었는지 클릭 이벤트가 먹지 않습니다.
일반적인 방법인 ACTION_APPWIDGET_PICK를 이용해서 위젯리스트중 선택하면
정상적으로 작동합니다.
Intent pickIntent = new Intent(AppWidgetManager.ACTION_APPWIDGET_PICK);
pickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
startActivityForResult(pickIntent, REQUEST_PICK_APPWIDGET);
헌데 아래와 같이 startActivityForResult없이 하면 appWidget에 click 이벤트는 먹히는데
아무런 반응이 없습니다.
int appWidgetId = mAppWidgetHost.allocateAppWidgetId();
Intent pickIntent = new Intent(AppWidgetManager.ACTION_APPWIDGET_PICK);
pickIntent.putExtra(AppWidgetManager.EXTRA_APPWIDGET_ID, appWidgetId);
List<AppWidgetProviderInfo> widgets = AppWidgetManager.getInstance(this).getInstalledProviders();
RelativeLayout parent= (RelativeLayout) findViewById(R.id.mylockscreen);
AppWidgetProviderInfo test = widgets.get(8);
AppWidgetHostView aa = mAppWidgetHost.createView(this, appWidgetId, test);
parent.addView(aa);
구글링을 해보면 저와같이 appWidget을 직접 실행하고 싶어 질문을 올린 사람들이 많은것 같은데 정작 답글이 없더군요..ㅠ.ㅠ
고수님들 좀 도와주십시오..~~