Tia*_*ago 20 camera android default
我正在使用takePicture()该Camera课程中的方法.拍照,但它没有声音!我的客户想要Android制作的默认点击声.
我见过其他线程,似乎问题在于禁用声音,而不是相反!为什么我的应用程序没有发出咔嗒声?
Shr*_*ant 52
我也有这个问题.我通过使用以下代码解决了它:以下用于调用takePicture:
clickButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(final View view) {
mCamera.takePicture(shutterCallback, null, onPicTaken);
}
});
Run Code Online (Sandbox Code Playgroud)
现在shutteerCallBack:
private final ShutterCallback shutterCallback = new ShutterCallback() {
public void onShutter() {
AudioManager mgr = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
mgr.playSoundEffect(AudioManager.FLAG_PLAY_SOUND);
}
};
Run Code Online (Sandbox Code Playgroud)
现在从相机拍照后做任何事情:
/**
* This will be called after taking picture from camera.
*/
final transient private PictureCallback onPicTaken = new PictureCallback() {
/**
* After taking picture, onPictureTaken() will be called where image
* will be saved.
*
*/
@Override
public void onPictureTaken(final byte[] data, final Camera camera) {
}
Run Code Online (Sandbox Code Playgroud)
这将在单击捕获按钮时播放声音.
谢谢 :)
H0L*_*LL0 17
如果你想让相机播放默认的安卓系统声音,你必须给它一个空的快门回调.
ShutterCallback shutterCallback = new ShutterCallback() {
@Override
public void onShutter() {
/* Empty Callbacks play a sound! */
}
};
mCamera.takePicture(shutterCallback , null, onPicTaken);
Run Code Online (Sandbox Code Playgroud)
在HTC One SV和三星Galaxy XCover 2上测试过.
你给回调一个空的快门回调然后它播放默认声音.
如果您takePicture使用null 调用,ShutterCallback相机将不会播放任何声音.
Shrikant的答案正在发挥作用,但可能出乎意料地表现出来,因为mgr.playSoundEffect();不打算AudioManager.FLAG_PLAY_SOUND像医生那样调用.
| 归档时间: |
|
| 查看次数: |
9073 次 |
| 最近记录: |