如何在android中每天自动设置动态壁纸

时间:2012-04-03 14:11:16

标签: android live-wallpaper wallpaper

我正在开发一款壁纸应用。我们可以使用以下代码与服务自动添加简单壁纸。

        final WallpaperManager wallpaperManager = WallpaperManager.getInstance(this);
        final Drawable wallpaperDrawable = wallpaperManager.getDrawable();
        final ImageView imageView = (ImageView) findViewById(R.id.imageview);
        imageView.setDrawingCacheEnabled(true);
        imageView.setImageDrawable(wallpaperDrawable);

现在我必须使用服务自动设置动态壁纸,这意味着动态壁纸应该每天在屏幕上自动设置。我们应该怎么做???

谢谢

3 个答案:

答案 0 :(得分:2)

您可以使用预先选择的动态壁纸启动壁纸选择器,但目前似乎没有办法在没有用户干预的情况下设置它。

请参阅此内容以获取要执行此操作的意图,以及查看您需要提供的Extra文档以预选动态壁纸。 http://developer.android.com/reference/android/app/WallpaperManager.html#ACTION_CHANGE_LIVE_WALLPAPER

答案 1 :(得分:1)

如果没有任何用户互动,就无法以编程方式设置动态壁纸。即使在root设备上你也无法设置动态壁纸,你也无法超越LiveWallpaperSerivce系统类。

答案 2 :(得分:0)

当然你可以做到。

1)将所有GIF文件放在原始目录

2)在Movie

中创建多个Engine个对象

3)在画布上画电影

   void nyanNyan(Canvas canvas) { 
        canvas.save();
        canvas.scale(mScaleX, mScaleY);

        wallpaper_movies.get(Settings.currentWeather).setTime(mWhen);
        wallpaper_movies.get(Settings.currentWeather).draw(canvas, 0, 0);

        canvas.restore();
    }

您必须在条件

上加载GIF