Java android精确节拍器

Java android精确节拍器,java,android,Java,Android,对此的答案是,我们可以使用AudioTrack在Android上制作可靠而精确的节拍器。我们也可以使用MediaPlayer、SoundPool、Thread和Timer,但它们总是会造成延迟。我们如何使用自定义音频文件来实现相同的效果,而不是使用AudioTrack生成合成声音?您可以尝试使用System.nanoTime()创建自己的时间计数器,当您需要精度时,始终可以使用此计数器 public static long nanoTime() 返回most的当前值 精确的可用系统计时器,以纳秒

对此的答案是,我们可以使用
AudioTrack
在Android上制作可靠而精确的节拍器。我们也可以使用
MediaPlayer
SoundPool
Thread
Timer
,但它们总是会造成延迟。我们如何使用自定义音频文件来实现相同的效果,而不是使用
AudioTrack
生成合成声音?

您可以尝试使用
System.nanoTime()
创建自己的时间计数器,当您需要精度时,始终可以使用此计数器

public static long nanoTime()

返回most的当前值 精确的可用系统计时器,以纳秒为单位。这种方法只能 用于测量经过的时间,与任何其他概念无关 指系统或挂钟时间。返回的值表示 纳秒,因为某个固定但任意的时间(可能在 未来,因此值可能为负值)。该方法可提供纳秒级 精度,但不一定是纳秒精度。没有任何保证 关于值更改的频率。连续时间的差异 通话跨度超过约292年(263纳秒) 由于数值溢出,无法准确计算经过的时间

例如,要测量某些代码执行所需的时间:

long startTime=System.nanoTime();/。。。代码是 仔细斟酌的long-estimatedTime=System.nanoTime()-startTime
返回:系统计时器的当前值,以纳秒为单位。自: 1.5

资料来源:

Oracle文档