27 মার্চ, 2025 থেকে, আমরা AOSP তৈরি করতে এবং অবদান রাখতে aosp-main
এর পরিবর্তে android-latest-release
ব্যবহার করার পরামর্শ দিচ্ছি। আরও তথ্যের জন্য, AOSP-তে পরিবর্তনগুলি দেখুন।
মাল্টি-ডিভাইস NFC পরীক্ষা চালান (Android 15)
সেভ করা পৃষ্ঠা গুছিয়ে রাখতে 'সংগ্রহ' ব্যবহার করুন
আপনার পছন্দ অনুযায়ী কন্টেন্ট সেভ করুন ও সঠিক বিভাগে রাখুন।
এই নথিটি ব্যাখ্যা করে কিভাবে মাল্টি-ডিভাইস NFC পরীক্ষা চালাতে হয়।
পূর্বশর্ত পূরণ
আপনি মাল্টি-ডিভাইস NFC পরীক্ষা চালানোর আগে, নিম্নলিখিতগুলি করুন:
- আপনার Android 15 বাস্তবায়ন সহ একটি ডিভাইস প্রস্তুত করুন।
- CTS-V প্রয়োজনীয়তা অনুসরণ করুন।
- CTS-V সেটআপ অনুসরণ করুন।
পরীক্ষার জন্য একটি DUT এবং একটি PN532 NFC রিডার প্রস্তুত করুন৷
আপনি পূর্ববর্তী পদক্ষেপগুলি শেষ করার পরে, পরীক্ষার জন্য একটি DUT এবং একটি PN532 NFC রিডার প্রস্তুত করতে এই পদক্ষেপগুলি অনুসরণ করুন:
- USB এর মাধ্যমে একটি হোস্ট মেশিনে DUT সংযোগ করুন।
- ADB এর মাধ্যমে DUT অ্যাক্সেস করার জন্য হোস্টকে অনুমতি দিন।
DUT-তে CTS ভেরিফায়ার অ্যাপ ( CtsVerifier.apk
) ইনস্টল করুন:
extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip
cd android-cts-verifier
adb install -r -g CtsVerifier.apk
NFC পরীক্ষা প্রয়োজনীয় APK ইনস্টল করুন:
cd MultiDevice
adb install -r -g NfcEmulatorTestApp.apk
DUT এর জন্য NFC সেট আপ করুন
DUT এর জন্য NFC সেট আপ চালানোর জন্য এই পদক্ষেপগুলি অনুসরণ করুন:
- DUT-তে, সেটিংস মেনুতে যান।
- এনএফসি বা সংযুক্ত ডিভাইস বিভাগটি দেখুন।
- NFC টগল সুইচ চালু আছে তা নিশ্চিত করুন।
ফোনের NFC রিডারে একটি NFC চিপ রাখুন:
- একটি PN532 NFC চিপ অর্জন করুন। আমরা অল-ইন-ওয়ান PN532 , নন-BLE বিকল্পের সুপারিশ করি।
- একটি USB কেবল ব্যবহার করে Linux হোস্টে PN532 NFC চিপ সংযুক্ত করুন৷
- PN532 NFC চিপটি ফোনের NFC রিডারের উপরে রাখুন যেমনটি নিচের ছবিতে দেখানো হয়েছে:

চিত্র 1. NFC চিপ বসানো।
পরীক্ষার পরিবেশ সেট আপ করুন
পরীক্ষার পরিবেশ সেট আপ চালানোর জন্য এই পদক্ষেপগুলি অনুসরণ করুন:
পরীক্ষার পরিবেশ সেট আপ করতে এই কমান্ডগুলি চালান:
cd MultiDevice
source build/envsetup.sh
এই কমান্ডটি পাইথন পরীক্ষা করে এবং PYTHONPATH
এনভায়রনমেন্ট ভেরিয়েবল সেট আপ করে। টার্মিনালে কোনো ত্রুটি মুদ্রিত না হলে, পরিবেশ মাল্টি-ডিভাইস পরীক্ষা চালানোর জন্য প্রস্তুত।
আপনি যদি ত্রুটি বার্তাটি দেখতে পান libtinfo.so.6: no version information available (required by /bin/sh)
, libtinfo.so.6
ফাইলের নাম পরিবর্তন করতে নিম্নলিখিত কমান্ডটি চালান:
mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak
MultiDevice/config.yml
এ DUT এবং PN532 NFC রিডারের ডিভাইস সিরিয়াল আইডি সেট করে পরীক্ষার বিছানা সেট আপ করুন:
TestBeds:
- Name: CtsNfcHceMultiDeviceTestCases-py-ctsv
Controllers:
AndroidDevice:
- serial: "<device-id>"
TestParams:
pn532_serial_path: "<pn532-serial-path>"
NFC পরীক্ষা চালান
NFC পরীক্ষা চালানোর জন্য:
CTS-V অ্যাপ খুলুন এবং NFC টেস্টে ট্যাপ করুন:

চিত্র 2. CTS-V অ্যাপ।
পরীক্ষার ক্ষেত্রে তালিকা সহ তথ্য উইন্ডো প্রদর্শিত হবে:

চিত্র 3. CTS-V অ্যাপ পরীক্ষার ক্ষেত্রে।
আপনার হোস্টে পরীক্ষা চালান:
MultiDevice$ python3 tools/run_all_tests.py
পরীক্ষা শেষ হলে, CTS-V অ্যাপে পরীক্ষার ফলাফল আপডেট করা হয়। সফল পরীক্ষা সবুজ:

