關於 hybrid APP ,安卓 ios 和 web 相互調用問題

各位大大好:

想請問大家有沒有遇過這種開發情境,
在 Hybrid APP 中, web 使用 Angular4 開發,
web的畫面資料都是經由 APP 端取資料,
當呼叫 Android、IOS 定義好的 function name,
APP 端會callback 我定義好的 web 端 callback function
但,目前的寫法是呼叫不到 web 端 callback function
因為 APP 寫的callback 吃callback function 字串,
而 angular 專案已經藉由 webpack 將每個元件模組化拆好

請問我該如何呼叫某一個元件的 callback function 呢?
感謝大家

以下是範例程式:

以下是我寫的DeviceService

// Android、IOS 定義好的 function name
callNativeDevice(functionName, parameters) {
    if (typeof window['DevicePlatform'] === 'undefined') {
      alert('平台參數未定義');
    } else if (window['DevicePlatform'] === 'iOS') {
      window['webkit'].messageHandlers[functionName].postMessage(parameters);
    } else if (window['DevicePlatform'] === 'Android') {
      const jsonString = JSON.stringify(parameters);
      window['mobile'][functionName](jsonString);
    } else {
      alert('平台參數為空值或不合法');
    }
  }

在自己元件的呼叫

  /**
   * 取得列表資料
   */
  getData() {
    // SD001 同步搜庫自選股
    const options = {
      SDName: 'SD001',
      callback: 'this.didComplete(returnObject, deviceInfoObject)'
    };
    this.DeviceService.callNativeDevice('processSD', options);
  }

/**
   * callback function
   */
didComplete(returnObject, deviceInfoObject) {
    alert('returnObject');
  }