欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  技术分享

Android设置锁屏壁纸和桌面壁纸的实现_分别设置锁屏和桌面壁纸

程序员文章站 2022-01-19 19:59:32
...

很多时候我们会有这样的需求,那就是用图片可以设置桌面壁纸,设置锁屏壁纸,同时设置桌面和锁屏壁纸,锁屏壁纸只能用静态的图片。这个功能一般情况下系统是提供这个功能的,但如果我们要做自己的APP里面实现就比较麻烦了,但还是有实现方法,效果如下:

Android设置锁屏壁纸和桌面壁纸的实现_分别设置锁屏和桌面壁纸


话不多说,直接上代码,可以参考一下,通过这个方法就能实现。

设置桌面壁纸:

public void SetWallPaper() {
    WallpaperManager mWallManager = WallpaperManager.getInstance(this);
    try {
        Bitmap bitmap = BitmapFactory.decodeFile(imageFilesPath);
        mWallManager.setBitmap(bitmap);
        Toast.makeText(ImageViewActivity.this, "壁纸设置成功", Toast.LENGTH_SHORT)
                .show();

    } catch (IOException e) {
        e.printStackTrace();
    }
}


设置锁屏壁纸:

private void SetLockWallPaper() {
    // TODO Auto-generated method stub
    try {
        WallpaperManager mWallManager = WallpaperManager.getInstance(this);
        Class class1 = mWallManager.getClass();//获取类名
        Method setWallPaperMethod = class1.getMethod("setBitmapToLockWallpaper",Bitmap.class);//获取设置锁屏壁纸的函数
        setWallPaperMethod.invoke(mWallManager, BitmapFactory.decodeFile(imageFilesPath);//调用锁屏壁纸的函数,并指定壁纸的路径imageFilesPath
        Toast.makeText(ImageViewActivity.this, "锁屏壁纸设置成功", Toast.LENGTH_SHORT).show();
    } catch (Throwable e) {
        // TODO Auto-generated catch block
        e.printStackTrace();
    }

}


搞定,通过上面的两个方法就可以完成响应的设置了,如果要同时设置的话,可以一起调用。

若资源对你有帮助,浏览后有很大收获,不妨小额打赏我一下,你的鼓励是维持我不断写博客最大动力。

想获取DD博客最新代码,你可以扫描下方的二维码,关注DD博客微信公众号(ddblogs)。

或者你也可以关注我的新浪微博,了解DD博客的最新动态:DD博客官方微博(dwtedx的微博)

如对资源有任何疑问或觉得仍然有很大的改善空间,可以对该博文进行评论,希望不吝赐教。

为保证及时回复,可以使用博客留言板给我留言: DD博客留言板(dwtedx的留言板)

感谢你的访问,祝你生活愉快、工作顺心、欢迎常来逛逛。