我正在制作一个应用程序,每当任何音乐播放器播放音乐时,它就会启动并运行一个进程,当音乐暂停时(或在打电话时),它会暂停这个进程;我想我可以使用FileObserver来查看音乐文件何时被访问(它需要能够判断正在播放哪首歌曲),但是每当我运行Observer并启动音乐播放器时,一堆文件似乎同时被访问。我的问题是:
我不确定我的观察者是否有什么问题,所以这里是:
observer = new FileObserver(observedPath) {
@Override
public void onEvent(int event,final String file) {
event &= FileObserver.ALL_EVENTS;
switch(event) {
case FileObserver.DELETE_SELF:
break;
case FileObserver.OPEN:
case FileObserver.ACCESS:
if(changesRunning > 0)
{
stopCurrentChange.post(new Runnable() {
@Override
public void run() {
return;
}
});
}
mainThreadHandler.post(new Runnable() {
@Override
public void run()
{
Log.v(TAG,"The event was triggered.");
}
});
handler.post(new Runnable() {
@Override
public void run() {
changesRunning++;//global variable being used
GatherChangeVolume(username, deviceName, file);
changesRunning = 0;
}
});
break;
default:
break;
}
这是我的logcat输出:
08-10 17:30:19.874 3398-3398/badmexican333.volumizer17 V/TweakRunner: Service trying to watch /storage/sdcard1/Music/
08-10 17:30:34.309 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
08-10 17:30:34.310 3398-3799/badmexican333.volumizer17 A/FileObserver: Unhandled exception in FileObserver badmexican333.volumizer17.TweakRunner$1@21c3ca00
java.lang.NullPointerException
at badmexican333.volumizer17.TweakRunner$1.onEvent(TweakRunner.java:123)
at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:125)
at android.os.FileObserver$ObserverThread.observe(Native Method)
at android.os.FileObserver$ObserverThread.run(FileObserver.java:88)
08-10 17:30:34.314 3398-3799/badmexican333.volumizer17 A/FileObserver: Unhandled exception in FileObserver badmexican333.volumizer17.TweakRunner$1@21c3ca00
java.lang.NullPointerException
at badmexican333.volumizer17.TweakRunner$1.onEvent(TweakRunner.java:123)
at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:125)
at android.os.FileObserver$ObserverThread.observe(Native Method)
at android.os.FileObserver$ObserverThread.run(FileObserver.java:88)
08-10 17:30:34.314 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
08-10 17:30:34.318 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
08-10 17:30:34.319 3398-3799/badmexican333.volumizer17 A/FileObserver: Unhandled exception in FileObserver badmexican333.volumizer17.TweakRunner$1@21c3ca00
java.lang.NullPointerException
at badmexican333.volumizer17.TweakRunner$1.onEvent(TweakRunner.java:123)
at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:125)
at android.os.FileObserver$ObserverThread.observe(Native Method)
at android.os.FileObserver$ObserverThread.run(FileObserver.java:88)
08-10 17:30:34.425 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
08-10 17:30:34.425 3398-3799/badmexican333.volumizer17 A/FileObserver: Unhandled exception in FileObserver badmexican333.volumizer17.TweakRunner$1@21c3ca00
java.lang.NullPointerException
at badmexican333.volumizer17.TweakRunner$1.onEvent(TweakRunner.java:123)
at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:125)
at android.os.FileObserver$ObserverThread.observe(Native Method)
at android.os.FileObserver$ObserverThread.run(FileObserver.java:88)
08-10 17:30:34.480 3398-3799/badmexican333.volumizer17 A/FileObserver: Unhandled exception in FileObserver badmexican333.volumizer17.TweakRunner$1@21c3ca00
java.lang.NullPointerException
at badmexican333.volumizer17.TweakRunner$1.onEvent(TweakRunner.java:123)
at android.os.FileObserver$ObserverThread.onEvent(FileObserver.java:125)
at android.os.FileObserver$ObserverThread.observe(Native Method)
at android.os.FileObserver$ObserverThread.run(FileObserver.java:88)
08-10 17:30:34.484 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
08-10 17:30:34.571 3398-3398/badmexican333.volumizer17 V/TweakRunner: The event was triggered.
在停止之前,输出会以这种模式持续一段时间。
我是android开发的新手,任何帮助都将不胜感激。
您可以使用< code>AudioManager API轻松检查音乐当前是否正在播放。
AudioManager audioManager = (AudioManager) context.getSystemService(Context.AUDIO_SERVICE);
if (audioManager.isMusicActive()) {
// music is playing
}
请参阅:AudioManager.isMusicActive()
ap.pauseBackgroundAudio(CALLBACK) 暂停播放音乐。 代码示例 <script src="https://gw.alipayobjects.com/as/g/h5-lib/alipayjsapi/3.1.1/alipayjsapi.inc.min.js"></script> <style>.output{ display:block; max-width: 100%
我正在开发一个音频播放器,它可以在后台播放音频文件。我的问题是,当录像机或视频播放器启动时,我需要暂停音频播放器。 有什么方法可以处理这个任务吗?例如,我有来处理这些调用。当我接到呼叫或wnat呼叫时,我们可以使用呼叫状态暂停播放器。我想为录像机或视频播放器以及相同的场景。当视频/录制开始时,我需要暂停音频播放器。
我跟踪了Youtube关于如何制作音乐机器人的侵权行为,每一段代码都是有意义的,只有一个问题。我想我安装了FFmpeg,这是一种让bot播放音频的东西,我相信,我安装它的方式是运行以下命令:pip install FFmpeg 所以我等待它结束,并试图播放音乐,这是错误消息 Traceback(最近一次调用最后一次): File"C:\用户\Shiqi\AppData\本地\包\PythonSof
本文向大家介绍Android仿音乐播放器带进度的播放暂停按钮,包括了Android仿音乐播放器带进度的播放暂停按钮的使用技巧和注意事项,需要的朋友参考一下 因为项目需要,要做一个下载暂停开始的按钮,要求按钮上显示进度。网上找了找没有合适的,不太满意,于是自己动手写了一个。 效果如下: 主要步骤: 1、最外侧的圆环。 2、圆环内侧代表进度的圆弧。 3、暂停时在中心部位画出三角形。 4、播放时在中心部
下面是我使用的代码。通过这个代码,所有活动都播放背景音乐。但是当我使用home按钮返回到这个活动时,音乐正常播放,但是抽屉将不会恢复。这意味着,如果播放了音乐,我通过home按钮返回活动,那么播放按钮将显示,而不是暂停按钮,但我希望,如果在resume上播放了音乐,那么按钮将是暂停,如果不是,则显示播放按钮。 你能告诉我在恢复活动时如何使用“播放”和“暂停”按钮吗?
我正在开发一个应用程序,它可以使用语音控制音乐播放器。例如,当我说"play"音乐播放器播放歌曲,或者说"Next"音乐播放器将播放下一首歌曲,等等。我已经谷歌了,但没有找到任何想法或源代码。 问题: > 使用语音控制音乐播放器的想法 源代码示例。 提前感谢。 可能相关:Android-语音控制-媒体意图