我正在尝试从活动绑定服务并获得调用它的方法的可能性。它们在不同的应用程序 (apk) 中,但使用相同的 sharedUserId 和进程。
由于他们使用相同的流程,我是否必须使用 AIDL 或者我可以使用经典的 IBinder,例如本地服务(在Android 开发人员示例中描述)?
我都试过了。AIDL 工作正常,本地服务的方法不起作用,我有一个 ClassCastException :
E/AndroidRuntime(17511): java.lang.ClassCastException: com.example.app.MyService$LocalBinder cannot be cast to com.example.app.MyService$LocalBinder
是否可以使用这种方法在一个共同的“共享”进程中使用两个应用程序调用服务?还是说这个共享进程的使用还是需要像AIDL这样的IPC方式?
如果我想使用经典的 IBinder,这是为了让我的应用程序尽可能简单。
希望你能帮助我,并为我糟糕的英语感到抱歉;-)