我正在寻求帮助。我把服务粘合在一起:
Intent i = new Intent(MainActivity.this, X.class);
MainActivity.this.bindService(i, mConnection, Context.BIND_AUTO_CREATE);
此服务旨在将Camera.PreviewCallback(YCbCr_420_SP(NV21))中的数据解码为RGB。对于unweight CPU,我限制了帧速率和相机分辨率。 (没有实时预览)。
我遇到的问题是重载UI线程,导致在MainActivity(动画,电影)上显示内容变慢。所有昂贵的操作都在服务中执行(解码,读取条形码)。
我该如何解决这个问题?我想,我必须创建一些线程,但如何将他与Camera.PrviewCallback连接?
谢谢,请指教。
答案 0 :(得分:1)
我最近解释了如何修改Activity以使onPreviewCallback()脱离UI线程:Best use of HandlerThread over other similar classes。相同的方法可以应用于服务。