【发布时间】:2017-09-08 22:23:05
【问题描述】:
我有一些图像保存在手机内部存储的文件路径中,如下所示:
/storage/emulated/0/myApp/FILENAME.jpg
我想打开一个意图,以便用户可以使用他选择的应用设置手机壁纸。我尝试的每个代码都根本不起作用或仅适用于某些应用程序。谢谢。
【问题讨论】:
标签: android android-intent android-wallpaper
我有一些图像保存在手机内部存储的文件路径中,如下所示:
/storage/emulated/0/myApp/FILENAME.jpg
我想打开一个意图,以便用户可以使用他选择的应用设置手机壁纸。我尝试的每个代码都根本不起作用或仅适用于某些应用程序。谢谢。
【问题讨论】:
标签: android android-intent android-wallpaper
你可以通过打开这个intent来设置sdcard或手机中的任何图片:
Intent intent = new Intent(Intent.ACTION_SET_WALLPAPER);
startActivity(Intent.createChooser(intent, "Select Wallpaper"));
也请添加权限:
<uses-permission android:name="android.permission.SET_WALLPAPER"></uses-permission>
更多选项请查看this answer
P.S:您需要为 SET_WALLPAPER 添加权限,适用于 android 6+
您还可以使用以下方法将设置壁纸打开为对话框:
Intent intent = new Intent(Intent.ACTION_ATTACH_DATA);
intent.setDataAndType(imageUri, "image/*");
intent.putExtra("jpg", "image/*");
startActivityForResult(Intent.createChooser(intent,
getString(R.string.set_as)), REQUEST_ID_SET_AS_WALLPAPER);
【讨论】: