1.设置壁纸,因为load图片时可能因为图片太大而OOM,目前有两种思路。
sendUri为图片的URI。
1.调用系统intent来设置,即通过传递一个image对象,系统luancher选择可以处理的程序。
Intent setAs = new Intent(Intent.ACTION_ATTACH_DATA);
setAs.setDataAndType(sendUri, "image/jpg");
setAs.putExtra("mimeType","image/jpg");
startActivity(Intent.createChooser(setAs, "set As"));
其中
setAs.putExtra("mimeType","image/jpg");
非常重要,它可以告诉intent的Filter传递的类型,不加这一句会在某些机型上导致相册程序崩溃,如vivo。
mimeType可以参考:http://www.apkbus.com/blog-56077-44963.html
2.将Bitmap传入系统裁剪intent,将图片裁剪至所需大小,然后在onAcitivtiyResult里面获取bitmap设置壁纸。