電話カメラの使用状況を監視し、いつ写真を撮影したかに関する情報を記録するアプリケーションを開発する必要があります。私はこの情報が通常画像メタデータに記録されていることを認識していますが、私はこれに追加の情報を追加し、それを画像とは別に記録する必要があります。Androidでのすべてのカメラのアクティビティを監視することは可能ですか?
本質的には、私が知りたいのです:
- カメラが開かれた任意の時間を、(前面に移動)が起動し、閉じられ、無効化(ユーザーが別のアプリに切り替え)
- いつでもカメラファイルを保存します。写真またはビデオのいずれか
- カメラが直接起動されたか、別のアプリケーションを介して起動されたかにかかわらず、上記を知る
- 呼び出し元がインテントを使用したかカメラのAPIを使用したかに関係なく、
いいAPIがありますか?低レベルのインタフェースを置き換えて、中間者(man-in-the-middle)として動作させることは可能ですか?それはJavaから可能ですか、これは必然的にC/C++にありますか?
私の唯一の解決策は、私が上記から可能なすべてを特定し、FileObserverを実装してファイルの作成/変更の時間をチェックするために、継続的なサービスでログを監視することです。