gpt4 book ai didi

java - Android - 如何使用 Intent.ACTION_CALL 激活调用紧急号码?

转载 作者:行者123 更新时间:2023-12-01 13:50:17 25 4
gpt4 key购买 nike

我正在开发一个 Android 应用程序,其中有紧急号码调用功能。我正在使用下面的调用代码:

private void call(String pnum) {
private TelephonyManager telephone;
private PhoneListener phList;
telephone = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
phList = new PhoneListener(this);
telephone.listen(phList, PhoneStateListener.LISTEN_CALL_STATE);

Intent call = new Intent(Intent.ACTION_CALL);
call.setData(Uri.parse("tel:" + pnum));
call.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(call);
finish();
}

PhoneListener 类如下:

public class PhoneListener extends PhoneStateListener {
boolean called = false;
TelephonyManager mTelMgr;
InitiateScreen m;

public PhoneListener(InitiateScreen activity) {
mTelMgr = (TelephonyManager) activity
.getSystemService(Context.TELEPHONY_SERVICE);
m = activity;
}

@Override
public void onCallStateChanged(int state, String inNum) {
super.onCallStateChanged(state, inNum);

// Don't fire before the call was made
if (state == TelephonyManager.CALL_STATE_OFFHOOK)
called = true;

// Call has ended -- now bring the activity back to front
if (called && state == TelephonyManager.CALL_STATE_IDLE) {
called = false;
mTelMgr.listen(this, PhoneStateListener.LISTEN_NONE);
}
}
}

由于我正在使用INTENT.ACTION_CALL,因此调用应该自动发生。但对于紧急号码,拨号盘显示 (ACTION_DIAL)。我已经用非紧急号码验证了相同的代码。通话自动进行。那么,Android不支持直接调用紧急号码吗?我们不能在 Android 中调用 ACTION.CALL 来获取紧急号码吗?请帮助我提供您的意见。

最佳答案

在您的 Activity 中调用它

Intent intent = new Intent(Intent.ACTION_CALL, Uri.parse("tel:" + "911"));
startActivity(intent);

将此权限添加到您的 list 中: <uses-permission android:name="android.permission.CALL_PHONE" />

关于java - Android - 如何使用 Intent.ACTION_CALL 激活调用紧急号码?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20016593/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com