thumbnail在4.0以上版本的android上返回null

时间:2014-11-27 06:27:21

标签: android thumbnails

我得到了同样的this 问题

public class MainActivity extends Activity 
{


    ImageView imgVie;

    Bitmap bmp,extBmp;

    @Override
    protected void onCreate(Bundle savedInstanceState) 
    {

        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


        imgVie = (ImageView)findViewById(R.id.imageView1);          
        String path =   "http://202.65.154.108:8080/VODStream/lokesh.stream.mp4";
        bmp = ThumbnailUtils.createVideoThumbnail(path, Thumbnails.FULL_SCREEN_KIND);

        if(bmp!=null)
        {

            extBmp =    ThumbnailUtils.extractThumbnail(bmp, 300, 300);
            imgVie.setImageBitmap(extBmp);
        }

        if(bmp==null)
        {
            Toast.makeText(getApplicationContext(), "Sorry your bitmap returns null", Toast.LENGTH_LONG).show();
        }
    }



}

当在nexus4s中运行此应用程序时,它进入if条件。在所有其他手机中它移动到else。 你有什么建议吗?

2 个答案:

答案 0 :(得分:0)

1) - 有时如果视频质量差,视频损坏或格式不受支持,则返回空位图。

2) - createVideoThumbnail(String filePath,int kind)仅在4.0 +中支持MINI_KIND或MICRO_KIND。

http://developer.android.com/reference/android/media/ThumbnailUtils.html。 尝试其中一个...

3) - 某些设备无法播放,无法为放置在内部存储器上的视频创建缩略图。检查一下,然后在创建缩略图之前将视频移动到SD卡。

4)检查文件的路径。

答案 1 :(得分:0)

如果您的视频在外部存储上,则需要获得许可 <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />