如题,免提和耳机进行切换,点击免提按钮,就切换到外音,点击handset按钮,就切换到耳机模式。当插入耳机时,自动切换到耳机模式,免提启用时,免提按钮不可用,耳机按钮可用,耳机模式时,耳机按钮不可用,免提按钮可用。
请高手给思路。

解决方案 »

  1.   

    据说这个 蓝牙 profile 已经实现了   应该提供相应的 api了设备发现=》服务发现=》 通讯    必须两个设备先连接上 绑定之后才能通信    直接发命令就行吧SDK 下
    android.bluetooth   提供了所有的  8个类    你看一下
    我也在找这方面的   关键是没法调试啊
      

  2.   

    一般情况下,这些功能是在kernel里实现的。用中断pin。
      

  3.   

    当然,如果你可以侦测到耳机插拔,然后调整底层的音源输出的话,也许可以在上层实现。至少也需要root权限吧。
      

  4.   

    framework层有HeadsetObserver,重写的一个UEventObserver,是用来监听耳机插拔的
      

  5.   

    这个 有个方法是在kernel中实现  我们也是在kernel中实现的。  但是我觉得可以像SkyGray说的 通过headsetObserver监听事件,然后onevent()调用audioflinger,对audiohardwarealsa 进行配置。
      

  6.   

    这个需要kernel去实现,在AP层用AudioManager获取服务来进行切换。
      

  7.   

    直接在JNI中修改对应的寄存器的值,就能改变输出,不过这个就涉及到硬件了,呵呵