由于自定义字体,Android动态壁纸崩溃

3

我正在尝试在Android中创建动态壁纸。它以以下方式绘制文本,并将自定义字符串放置在资产目录中:

String path = "fonts/calligraffiti.ttf";
AssetManager a1 = getApplicationContext().getAssets();
Typeface typef = Typeface.createFromAsset(a1, path);
mp1.setTypeface(typef);

mp1是一个绘图程序。以下是绘制它的方式,每秒都会更新:

c.drawText(Integer.toString(t.get(Calendar.HOUR)), wt/2-5*wt/100, ht/2+sec*60+ht/15, mp1);

每隔几秒钟,我在Logcat中看到以下内容:清除字体缓存中的41K [6个条目],类似的信息。然后在经过几次这样的清除之后,动态壁纸服务将停止并重新启动:

01-02 13:31:59.344: I/ActivityManager(1319): Process ca.jvsh.livewallpaper (pid 3444) has died.
01-02 13:31:59.375: W/WallpaperService(1319): Wallpaper service gone: ComponentInfo{ca.jvsh.livewallpaper/ca.jvsh.livewallpaper.LiveWallpaper}
01-02 13:31:59.383: I/WindowManager(1319): WIN DEATH: Window{457c0628 ca.jvsh.livewallpaper.LiveWallpaper paused=false}
01-02 13:31:59.391: W/ActivityManager(1319): Scheduling restart of crashed service ca.jvsh.livewallpaper/.LiveWallpaper in 5000ms
01-02 13:31:59.508: I/ActivityManager(1319): Low Memory: No more background processes.

这肯定是使用自定义字体所导致的。无论我使用哪种自定义字体,都会发生同样的情况,而没有自定义字体时一切正常。

如何才能继续使用我的自定义字体而不崩溃壁纸服务呢?

非常感谢您的回复!

1个回答

0

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接