চিত্র 4. CTS-V পরীক্ষার ফলাফল।
আপনি যদি লাল রঙে চিহ্নিত কোনো ব্যর্থতা দেখতে পান, তাহলে ব্যর্থ পরীক্ষাগুলি পুনরায় চালানোর জন্য নিম্নলিখিত কমান্ডটি ব্যবহার করুন:
python3 tools/run_all_tests.py --test_cases "`TestCaseA`" "`TestCaseB`" --test_files "`TestFileA`"
কোথায়:
-
TestCaseA
এবং TestCaseB
হল CTS-V তে প্রদর্শিত পরীক্ষার ক্ষেত্রের নাম। -
TestFileA
হল টেস্ট ফাইল যাতে টেস্ট কেস থাকে।
যেমন:
python3 tools/run_all_tests.py --test_cases "test_conflicting_non_payment" "test_conflicting_non_payment_prefix" --test_files "CtsNfcHceMultiDeviceTestCases-py-ctsv"
এই পৃষ্ঠার কন্টেন্ট ও কোডের নমুনাগুলি 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,["# Run multi-device NFC tests (Android 15)\n\nThis document explains how to run multi-device NFC tests.\n\nMeet prerequisites\n------------------\n\nBefore you run multi-device NFC tests, do the following:\n\n1. Prepare a device with your Android 15 implementation.\n2. Follow CTS-V [requirements](/docs/compatibility/cts/verifier#requirements).\n3. Follow CTS-V [setup](/docs/compatibility/cts/verifier#setup).\n\nPrepare a DUT and a PN532 NFC reader for the test\n-------------------------------------------------\n\nAfter you finish the previous steps, follow these steps to run\nprepare a DUT and a PN532 NFC reader for the test:\n\n1. Connect the DUT to a host machine over USB.\n2. Grant permissions for the host to access the DUT over ADB.\n3. Install the CTS Verifier app (`CtsVerifier.apk`) on the DUT:\n\n extract root/out/host/linux-x86/cts-verifier/android-cts-verifier.zip\n\n cd android-cts-verifier\n\n adb install -r -g CtsVerifier.apk\n\n4. Install the NFC test required APKs:\n\n cd MultiDevice\n\n adb install -r -g NfcEmulatorTestApp.apk\n\nSet up NFC for the DUT\n----------------------\n\nFollow these steps to run set up NFC for the DUT:\n\n1. On the DUT, go to the **Settings** menu.\n2. Look for the **NFC** or **Connected Devices** section.\n3. Ensure the NFC toggle switch is turned on.\n4. Position an NFC chip on the phone's NFC reader:\n\n 1. Acquire a PN532 NFC chip. We recommend the [All-In-One PN532](https://shop.mtoolstec.com/product/mtools-all-in-one-pn532), non-BLE option.\n 2. Attach the PN532 NFC chip to the Linux host using a USB cable.\n 3. Place the PN532 NFC chip over the phone's NFC reader as shown in the following image:\n\n **Figure 1.** NFC chip placement.\n\nSet up the test environment\n---------------------------\n\nFollow these steps to run set up the test environment:\n\n1. Run these commands to set up the test environment:\n\n cd MultiDevice\n\n source build/envsetup.sh\n\n This command checks the Python and sets up the `PYTHONPATH` environment\n variable. If no errors are printed to the terminal, the environment is ready\n to run the multi-device tests.\n\n If you see the error message `libtinfo.so.6: no version information\n available (required by /bin/sh)` at runtime, run the following command\n to rename the `libtinfo.so.6` file: \n\n mv $ENV_DIRECTORY/lib/libtinfo.so.6 $ENV_DIRECTORY/lib/libtinfo.so.6.bak\n\n2. Set up the test bed by setting the device serial IDs of the DUT and PN532 NFC\n reader in `MultiDevice/config.yml`:\n\n TestBeds:\n - Name: CtsNfcHceMultiDeviceTestCases-py-ctsv\n Controllers:\n AndroidDevice:\n - serial: \"\u003cdevice-id\u003e\"\n TestParams:\n pn532_serial_path: \"\u003cpn532-serial-path\u003e\"\n\nRun the NFC tests\n-----------------\n\nTo run the NFC tests:\n\n1. Open the CTS-V app and tap **NFC Tests**:\n\n **Figure 2.** The CTS-V app.\n\n The info window with list of test cases appears:\n\n **Figure 3.** CTS-V app test cases.\n2. Run the tests on your host:\n\n MultiDevice$ python3 tools/run_all_tests.py\n\n When the tests are completed, the test results are updated in the CTS-V\n app. Successful tests are green:\n\n **Figure 4.** CTS-V test results.\n3. If you see any failures marked in red, use the following command to rerun\n the failed tests:\n\n python3 tools/run_all_tests.py --test_cases \"`\u003cvar translate=\"no\"\u003eTestCaseA\u003c/var\u003e`\" \"`\u003cvar translate=\"no\"\u003eTestCaseB\u003c/var\u003e`\" --test_files \"`\u003cvar translate=\"no\"\u003eTestFileA\u003c/var\u003e`\"\n\n Where:\n - \u003cvar translate=\"no\"\u003eTestCaseA\u003c/var\u003e and \u003cvar translate=\"no\"\u003eTestCaseB\u003c/var\u003e are the names of the test cases as displayed in CTS-V.\n - \u003cvar translate=\"no\"\u003eTestFileA\u003c/var\u003e is the test file containing the test cases.\n\n For example: \n\n python3 tools/run_all_tests.py --test_cases \"test_conflicting_non_payment\" \"test_conflicting_non_payment_prefix\" --test_files \"CtsNfcHceMultiDeviceTestCases-py-ctsv\""]]