我在刷新活动时遇到了一些问题。我已将GCM Listener Service添加到我的应用程序中。当它从GCM服务获得“messege”时,它的监听器服务应该让我的活动刷新。我不想建立通知。另外,我不想定期使用Timer()刷新我的活动。
有代码:
MyGcmListenerService.java
public void onMessageReceived(String from, Bundle data) {
String message = data.getString("message");
String theme = data.getString("theme");
sendNotification(message,theme);
}
private void sendNotification(String message, String theme) {
Messages mess = new Messages();
mess.message=message;
//what I have to do here to make my FirstLayout.java refresh?
}
FirstLayout.java
package com.notif.rasulbek.notifyme;
import android.os.Bundle;
import android.support.v7.app.AppCompatActivity;
import android.widget.TextView;
import java.util.Timer;
import java.util.TimerTask;
public class FirstLayout extends AppCompatActivity {
TextView mes;
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.first_layout);
getSupportActionBar().setDisplayHomeAsUpEnabled(true);
mes = (TextView)findViewById(R.id.firstMes);
我想替换以下几行:
Timer autoUpdate = new Timer();
autoUpdate.schedule(new TimerTask() {
@Override
public void run() {
runOnUiThread(new Runnable() {
public void run() {
mes.setText(Messages.message);
}
});
}
}, 0, 2000);
}//this approach doesn't like me :(
}
同样,我想从MyGcmListenerService.java发送一个类似信号的东西,它会刷新我的Activity。请有人帮我解决这个问题。先谢谢。