0

ウィジェットの作成に成功し、希望どおりに動作します。ユーザーがウィジェットをクリックしたときにいくつかのことをしたいだけで、ウィジェット内の画像を更新しています。

ウィジェットをクリックすると、コードが実行され、すべてがうまく機能します! ただし、ウィジェットをクリックしてから数秒経過すると、android.appwidget.action.APPWIDGET_UPDATEブロードキャストが実行されます。

私はonReceive()すべてのことをするために使用しています。ここに私の保留中の意図があります:

Intent intent = new Intent(context, Widget.class);
    intent.setAction("CLICKED_WIDGET");
    PendingIntent pIntent = PendingIntent.getBroadcast(context, 0, intent, 0);

カスタム ブロードキャスト文字列を使用して、ウィジェットをクリックしていることを示します。これは完全に機能します。ただし、数秒後にandroid.appwidget.action.APPWIDGET_UPDATEブロードキャストも行われます。このブロードキャストで何もしないと、ウィジェットは空になります。したがって、今のところ、更新ブロードキャストが送信されるたびにウィジェットを再更新するだけです (これは非常に面倒です)。

私が求めているのは、その更新ブロードキャストが送信されないようにし、ユーザーがウィジェットをクリックしたときにのみウィジェットを更新し、それ以外のときは更新しないようにするにはどうすればよいかということです。

ありがとう!

4

1 に答える 1

0

APPWIDGET_UPDATE ブロードキャストを受信しないことは不可能であるため、これは私の質問に対する正確な回答ではありません。しかし、その更新ブロードキャストが送信される原因がわかりました.onClickレシーバーで、レシーバーのコンポーネント有効化設定を変更していましたが、何らかの理由で更新ブロードキャストが送信されました. そのため、コンポーネントを有効にするオプションを設定アクティビティに変更する場所に移動したところ、完全に機能するようになりました。ご覧いただきありがとうございます!

于 2013-09-07T23:27:37.647 に答える