このサイトの制限により、私の問題に関連するすべてを投稿することはできません。したがって、すべてを読むことができます:http://www.dreamincode.net/forums/topic/299148-widget-onclickpendingintent-not-received-by-service/
基本的に、現在再生中の曲を表示し、ユーザーが再生を切り替えたりトラックを変更したりできるようにするウィジェットを音楽アプリに用意しました。ウィジェットはうまく更新されますが、サービスはサービスによって受信されません。
これは、OnClickPendingIntent を設定する方法です。
RemoteViews updateViews = null;
ComponentName thisWidget = new ComponentName(this, GMWidget.class);
updateViews = new RemoteViews(this.getPackageName(), R.layout.widget);
Intent WIDGET_PAUSE_PLAY_intent = new Intent(this, GMService.class);
WIDGET_PAUSE_PLAY_intent.setAction(WIDGET_PAUSE_PLAY);
PendingIntent WidgetPausePlay = PendingIntent.getService(this, 0, new Intent(WIDGET_PAUSE_PLAY).setComponent(thisWidget), 0);
updateViews.setonclickPendingIntent(R.id.pbWidMediaPlay, WidgetPausePlay);
これは私のOnReceiveです:
public void onReceive(Context context, Intent intent) {
// super.onReceive(context, intent);
String action = intent.getAction();
Log.d(TAG,"CLICKK: " + action);
}
これは私のサービスのインテントフィルターです:
<action android:name="android.media.AUDIO_BECOMING_NOISY" /> />
<action android:name="com.my.player.WIDGET_NEXT" />
<action android:name="com.my.player.WIDGET_PREV" />
<action android:name="com.my.player.WIDGET_PAUSE_PLAY" />
<action android:name="android.appwidget.action.APPWIDGET_ENABLED" />