获取当前壁纸的绝对路径?

22

如何获取当前壁纸的绝对路径


你只得到了壁纸路径还是图片? - Dinesh
你想通过获取路径实现什么目的? - Orlymee
我的当前壁纸存储位置在内部存储器中。如何识别该路径。 - Sekar
6个回答

9

在Android 4.2中,壁纸位于:

/data/system/users/0/wallpaper

0替换为您的用户ID(在/data/system/users中查看)。

1
应用程序是否可以在不使用root的情况下访问它? - android developer

1
请确保您在查找手机的根目录时开始,而不是在SD卡上。一旦您到达正确的子目录,壁纸文件将只被称为“wallpaper”,直到您将其复制到SD卡并将其重命名为“YourName.jpg”,图片查看器可能无法将其识别为图像文件。
我尝试使用ES文件浏览器和Root Explorer(从市场下载)从手机根区域复制文件,即phone ROOT/data/data/com.android.settings/files/wallpaper..。这是手机存储本身的最低级别,类似于Windows中的“计算机”。
可能您手机上的文件浏览器不允许您访问根目录(您的手机不应需要ROOT权限才能复制文件)。

我不知道操作系统是否将壁纸存储在那里...至少在我的Nexus 7上,该文件路径中没有低于ROOT/data/的目录。 - kentcdodds
给Padma Kumar:谢谢!你说得对,我在这里找到了当前的壁纸:ROOT/data/data/com.android.settings/files/wallpaper - OutLaw

1

抱歉,我的当前壁纸存储在内部SD卡/内存中。如何确定该路径。 - Sekar
据我所知,一旦您从自己的图像中设置壁纸,安卓会将其复制到 wallpaper 文件夹中。因此,即使您在图库中删除了手动设置壁纸时使用的文件,您的壁纸仍将保留。那么问题再次出现,一旦您获得了壁纸文件的路径,您想要实现什么目标呢?因为还有其他方法可以实现相同的结果。 - Orlymee
我不知道。你能给我任何其他方法来实现相同的结果的例子吗? - Sekar
伙计,如果我不知道你想要实现什么目标,我怎么能帮你呢?假设你已经得到了路径,接下来你想要做什么? - Orlymee
你的意思是说你的应用程序背景看起来与主屏幕上的不同?如果你想让手机壁纸成为你的应用程序背景,你需要使用“壁纸服务”。壁纸服务负责在应用程序后面显示一个动态壁纸。 - Orlymee
显示剩余2条评论

0

下载apk文件...

前往此路径...你可以在这里找到它

Download\com.amber.launcher.skin.samsung.galaxy_2018-08-24\res\drawable-nodpi-v4\bg_wallpaper.jpg


0

Android Oreo不在其他评论所说的地方

内部存储/Android/data/com.android.systemui/files/backupwallpapers

我只是需要找回我从下载文件夹中删除的壁纸。


没错,但在我的情况下(三星Galaxy SM-A600FN与奥利奥系统),这些文件是损坏的,不是有效的JPEG文件。 - Mr. Fish

0
在Android Oreo上,如果使用系统提供的壁纸之一,而我想要的壁纸不在被接受答案提到的路径中,但我在系统文件夹中找到了包含它的apk。
我从以下路径获取了它:system/framework/framework-res.apk 我必须打开apk并提取/res/drawable-nodpi-v4/default_wallpaper.png。

我认为这个问题是关于一般性的,而不是针对任何特定版本的Android。你不觉得你定义的方式更复杂吗? - Bhuro
我添加了我的答案,因为被接受的答案在Oreo上对我无效。作为一个有效的解决方案和不同的替代方案,我不明白为什么要获得负评。 - davisjp
这个问题涉及到“当前壁纸”,它可以是用户设置为壁纸的任何图像,不一定是设备提供的默认图像。 - Bhuro
好的,我现在明白你的观点了。我编辑了我的答案,以使其清楚表明这是一个特定情况。 - davisjp

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接