友盟 的多媒体服务是与阿里百川合作。粗略的看了一下,阿里百川提供了客户端和服务器端的接口,以便于我们更加便捷的进行多媒体管理。下载了demo,看一下有什么有用的
- 图片上传
我们不需要进行任何的处理。在Application中的oncreate方法进行声明AlibabaSDK.asyncInit(this, new InitResultCallback()
然后是上传图片mTaskId = DemoApp.mediaService.upload(data, fileName,
DemoApp.NAMESPACE, options, mListener);
是直接调用提供的方法,返回值是mtaskId,我们根据这个mtaskid进行暂停上传,继续上传,取消上传。代码如下:
DemoApp.mediaService.pauseUpload(mTaskId);
DemoApp.mediaService.resumeUpload(mTaskId, mListener);
然后它还提供了一个图片压缩的方法,众所周知,Android提供的压缩无外乎质量压缩和尺寸压缩,说实话我感觉压缩效果很烂的。sdk,提供的方法中需要输入尺寸,以及质量,应该是两者的结合,方法如下
“`
Utils.SERVICE.submit(new Runnable() {
@Override
public void run() {
byte[] data = BitmapUtils.getSmallBitmapBytes(path, 200,
200, 80);
if (data != null) {
Log.e(TAG, "compress olderSize:" + file.length()
/ Constants.KB + " kb" + " newSize:"
+ data.length / Constants.KB + " kb");
mTaskId = DemoApp.mediaService.upload(data, fileName,
DemoApp.NAMESPACE, options, mListener);
} else {
Log.e(TAG, "getSmallBitmapBytes fail");
}
}
});
“`开启了线程,毕竟压缩图片也是耗时的。
在这里必须要提一个好的压缩图片的方法,这是在eoe发现的,没有jar包,传送门个人感觉压缩效果很好
图片加载
这个就算了,毕竟图片加载的开源库那么多,imageloade什么的微视频
这个是有播放本地视频和网络视频。
平常的app,如果对播放视频没有太大要求,mediaplayer完全可以胜任。而如果做视频播放器,那么Vitamio是更好的选择。