Androidサービスオープン方式
1396 ワード
オープンモード startService この方法によって開始するサービスが存在するプロセスは、サービスプロセス に属する. Activityサービスが開始されると、サービスはActivityとは何の関係もありません.
bindService この方法によって開始するサービスが存在するプロセスは、サービスプロセス に属さない. Activityはサービスと接続を確立し、acitivtyが死亡すると、サービスも 死亡する.
サービスの混合呼び出し
public class MainActivity extends AppCompatActivity {
private Intent intent;
private MyServiceConnection connection;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
intent = new Intent(this, MyService.class);
connection = new MyServiceConnection();
}
public void start(View v) {
startService(intent);
}
public void stop(View v) {
stopService(intent);
}
public void bind(View v) {
//
bindService(intent, connection, BIND_AUTO_CREATE);
}
public void unbind(View v) {
unbindService(connection);
}
class MyServiceConnection implements ServiceConnection {
//
@Override
public void onServiceConnected(ComponentName name, IBinder service) {
}
//
@Override
public void onServiceDisconnected(ComponentName name) {
}
}
}
サービスの混合呼び出し
* , , , 。