私はファイルに書き込むことによってアンドロイドで自分のロガーをやっています。現在、ファイルを開いて文字列を追加する関数を呼び出しています。しかし、どこかにログを記録するたびにファイルを開くのは過剰(操作が重い)であると読みました。これは本当ですか?ここでの代替手段は何ですか?ファイルを開いたままにして、アプリの実行中は開いたままにして、ファイルに追加する必要がありますか?またはあなたは何を提案しますか?
どうもありがとうございます
実行しているログの量によって異なります-1秒あたりのログ数、おおよそのデータ量、ログの重要度など。ファイルに何かをドロップするのが1分間に数回だけの場合は、メインスレッドで発生せず、他の処理が遅くならない場合は、おそらく問題ありません。より効率的なものを実装する必要がある場合は、単純なキャッシュを試してみることをお勧めします。
ログデータのメモリ内キャッシュを保持し、特定のサイズ(100行ごと)に達したとき、または特定の時間が経過したとき(5分ごと)にファイルに保存できます。
このアプローチを採用する場合は、ユーザーが戻ってこない場合に備えて、onPauseとonDestroyをオーバーライドし、アプリを終了する前にキャッシュされたログデータをファイルに書き出すことを忘れないでください。