0

ソースから 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 とともにminBufferSizefileに追加しようとしています/data/wav.raw。どうすればこれを達成できるか誰にもわかりませんか?

4

1 に答える 1

1

/data/ ディレクトリは変更できません。同じ権限はありません。/mnt/sdcard (または) /data/data/ を試してください。

于 2012-12-18T10:00:58.853 に答える