発売日(2015年4月10日)から持っているAndroid Lollipop 5.0.2を搭載したSamsung Galaxy S6 Edge (64GB)ですが、タイトルにあるように、デフォルトのギャラリーアプリで画像が表示されなくなるという問題があるようです。また、携帯電話にはかなりの数の音楽が入っているのですが、それが"Music Player"に表示されなくなってしまいました。何が原因で写真や音楽が消えてしまうのか、全くのランダムのようでよくわかりません。デフォルトのファイルマネージャーであるMy Files"にはまだファイルが表示されています。
最初にこの現象が起きたときは、何かの不具合ではないかと思い、ファクトリーリセットを行ったところ、すべてが元通りになりました(ただし、自分好みの携帯電話になるまでには約3時間かかります)。その後、数日後に2回目の不具合が発生したため、再度ファクトリーリセットを行いました。3回目に起きたときは、かなり腹が立ったので、地元のサムスン修理センターに持ち込んだところ、ソフトウェアの問題で、Androidを再インストールすれば解決するだろうと言われました。しかし、5日後にまた同じことが起こったので、契約したCarphone Warehouseに戻って、新しい携帯電話を要求しました。なぜなら、他の人に起こった記録が見つからず、サムスンはすでにソフトウェアの問題を排除していたので、携帯電話に問題があるはずだからです。
新しい携帯を手に入れてから2週間後、また同じことが起こってしまいました。今朝は画像があったのですが、今日の夕方になるとギャラリーから全て消えてしまい、また音楽も消えてしまいました。今日はいつもと違う操作をしたわけではないので、何が起こったのかわかりません。
カメラで新しい写真を撮ると、ギャラリーには問題なく表示されますが、古い写真は表示されません。マイファイルを見ると、古い画像は今撮ったばかりの写真と全く同じ場所にあるのですが...。まるでギャラリーから隠されているかのようです。QuickPicのようなアプリをインストールすると、新旧すべての画像がそこに表示されますが、Facebookなどに画像を共有するためには使えないので、理想的とは言えません。
また、音楽ファイルも同様です。My Files"には表示されますが、Music Player"には表示されません。つまり、私のアラーム音はすべてデフォルトの曲(例:Morning Flower")に戻されています。
以下のスクリーンショットは、Cameraフォルダにあるすべての画像を示していますが、ギャラリーには一番上の画像だけが表示され、"My Files"のImagesカテゴリにも一番上の画像だけが表示されています。
.
設定を色々と弄ったり、キャッシュパーティションをクリアしたり、"My Files"の"Show Hidden Files"をクリックしたり、何度か携帯を再起動したりしましたが、やはり問題があるようです。また、「メディアストレージアプリ」から「メディアデータ」を削除したところ、ギャラリーは空になりましたが、再起動しても再スキャンは行われませんでした(少なくとも結果は得られませんでした)。S6 EdgeなのでSDカードはなく、ディスクのマウントに問題はないはずです(新しいファイルが古いファイルと同じ場所にあるので、意味がないのですが)。
AEで同じような問題を抱えている人を何人か見つけましたが、こちらとこちらを見ても回答はありませんでした。
どこかにアップロードできるようなデバッグログのようなものはありますか?同じ問題を抱えている人がほとんどいないので、特定のアプリの組み合わせが原因なのでしょうか?
これでは気が狂いそうなので、何かアイデアをいただけたら幸いです。
よろしくお願いします。
アダムです。
EDIT: 携帯電話をコンピュータにリンクして、adb logcatを実行しましたが、ログが膨大で、何を探しているのかよくわかりません。以下のエラーがかなり頻繁に現れます。
< 6>[18330.193843] [6:MediaScannerSer:22775] binder:3874:22775 トランザクションが失敗しました 29189, サイズ 416-0
もし、ログの中で参考になる部分があれば、教えていただければ全力で抽出します。
EDIT 2: バグレポートを作成して、GoogleやSamsungに送信する手順はありますか?
更新された回答:
デバイスメモリ(ストレージフォルダ)に.nomediaという名前の隠しファイル(名前が大文字かどうかもダブルチェック)があるかどうかを確認し、削除します。
設定] - [アプリ] - [すべて] - [メディアストレージ] に移動します。データの消去」と「デフォルトの消去」を選択します。**アプリを無効化します。
端末を再起動します。再度、「設定」「アプリ」「すべて」「メディアストレージ」を有効にします。数分待ちます(ファイルのインデックスを再作成するため)。すべてのファイルがギャラリーに戻ってくるはずです。 注意:再スキャンアプリを実行しようとせず、上記のステップに従ってください。
古い回答:
logcatに表示されたエラーは、画像を処理/拡大するための特定の機能に関連しています。周知の事実として、Binderのトランザクションバッファは、限られた固定メモリ(1MB)があります。このバッファは、すべてのトランザクションで使用され、プロセス間で共有されます。例えば、多数の大きな画像ファイルがあり、そのうちのいくつかが破損している場合(コンピュータとデバイス、コンピュータとSDカードなどを経由した転送がうまくいかなかった場合)、またはそのうちのいくつかがアプリ(あなたの場合はGallery)で認識されない場合、このアプリがファイルのサムネイルやプレビューを作成し、それらのファイルの1つを実際に縮小/拡大しようとすると、プロセスが失敗する可能性があります。
同じケースは、コンテンツ、サイズ、署名のいずれかに問題がある多くのファイル(着信音、.wav
ファイル、.ogg
、または任意のタイプの音楽など)にも当てはまります。
問題が再発するとおっしゃっていたので、このような奇妙な動作をするアプリを疑っています。カーネルのバグとかそういうのは考えていません。
というわけで、安全のために。
また、「.gif」、「.jpg」、「.png」などの画像は、パソコンやデバイス上では「正しい」と表示されていても、実際には「悪い」コンテンツ(破壊されたコンテンツ)が含まれている可能性がありますのでご注意ください。Android端末内の画像処理に関するすべての操作は、(最も一般的な操作である)画像の圧縮/解凍に基づいており、それらは、言ってみれば「少しずつ」行われていることを忘れてはなりません。誤ったタイプやコンテンツ(誤った高さ/幅/ファイル長)をアプリに強制的にレンダリングさせると、TransactionTooLargeExceptionが発生します(MediaScannerがlogcatで投げる内容です)。
おそらくメディアスキャナでしょう。問題は、最近のアンドロイドバージョンでは、プレイストアにメディアスキャナアプリがほとんどなく(特にロリポップの場合)、そのためほとんどのアプリがクラッシュするか、単に動作しないということです。ですから、最良の方法は、いくつかのアプリを試して、ヒット&トライで動作するかどうかを確認することです(私は個人的にロリポップを使っていないのでテストできません)。例えば、このアプリを試してみませんか?
ついでに言えば、adb->でメディアスキャナを起動してみるのもいいでしょう。
adb shell am broadcast android.intent.action.MEDIA_MOUNTED
もう一つの方法は、設定でギャラリーアプリのデータとキャッシュをクリアして、すべてのメディアを再分析するようにすることです。