良い一日
ウィジェットがあり、ウィジェットを使用して mp3 ファイルを再生および停止したいと考えています。mp3 ファイルは再生できますが、停止できません :(
重要な瞬間 - それはウィジェットです! 問題の理由 - メディア プレーヤーのインスタンスを 1 つだけ使用する方法がわかりません
あなたはなにか考えはありますか?
ここに私のコードがあります
public class MyWidget extends AppWidgetProvider {
public static String ACTION_WIDGET_RECEIVER = "ActionReceiverWidget";
@Override
public void onUpdate(Context context, AppWidgetManager appWidgetManager, int[] appWidgetIds) {
RemoteViews remoteViews = new RemoteViews(context.getPackageName(), R.layout.widget);
Intent active = new Intent(context, HappyBabyWidget.class);
active.setAction(ACTION_WIDGET_RECEIVER);
PendingIntent actionPendingIntent = PendingIntent.getBroadcast(context, 0, active, 0);
remoteViews.setOnClickPendingIntent(R.id.ButtonPlay, actionPendingIntent);
appWidgetManager.updateAppWidget(appWidgetIds, remoteViews);
}
@Override
public void onReceive(Context context, Intent intent)
{
MediaPlayer mp = MediaPlayer.create(context.getApplicationContext(), R.raw.MyMusic);
final String action = intent.getAction();
if (ACTION_WIDGET_RECEIVER.equals(action)) {
if (mp.isPlaying())
mp.stop();
else
mp.start();
}
super.onReceive(context, intent);
}
}