如何解决android froyo 2.2上的“致命异常:GLThread 11”
| 我在Google上搜索了很多,发现堆栈溢出时有几个线程,但这并没有帮助。我试图通过调用Intent来使用Android的内置摄像头。这在2.1上有效,但在2.2上我得到“致命异常:GLThread 11”异常。 我读了这个话题 相机在Android 2.2中崩溃 和谷歌线程 http://code.google.com/p/android/issues/detail?id=7909 String fileName = Environment.getExternalStorageDirectory().getAbsolutePath() + \"temp-\" + System.currentTimeMillis() + \".jpg\";
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE,fileName);
values.put(MediaStore.Images.Media.DESCRIPTION,\"Image capture by camera\");
imageUri = ctx.getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values);
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
//intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri);
intent.putExtra(MediaStore.EXTRA_OUTPUT,android.provider.MediaStore.Images.Media.EXTERNAL_CONTENT_URI);
//http://marakana.com/forums/android/examples/39.html
ctx.startActivityForResult(intent,REQUEST_CODE);
这是我用来调用相机的代码。我想直截了当。但是,当我拍照并按下\'save \'/ \'accept \'按钮时,该应用在Android 2.2中崩溃。我认为这是标准代码和功能。我如何使用内置相机。我已经尝试了几件事。
解决方法
让我自己回答:)我设法使其正常运行。我仍然发现Android。首先,上面的代码将永远无法工作。尽管如此,使用相机……并对其进行测试仍然是一项艰巨的工作。我无法在2.2的仿真器中工作,对于2.1来说,它可以工作。但是该代码适用于设备上的2.2和2.1。我发现的另一个奇怪的事情是,当您将调试器连接到设备时,将无法使用MediaStore.Images.Media.EXTERNAL_CONTENT_URI。它引发一个错误,即外部存储不存在。它与USB连接有关。无论如何,用于意图照相机的代码:
String fileName = System.currentTimeMillis() + \".jpg\";
ContentValues values = new ContentValues();
values.put(MediaStore.Images.Media.TITLE,fileName);
values.put(MediaStore.Images.Media.DESCRIPTION,\"Image capture by camera\");
values.put(MediaStore.Images.Media.MIME_TYPE,\"image/jpeg\");
try
{
imageUri = getContentResolver().insert(MediaStore.Images.Media.EXTERNAL_CONTENT_URI,values);
}
catch (Exception e)
{
Log.e(TAG,\"\",e);
}
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT,imageUri);
ctx.startActivityForResult(intent,REQUEST_CODE_PHOTO);
很标准,我添加了try catch以避免将调试器连接到设备时应用程序崩溃。如果为MediaStore.EXTRA_OUTPUT传递null,则相机将显示一条消息,指出找不到sdcard。然后崩溃更好。
拍照后,相机将返回到当前活动,并且可以使用将存储在imageUri变量中的图像。
在2.2模拟器中,当我尝试使用相机时,仍然抛出错误“致命异常:GLThread 11”,这很烦人。有没有人有办法让它在模拟器上工作?
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。