0
카메라 앱을 5 월에 캡처하려고합니다 ... 사진은 저장되었지만 활동 결과에 Null 포인트 예외가 발생합니다. 누락 된 항목은 무엇입니까?Android photo cature 오류
private Uri getImgUri() {
File filePath= new File(Environment.getExternalStoragePublicDirectory (Environment.DIRECTORY_PICTURES),APP_ALIAS);
if(!filePath.exists()){
if(!filePath.mkdirs())
return null;
}
String timeStamp= new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date());
String path=filePath.getPath()+File.separator+"_IMG"+timeStamp+".jpg";
File file=new File(path);
return Uri.fromFile(file);
}
private void startGetPicFromCam() {
Intent intent= new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
Uri uri= getImgUri();
intent.putExtra(MediaStore.EXTRA_OUTPUT,uri);
startActivityForResult(intent,MEDIA_CAPTURE_RESULT_CODE);
}
@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
// super.onActivityResult(requestCode, resultCode, data);
if(requestCode==MEDIA_CAPTURE_RESULT_CODE){
if(resultCode==RESULT_OK){
try{
if(data.getData()!=null)
Toast.makeText(this,"saved to "+data.getData(),Toast.LENGTH_LONG).show();
else
Toast.makeText(this,"saved to path",Toast.LENGTH_LONG).show();
}
catch(Exception e){
Toast.makeText(this,e.getMessage(),Toast.LENGTH_LONG).show();
}
}
}
}
코드를 사용하고 있습니다. startActivityForResult (intent, MEDIA_CAPTURE_RESULT_CODE); –
디버거에서 실행하고 있습니까? 그렇다면, 안드로이드 OS의 이전 버전의 경우 이것은 null ptr을 유발할 수있는 SD 카드에 대한 액세스를 차단합니다. – droideckar
@VictorOdiah 내 대답을 편집했습니다. 죄송합니다. 질문을 처음 읽으면서 완전히 실패했으며 MediaCapture 필터를 사용하고 있다는 사실을 놓쳤습니다. – Jonathan