小编Tyr*_*nuZ的帖子

bindService()之后没有连接AIDL服务

我正在尝试使用AIDL开发2个应用程序(服务应用+客户端应用程序)的设置.我目前有3个模块的设置:

  • android-agent-framework(只保存AIDL文件的android库模块)
  • android-agent(服务)
  • android-example-client(客户端)

android-agent和android-agent-framework对第一个访问接口的依赖.

每当客户端调用bindService()时,它都会返回false,而在ServiceConnection中,不会调用onServiceConnected().同样在服务实现中,不调用onBind().日志中没有错误.

这是代码:

android-agent活动:

public class MyCompanyStartActivity extends Activity {

  @Override
    protected void onCreate(Bundle savedInstanceState) {
        Log.i(MyCompanyStartActivity.class.toString(), "Create MyCompanyStartActivity");
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        ComponentName service = startService(new Intent(this, MyCompanyRequestService.class));
        Log.i("tag", service.getClassName() + "::" + service.getPackageName());
    }

}
Run Code Online (Sandbox Code Playgroud)

android-agent服务:

public class MyCompanyRequestService extends Service {

@Override
public IBinder onBind(Intent intent) {
    Log.i(MyCompanyRequestService.class.toString(), "Starting SmartRest Service");
    return mBinder;
}

private final IMyCompanyRequestService.Stub mBinder = new IMyCompanyRequestService.Stub() {

    @Override
    public void sendData(String xid, String authentication, String data) throws RemoteException{
        Log.i(MyCompanyRequestService.class.toString(), "sending …
Run Code Online (Sandbox Code Playgroud)

android aidl android-service android-service-binding

7
推荐指数
1
解决办法
3452
查看次数