【发布时间】:2014-01-14 08:10:19
【问题描述】:
我正在尝试制作使用相机的应用程序。我分到某个班级。
- CameraSurface(扩展 SurfaceView)
- ViewElement(扩展视图)
- MainActivity(扩展 ViewElement)
- SecondActivity(扩展 ViewElement)
我在清单中声明为活动的类只是 MainActivity 和 SecondActivity。首先,当应用程序运行时,它会执行 MainActivity,它会显示 CameraSurface,(ViewElement 中有 CameraSurface 类的实例,它添加到 ViewElement 类的 ContentView 中)。 在 MainActivity 中有一个按钮将移动到 MainActivity 到 SecondActivity。我使用此代码:
new Handler().postDelayed(new Runnable()
{
public void run()
{
MainActivity.this.startActivity(new Intent(MainActivity.this, SecondActivity.class));
}
}
, 5000L);
SecondActivity 与 MainActivity 相同(只是有不同的按钮,但仍然使用相机),问题是当应用程序执行 SecondActivity 时相机会冻结。我仍然不知道为什么会这样。如果相机实例不等于 null,则在 CameraSurface 类中有用于释放相机的部分。有人知道我的申请会发生什么吗?
有关其他信息,我在 logcat 上得到了这个:
01-14 16:38:23.899: D/memalloc(12581): /dev/pmem: 取消映射缓冲区基数:0x506f0000 大小:1843200 偏移量:1228800
01-14 16:38:23.899: D/memalloc(12581): /dev/pmem: 取消映射缓冲区基数:0x509b2000 大小:614400 偏移量:0
01-14 16:38:23.899: D/memalloc(12581): /dev/pmem: 取消映射缓冲区基数:0x50ca4000 大小:1228800 偏移量:614400
01-14 16:38:24.389: D/memalloc(12581): /dev/pmem: 取消映射缓冲区基数:0x50dd0000 大小:4829184 偏移量:4804608
【问题讨论】:
标签: java android android-camera