ServiceConnection 接口,重寫 onServiceConnected、onServiceDisconnected。bindService(intent, conn, BIND_AUTO_CREATE)。onServiceConnected,參數 IBinder binder 為服務端返回的通信接口。MyService.LocalBinder binder = (MyService.LocalBinder) binder;,獲取 Service 實例:myService = binder.getService();。myService.getRandomNumber() 等公共方法。unbindService(conn)。書中示例在 Activity 中直接 new MyService() 並調用方法,這不是綁定服務,而是普通對象調用,Service 生命周期方法(onCreate、onBind)均不會執行,無法實現跨進程、後台長期運行等服務特性。
必須走 bindService → onServiceConnected 獲取代理對象,才能真正使用 Service 能力。