我正在开发音乐播放应用程序的Android暂停媒体播放器。当用户将我的应用程序推到背景歌曲播放良好。现在,如果用户打开相机并开始从相机录制视频,我需要暂停从我的应用程序播放的歌曲。如何执行此操作?当用户打开相机并开始录制视频
1
A
回答
0
我希望负责视频录制应用程序将请求音频焦点,通知他们应该停止播放其他应用程序。 如果这种情况下, 可以实现AudioManager.OnAudioFocusChangeListener
这样的:
@Override
public void onAudioFocusChange(int focusChange)
{
if (focusChange == AudioManager.AUDIOFOCUS_LOSS_TRANSIENT)
{
// pause playback
}
else if (focusChange == AudioManager.AUDIOFOCUS_LOSS)
{
((AudioManager)getSystemService(Context.AUDIO_SERVICE)).abandonAudioFocus(this);
doStopPlayback();
}
// else if... listen to other types of audio focus loss/ gain
}
其中doStopPlayback()
是你释放MediaPlayer
等
参见本guide媒体播放方式。
-1
可以使用方法Camera.open(cameraId)检查。
创建一个新的Camera对象访问特定的硬件相机。如果相同的相机被其他应用程序打开,则会引发RuntimeException。
抛出RuntimeException 如果打开相机失败(例如,如果相机正在被其他进程或设备策略管理器使用,则禁用相机)。 更新:
例子:
public boolean isCameraUsebyApp() {
Camera camera = null;
try {
camera = Camera.open();
} catch (RuntimeException e) {
return true;
} finally {
if (camera != null) camera.release();
}
return false;
}
您可以使用此方法使用但保持这件事记住,此方法首先获取摄像机。
如果其获取成功那么它意味着没有其他应用程序正在使用这台相机,不要忘记再次释放它,否则你将无法再获取它。
其其抛出的RuntimeException这意味着摄像机正被另一个进程或设备策略管理器使用已禁用相机。
相关问题
- 1. 如何在打开相机时禁用视频录制选项
- 2. 相机 - 开始录制视频后的预览更改
- 3. 如何打开相机和视频
- 4. Swift - 当用户点击uitabbaritem时开始录制音频
- 5. 开始录制视频时屏幕闪烁并调整大小
- 6. 用adb开始youtube视频?
- 7. 默认画质下,当视频开始
- 8. 视频冻结与AVFoundation相机开关
- 9. 打开视频选择随机文件
- 10. 用openCV + python打开视频
- 11. 开始视频录制后屏幕变黑 - android应用程序
- 12. 在拍摄视频时检测相机开始转动
- 13. AsyncTask打开相机
- 14. 打开iPhone相机?
- 15. Imageview打开相机
- 16. RuntimeException:音频录制开始失败
- 17. 如何在打开应用程序时自动录制视频?
- 18. 有没有办法打开相机并在屏幕上查看它,使它无法拍照或录制视频。
- 19. 打开安卓相机流式视频时出错
- 20. 从相机录制视频Java Android
- 21. getAction Bar()当试图打开相机
- 22. 当在WebView中按下视频时打开本机视频播放器(全屏)
- 23. 的Android录制视频,初始化相机
- 24. 开始Brightcove视频onclick
- 25. Javascript在Youtube视频开始
- 26. 如何程序自动开始拍摄视频,当应用程序开始
- 27. 如何开始在iPhone上自动录制视频Sdk
- 28. 当试图开始视频录制时得到空指针异常
- 29. 摩托罗拉DROID RAZR相机问题当我录制视频
- 30. 如何在不打开摄像机的情况下录制视频?