public class SoundService extends Service {
private String TAG = "qwer";
@Nullable
@Override
public IBinder onBind(Intent intent) {
Log.d(TAG, "onbind");
return null;
}
@Override
public void onCreate() {
super.onCreate();
Log.d(TAG, "oncreate");
}
@Override
public void onDestroy() {
super.onDestroy();
Log.d(TAG, "ondestroy");
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.d(TAG, "onstartcommand");
// intent.getStringExtra("songpath"); 这样就可以获取数据了
return super.onStartCommand(intent, flags, startId);
}
}
androidmanifest 里面注册 service,<activity></activity> 下面添加 <service android:name=".SoundService"/>
现在可以在 activity 里面通过 button 的 click 事件启动 Sevice 了。
findViewById(R.id.ServiceStart).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (Songpath != null) {
Intent i1 = new Intent(MainActivity.this, SoundService.class);
//这里可以添加数据进去,在service的onStartCommand里面接收。
i1.putExtra("songpath", Songpath);
i1.putExtra("playing", true);
startService(i1);
}
}
});