Error receiving broadcast Intent
请问为什么会报这样的错误呢??
跪求
07-27 14:58:56.572: E/AndroidRuntime(687): java.lang.RuntimeException: Error receiving broadcast Intent { act=action (has extras) } in com.anjoyo.g014_broadcastservice.MainActivity$1@43e0a860
package com.anjoyo.g014_broadcastservice;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.TextView;
import android.app.Activity;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
public class MainActivity extends Activity {
Button bt;
TextView tView;
Intent intent;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
bt=(Button) findViewById(R.id.button1);
tView=(TextView) findViewById(R.id.textView1);
IntentFilter intentFilter=new IntentFilter();
intentFilter.addAction("action");
registerReceiver(receiver, intentFilter);
intent=new Intent(MainActivity.this,MyService.class);
bt.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
startService(intent);
}
});
}
private
BroadcastReceiver receiver=new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
if (intent.getAction().equals("action")) {
int count=intent.getIntExtra("count",0);
tView.setText(count);
}
}
};
public void onDestroy() {
super.onDestroy();
unregisterReceiver(receiver);
}
}
package com.anjoyo.g014_broadcastservice;
import android.app.Service;
import android.content.Intent;
import android.os.IBinder;
import android.widget.Toast;
public class MyService extends Service {
@Override
public IBinder onBind(Intent intent) {
// TODO Auto-generated method stub
return null;
}
private int count=0;
public void onCreate() {
Toast.makeText(this, "服务已开启", Toast.LENGTH_LONG).show();
new Thread(new Runnable() {
@Override
public void run() {
// TODO Auto-generated method stub
while (true) {
count++;
Intent intent1=new Intent();
intent1.setAction("action");
intent1.putExtra("count", count);
sendBroadcast(intent1);
try {
Thread.sleep(1000);
} catch (Exception e) {
// TODO: handle exception
}
}
}
}).start();
}
}