ACTION_CALL意图使用特定的拨号器

时间:2012-09-17 18:27:45

标签: android android-intent

我有一个应用程序通过ACTION_CALL打开语音通道。此时,它运行良好但是用户有多个拨号器的情况。

这个应用程序是关于跌倒检测所以用户没有时间(这是生死攸关的事情)在他有多个拨号器中选择然后我想把它作为配置甚至使用系统默认拨号器拨打电话

由于

1 个答案:

答案 0 :(得分:0)

为了避免选择器,您应该设置组件名称:

// i.e. Applications.getIntentForActivity(new Intent(Intent.ACTION_SEND), "Messaging");
public static Intent getIntentForActivity(Intent intent, String hint) {
    ResolveInfo info = getActivityForIntent(intent, hint);
    if (info == null)
        return intent;
    ComponentName name = Applications.getComponentForActivity(info);
    if (name == null)
        return intent;
    // intent.addCategory(Intent.CATEGORY_LAUNCHER);
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK| Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
    // | Intent.FLAG_ACTIVITY_RESET_TASK_IF_NEEDED);
    intent.setComponent(name);
    return intent;
}