Join FlipAndroid.COM Telegram Group: https://t.me/joinchat/F_aqThGkhwcLzmI49vKAiw


GetOutputMediaFile (int) no está definido para el tipo nuevo Error de Camera.PictureCallback () {} me confunde

No puedo entender por qué esto está ocurriendo. Es probablemente un error tonto que no puedo identificar. Una vez más el error es:

getOutputMediaFile(int) is undefined for the type new Camera.PictureCallback(){}

mi código:

 public static final int MEDIA_TYPE_IMAGE = 1; private PictureCallback mPicture = new PictureCallback() { public void onPictureTaken(byte[] data, Camera camera) { File pictureFile = getOutputMediaFile(MEDIA_TYPE_IMAGE); try { FileOutputStream fos = new FileOutputStream(pictureFile); fos.write(data); fos.close(); } catch (FileNotFoundException e) { //Log.d(TAG, "File not found: " + e.getMessage()); } catch (IOException e) { // Log.d(TAG, "Error accessing file: " + e.getMessage()); } } }; 

  • Cómo recuperar el valor de un atributo que contiene dos puntos en el nombre del atributo utilizando xpath
  • Creación de una biblioteca java con Eclipse
  • Android: remove () Fragmento -> add () nuevo Fragmento de la misma clase otra vez -> onCreateView y onActivityCreated no llamado?
  • ¿Cómo deslizar la imagen con el toque de dedo en Android?
  • ¿Cómo puedo crear un círculo con un número?
  • Error de Android RecyclerView
  • ¿Por qué aumenta la memoria heap al volver a iniciar una actividad?
  • Cómo imprimir el mensaje devuelto de HttpResponse?
  • 2 Solutions collect form web for “GetOutputMediaFile (int) no está definido para el tipo nuevo Error de Camera.PictureCallback () {} me confunde”

    Si llegaste aquí debido al ejemplo de la cámara, desplázate hacia abajo en la documentación, el método está escrito en el último, ya que es común tanto al vídeo como a la captura de imágenes http://developer.android.com/guide/topics/media/camera. Html # saving-media

    Ver el código de Android de la cámara

     public class MainActivity extends Activity { public static final int MEDIA_TYPE_IMAGE = 1; private static final int CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE = 100; Uri fileUri ; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Button bt=(Button)findViewById(R.id.button1); bt.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { final Intent intent=new Intent(MediaStore.ACTION_IMAGE_CAPTURE); fileUri= getOutputMediaFileUri(MEDIA_TYPE_IMAGE); intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE); } }); } private static Uri getOutputMediaFileUri(int type){ return Uri.fromFile(getOutputMediaFile(type)); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.main, menu); return true; } private static File getOutputMediaFile(int type){ File mediaStorageDir = new File(Environment.getExternalStorageDirectory(), "MyCameraApp"); if (! mediaStorageDir.exists()){ if (! mediaStorageDir.mkdirs()){ Log.d("MyCameraApp", "failed to create directory"); return null; } } // Create a media file name String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); File mediaFile; if (type == MEDIA_TYPE_IMAGE){ mediaFile = new File(mediaStorageDir.getPath() + File.separator + "IMG_"+ timeStamp + ".jpg"); } else { return null; } return mediaFile; } @Override protected void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE) { TextView tv=(TextView)findViewById(R.id.textView2); if (resultCode == RESULT_OK) { tv.setText("Image saved to:\n"+data.getData()); ImageView img=(ImageView)findViewById(R.id.imageView1); img.setImageURI(fileUri); //tv.setText(fileUri.toString()); } else if (resultCode == RESULT_CANCELED) { tv.setText("Cancelled"); } else { // Image capture failed, advise user tv.setText("Can con be captured"); } } } } 

    Editar

    Intente importing android.provider.MediaStore.Files.FileColumns y cambie MEDIA_TYPE_IMAGE to FileColumns.MEDIA_TYPE_IMAGE .

    Si está llamando a la cámara

     Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE); // create a file to save the image intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri); // set the image file name // start the image capture Intent startActivityForResult(intent, CAPTURE_IMAGE_ACTIVITY_REQUEST_CODE); 
    FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.