2011-03-13 25 views
13

我想用代碼中的其他東西替換快門聲音(相機拍攝照片時發出的聲音)。我希望它會像鈴聲或通知,但我什麼都看不到其他任何東西。我已經看過代碼在拍照之前將手機靜音,並在之後立即解除靜音,但我寧願用另一個mp3或ogg替換聲音。有沒有什麼方法可以取代或沉默Android中的相機快門聲音?

明白,如果你有一個根深蒂固的手機,你可以替換該文件。這不是我的應用程序的解決方案。

就在我的應用程序。想法是設置它,然後解除它。有趣的是,如何在輸入內容後重新閱讀它,這有助於從不同的角度思考它。我已經使用下面的代碼關閉了音頻服務,並且之前播放了我的聲音。作爲一個很好的解決方法工作。也許有一天,我們可以設置它。

AudioManager mgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE); 
    mgr.setStreamMute(AudioManager.STREAM_SYSTEM, true); 

謝謝!

+0

在你的應用程序或一般? – JoaquinG

+1

只是在我的應用程序。想法是設置它,然後解除它。有趣的是,如何在輸入內容後重新閱讀它,這有助於從不同的角度思考它。我使用了代碼'code'AudioManager mgr =(AudioManager)getSystemService(Context.AUDIO_SERVICE); mgr.setStreamMute(AudioManager.STREAM_SYSTEM,true);關閉音頻服務,但之前播放我的聲音。作爲一個很好的解決方法工作。也許有一天,我們可以設置它。 – MWMWM

+0

@MWMWM你爲什麼不張貼這個答案。奇蹟般有效! – HRJ

回答

10

如果您使用的是Camera對象,可以提供任何你想要一個Camera.ShutterCallback和發揮。

如果您使用的是Intent啓動其他應用程序來拍攝照片,該應用程序就可以選擇它扮演的是拍攝照片時。

您靜音的音頻解決方案爲用戶敵對的,因爲如果有其他任何需要在那段時間發揮系統的聲音,用戶將不會聽到。

+0

它可能是用戶敵對的,但在某些手機甚至Android模擬器上,看起來ShutterCallback並不會禁用默認的快門咔嗒聲。似乎沒有其他辦法。 Google可迫使因爲[法律concers]照相機聲(http://osdir.com/ml/AndroidDevelopers/2009-06/msg00370.html) – jho

+2

這似乎並不爲我工作。我在快門後沒做任何事,但聲音仍在播放。 – clamp

+0

同樣適用於我,不適用於Droid 3。 – Geoffroy

0

您可以使用函數將其保存在某些類型的觸發器的圖片使用數據從預覽回調,如按鈕,使用的onclick監聽器。您可以將圖像壓縮爲jpeg或png。通過這種方式,不需要執行快門回調。因此您可以在拍攝照片時播放任何聲音或無聲音。

相關問題