gpt4 book ai didi

java - 每个特定时间间隔更改设备背景

转载 作者:搜寻专家 更新时间:2023-11-01 08:47:19 24 4
gpt4 key购买 nike

我想在每个特定时间间隔(例如 30 秒)更改设备的背景。几天来我一直在寻找类似的项目或教程,但没有找到任何有用的东西。我想我要编写的应用程序将是一项服务,因为我希望它在后台运行。我在可绘制文件夹中包含背景图像。那么有人可以帮忙吗??提前致谢

最佳答案

有一个很棒的应用程序可以执行此操作,而且它是开源的。它叫做Muzei - link由罗曼·努里克创建。每天一次,此应用程序从 Internet 获取壁纸并更改您的背景。您完全可以获取此代码并修改背景更改的频率,并剥离所有网络调用并重定向到您的内部图像

您还可以为 Muzei 编写一个插件。您将只有一小部分代码可以使其工作。这会容易很多。但是,另一方面,您将无法控制每次更换壁纸之间的时间间隔。

对于您的代码,它将是:
AlarmManager run every hour

// We want the alarm to go off 30 seconds from now.
long firstTime = SystemClock.elapsedRealtime();
firstTime += remainingMilisecondsToTopHour;
long a=c.getTimeInMillis();

// Schedule the alarm!
AlarmManager am = (AlarmManager)ctx.getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.ELAPSED_REALTIME,
c.getTimeInMillis(), 1*60*60*1000, sender);

Changing Wallpaper .不要忘记在 list 中添加更改背景的权限

// to set a background we need to use bitmap  
InputStream is = getResources().openRawResource(R.Drawable.myImage);

// we set the phone background to that image.
Bitmap bm = BitmapFactory.decodeStream(is);

try {
getApplicationContext().setWallpaper(bm);
// add permission of background from manifest file
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}

一直在后台使用服务会消耗更多设备电量。

Run one task every hour如果您仍想使用某项服务 ;)

最后,您应该注册广播事件 Screen On/Off 以避免在设备空闲时更换墙纸并白白耗尽电池

关于java - 每个特定时间间隔更改设备背景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26888406/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com