簡體   English   中英

網址中使用圖片的縮略圖視頻?

[英]thumbnail video from url using image?

連接互聯網連接后,我已經成功在Android應用程序上顯示了來自URL的縮略圖視頻,但是當互聯網連接關閉時,縮略圖不顯示。

這是我的代碼。

Bitmap bmThumbnail;

bmThumbnail = ThumbnailUtils.createVideoThumbnail("http://somedomain.com/video/myvideo.mp4", Thumbnails.MICRO_KIND );
imgPhoto.setImageBitmap(bmThumbnail);

我想在連接斷開的情況下仍然顯示縮略圖,還有沒有辦法像先將緩存保存在sdcard一樣,就像圖像緩存一樣? 或其他任何解決方案,可以在互聯網連接關閉時顯示縮略圖視頻? 謝謝,

public static String getBitmapFromURL(final Activity activity, String link,
            String filename) throws FileNotFoundException,
            MalformedURLException, IOException {

        /*--- this method downloads an Image from the given URL, 
         *  then decodes and returns a Bitmap object
         ---*/

        File file = null;


        file = new File(Environment.getExternalStorageDirectory()
                .getAbsolutePath()
                + CommonVariable.KCS_IMAGE_FOLDER_NAME_PHONE_MEMORY);

        // have the object build the directory structure, if needed.
        if (!file.exists()) {
            file.mkdirs();
        }
        // create a File object for the output file
        File outputFile = new File(file, filename);
        FileOutputStream fos = new FileOutputStream(outputFile);
        BufferedOutputStream out = new BufferedOutputStream(fos, 1024);
        URL url = new URL(link);
        HttpURLConnection connection = (HttpURLConnection) url.openConnection();
        connection.setDoInput(true);
        connection.connect();
        InputStream input = connection.getInputStream();

        out = new BufferedOutputStream(fos, 1024);

        int b;
        while ((b = input.read()) != -1) {
            out.write(b);
        }
        out.close();
        connection.disconnect();

        return outputFile.getAbsolutePath();

    }

使用此功能,將返回SD卡路徑的字符串。使用此路徑,您可以使用以下功能設置位圖圖像:

    public static void setImagesNew(ImageView img, String pathName,
                Activity activity) {


                  Bitmap  bmThumbnail = ThumbnailUtils.createVideoThumbnail(pathName, Thumbnails.MICRO_KIND );
img.setImageBitmap(bmThumbnail);


            bmp = null;
            System.gc();
            Runtime.getRuntime().gc();

        }

我希望這對您有用...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM