2 qq 34132080 qq_34132080 于 2016.04.21 13:55 提问

startService没反应,也没有报错,Logcat没任何信息,请大哥大姐们帮看看,呆马如下:

public class MainActivity extends Activity implements OnClickListener {
private Button start;
private Button stop;
private Button bind;
private Button unbind;
private MyService.DownloadBinder downloadBinder;
private ServiceConnection connection = new ServiceConnection() {
public void onServiceDisconnected(ComponentName name) {

    }
    public void onServiceConnected(ComponentName name, IBinder service) {
        downloadBinder = (MyService.DownloadBinder) service;
        downloadBinder.startDownload();
        downloadBinder.getProgress();
    }
};
@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    start = (Button) findViewById(R.id.start_service);
    stop = (Button) findViewById(R.id.stop_service);
    bind = (Button) findViewById(R.id.bind);
    unbind = (Button) findViewById(R.id.unbind);
    start.setOnClickListener(this);
    stop.setOnClickListener(this);
    bind.setOnClickListener(this);
    unbind.setOnClickListener(this);
}

public void onClick(View v) {
    switch(v.getId()) {
    case R.id.start_service:
        Intent startIntent = new Intent(this, MyService.class);
        startService(startIntent);
        break;
    case R.id.stop_service:
        Intent stopIntent = new Intent(this, MyService.class);
        stopService(stopIntent);
        break;
    case R.id.bind:
        Intent bindIntent = new Intent(this, MyService.class);
        bindService(bindIntent, connection, BIND_AUTO_CREATE);
        break;
    case R.id.unbind:

        unbindService(connection);
        break;
    default:
        break;
    }
}

}

public class MyService extends Service {
private DownloadBinder db = new DownloadBinder();
class DownloadBinder extends Binder {
public void startDownload() {
Log.v("MyService", "download");
}
public int getProgress() {
return 0;
}
}

@Override
public IBinder onBind(Intent intent) {

    return db;
}
public void onCreate() {
    super.onCreate();
    Log.d("MyService", "start");
}
public int  onStartCommand(Intent intent , int flags, int startId) {
    Log.d("MyService", "startedCommand");
    return super.onStartCommand(intent, flags, startId);

}
public void onDestroy() {
    super.onDestroy();
    Log.d("MyService", "destroyed");
}

}

1个回答

chenshangcs001
chenshangcs001   2016.04.21 14:04

贴Log看看,log打印的对吗?

Csdn user default icon
上传中...
上传图片
插入图片
准确详细的回答,更有利于被提问者采纳,从而获得C币。复制、灌水、广告等回答会被删除,是时候展现真正的技术了!