我正在尝试使用默认的android方式将图像设置为墙纸从可绘制文件夹中存储
我尝试了其他问题的回答 here。
但是我遇到了错误 “没有应用程序可以执行此操作”
我获取uri的代码-
Uri uri=Uri.parse("android.resource://drawable/sharingan.jpg");
Intent intent=new Intent(Intent.ACTION_ATTACH_DATA);
intent.addCategory(Intent.CATEGORY_DEFAULT);
intent.setDataAndType(uri,"image/*");
intent.addFlags(Intent.FLAG_GRANT_READ_URI_PERMISSION);
intent.putExtra("mimeType","image/*");
startActivity(Intent.createChooser(intent,"Set as"));
还有另一种方法可以实现这一目标吗? 还是我的uri有问题?
答案 0 :(得分:0)
像下面一样构造uri对象
Uri uri = Uri.parse(ContentResolver.SCHEME_ANDROID_RESOURCE +
"://" + getResources().getResourcePackageName(R.drawable.sharingan)
+ '/' + getResources().getResourceTypeName(R.drawable.sharingan) + '/' + getResources().getResourceEntryName(R.drawable.sharingan) );