我正在尝试在android中实现相机事件。我是新手。究竟如何听取像didCancel和didFinishPickingMedia这样的事件?请指教。我非常绝望,因为快速搜索无法引导我到任何地方。
答案 0 :(得分:1)
我真的认为你在寻找这个:
MediaStore ACTION_IMAGE_CAPTURE
如果你用这个创建一个意图:
Uri uri = ... // where I want a full sized photo to be.
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, uri)
startActivityForResult(intent, MY_CALLBACK_ID);
然后在同一活动的某个地方:
public void onActivityResult(int requestId, int resultCode, Intent data) {
if (requestId == MY_CALLBACK_ID) {
if (resultCode == Activity.RESULT_CANCELLED) {
onCancelled();
} else if (resultCode == Activity.RESULT_OK) {
onFinishedPickingMedia();
}
}
或者如果你真的只想让Gallery出现,你可能会得到类似的代码,除了不使用MediaStore.ACTION_IMAGE_CAPTURE,试试这个(我还没有验证):
Intent intent = new Intent(Intent.ACTION_PICK);
intent.setData(MediaStore.Images.Media.INTERNAL_CONTENT_URI);
startActivityForResult(intent, MY_CALLBACK_ID);
我不认为您要求的特定回调存在于Android中。你在哪里听过它们?
答案 1 :(得分:0)
Android提供了一些回调以侦听Camera事件。在Camera类中声明了回调。通过使用这些回调,您可以处理相机事件。点击此链接..
http://developer.android.com/reference/android/hardware/Camera.html
答案 2 :(得分:0)
试试这个,
<uses-permission android:name="android.permission.CAMERA" />
<receiver
android:name="com.android.application.CameraEventReciver"
android:enabled="true" >
<intent-filter>
<action android:name="com.android.camera.NEW_PICTURE" />
<data android:mimeType="image/*" />
</intent-filter>
</receiver>