2012-08-22 59 views
0

我使用AudioManager.adjustSuggestedStreamVolume(int direction, int suggestedStreamType, int flags)并将suggestedStreamType设置为AudioManager.USE_DEFAULT_STREAM_TYPE。这是做什么决定什么流类型(STREAM_RING,STREAM_MEDIA等)是最相关的给定的上下文(我的应用程序),并相应地调整其音量。我的问题是,有没有一种方法可以“解决”给定上下文中最相关的流?如何获取默认音频流类型?

我一直在搜索Android源代码,有一个方法AudioService.getActiveStreamType(int suggestedStreamType)它正是我想要的,但它被标记为私人,所以我不能在我的应用程序中使用它。

任何想法?

回答

0

如果这一切都是为了在您的应用程序调整容积流,你最好与创建过程中人工设置:

activity.setVolumeControlStream(AudioManager.STREAM_MUSIC); 

(或任何其他流类型) ,并在其中修改相应的流。

+0

是的,我知道这一点,但我不想硬编码任何给定的流,我只是想弄清楚系统认为是给定上下文中适当和相关的流。当我提出一个问题时,我实际上试图简化它,这可能是一个坏主意......我并没有真正开发应用程序,实际上我正在尝试修改Android核心的一部分(更具体地说,是android。 policy.jar')。所以我无法负担任何硬编码。 – ravilov