#14652: export CallManager services to sflphone-service,
        bind service from home activity
        separate service thread from UI

Signed-off-by: Emeric Vigier <emeric.vigier@savoirfairelinux.com>
diff --git a/src/com/savoirfairelinux/sflphone/client/SFLphoneApplication.java b/src/com/savoirfairelinux/sflphone/client/SFLphoneApplication.java
index 3c15062..1dc2d99 100644
--- a/src/com/savoirfairelinux/sflphone/client/SFLphoneApplication.java
+++ b/src/com/savoirfairelinux/sflphone/client/SFLphoneApplication.java
@@ -1,30 +1,59 @@
 package com.savoirfairelinux.sflphone.client;
 
 import android.app.Application;
+import android.content.pm.PackageInfo;
+import android.content.pm.PackageManager;
+import android.content.pm.PackageManager.NameNotFoundException;
 import android.util.Log;
 
+import com.savoirfairelinux.sflphone.service.SipService;
+
 public class SFLphoneApplication extends Application {
-    
+
     static final String TAG = "SFLphoneApplication";
     private boolean serviceRunning;
+    private SipService sipService;
 
     @Override
     public void onCreate() {
         super.onCreate();
         Log.i(TAG, "onCreate");
     }
-    
+
     @Override
     public void onTerminate() {
         super.onTerminate();
         Log.i(TAG, "onTerminate");
     }
-    
+
     public boolean isServiceRunning() {
         return serviceRunning;
     }
-    
+
     public void setServiceRunning(boolean r) {
         this.serviceRunning = r;
     }
+
+    public SipService getSipService() {
+        return sipService;
+    }
+
+    public void setSipService(SipService service) {
+        sipService = service;
+    }
+
+    public String getAppPath() {
+        PackageManager pkgMng = getPackageManager();
+        String pkgName = getPackageName();
+
+        try {
+            PackageInfo pkgInfo = pkgMng.getPackageInfo(pkgName, 0);
+            pkgName = pkgInfo.applicationInfo.dataDir;
+        } catch (NameNotFoundException e) {
+            Log.w(TAG, "Error Package name not found ", e);
+        }
+
+        Log.d(TAG, "Application path: " + pkgName);
+        return pkgName;
+    }
 }