2010-12-02 18 views
2

私はウィジェットを実装しましたが、それをリフレッシュする際に問題があります。 私は最初の更新を取得し、もう一度年齢を残すと再び更新されます。Android Widget Refresh

しかし、主なアプリケーションの変更をウィジェットに自動的に反映させたいと思います。 これを更新するにはどうすればよいですか? アクティビティからウィジェットを呼び出す方法はありますか(静的ルーチンを実行するだけですか)、電話がホーム画面に戻るたびに「onUpdate」を呼び出す方法がありますか?

+0

あなたのウィジェットがホーム画面になりますと仮定しないでください。 –

答えて

3

サービスを使ってウィジェットを実装してRemoteViewを更新しましたか?そうであれば、インテントでそのサービスを開始することができ、ウィジェットは更新されます。

Intent widgetUpdateIntent = new Intent(context, MyClassName.UpdateService.class); 
context.startService(widgetUpdateIntent); 
+1

リモートビューをサービスするためにウィジェット内でサービスをセットアップする方法がわかりません。あなたが私を指すことができる例はありますか? – Chris

+0

アプリケーションアクティビティでイベントをウィジェットに送信して更新することはできませんか? – Chris

+0

最後に、サービスをウィジェットに更新させてから、どこからでもサービスを呼び出すことができます。それは、治療を受けました、ありがとう! – Chris

1
AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE); 
alarmManager//.setRepeating(AlarmManager.RTC_WAKEUP, 500, 2, pendingIntent1); 
.set(AlarmManager.ELAPSED_REALTIME_WAKEUP, 500, pendingIntent1);