ソースから Android をコンパイルし、携帯電話にインストールすることができました。最初から、私は C++ 開発者ではありませんが、変数に保持されているデータをファイルに出力する方法を考え出すことができると思っていました。
少しグーグルで調べた後、次のコードを思いつきました。
#include <iostream>
#include <fstream>
using namespace std;
ofstream myfile;
myfile.open ("/data/wav.raw");
myfile < mMixBuffer;
myfile.close();
frameworks/base/services/audioflinger/AudioFlinger.cpp: In member function 'virtual bool android::AudioFlinger::MixerThread::threadLoop()':
frameworks/base/services/audioflinger/AudioFlinger.cpp:1769: error: 'ofstream' was not declared in this scope
frameworks/base/services/audioflinger/AudioFlinger.cpp:1769: error: expected ';' before 'myfile'
frameworks/base/services/audioflinger/AudioFlinger.cpp:1770: error: 'myfile' was not declared in this scope
これがうまくいかなかった後、もう一度コンパイルエラーを出しました:
int fd;
fd = ::open("/data/wav.raw",O_WRONLY | O_APPEND);
::write(fd,mMixBuffer,minBufferSize);
::close(fd);
frameworks/base/services/audioflinger/AudioFlinger.cpp: In member function 'virtual bool android::AudioFlinger::MixerThread::threadLoop()':
frameworks/base/services/audioflinger/AudioFlinger.cpp:1770: error: '::open' has not been declared
frameworks/base/services/audioflinger/AudioFlinger.cpp:1770: error: 'O_WRONLY' was not declared in this scope
frameworks/base/services/audioflinger/AudioFlinger.cpp:1770: error: 'O_APPEND' was not declared in this scope
mMixBuffer
上記から明らかでない場合は、 variable の内容を size とともにminBufferSize
fileに追加しようとしています/data/wav.raw
。どうすればこれを達成できるか誰にもわかりませんか?