問題の原因は、mjdev:libaumsおよびUsbStorageProviderからUsbFile
です。UsbStorageProviderからビデオサムネイルを取得する方法uri
私はuri.getPath(からのビデオフレームを抽出してみてください) - > /document/usb1002:/GOPR04252.MP4
ImageUtils.getVideoThumbnail(documentUri.getPath(), size.x, size.y);
のような方法
ImageUtils
public static Bitmap getVideoThumbnail(String path, int mMaxWidth, int mMaxHeight){
Bitmap.Config mDecodeConfig = Bitmap.Config.RGB_565;
ImageView.ScaleType mScaleType = ImageView.ScaleType.CENTER_CROP;
File bitmapFile = new File(path);
Bitmap bitmap = null;
if (!bitmapFile.exists() || !bitmapFile.isFile()) {
return bitmap;
}
....
}
からしかし、 nullを返します。 なぜ、どのように修正するのですか?
またはチェックが
//row.add(Document.COLUMN_PATH, getUsbPath(file));
UsbStorageProviderにgetUsbPath
メソッド呼び出しをコメントし
はgetUsbPath(UsbFile)メソッドを実装するためにどのようにそのファイルへのパスを返すこの問題を解決するための他の方法はあります?私たちは、USB OTG用AnExplorerにサンプルの単語implimentingビデオサムネイルでFile
へFile
またはdocumentUri
にUsbFile
を変換する場合
推定は、我々は状況を解決することができます
@pskinkこれは外部の場合で、私はdocId usb1002:/GOPR0462.MP4とdocRootId = "usb1002"ですが、getThumbnailには長いIDが必要です。ドキュメントを確認してください – Qamar
OK 'MediaDataRetriever'は' setDataSource(Context context、Uri uri) 'メソッドを持っていますので、動作します。 – pskink
@pskinkはuriを設定できません。それはjava.lang.RuntimeException:setDataSourceが失敗しました:status = 0xFFFFFFEA – Qamar