Java camera2 API快门声音不同于内置摄像头';在不同的设备之间不一致
我编写了一些代码,使用Camera2API为Android播放shuttersound。代码是:Java camera2 API快门声音不同于内置摄像头';在不同的设备之间不一致,java,android,android-camera,android-sound,Java,Android,Android Camera,Android Sound,我编写了一些代码,使用Camera2API为Android播放shuttersound。代码是: MediaActionSound mediaActionSound = new MediaActionSound(); mediaActionSound.play(MediaActionSound.SHUTTER_CLICK); 我已经在十多台设备上进行了测试。问题是: 实际播放的声音与内置摄像头不同 不同的设备实际上播放不同的声音。(似乎设备制造商各自安装了不同的声音罚款。) 有一些关于此文件的
MediaActionSound mediaActionSound = new MediaActionSound();
mediaActionSound.play(MediaActionSound.SHUTTER_CLICK);
我已经在十多台设备上进行了测试。问题是:
如果你想打造应用的品牌,只需使用你喜欢的品牌,或者用用户熟悉的声音来对待用户。如果默认的相机应用程序有自己的快门声音,您不必将其复杂化,您不太可能获得它-它可能会被烘焙到应用程序APK中,或者在OEM的一组设备声音中添加一些非系统应用程序看不到的自定义声音 使用MediaActionSound的主要原因是为了符合某些国家的期望,即相机快门声音不可静音。在这些国家,即使在完全静音的设备上,MediaActionSound仍将播放快门声音,开发者无需担心
否则,您可以在按下快门时播放您想要的任何声音,如果遵守快门声音强制并不重要-或者您可以在未强制执行快门声音静音时使用自己的声音(您可以通过检查),在快门声音不应该被静音的地方,回到MediaActionSound。如果默认的相机应用程序有自己的快门声音,你就不太可能找到它——它可能被烘焙到应用程序APK中,或者在OEM的一组设备声音中添加一些非系统应用程序看不到的自定义声音 使用MediaActionSound的主要原因是为了符合某些国家的期望,即相机快门声音不可静音。在这些国家,即使在完全静音的设备上,MediaActionSound仍将播放快门声音,开发者无需担心
否则,您可以在按下快门时播放您想要的任何声音,如果遵守快门声音强制并不重要-或者您可以在未强制执行快门声音静音时使用自己的声音(您可以通过检查),在快门声音不应静音的地方,请回到MediaActionSound。Camera2 API中没有canDisableShutterSound方法,仅在不推荐使用的Camera1 API上可用。那么,我们如何在不参考旧API的情况下测试快门声音的执行呢?只需使用不推荐的API进行测试;是的,需要将其移动到未弃用的API,但可以通过Camera1正常工作。Camera2 API中没有canDisableShutterSound方法,仅在弃用的Camera1 API上可用。那么,我们如何在不参考旧API的情况下测试快门声音的执行呢?只需使用不推荐的API进行测试;是的,这需要移动到一个非弃用的API,但通过Camera1可以正常工作。