「SDカード」のファイルを作成、更新、削除するアプリケーションを書いています。これをNexus7で実行する場合、ファイルが作成/削除/更新されたことをメディアスキャナーサービスに通知する必要があります。このスレッドからSingleMediaScannerクラスを実装しました: AndroidMediaScannerConnectionscanFileの使用方法。デバイスがコンピューターに接続されていない場合は、うまく機能します。接続するとすぐに最新のファイルが表示されます。
ただし、デバイスがUSB経由でコンピューターに接続されている場合は、うまく機能しません。ファイルの作成は正常に機能します。しかし、私のアプリケーションからのファイルの更新は機能しません。これを実行してコンピューターにコピーすると、デバイスをコンピューターに接続したときに存在していたバージョンが引き続き取得されます(デバイスを切断して接続すると、これが解決します)。コンピューターからデバイスにファイルをコピーすると、すぐにアプリケーションで新しいファイルを使用できるようになります。ファイルを削除しても、コンピュータに存在しているように見えますが、サイズは0バイトです。これは、デバイスを切断して接続することでも解決されます。
私はこれに本当に混乱しています。これは仕様によるものですか?これを解決するために私にできることはありますか?