title: AIDL service from different Projects
body: <p>I have 2 <strong>* different projects*</strong> within the same workspace in eclipse (most AIDL examples handle different processes within the <strong><em>same</em></strong> project). Project A is simply HelloWorld, that just displays the sum of 2 numbers. I'm calling this remotely from a client called MyFirstApp to display it.</p>
  
  <p><strong>Problem:</strong> The onServiceConnected() method is never invoked.</p>
  
  <p><strong>What I've tried so far:</strong></p>
  
  <p><strong>1)</strong> Manifest file has android:process=":remote"> tag. Intent filter is present. AND YES, ALL OF IT IS WITHIN THE application tag. Here it is:</p>
  
  <pre><code>&lt;service android:name=".ArithmeticService"
                       android:process=":remote"&gt;
                  &lt;intent-filter &gt;
                      &lt;action android:name="com.example.helloworld.ArithmeticService"/&gt;
                  &lt;/intent-filter&gt;
              &lt;/service&gt;
      &lt;/application&gt;
  </code></pre>
  
  <p><strong>2)</strong> In my ArithmeticService, the function onBind() does not simply return Null, but returns mBinder. Here it is:</p>
  
  <pre><code>@Override
          public IBinder onBind(Intent intent) {
              // Return the interface
              Log.d(getClass().getSimpleName(),"IBinder");
              return mBinder;
          }
  </code></pre>
  
  <p><strong>3)</strong> At client-side, the implementation of the interface is in the same package at the server side.</p>
  
  <p><strong>4)</strong> In the onCreate() function of my client's MainActivity, I'm calling the function initConnection(), which is as follows:</p>
  
  <pre><code>void initConnection(){
      mServiceConnection = new ServiceConnection() {
  
              @Override
              public void onServiceDisconnected(ComponentName name) {
                  // TODO Auto-generated method stub
                  mService = null;
                  Toast.makeText(getApplicationContext(), "no", Toast.LENGTH_SHORT).show();
                  Log.d("IRemote", "Binding - Service disconnected");
              }
  
              @Override
              public void onServiceConnected(ComponentName name, IBinder service)
              {
                  // TODO Auto-generated method stub
                  mService = IRemote.Stub.asInterface((IBinder) service);
                  Toast.makeText(getApplicationContext(), "yes", Toast.LENGTH_SHORT).show();
                  Log.d("IRemote", "Binding is done - Service connected");
              }
          };
          if(mService == null)
          {
              Intent it = new Intent();
              it.setAction("com.example.helloworld.ArithmeticService");
              //binding to remote service
              bindService(it, mServiceConnection, Service.BIND_AUTO_CREATE);
          }
  }
  </code></pre>
  
  <p>Rest of the code is pretty simple. On click of a button, the remote server should be invoked and the sum of 2 numbrs should be displayed.</p>
  
  <p>Any Help shall be very appreciated.</p>