Android 某些设备中摄像机的活动结果数据为空

Android 某些设备中摄像机的活动结果数据为空,android,android-camera,Android,Android Camera,以上帝的名义 嗨 我用这个cod拍照: private void takePicture() { Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); try { Uri mImageCaptureUri = null; String state = Environment.getExternalStorageS

以上帝的名义

我用这个cod拍照:

 private void takePicture() {

            Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);

            try {
                Uri mImageCaptureUri = null;
                String state = Environment.getExternalStorageState();
                if (Environment.MEDIA_MOUNTED.equals(state)) {
                    mImageCaptureUri = Uri.fromFile(mFileTemp);
                }
                else {
                    /*
                     * The solution is taken from here: http://stackoverflow.com/questions/10042695/how-to-get-camera-result-as-a-uri-in-data-folder
                     */
                    mImageCaptureUri = InternalStorageContentProvider.CONTENT_URI;
                }   
                intent.putExtra(android.provider.MediaStore.EXTRA_OUTPUT, mImageCaptureUri);
                intent.putExtra("return-data", true);
                startActivityForResult(intent, REQUEST_CODE_TAKE_PICTURE);
            } catch (ActivityNotFoundException e) {

                Log.d(DBAdapter.TAG, "cannot take picture", e);
            }
        }
这在某些设备上是好的,但在另一些设备上是不起作用的,数据在活动中。结果我是空的,我真的不知道该做什么。我在github和stackoverflow中搜索了很长时间,但仍然没有找到任何答案:(

请尝试一下

 private static final int cameraRequest = 10000; 

 ..........On Button Click................

 Intent cameraClickIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
            startActivityForResult(cameraClickIntent, cameraRequest); 
..........................................


//////////On activity result////////////////////

 protected void onActivityResult(int requestCode, int resultCode, Intent data) {  
    if (requestCode == cameraRequest && resultCode == RESULT_OK) {  
        Bitmap photo = (Bitmap) data.getExtras().get("data"); 
        imageView.setImageBitmap(photo);
    }  
}
不要忘记将这些行添加到manisfest文件中

<uses-feature android:name="android.hardware.camera"></uses-feature> 
<uses-feature android:name="android.hardware.camera" android:required="false"></uses-feature>


希望这将帮助您……

此源代码工作成功

你能显示日志吗?不能,因为emulator中没有问题,并且eclipse中的it设备是未知的:(,但我知道问题在于内存不足,“这不工作”太笼统,无法解决;
onActivityResult()中的空数据)
在某些设备上是正常的;无论如何,数据只会为您提供捕获图像的缩略图位图,该位图可以在列表或网格视图中使用,但无论如何无法填充屏幕。谢谢:)我找到了一个有效的示例