Hardware acceleration can only be used with a single UI thread

报错提示:
java.lang.IllegalStateException: Hardware acceleration can only be used with a single UI thread.
Original thread: Thread[main,5,main]
Current thread: Thread[Timer-6,5,main]
	at android.view.HardwareRenderer$GlRenderer.checkRenderContext(HardwareRenderer.java:1805)
	at android.view.HardwareRenderer$Gl20Renderer.safelyRun(HardwareRenderer.java:2293)
	at android.view.HardwareRenderer$Gl20Renderer.destroyHardwareResources(HardwareRenderer.java:2359)
	at android.view.ViewRootImpl.destroyHardwareRenderer(ViewRootImpl.java:5901)
	at android.view.ViewRootImpl.die(ViewRootImpl.java:5796)
	at android.view.WindowManagerGlobal.removeViewLocked(WindowManagerGlobal.java:348)
	at android.view.WindowManagerGlobal.removeView(WindowManagerGlobal.java:303)
	at android.view.WindowManagerImpl.removeView(WindowManagerImpl.java:79)
	at com.duyao.poisonnovel.activity.SignInActvity$2.run(SignInActvity.java:460)
	at java.util.Timer$TimerImpl.run(Timer.java:284)
解决方法:
 
 

This problem can be avoided by putting android:hardwareAccelerated="false" in the application tag in your manifest. But it doesn't solve the problem of course.

原因:
查了下网上的帖子,发现是硬件加速引起,错误提示中指出此处使用了HardwareAcceleration 模式(GPU pre rendering 和 frame buffer 缓冲机制造成),此处只能使用单一的UI线程。应该是相应的UI线程做了不允许的操作或者有多个UI线程,具体原因未去深究。
在编译过程中,发现使用eclipse编译出来的没有问题,但是用android studio编译出来的就出现了上述错误,使用的版本都是4.4,看到有人说4.4以上的 APP 是默认打开 硬件加速了,具体原因还会进一步分析。

This problem can be avoided by putting android:hardwareAccelerated="false" in the application tag in your manifest. But it doesn't solve the problem of course.

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值