フォルダがユーザーではなくAndroidアプリによって作成されたかどうかを検出する方法はありますか?
1 に答える
いいえ。そのような情報はファイルシステムに保存されていません(AndroidでもLinux一般でも)。そして、たとえそうだとしても、ファイルシステムの観点からは、ユーザーは何も作成しません。これは常にアプリです(アプリがそれを単独で実行するか、ユーザーが指示するかは重要ではありません)。アプリはOSに「私のためにそのフォルダを作成する」ように指示するだけで、なぜそれを実行したいのか、そして誰が本当の犯人であるのかについての詳細な情報は提供しません。
編集:私はちょうどOPの心にあったかもしれないケースがあることに気づきました-SDカード。そこにあるコンテンツは、Androidアプリケーションではなく、「ユーザーによって」(つまり、カードがマウントされてアクセスされたとき、つまりデスクトップから)作成できます。しかし、それを見つけるのは難しいかもしれません。以下のいくつかはFileObserverを示唆しています。私はわかりません。マウント/アンマウントブロードキャストを監視してから、SDカードをスキャンして、アンマウント後に何かが追加されているかどうかを確認します。しかし、それは実際のSDカードであり、ユーザーが間違ったクロックでマシンに挿入したかのように、それもかなり効果的ではありません。私のスキャンではあまり効果がありません。他の試みは、そこに何があるかを知ることです(したがって、初めて見たsdcardの「マップ」を作成し、その後のマウントと比較します)。それでも、疑問は残ります-なぜそれが必要なのですか?多分そこに