重启动态壁纸的方法

时间:2013-12-27 15:14:42

标签: android opengl-es-2.0 live-wallpaper

有没有办法告诉Android我想要创建新的壁纸引擎或重新启动壁纸服务?

更确切地说,我想将LWP与Unity3d集成。有一些可用的解决方案,但它们仅适用于4.3之前的Android版本。如果我创建表面并将Unity3d播放器作为Renderer附加,它可以正常工作,直到我进入预览然后返回主屏幕。然后在20-30帧之后LWP崩溃并出现分段故障。虽然如果我不回到主屏幕,我可以多次预览。

所以,我的想法是......如果我可以创建尽可能多的新引擎并且它们工作正常,那么如果我在返回主屏幕时创建新引擎,我可以解决此崩溃问题。

1 个答案:

答案 0 :(得分:4)

如果您的LWP因分段错误而崩溃,您可以使用onDestroy()或onStop()方法等待崩溃。一旦发生,您可以重新启动LWP。

但是,您应该使用LogCat或Acra调查崩溃的原因。这可能是一个记忆问题。