如果您的服务和活动处于同一过程中,则可以通过服务传递活页夹,而无需执行复杂的RPC *** 作:
public class MyEasyButNotGoodPracticesBinder { public void gimmeHandler(Handler handler) { // you got it! }}IBinder mBinder = new MyEasyButNotGoodPracticesBinder();public IBinder onBind(Intent intent) { return mBinder;}
然后在您的Activity中,当您获得IBinder对象时,只需将其强制转换为a
MyEasyButNotGoodPracticesBinder并调用该
gimmeHandler(Handler)方法。现在,我认为这是不好的做法,因为如果您想将服务放在一个单独的进程中,以使其在崩溃时不会使整个过程崩溃,那么这会中断。我也不认为那是面向未来的。但这确实有效。
AIDL界面并不难-您可能只想这样做。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)