我是 Ionic 平台的初级开发人员,现在我在发送和接收 USSD 代码时遇到了问题....请帮助我,你知道吗。
根据我在网上找到并测试过的, 你可以发送 USSD 代码
<a href="tel:YOUR_NUMBER" class="button button-positive">Call me? </a>
并使其发挥作用,您需要在 CONFIG.XML 中提供访问权限,简单添加
<access origin="tel:*" launch-external="yes"/>
唯一的缺点是:它不会直接拨打您的号码,而是在设备默认的Dailer中打开它。
注意:我是 Stack 的新手,所以不知道正式的回答方式。 玩得开心!
我建议使用 Call Number 本机插件。它允许您拨打电话和发送 USSD 代码。在 Android 上,它直接发送 USSD 代码,无需启动手机应用程序。
例子:
import { Component } from '@angular/core';
import { CallNumber } from "@ionic-native/call-number";
@Component({
selector: 'page-home',
template: `
<button ion-button (click)="callNumber()">CallNumber</button>
`
})
export class HomePage {
constructor(public phone: CallNumber) { }
callNumber(){
this.phone.callNumber("123456789", true)
.then(res => this.result = res)
.catch(err => this.result = err);
}
}
如果有人还在寻找这个,你可以使用这个插件https://www.npmjs.com/package/cordova-plugin-ussd
npm i cordova-plugin-ussd
cordova 插件添加 cordova-plugin-ussd
在你的 ts 文件中添加 imports: declare var ussd: any; 并使用拨号功能
如果你的手机支持双卡,而你没有第二张SIM卡 更改 yourProject\plugins 中的第 36 行 g.neiel.cordova.plugins.ussd\src android\Ussd.java 到 TelephonyManager manager2 = SIM2_id != null ? manager.createForSubscriptionId(SIM2_id.getSubscriptionId()) : null; 并重新安装 cordova 平台
确保您拥有 CALL_PHONE 权限