TadaoYamaokaの開発日記

個人開発しているスマホアプリや将棋AIの開発ネタを中心に書いていきます。

Androidのソースコード

AudioRecordの問題を調べるためにAndroidソースコードを眺めることになったが、
SDKJavaソースコードは、SDK Managerからインストールできるが、
AudioRecordのJavaソースコードにはほとんど処理はなく、実態は、
jniのネイティブコード(C++)で処理されていた。


ネイティブコード(C++)は、SDK Managerからはインストールされないので、
android Git repositories - Git at Google
から参照する必要があった。
ソースコード全体をgrepしたりするには、gitでローカルにcloneする必要がある。

AudioRecordの処理は、

media/libmedia/AudioRecord.cpp - platform/frameworks/av - Git at Google

に書かれている。

obtainBuffer timed out

のエラーもこのソースコードで出力されていた。
何の処理をしているかまではわからなかったが・・・(^^ゞ

結局、ソースコードAPIリファレンスを眺めて解決したが、
原因不明のエラーに出くわした時はAndroidソースコードを調べるのも有用だと思う。