- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
我们的应用程序显示相机预览,它似乎在所有手机上都能正常工作,但摩托罗拉 Droid 除外,在我们设置相机参数时出现运行时异常:
java.lang.RuntimeException: setParameters failed
at android.hardware.Camera.native_setParameters(Native Method)
at android.hardware.Camera.setParameters(Camera.java:611)
at com.highwaynorth.andrometer.CameraPreviewSurfaceView.surfaceChanged(CameraPreviewSurfaceView.java:57)
at android.view.SurfaceView.updateWindow(SurfaceView.java:460)
at android.view.SurfaceView.dispatchDraw(SurfaceView.java:287)
at android.view.ViewGroup.drawChild(ViewGroup.java:1525)
这是 surfaceChanged() 的代码,主要取自 APIDemos
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
// Now that the size is known, set up the camera parameters and begin
// the preview.
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPreviewSize(w, h);
parameters.setPictureFormat(PixelFormat.JPEG);
parameters.setPreviewFormat(PixelFormat.YCbCr_422_SP);
parameters.setPreviewFrameRate(1);
mCamera.setParameters(parameters);
mCamera.startPreview();
有谁知道我们设置参数的方式有什么问题会导致 Motorola Droid 出现异常?
最佳答案
我可以告诉您,您的问题出在以下两行之一:
parameters.setPreviewFormat(PixelFormat.YCbCr_422_SP);
parameters.setPreviewFrameRate(1);
我知道这一点,因为该代码的其余部分正是我在书中的一些相机示例中所做的,并且它们已经在 DROID 上进行了测试。
您可能希望在 Camera.Parameters 对象上使用 getSupportedPreviewFormats()
和 getSupportedPreviewFrameRates()
来查看相关设备是否支持您设置的格式和帧速率寻找。请注意,这些方法是 Android 2.0 的新方法,因此它们可以在 DROID/Milestone(可能还有 Nexus One)上使用,但在撰写本文时还不能使用。如果您的目标是较旧的 Android API 版本,则需要使用反射或一些类加载技巧来使这些方法在 Android 2.0 上运行并在较旧版本上被跳过。
关于android - 摩托罗拉 Droid 上的相机预览,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2036186/
对于旧处理器,这可能是一个奇怪的问题,但我已经用 Java 编写了一个 Heathkit ET-3400A 微型计算机训练器的仿真。我添加了触发中断的能力,摩托罗拉 6800 数据表表明 I 标志(中
RTICTL 寄存器中的 RSWAI 位有什么作用? 最佳答案 我假设你已经阅读了文档,但如果你还没有...... RSWAI — RTI and COP Stop While in Wait Wri
我正在使用 Motorola LS1203 条码扫描仪并尝试将其连接到 Java 程序。 我可以通过模拟键盘的 USB 电缆让它工作,并且可以很好地打印到记事本,并且我可以捕获该信息,但 Java 程
我正在编写一个扫描条形码并将其显示到文本框的应用程序。我使用的是在 Windows Embedded compact 7.0 上运行的 Motorola MC3190 设备。为了实现条码扫描,我使用了
我在 Motorola MC 65(操作系统:Windows Mobile)中遇到磁条阅读器问题。如果我尝试打开 Reader,则会收到异常 MSR_Open MSR_Err_OpenFailure。
我们的应用程序显示相机预览,它似乎在所有手机上都能正常工作,但摩托罗拉 Droid 除外,在我们设置相机参数时出现运行时异常: java.lang.RuntimeException: setP
我正在尝试让我的摩托罗拉 MC3190 读取条形码。但不幸的是按下硬件扫描按钮后没有任何 react 。我将 EMDK 用于 .net 2.0 版。 这是我的代码: private void Form
我有一个应用程序可以打开 native 相机应用程序并获取拍摄的照片。我已经看到,当我的应用程序打开 native 相机应用程序时,它会杀死所有后台运行的应用程序(包括我的应用程序)。 此问题也在其他
我有一个摩托罗拉 LI4278 蓝牙扫描器,我已通过蓝牙连接到平板电脑。扫描仪设置为串行从站。我可以正常连接并读取数据。 但是,如果扫描的序列号无效,我想向用户提供某种反馈。根据 LI4278 文档:
我开发了一个小游戏,我的一个 friend /同事在他的摩托罗拉 Xoom 平板电脑上试了一下,结果发现渲染全乱了!我把所有东西都剥离下来,试图简化一切,看看哪里出了问题,我认为摩托罗拉 Xoom 在
我们的应用程序使用图库选择操作从设备中抓取图像以上传到新的博客文章。我们在 Moto Droid 上看到,纵向拍摄的图像以横向发送回应用程序,因此图像是横向的。据我所知,这只发生在 Droid 上。
我正在尝试使用 eclipse 中的 android SDK 为摩托罗拉 MC40 设备运行一个应用程序进行调试,但是当我在连接设备的情况下运行该应用程序时,该设备不会显示在 android 设备选择
我不是专家,只是一个爱好者。我以前玩过68000架构,一直在想它的TRAP指令。这条指令总是被描述为操作系统的“桥梁”(在某些系统中,但在这方面没有使用它,但这是另一回事)。这是如何实现的? TRAP
我有安装了 DataWedge 3.2.4 的摩托罗拉 MC55。我遇到的问题是条形码扫描速度非常慢,尤其是那些以“U”字母为前缀的条形码。我打开记事本并扫描条形码,文本显示非常缓慢(甚至在条形码键触
我在带有 EMDK 的安卓系统上使用摩托罗拉 MC40。当我扫描带有大写“О”(U041E) 等西里尔字母符号的 Data Matrix 代码时,函数 ScanData.getData() 返回带有字
我在使用摩托罗拉 Defy Plus 设备时遇到了一个奇怪的问题。 我得到了一个简单的布局,其中包含一个 ImageView 作为其中所有选项卡的背景图像的 TabHost。 由于某些奇怪的原因,特别
我无法让摩托罗拉 TC55 出现在 adb 中(使用 Mac OSX),他们的支持热线也没什么帮助。 我试过将供应商添加到 .ini 文件,我试过打开/关闭 USB 调试和开发选项。 我试过终止并重新
我想将 Motorola EMDK 中的 DataListener 实现到我的类中。如果我实现 DataListener,我的应用程序就会崩溃。 我的 Android list 如下所示:
我有一个使用 m3u8 流式传输实时视频的网站。它适用于 iOS 设备和 safari mac,但我还需要它才能在 motorola honeycomb xoom tablet version 3.1
我有几个关于前置摄像头设备支持的预览尺寸的问题。不确定我是否应该在这里问,但不确定我还能在哪里找到这个答案。与我正在创建的应用有关。 我的问题是,什么决定了支持的预览尺寸?是屏幕尺寸还是相机?大多数具
我是一名优秀的程序员,十分优秀!