2013-05-08 39 views
8

Thêm đường dẫn tệp bổ sung vào mục đích chụp ảnh khiến ứng dụng máy ảnh gặp sự cố trên máy tính bảng TF300t Android với phiên bản hệ thống cổ phiếu 4.2.1. Nhấn nút "xong" không làm gì cả - thậm chí không đóng hoạt động ứng dụng máy ảnh. Không có kết quả nào được trả về.Chụp ảnh "đơn giản" không hoạt động

Mã Tôi đang sử dụng được chiết xuất từ ​​Adroid developers site

Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE); 
File imageFile = createImageFile(); 
cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(imageFile)); 
startActivityForResult(cameraIntent, THIS_CAMERA_REQUEST); 

Với createImageFile() định nghĩa là:

private File createImageFile() throws IOException { 
    File outputDir = getBaseContext().getCacheDir(); 

    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); 
    String imageFileName = "photo_" + timeStamp + "_"; 
    File image = new File(outputDir, imageFileName); 

    return image; 
} 

Khi dòng

cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(imageFile)); 

được lấy ra, camera ứng dụng hoạt động như mong đợi.

Có cách giải quyết hợp lý nào không? Tôi không muốn tự xây dựng một ứng dụng máy ảnh chỉ để chụp ảnh.

Trả lời

4

Problematic dòng:

File outputDir = getBaseContext().getCacheDir(); 

tôi đã thay thế nó bằng:

private File createImageFile() throws IOException { 
    String timeStamp = new SimpleDateFormat("yyyyMMdd_HHmmss").format(new Date()); 
    String imageFileName = "1mind_" + timeStamp + ".jpg"; 
    File photo = new File(Environment.getExternalStorageDirectory(), imageFileName); 
    return photo; 
} 

Hóa ra, hình ảnh phải được lưu trữ trong bộ nhớ ngoài không dir cache.

+2

Rắc rối vào cùng một vấn đề. Rất lừa đảo lỗi không có thông báo lỗi. Tôi đã cố gắng lưu ảnh trực tiếp vào bộ nhớ riêng của ứng dụng của tôi và đó là không. Cảm ơn bài đăng của bạn. –

Các vấn đề liên quan