FFOS dial from launch

来源:互联网 发布:erp系统优化 编辑:程序博客网 时间:2024/05/16 17:35

cs call flow from launch

  • 由于性能的原因,现已经将dialer 调到launch 应用中

  • 目前博客都研究android智能机,FFOS针对feature phone,全键盘手机开发,由于FFOS 根据android 移植,所以会写android 文章做对比

  • apps/apps/launcher/src/dialer.js
  call({ number = this.state.telNum } = {}) {    if (this.isCalling) {      return;    }    this.isCalling = true;    this.stopRenderSteply();    dialHelper.dial(number)      .then(() => {        this.isCalling = false;        Service.request('Dialer:hide');      })      .catch(() => {        this.isCalling = false;      });  }
  • apps/apps/launcher/src/util/dial_helper.js
dial(number) {    /*     * 字串处理     */    return new Promise((resolve, reject) => {      Service.request('chooseSim', 'call').then((cardIndex) => {        /**         * 判断网络连接         */        let emergencyOnly = conn.voice.emergencyCallsOnly;        if (emergencyOnly) {          callPromise = telephony.dialEmergency(number);//-->dialEmergency        } else {          callPromise = telephony.dial(number, cardIndex);//-->dial         }        ...       })      .catch(() => { // for cancel sim card choosing        reject();      });    });  }
  • 调用 webidl 接口 进入gecko
  • gecko/gecko/dom/webidl/Telephony.webidl 后面的流程和上一篇 cs call一样

作者:贱贱的杨
从此你们的路上不会孤单,还有贱贱的我