問題タブ [fileobserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
1124 参照

android - FileObserver が proc ディレクトリに対して機能しない

FileObserver を使用して「/proc/net/arp」ディレクトリを監視していますが、onEvent メソッドでイベントを取得できません。コードは次のとおりです。

「/proc/net/arp」を監視するにはどうすればよいですか。このファイルの読み取り権限があることを確認し、FileInputStream を使用してそこからデータを読み取ることができます。

0 投票する
3 に答える
6562 参照

android - FileObserver CREATE または DELETE は、ファイルに対してのみ受信されました

ディレクトリに FileObserver を登録しました。

KitKat エミュレーターでテスト済み。adb シェル:

参照用の DirectoryObserver

ドキュメントから

では、CREATE の場合はファイルとディレクトリを受信し、DELETE の場合はファイルのみを受信する必要がありますか? さて、私はまだサブディレクトリの CREATE を受け取りません。

0 投票する
1 に答える
187 参照

android - デバイスの起動時に Android FileObserver を使用するエレガントな方法

デバイスの起動時に自動的に起動するアプリケーションを開発しており、デバイスのメモリ内のいくつかの特別なディレクトリを監視する必要があります。これには FileObservers を使用します。コードのスニペットは次のとおりです。

このアプリケーションを実行しているデバイスでこのアプリケーションを起動すると、監視しているフォルダーがあるパーティションがマウントされ、監視できます。問題は、デバイスを再起動すると、システムがマウントされる前にこのコードが実行されることです。パーティションであり、それをフォルダーとして認識しません:

もちろん、私は何らかのことを行うことができwhile(!created){ attempt() }ますが、パーティションが既にマウントされ、システムの準備ができていることをこのアプリケーションに通知するよりエレガントな方法があるかどうかを尋ねたいと思います。

シェルでマウントを実行すると、次のようになります。

ありがとうございました

編集言い忘れましたが、これには Environment.getExternalStorage() を使用できません。これは変更されたデバイスであり、これはリリース バージョンの外部ストレージ パスであることが保証されていないパーティションです。

0 投票する
2 に答える
1043 参照

android - FileObserver が /data/anr/traces.txt に対して機能しないのはなぜですか?

Android アプリケーションには、/data/anr/traces.txt に対する読み取り/書き込み権限があります。しかし、それでも FileObserver は機能していないようです。

FileObserver が機能するには他に何が必要ですか? SDカードファイルでは問題なく動作します。

コード:

0 投票する
1 に答える
1855 参照

android - ファイルの FileObserver を使用して、観察されたパスの名前変更を検出できますか?

名前の変更を含む、パブリック ディレクトリ内のファイルの変更を検出するために、Android FileObserver を使用しています。すべて問題なく動作しますが、含まれているディレクトリまたはその親ディレクトリの名前を変更しても、監視対象のファイルの onEvent はトリガーされません。イベント マスクを ALL_EVENTS に設定しようとしましたが、役に立ちませんでした。実際には、ディレクトリの名前を変更できます。これにより、監視対象のファイル パスが効果的に変更されますが、イベントはディスパッチされません。これはどのように機能するはずですか?私が考えることができる唯一の解決策は、ルートまでのすべてのディレクトリにオブザーバーを追加することですが、それは少し奇妙に思えます。

コードは次のとおりです。

0 投票する
1 に答える
394 参照

android - Google Glass ファイル オブザーバーが正しく動作しない

私のプログラムの目標は、(少なくともこの段階では)ガラスから写真を取得し、それを画面に表示することです(私はイマージョンを使用しています)。

私のクラス(extends Activityもちろん)には次のものがあります:

カメラを起動します。ユーザーが写真を撮って受け入れると、私のpublic void onActivityResultメソッドが呼び出されます

ここでの問題は、ファイル オブザーバーを呼び出したにもかかわらず、実際に変更を監視しないことです。Log.d("glass", "we observed an event");イベントが発生するたびにログに記録する必要がありますが、ログには記録されません。私のlogcat(私のタグでフィルタリングされたもの)は次のようになります:

オブザーバーが監視を開始した直後に、そこにあるファイルにアクセスしようとしましたが、NullPointerExceptionを使用して作成されたビットマップにアクセスしようとすると、Bitmap thePicUnscaled = BitmapFactory.decodeFile(pathToImage);

私は、ファイル オブザーバーを少なくとも 5 秒ほど監視したままにしました。これは、フラッシュの書き込み速度では永遠です。私の問題が何であるかわかりません。

参考までに、私のlayout.xml: