gpt4 book ai didi

java - "java.lang.IllegalArgumentException: No configs match configSpec "打开 Camera Intent 时

转载 作者:太空狗 更新时间:2023-10-29 22:59:02 26 4
gpt4 key购买 nike

这是我的简单 Camera Intent Demo,其中我只有一个 Activity .....

package x.y;

import android.app.Activity;
import android.content.Intent;
import android.graphics.Bitmap;
import android.os.Bundle;
import android.widget.ImageView;
public class PhotoShoot extends Activity {
final static int CAMERA_RESULT = 0;
ImageView imv;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(i, CAMERA_RESULT);
}
protected void onActivityResult(int requestCode, int resultCode, Intent intent) {
super.onActivityResult(requestCode, resultCode, intent);
if (resultCode == RESULT_OK)
{
Bundle extras = intent.getExtras();
Bitmap bmp = (Bitmap) extras.get("data");
imv = (ImageView) findViewById(R.id.ReturnedImageView);
imv.setImageBitmap(bmp);
}
}
}

和布局main.xml

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical" android:layout_width="fill_parent"
android:layout_height="fill_parent">
<ImageView
android:id="@+id/ReturnedImageView"
android:layout_width="wrap_content"
android:layout_height="wrap_content">
</ImageView>
</LinearLayout>

list ...

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="x.y"
android:versionCode="1"
android:versionName="1.0">
<application android:icon="@drawable/icon" android:label="@string/app_name">
<activity android:name=".PhotoShoot"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
</application>
</manifest>

在 Android 模拟器 2.2 中几秒钟后从相机 Intent 开始抛出“强制关闭”并出现以下异常......

07-06 15:26:00.999: ERROR/AndroidRuntime(544): FATAL EXCEPTION: GLThread 11
07-06 15:26:00.999: ERROR/AndroidRuntime(544): java.lang.IllegalArgumentException: No configs match configSpec
07-06 15:26:00.999: ERROR/AndroidRuntime(544): at android.opengl.GLSurfaceView$BaseConfigChooser.chooseConfig(GLSurfaceView.java:760)
07-06 15:26:00.999: ERROR/AndroidRuntime(544): at android.opengl.GLSurfaceView$EglHelper.start(GLSurfaceView.java:916)
07-06 15:26:00.999: ERROR/AndroidRuntime(544): at android.opengl.GLSurfaceView$GLThread.guardedRun(GLSurfaceView.java:1246)
07-06 15:26:00.999: ERROR/AndroidRuntime(544): at android.opengl.GLSurfaceView$GLThread.run(GLSurfaceView.java:1116)

有什么想法吗?

最佳答案

这实际上是一个更大问题的一部分,我希望通过在这里发布,遇到此错误的其他人会阅读此条目。我同样希望,如果我的任何结论不正确,有人会提出更明确的解释和/或解决方案。

核心问题是 OpenGL 支持。 Android 从 2.2 开始支持 OpenGL ES 2.0,从 4.0.3 开始,Android 模拟器支持 OpenGL ES 2.0。使用 OpenGL ES 2.0 的代码将无法在 4.0.3 之前的模拟器上运行。 [显然,相机在 Android 2.2 时从 ES 1.0 切换到 2.0]

但这还不是全部!我遇到的所有 Android 文档都没有提到,为了支持 Open GL ES 2.0 仿真,您的盒子的显卡芯片组和驱动程序也必须支持 OpenGL 2.0。因此,如果您在 AVD 上启用 GPU 仿真,但仍然遇到此错误,请执行以下操作:

1) 找出显卡的规范并访问芯片组制造商的网站以确定芯片组是否与 OpenGL 2.0 兼容。如果不是,那你就是 S.O.L.并且必须坚持通过实际的 Android 设备而不是模拟器进行调试。

2) 确定您是否拥有芯片组的最新图形驱动程序。通过 Microsoft 获得的驱动程序(如果您使用的是 Windows)通常不支持 OpenGL,因此您需要从制造商处下载最新的驱动程序。

希望对您有所帮助。

关于java - "java.lang.IllegalArgumentException: No configs match configSpec "打开 Camera Intent 时,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6594636/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com