jugel 2016-04-21 05:55 采纳率: 50%
浏览 2345

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条回答 默认 最新

  • 我叫Tomes派大星 2016-04-21 06:04
    关注

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

    评论

报告相同问题?

悬赏问题

  • ¥30 vmware exsi重置后的密码
  • ¥15 易盾点选的cb参数怎么解啊
  • ¥15 MATLAB运行显示错误,如何解决?
  • ¥15 c++头文件不能识别CDialog
  • ¥15 Excel发现不可读取的内容
  • ¥15 UE5#if WITH_EDITOR导致打包的功能不可用
  • ¥15 关于#stm32#的问题:CANOpen的PDO同步传输问题
  • ¥20 yolov5自定义Prune报错,如何解决?
  • ¥15 电磁场的matlab仿真
  • ¥15 mars2d在vue3中的引入问题