現在、CベースのNDKベースのAndroidアプリケーションを開発中です。このアプリケーションは一時ファイルを作成する必要があります。通常のLinuxシステムでは、tmpfile
を使用して、これらのファイルが一時ディレクトリに正しく作成され、プロセス終了時にクリーンアップされるようにします。NDKでAndroidに一時ファイルを作成
しかし、さまざまなAndroidデバイス上の私の調査は
tmpfile
は常に失敗したことを示すように見えます。/tmp
ディレクトリがありません。- ディレクトリ
/data/local/tmp
は、Androidのすべての亜種には存在しません。 TEMP
環境変数が設定されていません。mkstemp
は、tmpfile
よりうまく機能しません。今
、私は一緒に何かをハックできると確信しているが、SDKはJavaアプリケーションのためのcontext.getCacheDir
とFile.createTempFile
を提供することを見て、私はCレベルでの等価があることを願っています。
信頼性が高く、Android搭載の方法で一時ファイルを作成する方法は誰にも分かりますか?
'setenv()'を呼び出すには 'libcore'を使うことができます。http://stackoverflow.com/a/22315463/192373を参照してください。これは、ネイティブにキャッシュディレクトリの名前を表示するよりエレガントな方法かもしれません。 –