Android 按下按钮时相机不拍照

Android 按下按钮时相机不拍照,android,android-intent,camera,Android,Android Intent,Camera,我使用以下代码在按下按钮时使用相机拍照 但是,当我运行代码时,它仅在按下按钮后启动相机应用程序,但不拍照。为什么不起作用? 我想在按下按钮时拍摄一张照片,并将其存储在SD卡上,以便在gallery应用程序中查看。 是的,这是默认行为。有两种方法 1) 启动camera app intent(您正在这样做),然后通过camera app单击picture(与默认摄像头一样,通过单击camera take picture按钮或硬键) 2) 使用camera类和Surfaceview创建自定义相机视图

我使用以下代码在按下按钮时使用相机拍照

但是,当我运行代码时,它仅在按下按钮后启动相机应用程序,但不拍照。为什么不起作用?

我想在按下按钮时拍摄一张照片,并将其存储在SD卡上,以便在gallery应用程序中查看。


是的,这是默认行为。有两种方法

1) 启动camera app intent(您正在这样做),然后通过camera app单击picture(与默认摄像头一样,通过单击camera take picture按钮或硬键)


2) 使用camera类和Surfaceview创建自定义相机视图。它会让你完全控制相机做任何你想做的事情(虽然有限)

R一旦相机打开,你就可以拍摄照片??不,我该怎么做?我想按下按钮时它会得到照片/位图。但是,如果我必须明确地拍摄照片,那么这是我没有完成的一步。你需要通过单击pic多走一步,以便在打开相机应用程序后拍摄pic。我希望相机能够在不需要单击任何东西的情况下拍摄pic。比如设置一个计时器,每5分钟拍一张照片,或者让它在运动检测器告诉它时拍一张照片。所以我必须设置surfaceview。所以在这种情况下,你自己的相机应用程序将一直在前面??。或者你认为你需要从服务或其他方面来做吗。点击图片还有一个问题,你是说从相机或屏幕截图上看到的图片?是的,我打算一直在前面制作应用程序。我想在相机上安装一个运动传感器来检测运动并在有运动时拍照,但这是最后一步。第一步是让它用点击式监听器拍照。在我完成这项工作之后,我会做更高级的部分,让运动传感器让相机拍照。但它的工作原理是一样的。如果我能在点击监听器时制作一个按钮让它拍照,那么我可以用一个运动传感器来做同样的事情。我正在用一部旧的安卓手机制作一个安全摄像头,它将一直坐在那里,只运行这一个应用程序。一个想法是将其连接到带有arduino板的运动传感器,或者另一个想法是让其通过每秒拍摄照片来检测运动,并确定最新图片中是否有变化,这将使其保存该图片,因为该区域中存在运动。两种方法都可以。第一项工作是能够让andorid手机摄像头在不需要别人按下拍照按钮的情况下拍照。是的,那么SurfaceView with camera类是最佳选择。祝你的应用程序一切顺利。如果你需要帮助,请打电话给我。awasthi1@gmail.com"
public class demo extends Activity 
{
Button ButtonClick;
int CAMERA_PIC_REQUEST = 1337; 


@Override
public void onCreate(Bundle savedInstanceState) 
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

ButtonClick =(Button) findViewById(R.id.Camera);
ButtonClick.setOnClickListener(new OnClickListener ()
   {
    @Override
    public void onClick(View view)
    {
        Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
        // request code

        startActivityForResult(cameraIntent, CAMERA_PIC_REQUEST);

    }
  });

 }

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) 
{
   if( requestCode == 1337)
   {
   //  data.getExtras()
      Bitmap thumbnail = (Bitmap) data.getExtras().get("data");          
   }
   else 
   {
    Toast.makeText(demo.this, "Picture NOt taken", Toast.LENGTH_LONG).show();
   }
    super.onActivityResult(requestCode, resultCode, data);
 }
}