問題タブ [mediastore]
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.
android - 保存された画像のパスを取得するとクラッシュする
カメラで撮影した保存画像のパスを取得する標準的な方法はありますか?パスを表示するさまざまな方法を見つけましたが、アプリがクラッシュする原因となります。私はAndroidプログラミングが初めてなので、ガイダンスが必要です。コードを確認してください:
Java コード:
android - USB ドライブ上のファイルの MediaStore.Audio.Media.DATA は空です
私は音楽ファイルを検索しています
/mnt/sdcard のファイルではすべて問題なく動作しますが、残念ながら /mnt/USB のファイルではデータが空のようです。
さらに悪いことに、メディアプレーヤーは /mnt/sdcard 内のファイルのコンテンツ URI (つまり、content://media/external/audio/media/120) では機能しますが、/mnt/USB 内のファイルのコンテンツ URI では機能しません。 (つまり、content://media/external/audio/media/530)。
ファイルは問題ありません。メディア プレーヤーに /mnt/USB/testfile.mp3 への絶対パスを指定すると、問題なく再生できます。
さらに奇妙なことに、USB ドライブ上のファイルから、アルバム、アーティスト、タイトルなどを問題なく読み取ることができます。
誰かアイデア?
ありがとう
android - Android - Kindle Fire で画像ピッカーが動作しませんか?
イメージピッカーを表示する次のコードがあります。ユーザーが画像を選択した後、 onActivityResult が呼び出され、選択した画像のデータが返されます。
ただし、kindle では、resultCode は 0 で、データは null です。他の誰かが以前にこの問題に気づいたことがありますか? この問題は、Kindle Fire でのみ発生します。
java - インテント カメラを使用したときに画像に名前を付ける
私のアプリでは、カメラを開き、そのファイルを特定の名前で保存したいと考えています。私はこのコードを使用します:
カメラを開き、写真を撮って保存できますが、良い名前は付けません。写真を保存するたびに、彼は写真に別の名前を付けます.1つの名前の例は「13333675392558.jpg」です。彼がどうやってそのような数字を出すのか理解できません。
コードで "new-photo-name.jpg" という名前が適用されないのはなぜですか?
そして/または私は何を間違っていますか?
すでにありがとう、Bigflow
android - Android MediaStoreクロップ機能、選択矢印を常に表示する方法は?
私は画像選択/トリミングプログラムに取り組んでおり、以下のコードを使用しています:
http://www.androidworks.com/crop_large_photos_with_android/comment-page-1#comment-969
私が理解できる限り、以下のコードのように意図に余分なものを入れてプロパティを設定します。
選択範囲を変更するには、境界線をタッチする必要があり、矢印が表示されるようになりましたが、ユーザーにそれを理解させるのは難しいため、常に表示するようにしたいと考えています。Instagram の Android アプリケーションはそのようにするので、その方法があると思います。
ありがとう。
編集/解決策: @Renard のおかげで、次のような解決策が見つかりました:
このギャラリーのソース コードを使用しました: http://gitorious.org/0xdroid/packages_apps_gallery3d/trees/3c02f2877dc2f8f0b5c01d03fa2b487c040e4000
他のギャラリー リソース コードもいくつか試しましたが、これが最も保守しやすいものです。
Highlightview.java クラスの draw() 関数をチェックインする場合は、以下を削除する必要があります。
それを行うと機能しますが、矢印は移動中に繰り返されます。これを回避するには、 moveBy() メソッドの最後の行を次のように変更する必要があります。
これとともに:
java - MediaStore.Images.Thumbnails が空に見える
サーバーに画像をアップロードするために作成したアプリがあります。これは、Android 2.3.4 を実行している droidx と Android 4.0.3 を実行している 2 つの異なるシミュレーターでうまく機能しました。ただし、Asus ee Pad Transformer (4.0.3 を実行) で実行しようとすると、MediaStore.Images.Thumbnails に 0 アイテムがあると常に通知されます。
カメラから 5 つ、インターネットからダウンロードした 1 つ、合計 6 つが表示されるはずです。サムネイルではなく画像を取得するだけの以前のコードは、カメラから 5 つの画像があることを示しているため、コードが機能していることがわかります。
ギャラリー アプリを開くと、これらの画像がすべて表示されます。また、Media Storage アプリをクリアしてデバイスを再起動して、それが役立つかどうかを確認してみましたが、そうではありませんでした。この時点で、特にこのまったく同じコードが電話とシミュレーターで機能したため、私は非常に混乱しています。
android - 着信音はAndroid2.3ではサイレントに設定されていますが、4.0.3では機能します
2つの質問があります:
saveas(ressound);
android 4.0.3デバイスで(stealthcopter.comに触発されて)電話をかけると、着信音は着信音として適切にアクティブ化されますが、2.3.3デバイスでは、選択した着信音は無音になります。コードのどこが間違っていたのですか?私が知りたい2番目のことはファイルを削除する方法です。さらに重要なのは、メディアストアからそれを取り出す方法ですが、sdから削除すると、これは自動的に行われますか?
アップデート:
フォルダ全体とコンテンツを削除するコードを追加しました。正常に動作し、クリーンです。(下記参照)
ボタンを押したときにこのコードを呼び出してみてください。
ただし、メディアストアはクリーンアップされません。再起動すると機能します。開発ツール内でメディアスキャンも試しましたが、機能しません。一部のアプリを再起動する必要があるとのことですが、デバイス全体を再起動せずに、使用可能な着信音のリストを表示するサービスを再起動するにはどうすればよいですか?
変数:
saveas(ressound);
消去();
deleteFiles(文字列パス);
android - ダウンロードした画像を電話ギャラリーに表示する
既にダウンロードされている画像を携帯電話のギャラリーに表示するようにアプリに指示しようとしています。画像は適切にダウンロードされ、アプリに表示されます。拡張子はなく、名前は md5 のみです。
これが私がそうしようとしている方法です:
アプリは次の行でクラッシュします。
このメッセージで:
java.io.FileNotFoundException: /mnt/sdcard/data/com.example.app/images: open failed: EISDIR (ディレクトリです)
誰がそれが何から来るのか知っていますか?
mediastore - MediaStore.Audio.Media.ARTIST フィールドが空であることを確認する方法は?
私はMediaPlayerアプリに取り組んでおり、MediaStore.Audio.Mediaを使用してSDカード上のすべての曲とそのタイトル、アルバム、アーティストなどのタグを取得しています。Artist フィールドが空かどうかを確認するカスタム アダプターがあるので、そのフィールドに「Artist unknown」を設定できます。私が使用するアダプターとカーソルは、この質問とは無関係であると考えているため、この問題はアダプターの外部でも発生するため、ここにコードを貼り付けることはしません。
ここに問題があります: mp3 ソングにアーティスト タグがない場合、アーティスト フィールド (MediaStore.Audio.Media.ARTIST フィールド) のカーソルは "" を返します。値 "" を持つ文字列と比較するたびに、比較が false になるため、それがどのようなデータ型であるか (文字列である必要があります) がわかりません。そのフィールドの戻り値を一時的な文字列に割り当て、それを前述の "" と比較しても、まだ false になります。null、「不明」、「」も試しましたが、何も機能しません。私はここで本当に行き詰まりました。どんな種類の助けも大歓迎です。
よろしくお願いします、イヴァン。
android - android:メディアストレージの更新
私はオーディオを録音し、SDカードにすべてのオーディオファイルを一覧表示しようとするアプリを作成していました。
ここで、カーソルを使用してMediaStoreからリストにデータを入力します。
ここでの問題は、オーディオが録音されるたびに、OSがメモリカードをスキャンするのを待って、リストが新しく録音されたトラックで更新されるようにする必要があるということです。
だから私はオーディオの録音を終えるたびにプログラムでメディアストレージを更新する方法があるのだろうかと思っていましたか?それを行うためにAndroidで提供されているAPIまたは関数はありますか?