如何从活动类外部更改android壁纸?

时间:2015-08-31 20:55:53

标签: java android

最后我启动了一项服务,我想打电话给那个班级并更改我手机的壁纸。

在mainActivity java文件中我可以写>

DisplayMetrics metrics = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(metrics);
    int height = metrics.heightPixels;
    int width = metrics.widthPixels;

Bitmap bmap2 = BitmapFactory.decodeResource(getResources(),   R.drawable.superman);
            Bitmap bitmap = Bitmap.createScaledBitmap(bmap2, width, height, true);

            WallpaperManager wallpaperManager = WallpaperManager.getInstance(getApplicationContext());
            // Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.superman);
            try {
                wallpaperManager.setBitmap(bitmap);
            } catch (IOException e) {
                e.printStackTrace();
            }

这很有效......它上传壁纸并将其淀粉以适应屏幕

但我无法在另一个java类中使用它。

我如何在另一个java类上执行此操作,然后在myService类中调用它?

1 个答案:

答案 0 :(得分:1)

也许不要在活动之外使用getWindowManager?因为你不能在活动类之外使用它