/// <summary>
        /// passing callbacks for event handling
        /// </summary>
        /// <param name="callback"></param>
        public void StartFetchLocationData(LocationServiceStatusCallback callback, LocationServiceValueCallback valueCallback = null)
        {
            if (mGPSCallback != null)
            {
                mGPSCallback = null;
            }
            mGPSCallback = callback;

            if (valueCallback != null)
            {
                if (mValueCallback != null)
                {
                    mValueCallback = null;
                }
                mValueCallback = valueCallback;
            }
            if (!IsServiceRunning)
            {
                Start();
            }
        }
        /// <summary>
        /// passing callbacks for event handling
        /// </summary>
        /// <param name="callback"></param>
        public void StartFetchLocationData(LocationServiceStatusCallback callback, LocationServiceValueCallback valueCallback = null)
        {
            if (mGPSCallback != null)
            {
                mGPSCallback = null;
            }
            mGPSCallback = callback;

            if (valueCallback != null)
            {
                if (mValueCallback != null)
                {
                    mValueCallback = null;
                }
                mValueCallback = valueCallback;
            }
            if (!IsServiceRunning)
            {
                Start();
            }
        }