ক্যামেরার উদ্দেশ্য
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
ডিভাইসের ডিফল্ট ক্যামেরা অ্যাপ্লিকেশন ব্যবহার করে একটি ফটো বা ভিডিও ক্যাপচার করার মতো মৌলিক ক্যামেরা ক্রিয়া সম্পাদন করতে, আপনাকে ক্যামেরা লাইব্রেরির সাথে একীভূত করার প্রয়োজন নেই৷ পরিবর্তে, একটি Intent
ব্যবহার করুন।
একটি ক্যামেরা অ্যাপ দিয়ে একটি ছবি তুলুন
অ্যান্ড্রয়েড একটি Intent
আহ্বান করে অন্যান্য অ্যাপ্লিকেশনগুলিতে ক্রিয়া অর্পণ করে৷ এই প্রক্রিয়াটি তিনটি অংশ জড়িত: Intent
নিজেই, বাহ্যিক Activity
শুরু করার জন্য একটি কল এবং যখন ফোকাস আপনার কার্যকলাপে ফিরে আসে তখন ইমেজ ডেটা পরিচালনা করার জন্য কিছু কোড৷
এখানে একটি ফাংশন যা একটি ফটো ক্যাপচার করার জন্য একটি Intent
আহ্বান করে৷
কোটলিন
val REQUEST_IMAGE_CAPTURE = 1
private fun dispatchTakePictureIntent() {
val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)
try {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE)
} catch (e: ActivityNotFoundException) {
// display error state to the user
}
}
জাভা
static final int REQUEST_IMAGE_CAPTURE = 1;
private void dispatchTakePictureIntent() {
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
try {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
} catch (ActivityNotFoundException e) {
// display error state to the user
}
}
একটি ক্যামেরা অ্যাপ দিয়ে একটি ভিডিও রেকর্ড করুন
আপনি একটি ভিডিও ক্যাপচার করার জন্য একটি Intent
আহ্বান করতে পারেন৷
কোটলিন
val REQUEST_VIDEO_CAPTURE = 1
private fun dispatchTakeVideoIntent() {
Intent(MediaStore.ACTION_VIDEO_CAPTURE).also { takeVideoIntent ->
takeVideoIntent.resolveActivity(packageManager)?.also {
startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE)
} ?: run {
//display error state to the user
}
}
}
জাভা
static final int REQUEST_VIDEO_CAPTURE = 1;
private void dispatchTakeVideoIntent() {
Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
if (takeVideoIntent.resolveActivity(getPackageManager()) != null) {
startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE);
}
else {
//display error state to the user
}
}
startActivityForResult()
পদ্ধতিটি এমন একটি শর্ত দ্বারা সুরক্ষিত যা resolveActivity()
কল করে, যা প্রথম কার্যকলাপের উপাদানটি ফেরত দেয় যা Intent
পরিচালনা করতে পারে। আপনি এমন একটি Intent
আহ্বান করছেন যা আপনার অ্যাপটি ক্র্যাশ করবে না তা নিশ্চিত করতে এই চেকটি সম্পাদন করুন৷
অতিরিক্ত সম্পদ
প্রাথমিক ক্যামেরা ক্রিয়াগুলির জন্য, একটি Intent
ব্যবহার করুন৷ অন্যথায়, মৌলিক ছবি বা ভিডিও ক্যাপচারের চেয়ে জটিল কিছুর জন্য Camera2 এবং CameraX লাইব্রেরি ব্যবহার করার পরামর্শ দেওয়া হয়।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-08-27 UTC-তে শেষবার আপডেট করা হয়েছে।
[null,null,["2025-08-27 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["# Camera intents\n\nTo perform basic camera actions like capturing a photo or video using the device's default camera application, you do not need to integrate with a [Camera library](/training/camera/choose-camera-library). Instead, use an [`Intent`](https://developer.android.com/reference/android/content/Intent).\n\nTake a photo with a camera app\n------------------------------\n\nAndroid delegates actions to other applications by invoking an `Intent`. This process involves three pieces: the `Intent` itself, a call to start the external `Activity`, and some code to handle the image data when focus returns to your activity.\n\nHere's a function that invokes an `Intent` to capture a photo. \n\n### Kotlin\n\n```kotlin\nval REQUEST_IMAGE_CAPTURE = 1\n \nprivate fun dispatchTakePictureIntent() {\n val takePictureIntent = Intent(MediaStore.ACTION_IMAGE_CAPTURE)\n try {\n startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE)\n } catch (e: ActivityNotFoundException) {\n // display error state to the user\n }\n}\n```\n\n### Java\n\n```java\nstatic final int REQUEST_IMAGE_CAPTURE = 1;\n \nprivate void dispatchTakePictureIntent() {\n Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);\n try {\n startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);\n } catch (ActivityNotFoundException e) {\n // display error state to the user\n }\n}\n```\n\nRecord a video with a camera app\n--------------------------------\n\nYou can also invoke an `Intent` to capture a video. \n\n### Kotlin\n\n```kotlin\nval REQUEST_VIDEO_CAPTURE = 1\n \nprivate fun dispatchTakeVideoIntent() {\n Intent(MediaStore.ACTION_VIDEO_CAPTURE).also { takeVideoIntent -\u003e\n takeVideoIntent.resolveActivity(packageManager)?.also {\n startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE)\n } ?: run {\n //display error state to the user\n }\n }\n}\n```\n\n### Java\n\n```java\nstatic final int REQUEST_VIDEO_CAPTURE = 1;\n \nprivate void dispatchTakeVideoIntent() {\n Intent takeVideoIntent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);\n if (takeVideoIntent.resolveActivity(getPackageManager()) != null) {\n startActivityForResult(takeVideoIntent, REQUEST_VIDEO_CAPTURE);\n }\n else {\n //display error state to the user\n }\n}\n```\n\nThe `startActivityForResult()` method is protected by a condition that calls `resolveActivity()`, which returns the first activity component that can handle the `Intent`. Perform this check to ensure that you are invoking an `Intent` that won't crash your app.\n\nAdditional Resources\n--------------------\n\nFor basic camera actions, use an `Intent`. Otherwise, it is recommended to use the Camera2 and CameraX libraries for anything more complex than basic image or video capture.\n\n- [CameraX camera package](https://developer.android.com/training/camerax)\n- [Camera2 camera package](https://developer.android.com/training/camera2)\n- [Camera sample projects](https://github.com/android/camera-samples)"]]