NDK দিয়ে শুরু করুন
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
নেটিভ ডেভেলপমেন্ট কিট (NDK) হল এমন একটি টুলের সেট যা আপনাকে Android এর সাথে C এবং C++ কোড ব্যবহার করতে দেয় এবং প্ল্যাটফর্ম লাইব্রেরিগুলি প্রদান করে যা আপনি নেটিভ অ্যাক্টিভিটিগুলি পরিচালনা করতে এবং সেন্সর এবং টাচ ইনপুটের মতো শারীরিক ডিভাইসের উপাদানগুলি অ্যাক্সেস করতে ব্যবহার করতে পারেন৷ NDK বেশিরভাগ নবীন অ্যান্ড্রয়েড প্রোগ্রামারদের জন্য উপযুক্ত নাও হতে পারে যাদের তাদের অ্যাপ্লিকেশনগুলি বিকাশ করতে শুধুমাত্র জাভা কোড এবং ফ্রেমওয়ার্ক API ব্যবহার করতে হবে। যাইহোক, NDK সেই ক্ষেত্রে উপযোগী হতে পারে যেখানে আপনাকে নিম্নলিখিতগুলির এক বা একাধিক কাজ করতে হবে:
- কম লেটেন্সি অর্জন করতে বা গেমস বা ফিজিক্স সিমুলেশনের মতো কম্পিউটেশনাল ইনটেনসিভ অ্যাপ্লিকেশান চালানোর জন্য একটি ডিভাইস থেকে অতিরিক্ত পারফরম্যান্স চেপে নিন।
- আপনার নিজের বা অন্য ডেভেলপারদের C বা C++ লাইব্রেরি পুনরায় ব্যবহার করুন।
অ্যান্ড্রয়েড স্টুডিও 2.2 এবং উচ্চতর ব্যবহার করে, আপনি একটি নেটিভ লাইব্রেরিতে C এবং C++ কোড কম্পাইল করতে এবং IDE-এর ইন্টিগ্রেটেড বিল্ড সিস্টেম, Gradle ব্যবহার করে আপনার APK-এ প্যাকেজ করতে NDK ব্যবহার করতে পারেন। আপনার জাভা কোড জাভা নেটিভ ইন্টারফেস (JNI) ফ্রেমওয়ার্কের মাধ্যমে আপনার নেটিভ লাইব্রেরিতে ফাংশন কল করতে পারে। Gradle এবং Android বিল্ড সিস্টেম সম্পর্কে আরও জানতে, আপনার বিল্ড কনফিগার করুন পড়ুন।
নেটিভ লাইব্রেরি কম্পাইল করার জন্য অ্যান্ড্রয়েড স্টুডিওর ডিফল্ট বিল্ড টুল হল CMake । বিল্ড টুলকিট ব্যবহার করে এমন বিপুল সংখ্যক বিদ্যমান প্রজেক্টের কারণে অ্যান্ড্রয়েড স্টুডিও ndk-বিল্ডকে সমর্থন করে। যাইহোক, আপনি যদি একটি নতুন নেটিভ লাইব্রেরি তৈরি করেন, তাহলে আপনার CMake ব্যবহার করা উচিত।
এই নির্দেশিকা আপনাকে Android স্টুডিওতে NDK এর সাথে উঠতে এবং চালানোর জন্য প্রয়োজনীয় তথ্য দেয়। যদি আপনার Android স্টুডিওর সর্বশেষ সংস্করণ না থাকে তবে এখনই এটি ডাউনলোড করে ইনস্টল করুন ।
পরীক্ষামূলক গ্রেডল ব্যবহারকারীদের দৃষ্টি আকর্ষণ করুন: প্লাগইন সংস্করণ 2.2.0 বা উচ্চতর তে স্থানান্তরিত করার কথা বিবেচনা করুন এবং আপনার নেটিভ লাইব্রেরিগুলি তৈরি করতে CMake বা ndk-build ব্যবহার করে যদি নিম্নলিখিতগুলির মধ্যে কোনটি আপনার ক্ষেত্রে প্রযোজ্য হয়: আপনার নেটিভ প্রকল্প ইতিমধ্যেই CMake বা ndk-build ব্যবহার করে; আপনি বরং Gradle বিল্ড সিস্টেমের একটি স্থিতিশীল সংস্করণ ব্যবহার করবেন; অথবা আপনি অ্যাড-অন টুলের জন্য সমর্থন চান, যেমন CCache । অন্যথায়, আপনি Gradle এর পরীক্ষামূলক সংস্করণ এবং Android প্লাগইন ব্যবহার করা চালিয়ে যেতে পারেন।
NDK এবং টুল ডাউনলোড করুন
আপনার অ্যাপের জন্য নেটিভ কোড কম্পাইল এবং ডিবাগ করতে, আপনার নিম্নলিখিত উপাদানগুলির প্রয়োজন:
- অ্যান্ড্রয়েড নেটিভ ডেভেলপমেন্ট কিট (NDK): টুলের একটি সেট যা আপনাকে Android এর সাথে C এবং C++ কোড ব্যবহার করতে দেয়।
- CMake: একটি বাহ্যিক বিল্ড টুল যা আপনার নেটিভ লাইব্রেরি তৈরি করতে Gradle এর পাশাপাশি কাজ করে। আপনি যদি শুধুমাত্র ndk-build ব্যবহার করার পরিকল্পনা করেন তবে আপনার এই উপাদানটির প্রয়োজন নেই।
- LLDB : ডিবাগার অ্যান্ড্রয়েড স্টুডিও নেটিভ কোড ডিবাগ করতে ব্যবহার করে।
এই উপাদানগুলি ইনস্টল করার তথ্যের জন্য, NDK এবং CMake ইনস্টল এবং কনফিগার করুন দেখুন।
একটি নেটিভ প্রকল্প তৈরি বা আমদানি করুন
একবার আপনি অ্যান্ড্রয়েড স্টুডিও সেট আপ করলে, আপনি কেবল C/C++ সমর্থন সহ একটি নতুন প্রকল্প তৈরি করতে পারেন। যাইহোক, যদি আপনি একটি বিদ্যমান অ্যান্ড্রয়েড স্টুডিও প্রকল্পে নেটিভ কোড যোগ করতে বা আমদানি করতে চান তবে আপনাকে এই মৌলিক প্রক্রিয়াটি অনুসরণ করতে হবে:
- নতুন নেটিভ সোর্স ফাইল তৈরি করুন এবং আপনার অ্যান্ড্রয়েড স্টুডিও প্রোজেক্টে যোগ করুন।
- আপনার যদি ইতিমধ্যেই নেটিভ কোড থাকে বা একটি পূর্বনির্মাণ নেটিভ লাইব্রেরি আমদানি করতে চান তবে আপনি এই পদক্ষেপটি এড়িয়ে যেতে পারেন।
- কিভাবে একটি লাইব্রেরিতে আপনার নেটিভ সোর্স তৈরি করবেন তা CMake কে জানাতে একটি CMake বিল্ড স্ক্রিপ্ট তৈরি করুন । আপনি যদি পূর্বনির্মাণ বা প্ল্যাটফর্ম লাইব্রেরিগুলির সাথে আমদানি এবং লিঙ্ক করেন তবে আপনার এই বিল্ড স্ক্রিপ্টেরও প্রয়োজন৷
- আপনার বিদ্যমান নেটিভ লাইব্রেরিতে যদি ইতিমধ্যেই একটি
CMakeLists.txt
বিল্ড স্ক্রিপ্ট থাকে, অথবা ndk-build ব্যবহার করে এবং একটি Android.mk
বিল্ড স্ক্রিপ্ট অন্তর্ভুক্ত করে তাহলে আপনি এই ধাপটি এড়িয়ে যেতে পারেন।
- আপনার CMake বা ndk-বিল্ড স্ক্রিপ্ট ফাইলে একটি পথ প্রদান করে আপনার নেটিভ লাইব্রেরিতে Gradle লিঙ্ক করুন । আপনার অ্যান্ড্রয়েড স্টুডিও প্রোজেক্টে সোর্স কোড ইম্পোর্ট করতে এবং APK-তে আপনার নেটিভ লাইব্রেরি (এসও ফাইল) প্যাকেজ করতে Gradle বিল্ড স্ক্রিপ্ট ব্যবহার করে।
দ্রষ্টব্য: যদি আপনার বিদ্যমান প্রজেক্টটি অবহেলিত ndkCompile
টুল ব্যবহার করে, তাহলে CMake বা ndk-build ব্যবহার করার জন্য Gradle কনফিগার করার আগে আপনাকে আপনার build.properties
ফাইলটি খুলতে হবে এবং কোডের নিম্নলিখিত লাইনটি সরিয়ে ফেলতে হবে:
// Remove this line
android.useDeprecatedNdk = true
- রান এ ক্লিক করে আপনার অ্যাপ তৈরি করুন এবং চালান
. Gradle আপনার APK এর সাথে আপনার নেটিভ লাইব্রেরি কম্পাইল, বিল্ড এবং প্যাকেজ করার নির্ভরতা হিসাবে আপনার CMake বা ndk-বিল্ড প্রক্রিয়া যুক্ত করে।
একবার আপনার অ্যাপটি একটি ফিজিক্যাল ডিভাইস বা এমুলেটরে চললে, আপনি আপনার অ্যাপ ডিবাগ করতে Android স্টুডিও ব্যবহার করতে পারেন। অন্যথায়, NDK এবং এর উপাদানগুলি সম্পর্কে আরও জানতে, ধারণা পৃষ্ঠাটি পড়ুন।
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি Content License-এ বর্ণিত লাইসেন্সের অধীনস্থ। Java এবং OpenJDK হল Oracle এবং/অথবা তার অ্যাফিলিয়েট সংস্থার রেজিস্টার্ড ট্রেডমার্ক।
2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।
[[["সহজে বোঝা যায়","easyToUnderstand","thumb-up"],["আমার সমস্যার সমাধান হয়েছে","solvedMyProblem","thumb-up"],["অন্যান্য","otherUp","thumb-up"]],[["এতে আমার প্রয়োজনীয় তথ্য নেই","missingTheInformationINeed","thumb-down"],["খুব জটিল / অনেক ধাপ","tooComplicatedTooManySteps","thumb-down"],["পুরনো","outOfDate","thumb-down"],["অনুবাদ সংক্রান্ত সমস্যা","translationIssue","thumb-down"],["নমুনা / কোড সংক্রান্ত সমস্যা","samplesCodeIssue","thumb-down"],["অন্যান্য","otherDown","thumb-down"]],["2025-07-29 UTC-তে শেষবার আপডেট করা হয়েছে।"],[],[],null,["# Get started with the NDK\n\nThe Native Development Kit (NDK) is a set of tools that allows you to use C\nand C++ code with Android, and provides [platform libraries](/ndk/guides/stable_apis) you can use to manage\nnative activities and access physical device components, such as sensors and\ntouch input. The NDK may not be appropriate for most novice Android\nprogrammers who need to use only Java code and framework APIs to develop\ntheir apps. However, the NDK can be useful for cases in which you need to do\none or more of the following:\n\n- Squeeze extra performance out of a device to achieve low latency or run computationally intensive applications, such as games or physics simulations.\n- Reuse your own or other developers' C or C++ libraries.\n\n\nUsing [Android Studio 2.2 and higher](/studio), you can\nuse the NDK to compile C and C++ code into a native library and package it\ninto your APK using Gradle, the IDE's integrated build system. Your Java code\ncan then call functions in your native library through the [Java Native Interface (JNI)](http://docs.oracle.com/javase/7/docs/technotes/guides/jni/spec/jniTOC.html) framework. To learn\nmore about Gradle and the Android build system, read [Configure Your Build](/studio/build).\n\n\nAndroid Studio's default build tool to compile native libraries is [CMake](https://cmake.org/). Android Studio also\nsupports [ndk-build](/ndk/guides/ndk-build) due to the large\nnumber of existing projects that use the build toolkit. However, if you are\ncreating a new native library, you should use CMake.\n\n\nThis guide gives you the information you need to get up and running with the\nNDK on Android Studio. If you don't have the latest version of Android\nStudio, [download and install it now](/studio).\n\n\n**Attention experimental Gradle users:** Consider [migrating to plugin version 2.2.0 or higher](http://tools.android.com/tech-docs/new-build-system/gradle-experimental/migrate-to-stable), and using CMake or ndk-build\nto build your native libraries if any of the following apply to you: Your\nnative project already uses CMake or ndk-build; you would rather use a stable\nversion of the Gradle build system; or you want support for add-on tools,\nsuch as [CCache](https://ccache.samba.org/).\nOtherwise, you can continue to [use\nthe experimental version of Gradle and the Android plugin](http://tools.android.com/tech-docs/new-build-system/gradle-experimental).\n\nDownload the NDK and tools\n--------------------------\n\n\nTo compile and debug native code for your app, you need the following\ncomponents:\n\n- The Android Native Development Kit (NDK): a set of tools that allows you to use C and C++ code with Android.\n- CMake: an external build tool that works alongside Gradle to build your native library. You do not need this component if you only plan to use ndk-build.\n- *LLDB*: the debugger Android Studio uses to debug native code.\n\n\nFor information on installing these components, see [Install and configure the NDK and CMake](/studio/projects/install-ndk).\n\nCreate or import a native project\n---------------------------------\n\n\nOnce you set up Android Studio, you can simply [Create a New Project with\nC/C++ Support](/studio/projects/add-native-code#new-project). However, if you want to add or import native code to an\nexisting Android Studio project, you need to follow this basic process:\n\n1. [Create new\n native source files](/studio/projects/add-native-code#create-sources) and add them to your Android Studio project.\n - You can skip this step if you already have native code or want to import a prebuilt native library.\n2. [Create\n a CMake build script](/studio/projects/configure-cmake#create_script) to tell CMake how to build your native sources into a library. You also require this build script if you are importing and linking against prebuilt or platform libraries.\n - You can skip this step if your existing native library already has a `CMakeLists.txt` build script, or uses ndk-build and includes an [`Android.mk`](/ndk/guides/android_mk) build script.\n3. [Link Gradle to\n your native library](/studio/projects/gradle-external-native-builds) by providing a path to your CMake or ndk-build script file. Gradle uses the build script to import source code into your Android Studio project and package your native library (the SO file) into the APK.\n\n\n **Note:** If your existing project uses the deprecated\n `ndkCompile` tool, you should open your\n `build.properties` file and remove the following line of code\n before configuring Gradle to use CMake or ndk-build: \n\n ```\n // Remove this line\n android.useDeprecatedNdk = true\n ```\n4. [Build and run your app](/studio/run) by clicking **Run** . Gradle adds your CMake or ndk-build process as a dependency to compile, build, and package your native library with your APK.\n\n\nOnce your app is running on a physical device or the emulator, you can use\nAndroid Studio to [Debug your app](/studio/debug).\nOtherwise, to learn more about the NDK and its components, read the [Concepts](/ndk/guides/concepts) page."]]