各位大虾, 小弟菜鸟一名, 打算在assets目录下放一个myData.data文件, 这个文件是我将一个a.jpg, 一个b.mp3和一个c.txt文件整合起来的. 从myData.data文件头可以得a, b, c三个文件在myData文件中的偏移和长度.我现在想在android里面解析myData.data文件, 并把a.jpg的图片显示出来, b.mp3的音乐播放出来, c.txt的文字显示出来. 碰到的问题是, MediaPlay只是针对文件播放, 没找到针对流的方法; Bitmap也是. 现在想到的办法是, 从myData.data里面分别将这3个文件读出来, 然后按原名写到用户区, 最后再通过播放文件的方式解码图片和音乐.不过觉得这种方法有点不合理, 请问各个大虾有什么好建议? 十分感谢

解决方案 »

  1.   

    问了几个朋友, 据说mp3的话, 出了从文件和url播放, Android原生是不支持mp3的buffer解码的.不知道大家有没有好建议啊?
      

  2.   

    第一次安装时解压到一个文件内或读文件时发现文件不存在解压一次不行吗 还有assets文件下的文件不能超1M,有些特殊后缀的才可以超1M像".jpg", ".jpeg", ".png", ".gif",".wav", ".mp2", ".mp3", ".ogg", ".aac"...,要不然会报错。 
      

  3.   

    不是有这两个函数可以直接用文件描述符来播放吗?void  setDataSource(FileDescriptor fd, long offset, long length) 
    Sets the data source (FileDescriptor) to use. 
    void  setDataSource(FileDescriptor fd) 
    Sets the data source (FileDescriptor) to use.