Tôi muốn khởi chạy camera mặc định, nhưng muốn nó hoạt động như được khởi động từ trình khởi chạy (tức là ảnh kết quả sẽ được ứng dụng máy ảnh lưu vào bộ sưu tập của người dùng, thay vì được trả lại ứng dụng của tôi). Nếu tôi sử dụng Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
, ứng dụng máy ảnh sử dụng "OK? Thử lại?" - Giao diện người dùng và không lưu ảnh. Tôi không muốn sử dụng ý định "trực tiếp" com.android.camera
, bởi vì rất nhiều thiết bị sử dụng các ứng dụng máy ảnh tùy chỉnh. Tôi đã thấy rằng ứng dụng kho gallery3d sử dụng bí danh triển khai com.android.camera/.Camera
, nhưng tôi không chắc chắn rằng mọi ứng dụng máy ảnh nhà sản xuất được tải sẵn đều thực hiện điều này.Khởi chạy ứng dụng máy ảnh mặc định (không quay trở lại)
8
A
Trả lời
10
bây giờ tôi đã thực hiện nó như thế này:
Intent i = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
try {
PackageManager pm = mContext.getPackageManager();
final ResolveInfo mInfo = pm.resolveActivity(i, 0);
Intent intent = new Intent();
intent.setComponent(new ComponentName(mInfo.activityInfo.packageName, mInfo.activityInfo.name));
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);
startActivity(intent);
} catch (Exception e){ Log.i(TAG, "Unable to launch camera: " + e); }
5
Mã này sẽ làm các trick:
Intent intent = new Intent(MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA);
context.startActivity(intent);
+0
Mục đích này dường như vượt trội so với MediaStore.ACTION_IMAGE_CAPTURE, vì trước đó sẽ mở một số ứng dụng máy ảnh nhất định ở chế độ độc quyền cho Ảnh, không cho phép người dùng chuyển sang video. MediaStore.INTENT_ACTION_STILL_IMAGE_CAMERA dường như không bị giới hạn như nhau. –
Các vấn đề liên quan
- 1. kiểm soát không quay trở lại ứng dụng sau khi tải lên ảnh để Instagram
- 2. Bạn muốn khởi chạy Trình ghi âm mặc định từ ứng dụng để ghi âm
- 3. Cách gửi ảnh cho ứng dụng của tôi từ ứng dụng Máy ảnh iOS mặc định?
- 4. TreeNode.Handle không quay trở lại bằng Treeview
- 5. TransactionScope không quay trở lại giao dịch
- 6. khởi động lại ứng dụng mà không cần khởi động lại máy chủ?
- 7. Nút quay trở lại MainActivity
- 8. Nút quay lại Android không khởi động lại hoạt động?
- 9. Nút quay lại Android không quay lại hoạt động trước
- 10. Quay trở lại từ tệp bao gồm
- 11. WPF UIElement.IsHitTestVisible = false; vẫn quay trở lại?
- 12. Khởi động lại ứng dụng Django chạy trên Apache + mod_python
- 13. chức năng c quay trở lại định dạng chuỗi
- 14. Bạn có thể khởi chạy ứng dụng Máy ảnh gốc từ Ứng dụng web Html 5 không?
- 15. OpenCV không khởi tạo máy ảnh USB
- 16. quay trở lại một cam kết cụ thể sau đó quay trở lại hiện tại
- 17. Quay trở lại mặt culling + GL_TRIANGLE_STRIP?
- 18. Quay lại ngôn ngữ mặc định nếu bản dịch thiếu
- 19. Khởi động lại ứng dụng trong Eclipse
- 20. khởi chạy một ứng dụng để ghi lại với mỡ
- 21. PDO: Các giao dịch không quay trở lại?
- 22. sử dụng nút máy ảnh iOS mặc định làm UIButton
- 23. Ứng dụng chạy sau hình ảnh khởi động
- 24. Nhận định hướng khởi chạy của ứng dụng iPad
- 25. Nhận ngoại lệ SIGKILL khi khởi chạy lại ứng dụng
- 26. svn: quay trở lại phiên bản trước
- 27. Quay trở lại trong khối catch?
- 28. Nút quay lại Actionbarsherlock không quay lại
- 29. quay trở lại với con rùa SVN
- 30. Quay trở lại nút trong một trang
Lưu ý, bạn có thể trao đổi trên 'Intent.ACTION_MAIN' và thay thế các hành động với ' MediaStore.ACTION_IMAGE_CAPTURE' để ứng dụng bắt đầu ở chế độ chụp ảnh hoặc 'MediaStore.ACTION_VIDEO_CAPTURE' để ứng dụng bắt đầu ở chế độ quay video. – pents90
nếu bạn đang làm điều này từ một dịch vụ nền, bạn sẽ cần thêm intent.setFlags (Intent.FLAG_ACTIVITY_NEW_TASK); –
Câu trả lời này không hoạt động! Nó mở Danh bạ, Youtube và các ứng dụng không có liên quan khác. – NecipAllef