[問題] 背景程式偵測異狀傳至前景印出
最近一直有個問題解不開
想要寫個app
每秒在背景parse一次網頁的某個值 當此值太大時在前景印出"過重"
問題出在 Service用了broadcast回給前景 卻無法印出資料在前景的textview
不知道以下的程式邏輯對嗎
在Activity
private void registerTimerReceiver(){
IntentFilter filter = new IntentFilter(NickyService.TIMER_ACTION);
receiver = new TimerReceiver();
registerReceiver(receiver,filter);
}
private class TimerReceiver extends BroadcastReceiver{
public void onReceive(Context context, Intent intent) {
setContentView(R.layout.main);
String outcome = "Too Heavy";
mTextView = (TextView)findViewById(R.id.info);
mTextView.setText(outcome);
}
}
在Service
public void onStart(Intent intent, int startId) {
handler.postDelayed(showState, 1000);
super.onStart(intent, startId);
}
@Override
public void onDestroy() {
handler.removeCallbacks(showState);
super.onDestroy();
}
private Runnable showState = new Runnable() {
public void run() {
sendBroadcast(new Intent(State));
}
}
}
感謝各位
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 140.96.109.140
推
06/10 22:16, , 1F
06/10 22:16, 1F
→
06/13 11:50, , 2F
06/13 11:50, 2F