当前位置: 首页 > 知识库问答 >
问题:

如何在Java中以编程方式禁用有线耳机

卫皓
2023-03-14

请在这里参考我的问题。这个问题是它的延伸:

如何在有线耳机和免提电话之间检查和重定向音频?

通过包含权限,我能够部分解决我的问题

  <uses-permission android:name="android.permission.MODIFY_AUDIO_SETTINGS" />

在我的Android清单中,同样的代码。现在,我可以启用和禁用手机扬声器,但当有线耳机仍与手机物理连接时,我无法以编程方式关闭有线耳机连接。

有人能在这里帮助我吗?我是否可以使用特定的意图来禁用和启用有线耳机连接?

共有1个答案

慕健
2023-03-14

我在网上寻找解决方案,发现了一些东西

private class MusicIntentReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_HEADSET_PLUG)) {
            int state = intent.getIntExtra("state", -1);
            switch (state) {
                case 0:
                    audioManager.setSpeakerphoneOn(true);
                    break;
                case 1:
                    audioManager.setSpeakerphoneOn(false);
                    break;
                default:
                    audioManager.setSpeakerphoneOn(true);
            }
        }
    }
}

希望它有帮助

如果你想访问这个网站,这里是链接

 类似资料:
  • 是否有一种编程(基于属性)的方法在Spring引导(1.2.2)中禁用RabbitAutoConfiguration。 看起来像Spring。rabbitmq。dynamic=false仅禁用AmqpAdmin,而不禁用连接工厂等。 我们想要一个模型,其中应用程序属性可以来自Spring Cloud config(包括控制总线)或通过-D jvm args。这个决定是在部署时做出的。当属性来自-D

  • 问题内容: 我想以编程方式禁用硬件预取。 从使用硬件实现的预取器在英特尔®酷睿™微体系结构上优化应用程序性能以及 如何在32位英特尔®架构上的硬件和软件预取之间进行选择,我需要更新MSR以禁用硬件预取。 以下是相关片段: “通过编写用于更改 寄存器中位的设备驱动程序实用程序,还可以通过编程方式更改DPL预取和L2流预取设置。这种实用程序提供了启用或禁用预取机制的能力,而无需任何服务器停机时间。 下

  • 本文向大家介绍如何以编程方式在iOS中启用/禁用数据连接?,包括了如何以编程方式在iOS中启用/禁用数据连接?的使用技巧和注意事项,需要的朋友参考一下 用户可以通过iOS设备的设置打开或关闭移动数据,但是实际上不可能以编程方式禁用或启用相同功能。仅当您越狱iOS设备时才有可能。Apple不允许任何应用程序开发人员访问wifi或蓝牙。 有一些私有API可能会帮助您解决此问题,但最终会导致应用商店拒绝

  • 问题内容: 使用jQuery,我想禁用主体的滚动: 我的想法是: 组 捕获当前 绑定到正文滚动事件,将scrollTop / scrollLeft设置为捕获的值。 有没有更好的办法? 更新: 我知道有人会在想“为什么他不只是在面板上使用?”。 请不要提出这个建议,因为我还有其他原因。 问题答案: 我发现执行此操作的唯一方法与您所描述的类似: 抓住当前滚动位置(不要忘记水平轴!)。 将溢出设置为隐藏

  • 本文向大家介绍在iOS中以编程方式禁用滚动视图?,包括了在iOS中以编程方式禁用滚动视图?的使用技巧和注意事项,需要的朋友参考一下 滚动视图是iOS开发人员遇到的最困难和最复杂的主题之一。在这里,我们将看到如何以编程方式禁用滚动视图。 要禁用它,我们需要使滚动视图的“ isScrollEnabled”属性为false。 将以下代码复制到文件中。

  • 问题内容: 我想以编程方式在JAVA中启动tomcat服务器。请帮我 问题答案: 如果我对您的理解很好,那么您对在应用程序中运行tomcat感兴趣。如果是这样,您可以编写自己的方法来运行tomcat。 这是示例: 您必须在路径和操作系统中采用此代码。之后,您可以从必须引发tomcat的事件中调用此方法。 希望对您有所帮助。