রান/ডিবাগ কনফিগারেশন তৈরি এবং সম্পাদনা করুন

যখন আপনি আপনার কোড রান, ডিবাগ বা পরীক্ষা করেন, তখন অ্যান্ড্রয়েড স্টুডিও কীভাবে অপারেশনটি সম্পাদন করবেন তা নির্ধারণ করার জন্য একটি রান/ডিবাগ কনফিগারেশন ব্যবহার করে। সাধারণত, প্রাথমিকভাবে তৈরি কনফিগারেশনটি একটি অ্যাপ চালানো বা ডিবাগ করার জন্য যথেষ্ট। তবে, আপনি এই পৃষ্ঠায় বর্ণিত আপনার ডেভেলপমেন্ট প্রক্রিয়া অনুসারে নতুন কনফিগারেশনগুলি পরিবর্তন এবং তৈরি করতে পারেন এবং কনফিগারেশন টেমপ্লেটগুলি পরিবর্তন করতে পারেন।

আরও তথ্যের জন্য, নিম্নলিখিত IntelliJ ডকুমেন্টেশনগুলিও দেখুন:

রান/ডিবাগ কনফিগারেশন সম্পর্কে

রান/ডিবাগ কনফিগারেশন অ্যাপ ইনস্টলেশন, লঞ্চ এবং পরীক্ষার বিকল্পগুলির মতো বিশদ বিবরণ নির্দিষ্ট করে। আপনি একবার ব্যবহারের জন্য একটি কনফিগারেশন সংজ্ঞায়িত করতে পারেন, অথবা ভবিষ্যতে ব্যবহারের জন্য এটি সংরক্ষণ করতে পারেন। এটি সংরক্ষণ করার পরে, আপনি টুলবারের মধ্যে রান/ডিবাগ কনফিগারেশন নির্বাচন করুন ড্রপ-ডাউন তালিকা থেকে কনফিগারেশনটি নির্বাচন করতে পারেন। অ্যান্ড্রয়েড স্টুডিও প্রকল্পের অংশ হিসাবে কনফিগারেশনগুলি সংরক্ষণ করে।

প্রাথমিকভাবে তৈরি রান/ডিবাগ কনফিগারেশন

যখন আপনি প্রথমবার কোনও প্রকল্প তৈরি করেন, তখন অ্যান্ড্রয়েড স্টুডিও অ্যান্ড্রয়েড অ্যাপ টেমপ্লেটের উপর ভিত্তি করে মূল কার্যকলাপের জন্য একটি রান/ডিবাগ কনফিগারেশন তৈরি করে। আপনার প্রকল্পটি চালানো বা ডিবাগ করার জন্য, আপনার সর্বদা কমপক্ষে একটি রান/ডিবাগ কনফিগারেশন সংজ্ঞায়িত থাকতে হবে। এই কারণে, আমরা আপনাকে প্রাথমিকভাবে তৈরি কনফিগারেশনটি মুছে ফেলার পরামর্শ দিচ্ছি না।

প্রকল্পের সুযোগ এবং সংস্করণ নিয়ন্ত্রণ

রান/ডিবাগ কনফিগারেশন এবং টেমপ্লেট পরিবর্তনগুলি শুধুমাত্র বর্তমান প্রকল্পের ক্ষেত্রে প্রযোজ্য। আপনি আপনার সংস্করণ নিয়ন্ত্রণ সিস্টেমের মাধ্যমে একটি রান/ডিবাগ কনফিগারেশন (কিন্তু টেমপ্লেট নয়) শেয়ার করতে পারেন। কনফিগারেশন কীভাবে শেয়ার করবেন সে সম্পর্কে আরও তথ্যের জন্য, নাম এবং শেয়ার কনফিগারেশন বিকল্পগুলি দেখুন।

রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন

রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলতে, রান > এডিট কনফিগারেশন নির্বাচন করুন। রান/ডিবাগ কনফিগারেশন ডায়ালগটি প্রদর্শিত হবে, যেমন চিত্র ১-এ দেখানো হয়েছে।

চিত্র ১। রান/ডিবাগ কনফিগারেশন ডায়ালগ

ডায়ালগের বাম প্যানেলটি আপনার নির্ধারিত কনফিগারেশনগুলিকে টেমপ্লেটের ধরণ অনুসারে গোষ্ঠীভুক্ত করে এবং আপনাকে নীচের কনফিগারেশন টেমপ্লেটগুলি সম্পাদনা করার অনুমতি দেয়। আপনি ডান প্যানেলে নির্বাচিত কনফিগারেশনটি সম্পাদনা করতে পারেন। কোনও লুকানো আইটেম দেখতে ডায়ালগের আকার পরিবর্তন করুন।

এই সংলাপে, আপনি যা করতে পারেন:

একটি নতুন রান/ডিবাগ কনফিগারেশন তৈরি করুন

আপনি রান/ডিবাগ কনফিগারেশন ডায়ালগ, প্রজেক্ট উইন্ডো, অথবা কোড এডিটর থেকে নতুন রান/ডিবাগ কনফিগারেশন সংজ্ঞায়িত করতে পারেন। নতুন কনফিগারেশনটি অবশ্যই একটি কনফিগারেশন টেমপ্লেটের উপর ভিত্তি করে তৈরি করা উচিত।

রান/ডিবাগ কনফিগারেশন ডায়ালগটি আপনার রান/ডিবাগ কনফিগারেশন এবং উপলব্ধ কনফিগারেশন টেমপ্লেটগুলি প্রদর্শন করে। আপনি সরাসরি একটি টেমপ্লেট থেকে, অথবা অন্য একটি কনফিগারেশনের অনুলিপি থেকে একটি নতুন কনফিগারেশন শুরু করতে পারেন। তারপর আপনি প্রয়োজন অনুসারে ক্ষেত্রের মান পরিবর্তন করতে পারেন।

বিকল্পভাবে, আপনি প্রজেক্ট উইন্ডোতে থাকা কোনও আইটেমে ডান-ক্লিক করে সেই আইটেমের জন্য নির্দিষ্ট একটি কনফিগারেশন স্বয়ংক্রিয়ভাবে তৈরি করতে পারেন। উদাহরণস্বরূপ, যদি আপনি কোনও নির্দিষ্ট অ্যাক্টিভিটি চালাতে চান, তাহলে আপনি অ্যাক্টিভিটি জাভা ফাইলে ডান-ক্লিক করে Run নির্বাচন করতে পারেন। আইটেমের উপর নির্ভর করে, অ্যান্ড্রয়েড স্টুডিও কনফিগারেশন তৈরি করতে একটি অ্যান্ড্রয়েড অ্যাপ , অ্যান্ড্রয়েড ইনস্ট্রুমেন্টেড টেস্ট , অথবা JUnit কনফিগারেশন টেমপ্লেট ব্যবহার করে।

কোড এডিটরে, আপনি সহজেই একটি ক্লাস বা পদ্ধতির জন্য একটি পরীক্ষা এবং রান/ডিবাগ কনফিগারেশন তৈরি করতে পারেন এবং তারপর এটি কার্যকর করতে পারেন।

যখন আপনি রান/ডিবাগ কনফিগারেশন ডায়ালগের বাইরে একটি কনফিগারেশন তৈরি করেন, তখন কনফিগারেশনটি অস্থায়ী থাকে যদি না আপনি এটি সংরক্ষণ করেন। ডিফল্টরূপে, অ্যান্ড্রয়েড স্টুডিও সেগুলি অপসারণ শুরু করার আগে আপনার প্রকল্পে পাঁচটি পর্যন্ত অস্থায়ী কনফিগারেশন থাকতে পারে। এই ডিফল্ট পরিবর্তন করতে, অ্যান্ড্রয়েড স্টুডিও সেটিংস খুলুন এবং উন্নত সেটিংস > রান/ডিবাগ > অস্থায়ী কনফিগারেশন সীমা পরিবর্তন করুন। অস্থায়ী কনফিগারেশন সম্পর্কে আরও তথ্যের জন্য, অস্থায়ী রান/ডিবাগ কনফিগারেশন তৈরি এবং সংরক্ষণ দেখুন।

একটি টেমপ্লেটের উপর ভিত্তি করে একটি কনফিগারেশন শুরু করুন

একটি টেমপ্লেটের উপর ভিত্তি করে একটি রান/ডিবাগ কনফিগারেশন সংজ্ঞায়িত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. নতুন কনফিগারেশন যোগ করুন ক্লিক করুন .
  3. একটি কনফিগারেশন টেমপ্লেট নির্বাচন করুন।
  4. নাম ক্ষেত্রে একটি নাম লিখুন।
  5. প্রয়োজন অনুযায়ী কনফিগারেশন পরিবর্তন করুন।
  6. ডায়ালগের নীচে প্রদর্শিত যেকোনো ত্রুটি সংশোধন করতে ভুলবেন না।

  7. প্রয়োগ করুন অথবা ঠিক আছে ক্লিক করুন।

একটি কপি থেকে একটি কনফিগারেশন শুরু করুন

অন্য কনফিগারেশনের একটি অনুলিপি থেকে শুরু করে একটি রান/ডিবাগ কনফিগারেশন সংজ্ঞায়িত করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. বাম ফলকে একটি বিদ্যমান রান/ডিবাগ কনফিগারেশন নির্বাচন করুন।
  3. কনফিগারেশন কপি করুন ক্লিক করুন .
  4. নাম ক্ষেত্রে একটি নাম লিখুন।
  5. প্রয়োজন অনুযায়ী কনফিগারেশন পরিবর্তন করুন।
  6. ডায়ালগের নীচে প্রদর্শিত যেকোনো ত্রুটি সংশোধন করতে ভুলবেন না।

  7. প্রয়োগ করুন অথবা ঠিক আছে ক্লিক করুন।

প্রকল্পের একটি আইটেমের জন্য একটি কনফিগারেশন সংজ্ঞায়িত করুন

অ্যান্ড্রয়েড স্টুডিও প্রজেক্ট উইন্ডোতে প্রদর্শিত কিছু আইটেমের জন্য একটি রান/ডিবাগ কনফিগারেশন তৈরি করতে পারে। কনফিগারেশনটি একটি কনফিগারেশন টেমপ্লেটের উপর ভিত্তি করে তৈরি করা হয়েছে, যা নিম্নরূপ:

  • অ্যাক্টিভিটি জাভা ফাইল: অ্যান্ড্রয়েড অ্যাপ টেমপ্লেট।
  • প্যাকেজ: আপনার সোর্স সেটের উপর নির্ভর করে Android Instrumented Tests অথবা Android JUnit টেমপ্লেট। যদি আপনি একটি instrumented test নির্বাচন করেন, তাহলে এটি Android Instrumented Tests টেমপ্লেট ব্যবহার করে। যদি আপনি একটি local unit test নির্বাচন করেন, তাহলে এটি Android JUnit টেমপ্লেট ব্যবহার করে। একটি local unit test এর জন্য, আপনি ঐচ্ছিকভাবে কোড কভারেজ দিয়ে চালাতে পারেন। আরও তথ্যের জন্য, Code Coverage দেখুন।

আপনার প্রকল্পের একটি আইটেমের জন্য একটি রান/ডিবাগ কনফিগারেশন তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. অ্যান্ড্রয়েড অথবা প্রজেক্ট ভিউতে একটি প্রজেক্ট খুলুন।
  2. প্রজেক্ট উইন্ডোতে, একটি পরীক্ষাযোগ্য আইটেমে ডান-ক্লিক করুন এবং Run filename অথবা Debug filename নির্বাচন করুন। Android Studio একটি অস্থায়ী রান/ডিবাগ কনফিগারেশন তৈরি করে এবং আপনার অ্যাপ চালু করে।
  3. টুলবারে Select Run/Debug Configuration ড্রপ-ডাউন তালিকাটি খুলুন।
  4. আপনি যে কনফিগারেশনটি সংরক্ষণ করতে চান তার পাশের বিকল্পগুলি থেকে "সংরক্ষণ কনফিগারেশন" নির্বাচন করুন।

    চিত্র ২। কনফিগারেশনটি সংরক্ষণ করুন

দ্রষ্টব্য: যদি আপনি একই আইটেমটি (কিন্তু কোনও কার্যকলাপ নয়) রাইট-ক্লিক করে চালান বা ডিবাগ করেন, তাহলে Android Studio একটি নতুন কনফিগারেশন তৈরি করে।

একটি ক্লাস বা পদ্ধতির জন্য একটি পরীক্ষা কনফিগারেশন সংজ্ঞায়িত করুন

অ্যান্ড্রয়েড স্টুডিও আপনাকে একটি ক্লাস বা পদ্ধতির জন্য একটি টেস্ট রান কনফিগারেশন সংজ্ঞায়িত করতে এবং তারপর এটি কার্যকর করতে দেয়। উদাহরণস্বরূপ, যদি আপনি একটি নতুন ক্লাস তৈরি করেন, তাহলে আপনি এটির জন্য একটি টেস্ট তৈরি করে রান করতে পারেন। যদি টেস্টটি পাস করে, তাহলে আপনি বাকি প্রোজেক্টের জন্য টেস্টগুলি রান করতে পারেন যাতে নিশ্চিত করা যায় যে আপনার নতুন কোড অন্য কোথাও কোনও ত্রুটি না করে।

আপনার সোর্স সেটের উপর নির্ভর করে অ্যান্ড্রয়েড স্টুডিও অ্যান্ড্রয়েড ইন্সট্রুমেন্টেড টেস্ট বা অ্যান্ড্রয়েড জুনিট টেমপ্লেট ব্যবহার করে। স্থানীয় ইউনিট পরীক্ষার জন্য, আপনি ঐচ্ছিকভাবে কোড কভারেজ দিয়ে চালাতে পারেন।

আপনার জাভা কোডে একটি ক্লাস বা পদ্ধতির জন্য একটি রান/ডিবাগ কনফিগারেশন তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. অ্যান্ড্রয়েড অথবা প্রজেক্ট ভিউতে একটি প্রজেক্ট খুলুন।
  2. কোড এডিটরে একটি জাভা ফাইল খুলুন।
  3. কোডে একটি ক্লাস বা পদ্ধতি নির্বাচন করুন, এবং তারপর Control+Shift+T (Command+Shift+T) টিপুন।
  4. প্রদর্শিত মেনু থেকে নতুন পরীক্ষা তৈরি করুন নির্বাচন করুন।
  5. পরীক্ষা তৈরি করুন ডায়ালগে, ঐচ্ছিকভাবে মানগুলি পরিবর্তন বা সেট করুন এবং ঠিক আছে ক্লিক করুন।
  6. "গন্তব্য ডিরেক্টরি নির্বাচন করুন" ডায়ালগে, আপনি যে প্রকল্পে অ্যান্ড্রয়েড স্টুডিও পরীক্ষাটি রাখতে চান তা নির্বাচন করুন। আপনি ডিরেক্টরি কাঠামোর মাধ্যমে অথবা প্রতিবেশী একটি ক্লাস নির্বাচন করে অবস্থানটি নির্দিষ্ট করতে পারেন।
  7. ঠিক আছে ক্লিক করুন।

    নতুন পরীক্ষাটি সংশ্লিষ্ট পরীক্ষার উৎস সেটের প্রজেক্ট উইন্ডোতে প্রদর্শিত হবে।

  8. পরীক্ষাটি চালানোর জন্য, নিম্নলিখিতগুলির মধ্যে একটি করুন:
    • প্রজেক্ট উইন্ডোতে, পরীক্ষাটিতে ডান-ক্লিক করুন এবং রান বা ডিবাগ নির্বাচন করুন।
    • কোড এডিটরে, টেস্ট ফাইলে একটি ক্লাস ডেফিনিশন বা মেথডের নাম ডান-ক্লিক করুন এবং ক্লাসের সমস্ত মেথড পরীক্ষা করতে রান বা ডিবাগ নির্বাচন করুন।
  9. টুলবারে Select Run/Debug Configuration ড্রপ-ডাউন তালিকাটি খুলুন।
  10. আপনি যে কনফিগারেশনটি সংরক্ষণ করতে চান তার পাশের বিকল্পগুলি থেকে "সংরক্ষণ কনফিগারেশন" নির্বাচন করুন।

    চিত্র ৩। কনফিগারেশনটি সংরক্ষণ করুন

একটি সংরক্ষিত কনফিগারেশন ব্যবহার করে একটি অ্যাপ চালান বা ডিবাগ করুন

যদি আপনি একটি রান/ডিবাগ কনফিগারেশন সংরক্ষণ করে থাকেন, তাহলে আপনার অ্যাপটি চালানো বা ডিবাগ করার আগে আপনি এটি নির্বাচন করতে পারেন।

একটি সংরক্ষিত রান/ডিবাগ কনফিগারেশন ব্যবহার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. টুলবারের মধ্যে Select Run/Debug Configuration ড্রপ-ডাউন তালিকা থেকে run/debug কনফিগারেশন নির্বাচন করুন।
  2. ড্রপ-ডাউন তালিকাটি রানের বাম দিকে রয়েছে। এবং ডিবাগ ; উদাহরণস্বরূপ, .

  3. রান > রান অথবা রান > ডিবাগ নির্বাচন করুন।
  4. অথবা, Run এ ক্লিক করুন। অথবা ডিবাগ করুন .

একটি রান/ডিবাগ কনফিগারেশন সম্পাদনা করুন

রান/ডিবাগ কনফিগারেশন সম্পাদনা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. বাম ফলকে একটি কনফিগারেশন নির্বাচন করুন।
  3. প্রয়োজন অনুযায়ী কনফিগারেশন পরিবর্তন করুন।
  4. ডায়ালগের নীচে প্রদর্শিত যেকোনো ত্রুটি সংশোধন করতে ভুলবেন না।

  5. প্রয়োগ করুন অথবা ঠিক আছে ক্লিক করুন।

একটি রান/ডিবাগ কনফিগারেশন টেমপ্লেট সম্পাদনা করুন

আপনার ডেভেলপমেন্ট প্রক্রিয়া অনুসারে আপনি অ্যান্ড্রয়েড স্টুডিও দ্বারা প্রদত্ত কনফিগারেশন টেমপ্লেটগুলি সম্পাদনা করতে পারেন। আপনি যখন একটি টেমপ্লেট সম্পাদনা করেন, তখন এটি টেমপ্লেট ব্যবহার করে এমন বিদ্যমান কনফিগারেশনগুলিকে প্রভাবিত করে না। সুতরাং, উদাহরণস্বরূপ, যদি আপনার একটি নির্দিষ্ট ধরণের বেশ কয়েকটি কনফিগারেশন তৈরি করার প্রয়োজন হয়, তাহলে আপনি টেমপ্লেটটি সম্পাদনা করতে পারেন এবং কাজ শেষ হয়ে গেলে এটি আবার পরিবর্তন করতে পারেন।

যদিও আপনি নতুন টেমপ্লেট তৈরি করতে পারবেন না, আপনি টেমপ্লেটের মতো ব্যবহারের জন্য কনফিগারেশন তৈরি করতে পারেন। আপনি একটি কনফিগারেশন কপি করতে পারেন এবং নতুন কনফিগারেশন তৈরি করতে কপিটি সম্পাদনা করতে পারেন।

একটি টেমপ্লেট সম্পাদনা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. কনফিগারেশন টেমপ্লেট সম্পাদনা করুন... এ ক্লিক করুন।
  3. একটি কনফিগারেশন টেমপ্লেট নির্বাচন করুন।
  4. প্রয়োজন অনুযায়ী কনফিগারেশন পরিবর্তন করুন।
  5. ডায়ালগের নীচে প্রদর্শিত যেকোনো ত্রুটি সংশোধন করতে ভুলবেন না।

  6. প্রয়োগ করুন অথবা ঠিক আছে ক্লিক করুন।

সাজান এবং গ্রুপ কনফিগারেশন

রান/ডিবাগ কনফিগারেশন ডায়ালগে, আপনি আপনার কনফিগারেশনগুলিকে দ্রুত খুঁজে পেতে অর্ডার করতে পারেন। আপনি ফোল্ডারের আইটেমগুলিকে বর্ণানুক্রমিকভাবে সাজাতে পারেন এবং গ্রুপ কনফিগারেশনে নতুন ফোল্ডার তৈরি করতে পারেন।

বর্ণানুক্রমিকভাবে কনফিগারেশন সাজানোর জন্য, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. কনফিগারেশন ধারণকারী একটি ফোল্ডার নির্বাচন করুন।
  3. কনফিগারেশন বাছাই করুন ক্লিক করুন .
  4. ডায়ালগটি বন্ধ করতে ঠিক আছে ক্লিক করুন।

ফোল্ডারে কনফিগারেশন গ্রুপ করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

  1. রান/ডিবাগ কনফিগারেশন ডায়ালগ খুলুন
  2. কনফিগারেশন ধারণকারী একটি ফোল্ডার নির্বাচন করুন।
  3. নতুন ফোল্ডার তৈরি করুন ক্লিক করুন .
  4. ফোল্ডার নেম ক্ষেত্রে একটি নাম টাইপ করুন।
  5. নামটি সংরক্ষণ করতে প্রয়োগ করুন ক্লিক করুন।
  • একই টেমপ্লেট বিভাগ থেকে আইটেমগুলিকে ফোল্ডারে টেনে আনুন।
  • একই টেমপ্লেট বিভাগে ফোল্ডার এবং কনফিগারেশনগুলিকে অবস্থানে টেনে এনে অর্ডার করুন।
  • ডায়ালগটি বন্ধ করতে ঠিক আছে ক্লিক করুন।
  • লঞ্চের আগে ক্রিয়াকলাপগুলি সংজ্ঞায়িত করুন

    রান/ডিবাগ কনফিগারেশন প্রয়োগ করার আগে আপনি কোন কাজগুলি সম্পাদন করতে হবে তা নির্দিষ্ট করতে পারেন। তালিকায় প্রদর্শিত ক্রমানুসারে কাজগুলি সম্পাদন করা হয়।

    দ্রষ্টব্য: লঞ্চের আগে কাজগুলি নির্ধারণ করা একটি উন্নত বৈশিষ্ট্য। এই বৈশিষ্ট্যটি ব্যবহার করার পরিবর্তে, আমরা আপনাকে আপনার build.gradle ফাইলে যেকোনো প্রস্তুতির যুক্তিকে কাজ হিসাবে রাখার পরামর্শ দিচ্ছি যাতে কমান্ড লাইন থেকে তৈরি করার সময় সেগুলি কার্যকর করা যায়।

    একটি কাজের তালিকা তৈরি করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

    1. Run/Debug Configurations ডায়ালগের নীচে, Before launch (আপনাকে নিচে স্ক্রোল করতে হতে পারে) এর অধীনে, Add এ ক্লিক করুন। এবং একটি কাজের ধরণ নির্বাচন করুন। যদি একটি ডায়ালগ খোলে, ক্ষেত্রগুলি পূরণ করুন এবং ঠিক আছে ক্লিক করুন।
    2. প্রয়োজন অনুযায়ী আরও কাজ যোগ করুন।
    3. কাজগুলো অর্ডার করতে, সেগুলো টেনে আনুন অথবা একটি কাজ নির্বাচন করুন এবং উপরে ক্লিক করুন এবং নিচে তালিকায় উপরে বা নিচে সরাতে।
    4. রান/ডিবাগ কনফিগারেশন সেটিংস প্রয়োগ করার আগে প্রদর্শন করতে চাইলে এই পৃষ্ঠাটি দেখান নির্বাচন করুন।

      এই বিকল্পটি ডিফল্টরূপে অনির্বাচিত করা হয়।

    5. আপনার অ্যাপটি চালানো বা ডিবাগ করার সময় রান বা ডিবাগ টুল উইন্ডোটি সক্রিয় করতে চাইলে অ্যাক্টিভ টুল উইন্ডো নির্বাচন করুন।

      এই বিকল্পটি ডিফল্টরূপে নির্বাচিত।

    তালিকা থেকে কোনও কাজ সরাতে, এই পদক্ষেপগুলি অনুসরণ করুন:

    1. একটি কাজ নির্বাচন করুন।
    2. সরান ক্লিক করুন .

    কোনও কাজ সম্পাদনা করতে, এই পদক্ষেপগুলি অনুসরণ করুন:

    1. একটি কাজ নির্বাচন করুন।
    2. সম্পাদনা ক্লিক করুন .
    3. খোলা ডায়ালগে টাস্ক সেটিংস সম্পাদনা করুন, এবং তারপর ঠিক আছে ক্লিক করুন।

    নিম্নলিখিত সারণীতে আপনি যে কাজগুলি যোগ করতে পারেন তার তালিকা দেওয়া আছে।

    কাজ বিবরণ
    বাহ্যিক টুল চালান Android Studio-এর বাইরের একটি অ্যাপ্লিকেশন চালান। External Tools ডায়ালগে, আপনি যে এক বা একাধিক অ্যাপ্লিকেশন চালাতে চান তা নির্বাচন করুন এবং তারপর OK ক্লিক করুন। যদি অ্যাপ্লিকেশনটি এখনও Android Studio-তে সংজ্ঞায়িত না থাকে, তাহলে Create Tools ডায়ালগে এর সংজ্ঞা যোগ করুন। আরও তথ্যের জন্য, Configuring Third-Party Tools and External Tools দেখুন।
    অন্য একটি কনফিগারেশন চালান বিদ্যমান রান/ডিবাগ কনফিগারেশনগুলির মধ্যে একটি কার্যকর করুন। "কনফিগারেশন থেকে কার্যকর করুন" ডায়ালগে, কার্যকর করার জন্য একটি কনফিগারেশন নির্বাচন করুন এবং তারপর "ঠিক আছে" ক্লিক করুন।
    তৈরি করুন প্রজেক্ট অথবা মডিউল কম্পাইল করুন। রান/ডিবাগ কনফিগারেশন যদি কোন নির্দিষ্ট মডিউল নির্দিষ্ট করে, তাহলে অ্যান্ড্রয়েড স্টুডিও মেক মডিউল কমান্ডটি কার্যকর করে, অথবা যদি কোন মডিউল নির্দিষ্ট না থাকে, তাহলে মেক প্রজেক্ট কমান্ডটি কার্যকর করে।
    প্রকল্প তৈরি করুন প্রকল্পটি কম্পাইল করুন। অ্যান্ড্রয়েড স্টুডিও মেক প্রজেক্ট কমান্ডটি কার্যকর করে।
    তৈরি করুন, কোনও ত্রুটি পরীক্ষা করবেন না এই বিকল্পটি Make এর মতোই, তবে Android Studio কম্পাইলেশন ফলাফল নির্বিশেষে রান/ডিবাগ কনফিগারেশন কার্যকর করে।
    শিল্পকর্ম তৈরি করুন অ্যান্ড্রয়েড স্টুডিওতে সমর্থিত নয়।
    গ্রেডল টাস্ক চালান একটি Gradle টাস্ক চালান। খোলা ডায়ালগে , বিস্তারিত উল্লেখ করুন এবং তারপর OK ক্লিক করুন। আরও তথ্যের জন্য, Gradle দেখুন।
    গ্রেডল-সচেতন মেক প্রকল্পটি কম্পাইল করুন এবং গ্র্যাডেল চালান।
    অ্যাপ ইঞ্জিন গ্রেডল বিল্ডার অ্যাপ ইঞ্জিন গ্রেডল বিল্ডার টাস্ক প্রকল্পটি সিঙ্ক করে এবং তারপর মডিউলটি তৈরি করে।

    কনফিগারেশন টেমপ্লেট

    অ্যান্ড্রয়েড স্টুডিও আপনাকে দ্রুত শুরু করতে সাহায্য করার জন্য কনফিগারেশন টেমপ্লেট প্রদান করে। নিম্নলিখিত বিভাগগুলিতে অ্যান্ড্রয়েড স্টুডিওর সাথে অ্যান্ড্রয়েড ডেভেলপমেন্টের ক্ষেত্রে প্রযোজ্য টেমপ্লেটগুলি বর্ণনা করা হয়েছে:

    দ্রষ্টব্য: অ্যান্ড্রয়েড স্টুডিও ২.১.x এবং তার নিচের সংস্করণগুলিতে একটি নেটিভ অ্যাপ্লিকেশন টেমপ্লেট ছিল, যা নতুন সংস্করণগুলিতে নেই। যদি আপনার কোনও প্রকল্পে একটি নেটিভ অ্যাপ্লিকেশন টেমপ্লেট থাকে, তবে প্রকল্পটি লোড করার সময় অ্যান্ড্রয়েড স্টুডিও এটিকে অ্যান্ড্রয়েড অ্যাপে রূপান্তর করে। একটি কনভার্ট প্রজেক্ট ডায়ালগ আপনাকে প্রক্রিয়াটি পরিচালনা করতে সহায়তা করে।

    অসমর্থিত টেমপ্লেট

    নিম্নলিখিত অসমর্থিত টেমপ্লেটগুলি IntelliJ IDEA থেকে এসেছে এবং এগুলি Android Studio-এর সাথে Android ডেভেলপমেন্টের জন্য নির্দিষ্ট নয়। এই টেমপ্লেটগুলি ব্যবহার সম্পর্কে তথ্যের জন্য, IntelliJ IDEA ডকুমেন্টেশনের লিঙ্কগুলি অনুসরণ করুন।

    সাধারণ কনফিগারেশন বিকল্পগুলি

    নাম , সমান্তরাল রানের অনুমতি দিন এবং প্রকল্প ফাইল হিসাবে সংরক্ষণ করুন বিকল্পগুলি একাধিক কনফিগারেশন টেমপ্লেটের জন্য সাধারণ। এগুলি সম্পর্কে আরও জানতে, সাধারণ সেটিংস দেখুন।

    অ্যান্ড্রয়েড স্টুডিও project_directory /.idea/runConfigurations/ ফোল্ডারের অধীনে পৃথক XML ফাইলগুলিতে শেয়ার্ড রান/ডিবাগ কনফিগারেশন সংরক্ষণ করে। আরও তথ্যের জন্য, IntelliJ প্রকল্প ডকুমেন্টেশনে ডিরেক্টরি-ভিত্তিক ফর্ম্যাট দেখুন।

    অ্যান্ড্রয়েড অ্যাপ

    এই টেমপ্লেটের উপর ভিত্তি করে কনফিগারেশন ব্যবহার করে আপনি ভার্চুয়াল বা হার্ডওয়্যার ডিভাইসে অ্যান্ড্রয়েড অ্যাপ এবং কার্যকলাপ চালাতে বা ডিবাগ করতে পারেন।

    সাধারণ ট্যাব

    সাধারণ ট্যাবে, আপনি ইনস্টলেশন, লঞ্চ এবং স্থাপনার বিকল্পগুলি নির্দিষ্ট করতে পারেন। বিবিধ ট্যাবে ইনস্টলেশন বিকল্পগুলিও রয়েছে।

    মাঠ বিবরণ
    মডিউল এই কনফিগারেশনটি প্রয়োগ করার জন্য একটি মডিউল নির্বাচন করুন।
    ইনস্টলেশন বিকল্প: স্থাপন করুন

    একটি বিকল্প নির্বাচন করুন:

    • ডিফল্ট APK - আপনার বর্তমানে নির্বাচিত ভেরিয়েন্টের জন্য একটি APK তৈরি এবং স্থাপন করুন।
    • অ্যাপ বান্ডেল থেকে APK - একটি অ্যান্ড্রয়েড অ্যাপ বান্ডেল থেকে আপনার অ্যাপ তৈরি করুন এবং স্থাপন করুন। অর্থাৎ, অ্যান্ড্রয়েড স্টুডিও প্রথমে আপনার অ্যাপ প্রজেক্টকে একটি অ্যাপ বান্ডেলে রূপান্তর করে যাতে আপনার অ্যাপের সমস্ত কম্পাইল করা কোড এবং রিসোর্স অন্তর্ভুক্ত থাকে। তারপর, সেই অ্যাপ বান্ডেল থেকে, অ্যান্ড্রয়েড স্টুডিও শুধুমাত্র সেই APK গুলি তৈরি করে যা সংযুক্ত ডিভাইসে আপনার অ্যাপ স্থাপনের জন্য প্রয়োজনীয়। গুগল প্লেতে আপলোড করতে চান এমন অ্যাপ বান্ডেল পরীক্ষা করার সময় আপনার সাধারণত এই বিকল্পটি ব্যবহার করা উচিত কারণ একটি অ্যাপ বান্ডেল থেকে স্থাপন করলে মোট নির্মাণ সময় দীর্ঘ হয়।
    • কাস্টম আর্টিফ্যাক্ট - অ্যান্ড্রয়েড স্টুডিওতে সমর্থিত নয়।
    • কিছুই না - কোনও ডিভাইসে APK ইনস্টল করবেন না। উদাহরণস্বরূপ, যদি আপনি ম্যানুয়ালি APK ইনস্টল করতে চান, তাহলে এটি ইনস্টল করার জন্য আপনার Android Studio-এর প্রয়োজন নেই।
    ইনস্টলেশন বিকল্প: তাৎক্ষণিক অ্যাপ হিসেবে স্থাপন করুন যদি আপনার অ্যাপ তাৎক্ষণিক অভিজ্ঞতা সমর্থন করে—অর্থাৎ, আপনি একটি নতুন প্রকল্প তৈরি করার সময় তাৎক্ষণিক অ্যাপগুলির জন্য সমর্থন যোগ করেন, অথবা আপনি এক বা একাধিক তাৎক্ষণিক-সক্ষম বৈশিষ্ট্য মডিউল তৈরি করেন—আপনি "Deploy as instant app" এর পাশের বাক্সটি চেক করে সেই তাৎক্ষণিক-সক্ষম মডিউলগুলি স্থাপন করতে পারেন।
    ইনস্টলেশন বিকল্প: স্থাপনের জন্য বৈশিষ্ট্য যদি আপনার অ্যাপে ফিচার মডিউল থাকে, তাহলে আপনার অ্যাপ স্থাপনের সময় আপনি যে বৈশিষ্ট্যগুলি অন্তর্ভুক্ত করতে চান তার পাশের বাক্সটি চেক করুন। আপনার অ্যাপে ফিচার মডিউলগুলি থাকলেই আপনি এই বিকল্পটি দেখতে পাবেন।

    দ্রষ্টব্য: যদি আপনি চাহিদা অনুযায়ী ফিচার মডিউল ডাউনলোড এবং ইনস্টল করার পরীক্ষা করতে চান, তাহলে আপনার অ্যাপ বান্ডেল প্রকাশের পরে তা করতে হবে এবং তারপর প্লে কনসোলের অভ্যন্তরীণ পরীক্ষা ট্র্যাক ব্যবহার করতে হবে। আরও জানতে, প্লে কনসোলে আপনার অ্যাপ বান্ডেল আপলোড করুন পড়ুন।

    ইনস্টলেশন বিকল্প: পতাকা ইনস্টল করুন আপনি যে কোনও adb pm install অপশন ব্যবহার করতে চান তা টাইপ করুন। কমান্ড লাইনের মতোই অপশনগুলি ফর্ম্যাট করুন, কিন্তু কোনও পাথ ছাড়াই। এখানে কিছু উদাহরণ দেওয়া হল:

    -i foo.bar.baz -r /path/to/apk

    এবং

    -d -r

    ডিফল্ট: কোন বিকল্প নেই।

    লঞ্চ বিকল্প: লঞ্চ

    একটি বিকল্প নির্বাচন করুন:

    • Nothing - Run অথবা Debug নির্বাচন করলে কিছু চালু করবেন না। তবে, যদি আপনার অ্যাপটি ইতিমধ্যেই চলমান থাকে এবং আপনি Debug নির্বাচন করেন, তাহলে Android Studio আপনার অ্যাপ প্রক্রিয়ার সাথে ডিবাগারটি সংযুক্ত করবে।
    • ডিফল্ট অ্যাক্টিভিটি - ম্যানিফেস্টে স্টার্টআপ হিসেবে চিহ্নিত অ্যাক্টিভিটি চালু করুন। উদাহরণস্বরূপ:
      <intent-filter>
        <action android:name="android.intent.action.MAIN" />
        <category android:name="android.intent.category.LAUNCHER" />
      </intent-filter>
    • নির্দিষ্ট কার্যকলাপ - আপনার মডিউলে একটি নির্দিষ্ট অ্যাপ কার্যকলাপ চালু করুন। নির্বাচন করা হলে, কার্যকলাপ ক্ষেত্রটি নীচে প্রদর্শিত হবে, যেখানে আপনি যে কার্যকলাপটি চালু করতে চান তার নাম টাইপ করতে পারেন, অথবা তালিকা থেকে একটি কার্যকলাপ নির্বাচন করতে আরও ক্লিক করতে পারেন।
    • URL - আপনার অ্যাপের ম্যানিফেস্টে থাকা একটি ইন্টেন্ট ফিল্টারের সাথে মেলে এমন একটি URL চালু করুন। নির্বাচিত হলে, URL ক্ষেত্রটি নীচে প্রদর্শিত হবে, যেখানে আপনি URLটি লিখতে পারেন।

      একটি অ্যান্ড্রয়েড ইনস্ট্যান্ট অ্যাপ চালু করতে আপনাকে এই ক্ষেত্রটি পূরণ করতে হবে। আপনি আপনার অ্যান্ড্রয়েড অ্যাপ লিঙ্কগুলি পরীক্ষা করার জন্যও এটি ব্যবহার করতে পারেন।

    লঞ্চ বিকল্প: লঞ্চ পতাকা আপনি যে কোনও adb am start অপশন ব্যবহার করতে চান তা টাইপ করুন। কমান্ড লাইনের মতোই অপশনগুলি ফর্ম্যাট করুন, তবে কোনও উদ্দেশ্য ছাড়াই। উদাহরণস্বরূপ:

    -W

    আপনি যদি Nothing এর Launch মান বেছে নেন তাহলে এই বিকল্পটি প্রদর্শিত হবে না।

    ডিফল্ট: কোন বিকল্প নেই।

    স্থাপনার লক্ষ্য বিকল্প: লক্ষ্য

    একটি বিকল্প নির্বাচন করুন:

    • Select Deployment Target ডায়ালগ খুলুন - একটি ভার্চুয়াল বা হার্ডওয়্যার ডিভাইস নির্বাচন করতে Select Deployment Target ডায়ালগ খুলুন।
    • USB ডিভাইস - একটি USB পোর্টের মাধ্যমে আপনার ডেভেলপমেন্ট কম্পিউটারের সাথে সংযুক্ত একটি হার্ডওয়্যার ডিভাইস ব্যবহার করুন। যদি একাধিক থাকে, তাহলে একটি ডায়ালগ প্রদর্শিত হবে যাতে আপনি এটি নির্বাচন করতে পারেন।
    • এমুলেটর - একটি ভার্চুয়াল ডিভাইস ব্যবহার করুন। একটি কনফিগারেশনে, আপনি একটি AVD নির্বাচন করতে পারেন; অন্যথায়, এটি কেবল তালিকার প্রথম AVD ব্যবহার করে।

    স্থাপনার লক্ষ্য বিকল্প: ভবিষ্যতের লঞ্চের জন্য একই ডিভাইস ব্যবহার করুন

    ডিফল্টরূপে এই বিকল্পটি অনির্বাচিত থাকে, তাই প্রতিবার যখন আপনি একটি অ্যাপ চালান, তখন একটি ডিভাইস নির্বাচন করার জন্য Select Deployment ডায়ালগ প্রদর্শিত হয়। যখন আপনি এই বিকল্পটি নির্বাচন করেন এবং তারপর একটি অ্যাপ চালান, তখন একটি ডিভাইস নির্বাচন করার জন্য Select Deployment ডায়ালগ প্রদর্শিত হয়। তারপর, প্রতিবার যখন আপনি অ্যাপটি চালান, তখন এটি আপনার নির্বাচিত ডিভাইসে Select Deployment ডায়ালগ প্রদর্শন না করেই চালু হয়। অন্য ডিভাইসে অ্যাপটি চালানোর জন্য, হয় Use same device for future launches কে অনির্বাচিত করুন, অথবা Run > Stop app অথবা Stop ব্যবহার করে অ্যাপটি বন্ধ করুন। , এবং তারপর আবার শুরু করুন। Select Deployment ডায়ালগটি প্রদর্শিত হবে যাতে আপনি একটি ডিভাইস নির্বাচন করতে পারেন।
    লঞ্চের আগে লঞ্চের আগে অপারেশনের সংজ্ঞা দেখুন।

    বিবিধ ট্যাব

    বিবিধ ট্যাবে, আপনি লগক্যাট, ইনস্টলেশন, লঞ্চ এবং স্থাপনার বিকল্পগুলি নির্দিষ্ট করতে পারেন। সাধারণ ট্যাবে ইনস্টলেশন বিকল্পগুলিও রয়েছে।

    মাঠ বিবরণ
    লগক্যাট: স্বয়ংক্রিয়ভাবে লগক্যাট দেখান এই বিকল্পটি নির্বাচন করা হলে, এই কনফিগারেশন ব্যবহার করে আপনি যখনই সফলভাবে কোনও অ্যাপ স্থাপন এবং চালু করেন তখন লগক্যাট উইন্ডোটি খোলে। ডিফল্ট: নির্বাচিত।
    লগক্যাট: লঞ্চের আগে লগ সাফ করুন অ্যাপটি শুরু করার আগে যদি আপনি চান যে অ্যান্ড্রয়েড স্টুডিও লগ ফাইল থেকে পূর্ববর্তী সেশনের ডেটা মুছে ফেলুক, তাহলে এই বিকল্পটি নির্বাচন করুন। ডিফল্ট: অনির্বাচিত।
    ইনস্টলেশনের বিকল্প: APK পরিবর্তন না হলে ইনস্টলেশন এড়িয়ে যান। নির্বাচিত থাকাকালীন, Android Studio যদি আপনার APK অপরিবর্তিত থাকে তা সনাক্ত করে তবে এটি পুনরায় স্থাপন করবে না। যদি আপনি চান যে Android Studio APK জোর করে ইনস্টল করুক, এমনকি যদি এটি পরিবর্তন নাও হয়, তাহলে এই বিকল্পটি অনির্বাচন করুন। ডিফল্ট: নির্বাচিত
    ইনস্টলেশন বিকল্প: কার্যকলাপ শুরু করার আগে অ্যাপ্লিকেশন চালানো জোর করে বন্ধ করুন

    যদি নির্বাচন করা হয়, তাহলে যখন Android Studio সনাক্ত করে যে APK পরিবর্তন না হওয়ার কারণে এটি পুনরায় ইনস্টল করার প্রয়োজন নেই, তখন এটি অ্যাপটিকে জোর করে বন্ধ করে দেবে যাতে অ্যাপটি ডিফল্ট লঞ্চার কার্যকলাপ থেকে শুরু হয়। যদি এই বিকল্পটি অনির্বাচিত করা হয়, তাহলে Android Studio অ্যাপটিকে জোর করে বন্ধ করে না।

    এই বিকল্পটি পূর্ববর্তী বিকল্পের সাথে কাজ করে যা একটি APK ইনস্টল করা আছে কিনা তা নিয়ন্ত্রণ করে। উভয় ইনস্টলেশন বিকল্প ক্ষেত্রের জন্য, যদি না আপনি স্পষ্টভাবে প্রতিবার জোর করে ইনস্টল করতে চান তবে সেগুলিকে ডিফল্ট অবস্থায় রেখে দিন।

    কিছু ক্ষেত্রে আপনি এই বিকল্পটি অনির্বাচিত করতে চাইতে পারেন। উদাহরণস্বরূপ, যদি আপনি একটি ইনপুট পদ্ধতি ইঞ্জিন (IME) লিখছেন, তাহলে অ্যাপটিকে জোর করে বন্ধ করলে এটি বর্তমান কীবোর্ড হিসাবে অনির্বাচিত হয়ে যাবে, যা আপনি হয়তো চাইবেন না।

    ডিফল্ট: নির্বাচিত

    লঞ্চের আগে লঞ্চের আগে অপারেশনের সংজ্ঞা দেখুন।

    ডিবাগার ট্যাব

    ডিবাগার ট্যাবে ডিবাগ বিকল্পগুলি নির্দিষ্ট করুন।

    C এবং C++ কোডের জন্য, Android Studio LLDB ডিবাগার ব্যবহার করে। সাধারণ Android Studio UI ছাড়াও, ডিবাগার উইন্ডোতে একটি LLDB ট্যাব রয়েছে যা আপনাকে ডিবাগিংয়ের সময় LLDB কমান্ড প্রবেশ করতে দেয়। আপনি ডিবাগার UI-তে তথ্য প্রদর্শনের জন্য Android Studio যে কমান্ডগুলি ব্যবহার করে সেগুলি প্রবেশ করতে পারেন এবং আপনি অতিরিক্ত ক্রিয়াকলাপ সম্পাদন করতে পারেন।

    C এবং C++ প্রকল্পের জন্য, আপনি ডিবাগার ট্যাবে প্রতীক ডিরেক্টরি, পাশাপাশি LLDB স্টার্টআপ এবং পোস্ট অ্যাটাচ কমান্ড যোগ করতে পারেন। এটি করার জন্য, আপনাকে নিম্নলিখিতগুলির মতো বোতামগুলি ব্যবহার করতে হবে:

    • যোগ করুন - একটি ডিরেক্টরি বা কমান্ড যোগ করুন।
    • অপসারণ- একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর আইটেমটি সরাতে এই বোতামটি ক্লিক করুন।
    • উপরে - একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর তালিকার উপরে আইটেমটি সরাতে এই বোতামটি ক্লিক করুন।
    • নিচে - একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর তালিকার আইটেমটি নীচে সরাতে এই বোতামটি ক্লিক করুন।

    অ্যান্ড্রয়েড স্টুডিওতে ডিবাগিং সম্পর্কে আরও তথ্যের জন্য ডিবাগ ইওর অ্যাপ দেখুন।

    মাঠ বিবরণ
    ডিবাগ টাইপ

    নিম্নলিখিত বিকল্পগুলির মধ্যে একটি নির্বাচন করুন:

    • শুধুমাত্র জাভা - শুধুমাত্র জাভা কোড ডিবাগ করুন।
    • স্বয়ংক্রিয়ভাবে সনাক্ত করুন - আপনার প্রকল্পের জন্য অ্যান্ড্রয়েড স্টুডিওকে সেরা ডিবাগ প্রকারটি বেছে নিতে দিন।
    • শুধুমাত্র নেটিভ - নেটিভ C অথবা C++ কোড ডিবাগ করুন।
    • ডুয়াল (জাভা + নেটিভ) - দুটি পৃথক ডিবাগ সেশনে জাভা এবং নেটিভ কোড ডিবাগ করুন।

    "Detect Automatically" বিকল্পটি সুপারিশ করা হয় কারণ এটি আপনার প্রকল্পের জন্য সঠিক ডিবাগ প্রকারটি বেছে নেয়।

    প্রতীক ডিরেক্টরি

    যদি আপনি অ্যান্ড্রয়েড স্টুডিওর বাইরে জেনারেট করা C বা C++ তথ্য ডিবাগারে সরবরাহ করার জন্য প্রতীক ফাইল যোগ করতে চান, তাহলে আপনি এখানে এক বা একাধিক ডিরেক্টরি যোগ করতে পারেন। অ্যান্ড্রয়েড স্টুডিও গ্র্যাডলের জন্য অ্যান্ড্রয়েড প্লাগইন দ্বারা জেনারেট করা ফাইলের চেয়ে এই ডিরেক্টরিগুলির মধ্যে যেকোনো ফাইলকে অগ্রাধিকার দেয়। ডিবাগারটি তার প্রয়োজনীয় জিনিস খুঁজে না পাওয়া পর্যন্ত উপরে থেকে নীচে পর্যন্ত ডিরেক্টরিগুলি অনুসন্ধান করে। এটি ডিরেক্টরির মধ্যে থাকা ফাইলগুলির মাধ্যমে পুনরাবৃত্তিমূলকভাবে অনুসন্ধান করে। তালিকাটি অপ্টিমাইজ করতে এবং সময় বাঁচাতে, সর্বাধিক ব্যবহৃত ডিরেক্টরিগুলি তালিকার শীর্ষে রাখুন।

    যদি আপনি ট্রিতে উচ্চতর একটি ডিরেক্টরি নির্দিষ্ট করেন, তাহলে সমস্ত সাবডিরেক্টরি অনুসন্ধান করতে বেশি সময় লাগতে পারে। যদি আপনি একটি খুব নির্দিষ্ট ডিরেক্টরি যোগ করেন, তাহলে অনুসন্ধান করতে কম সময় লাগে। ডিবাগিংয়ের জন্য আপনার প্রয়োজনীয় ফাইলগুলি খুঁজে বের করার গতি এবং অনুসন্ধানের মধ্যে সঠিক ভারসাম্য খুঁজে বের করতে হবে। উদাহরণস্বরূপ, যদি আপনার এমন একটি ডিরেক্টরি থাকে যেখানে বিভিন্ন অ্যান্ড্রয়েড বাইনারি ইন্টারফেস (ABI) এর জন্য সাবডিরেক্টরি থাকে, তাহলে আপনি একটি নির্দিষ্ট ABI বা সমস্ত ABI এর জন্য একটি ডিরেক্টরি যোগ করতে পারেন। যদিও উচ্চ-স্তরের ডিরেক্টরি অনুসন্ধান করতে বেশি সময় লাগতে পারে, তবে আপনি যদি অন্য কোনও ডিভাইসে ডিবাগ করার সিদ্ধান্ত নেন তবে এটি আরও নির্ভুল।

    মনে রাখবেন যে আপনাকে Gradle প্রতীক ফাইল ধারণকারী ডিরেক্টরি যোগ করতে হবে না কারণ ডিবাগার স্বয়ংক্রিয়ভাবে সেগুলি ব্যবহার করে।

    LLDB স্টার্টআপ কমান্ড

    ডিবাগারটি প্রক্রিয়াটিতে সংযুক্ত হওয়ার আগে আপনি যে LLDB কমান্ডগুলি কার্যকর করতে চান তা যুক্ত করুন। উদাহরণস্বরূপ, আপনি পরিবেশের জন্য সেটিংস সংজ্ঞায়িত করতে পারেন, যেমনটি নিম্নলিখিত কমান্ডে দেখানো হয়েছে:

    settings set target.max-memory-read-size 2048

    LLDB কমান্ডগুলি উপর থেকে নীচে ক্রমানুসারে কার্যকর করে।

    LLDB পোস্ট অ্যাটাচ কমান্ড

    ডিবাগারটি প্রক্রিয়াটিতে সংযুক্ত হওয়ার সাথে সাথেই আপনি যে LLDB কমান্ডগুলি কার্যকর করতে চান তা যুক্ত করুন। উদাহরণস্বরূপ:

    process handle SIGPIPE -n true -p true -s false

    LLDB কমান্ডগুলি উপর থেকে নীচে ক্রমানুসারে কার্যকর করে।

    হোস্ট ওয়ার্কিং ডিরেক্টরি LLDB ওয়ার্কিং ডিরেক্টরি উল্লেখ করুন।
    লগিং: লক্ষ্য চ্যানেল

    LLDB লগ অপশন নির্দিষ্ট করুন। অ্যান্ড্রয়েড স্টুডিও টিমের অভিজ্ঞতার উপর ভিত্তি করে ডিফল্ট অপশন সেট করে — তাই এটি খুব ধীর নয় তবে সমস্যা সমাধানের জন্য প্রয়োজনীয় তথ্য ধারণ করে। অ্যান্ড্রয়েড স্টুডিও বাগ রিপোর্টের জন্য প্রায়শই লগটি অনুরোধ করা হয়। এই ডিফল্ট হল

    lldb process:gdb-remote packets

    আরও তথ্য সংগ্রহের জন্য আপনি ডিফল্ট পরিবর্তন করতে পারেন। উদাহরণস্বরূপ, নিম্নলিখিত লগ বিকল্পগুলি একটি নির্দিষ্ট platform সম্পর্কে তথ্য সংগ্রহ করে:

    lldb process platform :gdb-remote packets

    লগ কমান্ডের সম্পূর্ণ তালিকার জন্য, অ্যান্ড্রয়েড স্টুডিওতে একটি LLDB শেল উইন্ডো থেকে log list কমান্ডটি প্রবেশ করান।

    অ্যান্ড্রয়েড স্টুডিও নিম্নলিখিত স্থানে ডিভাইস লগ স্থাপন করে, যেখানে ApplicationId হল আপনার তৈরি APK ম্যানিফেস্টে ব্যবহৃত অনন্য অ্যাপ্লিকেশন আইডি, এবং আপনার ডিভাইসে এবং গুগল প্লে স্টোরে আপনার অ্যাপটি সনাক্ত করে:

    /data/data/ ApplicationId /lldb/log

    অথবা, যদি একাধিক ব্যবহারকারী একটি ডিভাইস অ্যাক্সেস করে, তাহলে এটি লগগুলিকে নিম্নলিখিত স্থানে রাখে, যেখানে AndroidUserId হল ডিভাইসের ব্যবহারকারীর জন্য একটি অনন্য শনাক্তকারী:

    /data/user/ AndroidUserId / ApplicationId /lldb/log

    রিমোট ডিবাগিংয়ের জন্য LLDB ব্যবহার সম্পর্কে তথ্যের জন্য, রিমোট ডিবাগিং দেখুন।

    লঞ্চের আগে লঞ্চের আগে অপারেশনের সংজ্ঞা দেখুন।

    প্রোফাইলিং ট্যাব

    আপনার ডিভাইসে যখন Android 7.1 বা তার নিচের ভার্সন চলছে, তখন Android Profiler- এ কিছু নির্দিষ্ট বৈশিষ্ট্য সক্রিয় করতে "Enable advanced profileling" বিকল্পটি অবশ্যই চেক করতে হবে।

    অ্যান্ড্রয়েড পরীক্ষা

    আপনার ব্যবহৃত টেস্ট টেমপ্লেটটি আপনার সোর্স সেটের উপর নির্ভর করে। অ্যান্ড্রয়েড ইন্সট্রুমেন্টেড টেস্ট টেমপ্লেটটি একটি ইন্সট্রুমেন্টেড টেস্টের জন্য। অ্যান্ড্রয়েড জুনিট টেমপ্লেটটি একটি স্থানীয় ইউনিট পরীক্ষার জন্য।

    দ্রষ্টব্য: আপনি যদি বিভিন্ন ডিভাইসে পরীক্ষা করার জন্য Firebase Test Lab ব্যবহার করেন, তাহলে আপনার যন্ত্রযুক্ত পরীক্ষাগুলি সংজ্ঞায়িত করতে আপনি Android JUnit টেমপ্লেট ব্যবহার করতে পারেন। আরও তথ্যের জন্য, Run Your Tests with Firebase Test Lab দেখুন।

    নিম্নলিখিত ট্যাব বর্ণনায় অ্যান্ড্রয়েড ইনস্ট্রুমেন্টেড টেস্ট টেমপ্লেটের ট্যাব এবং ফিল্ডগুলি অন্তর্ভুক্ত রয়েছে। অ্যান্ড্রয়েড JUnit টেস্ট টেমপ্লেটের ট্যাব এবং ফিল্ড সম্পর্কে তথ্যের জন্য, IntelliJ রান/ডিবাগ কনফিগারেশন: JUnit পৃষ্ঠাটি দেখুন।

    সাধারণ ট্যাব

    জেনারেল ট্যাবে, আপনি পরীক্ষার অবস্থান, ইন্সট্রুমেন্টেশন রানার, অ্যাডবি শেল এবং ডিপ্লয়মেন্ট বিকল্পগুলি নির্দিষ্ট করতে পারেন।

    মাঠ বিবরণ
    মডিউল এই কনফিগারেশনটি প্রয়োগ করার জন্য একটি মডিউল নির্বাচন করুন।
    পরীক্ষা

    এই অংশে, আপনি যে পরীক্ষাগুলি চালাতে চান তার অবস্থান নির্দিষ্ট করুন:

    • সব মডিউলে - নির্বাচিত মডিউল থেকে সমস্ত পরীক্ষা চালু করুন।
    • প্যাকেজে সব - প্যাকেজ ক্ষেত্রের মধ্যে উল্লেখিত প্যাকেজ থেকে সকল পরীক্ষা শুরু করুন। নামটি টাইপ করুন, অথবা ডায়ালগ থেকে প্যাকেজটি নির্বাচন করতে আরও ক্লিক করুন।
    • ক্লাস - ক্লাস ফিল্ডে নির্দিষ্ট ক্লাসের পরীক্ষা শুরু করুন। নাম টাইপ করুন, অথবা ডায়ালগ থেকে ক্লাস নির্বাচন করতে আরও ক্লিক করুন।
    • পদ্ধতি - একটি পরীক্ষা পদ্ধতি চালু করুন। ক্লাস ক্ষেত্রে, পদ্ধতিটি ধারণকারী ক্লাসটি নির্দিষ্ট করুন। পদ্ধতি ক্ষেত্রে, পদ্ধতিটি নির্দিষ্ট করুন। নামটি টাইপ করুন, অথবা ডায়ালগ থেকে ক্লাস বা পদ্ধতি নির্বাচন করতে আরও ক্লিক করুন।
    নির্দিষ্ট যন্ত্রের রানার (ঐচ্ছিক) ইন্সট্রুমেন্টেশন রানারের অবস্থান টাইপ করুন; ডায়ালগ ব্যবহার করতে More এ ক্লিক করুন। build.gradle ফাইলটি ইন্সট্রুমেন্টেশন রানারের অবস্থান নির্দিষ্ট করে; এই মানটি এটিকে ওভাররাইড করে। ডিফল্ট সাধারণত AndroidX Test থেকে AndroidJUnitRunner ক্লাস।
    অতিরিক্ত বিকল্প

    আপনি যে কোনও adb am instrument অপশন ব্যবহার করতে চান তা টাইপ করুন। কম্পোনেন্ট টাইপ করবেন না। উদাহরণস্বরূপ, যদি আপনি AndroidX Test থেকে AndroidJUnitRunner ব্যবহার করেন, তাহলে আপনি রানারে অতিরিক্ত বিকল্পগুলি পাস করতে এই ফিল্ডটি ব্যবহার করতে পারেন, যেমন -e size small

    ডিফল্ট: কোনও বিকল্প নেই

    স্থাপনার লক্ষ্য বিকল্প: লক্ষ্য

    একটি বিকল্প নির্বাচন করুন:

    • Select Deployment Target ডায়ালগ খুলুন - একটি ভার্চুয়াল বা হার্ডওয়্যার ডিভাইস নির্বাচন করতে Select Deployment Target ডায়ালগ খুলুন।
    • USB ডিভাইস - একটি USB পোর্টের মাধ্যমে আপনার ডেভেলপমেন্ট কম্পিউটারের সাথে সংযুক্ত একটি হার্ডওয়্যার ডিভাইস ব্যবহার করুন। যদি একাধিক থাকে, তাহলে একটি ডায়ালগ প্রদর্শিত হবে যাতে আপনি এটি নির্বাচন করতে পারেন।
    • এমুলেটর - একটি ভার্চুয়াল ডিভাইস ব্যবহার করুন। একটি কনফিগারেশনে, আপনি একটি AVD নির্বাচন করতে পারেন; অন্যথায়, এটি কেবল তালিকার প্রথম AVD ব্যবহার করে।
    • ফায়ারবেস টেস্ট ল্যাব ডিভাইস ম্যাট্রিক্স - ফায়ারবেস টেস্ট ল্যাব দিয়ে আপনার পরীক্ষাগুলি চালান দেখুন।
    স্থাপনার লক্ষ্য বিকল্প: ভবিষ্যতের লঞ্চের জন্য একই ডিভাইস ব্যবহার করুন ভবিষ্যতে যদি আপনি "নির্বাচন লক্ষ্য নির্বাচন করুন" ডায়ালগের মাধ্যমে আপনার নির্বাচিত ডিভাইসটি স্বয়ংক্রিয়ভাবে ব্যবহার করতে চান, তাহলে এই বিকল্পটি নির্বাচন করুন। যদি ডিভাইসটি উপলব্ধ না থাকে, তাহলে আপনি একটি ডায়ালগ পাবেন। ডিফল্ট: অনির্বাচিত
    লঞ্চের আগে লঞ্চের আগে অপারেশনের সংজ্ঞা দেখুন।

    বিবিধ ট্যাব

    বিবিধ ট্যাবে লগক্যাট এবং ইনস্টলেশন বিকল্প রয়েছে।

    মাঠ বিবরণ
    লগক্যাট: লঞ্চের আগে লগ সাফ করুন অ্যাপটি শুরু করার আগে যদি আপনি চান যে অ্যান্ড্রয়েড স্টুডিও লগ ফাইল থেকে পূর্ববর্তী সেশনের ডেটা মুছে ফেলুক, তাহলে এই বিকল্পটি নির্বাচন করুন। ডিফল্ট: অনির্বাচিত।
    ইনস্টলেশনের বিকল্প: APK পরিবর্তন না হলে ইনস্টলেশন এড়িয়ে যান। নির্বাচিত থাকাকালীন, Android Studio যদি আপনার APK অপরিবর্তিত থাকে তা সনাক্ত করে তবে এটি পুনরায় স্থাপন করবে না। যদি আপনি চান যে Android Studio APK জোর করে ইনস্টল করুক, এমনকি যদি এটি পরিবর্তন নাও হয়, তাহলে এই বিকল্পটি অনির্বাচন করুন। ডিফল্ট: নির্বাচিত
    ইনস্টলেশন বিকল্প: কার্যকলাপ শুরু করার আগে অ্যাপ্লিকেশন চালানো জোর করে বন্ধ করুন

    যদি নির্বাচন করা হয়, তাহলে যখন Android Studio সনাক্ত করে যে APK পরিবর্তন না হওয়ার কারণে এটি পুনরায় ইনস্টল করার প্রয়োজন নেই, তখন এটি অ্যাপটিকে জোর করে বন্ধ করে দেবে যাতে অ্যাপটি ডিফল্ট লঞ্চার কার্যকলাপ থেকে শুরু হয়। যদি এই বিকল্পটি অনির্বাচিত করা হয়, তাহলে Android Studio অ্যাপটিকে জোর করে বন্ধ করে না।

    এই বিকল্পটি পূর্ববর্তী বিকল্পের সাথে একত্রে কাজ করে যা একটি APK ইনস্টল করা আছে কিনা তা নিয়ন্ত্রণ করে। উভয় ইনস্টলেশন বিকল্প ক্ষেত্রের জন্য, যদি না আপনি স্পষ্টভাবে প্রতিবার জোর করে ইনস্টল করতে চান তবে সেগুলিকে ডিফল্ট অবস্থায় রেখে দিন।

    কিছু ক্ষেত্রে আপনি এই বিকল্পটি অনির্বাচিত করতে চাইতে পারেন। উদাহরণস্বরূপ, যদি আপনি একটি ইনপুট পদ্ধতি ইঞ্জিন (IME) লিখছেন, তাহলে অ্যাপটিকে জোর করে বন্ধ করলে এটি বর্তমান কীবোর্ড হিসাবে অনির্বাচিত হয়ে যাবে, যা আপনি হয়তো চাইবেন না।

    ডিফল্ট: নির্বাচিত

    লঞ্চের আগে লঞ্চের আগে অপারেশনের সংজ্ঞা দেখুন।

    ডিবাগার ট্যাব

    ডিবাগার ট্যাবে ডিবাগ বিকল্পগুলি নির্দিষ্ট করুন।

    C এবং C++ কোডের জন্য, Android Studio LLDB ডিবাগার ব্যবহার করে। সাধারণ Android Studio UI ছাড়াও, ডিবাগার উইন্ডোতে একটি LLDB ট্যাব রয়েছে যা আপনাকে ডিবাগিংয়ের সময় LLDB কমান্ড প্রবেশ করতে দেয়। আপনি ডিবাগার UI-তে তথ্য প্রদর্শনের জন্য Android Studio যে কমান্ডগুলি ব্যবহার করে সেগুলি প্রবেশ করতে পারেন এবং আপনি অতিরিক্ত ক্রিয়াকলাপ সম্পাদন করতে পারেন।

    C এবং C++ প্রকল্পের জন্য, আপনি ডিবাগার ট্যাবে প্রতীক ডিরেক্টরি, পাশাপাশি LLDB স্টার্টআপ এবং পোস্ট অ্যাটাচ কমান্ড যোগ করতে পারেন। এটি করার জন্য, আপনাকে নিম্নলিখিতগুলির মতো বোতামগুলি ব্যবহার করতে হবে:

    • যোগ করুন - একটি ডিরেক্টরি বা কমান্ড যোগ করুন।
    • অপসারণ- একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর আইটেমটি সরাতে এই বোতামটি ক্লিক করুন।
    • উপরে - একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর তালিকার উপরে আইটেমটি সরাতে এই বোতামটি ক্লিক করুন।
    • নিচে - একটি ডিরেক্টরি বা কমান্ড নির্বাচন করুন, এবং তারপর তালিকার আইটেমটি নীচে সরাতে এই বোতামটি ক্লিক করুন।

    অ্যান্ড্রয়েড স্টুডিওতে ডিবাগিং সম্পর্কে আরও তথ্যের জন্য ডিবাগ ইওর অ্যাপ দেখুন।

    মাঠ বিবরণ
    ডিবাগ টাইপ

    নিম্নলিখিত বিকল্পগুলির মধ্যে একটি নির্বাচন করুন:

    • শুধুমাত্র জাভা - শুধুমাত্র জাভা কোড ডিবাগ করুন।
    • স্বয়ংক্রিয়ভাবে সনাক্ত করুন - আপনার প্রকল্পের জন্য অ্যান্ড্রয়েড স্টুডিওকে সেরা ডিবাগ প্রকারটি বেছে নিতে দিন।
    • শুধুমাত্র নেটিভ - নেটিভ C অথবা C++ কোড ডিবাগ করুন।
    • ডুয়াল (জাভা + নেটিভ) - দুটি পৃথক ডিবাগ সেশনে জাভা এবং নেটিভ কোড ডিবাগ করুন।

    "Detect Automatically" বিকল্পটি সুপারিশ করা হয় কারণ এটি আপনার প্রকল্পের জন্য সঠিক ডিবাগ প্রকারটি বেছে নেয়।

    প্রতীক ডিরেক্টরি

    যদি আপনি অ্যান্ড্রয়েড স্টুডিওর বাইরে জেনারেট করা C বা C++ তথ্য ডিবাগারে সরবরাহ করার জন্য প্রতীক ফাইল যোগ করতে চান, তাহলে আপনি এখানে এক বা একাধিক ডিরেক্টরি যোগ করতে পারেন। অ্যান্ড্রয়েড স্টুডিও গ্র্যাডলের জন্য অ্যান্ড্রয়েড প্লাগইন দ্বারা জেনারেট করা ফাইলের চেয়ে এই ডিরেক্টরিগুলির মধ্যে যেকোনো ফাইলকে অগ্রাধিকার দেয়। ডিবাগারটি তার প্রয়োজনীয় জিনিস খুঁজে না পাওয়া পর্যন্ত উপরে থেকে নীচে পর্যন্ত ডিরেক্টরিগুলি অনুসন্ধান করে। এটি ডিরেক্টরির মধ্যে থাকা ফাইলগুলির মাধ্যমে পুনরাবৃত্তিমূলকভাবে অনুসন্ধান করে। তালিকাটি অপ্টিমাইজ করতে এবং সময় বাঁচাতে, সর্বাধিক ব্যবহৃত ডিরেক্টরিগুলি তালিকার শীর্ষে রাখুন।

    যদি আপনি ট্রিতে উচ্চতর একটি ডিরেক্টরি নির্দিষ্ট করেন, তাহলে সমস্ত সাবডিরেক্টরি অনুসন্ধান করতে বেশি সময় লাগতে পারে। যদি আপনি একটি খুব নির্দিষ্ট ডিরেক্টরি যোগ করেন, তাহলে অনুসন্ধান করতে কম সময় লাগে। ডিবাগিংয়ের জন্য আপনার প্রয়োজনীয় ফাইলগুলি খুঁজে বের করার গতি এবং অনুসন্ধানের মধ্যে সঠিক ভারসাম্য খুঁজে বের করতে হবে। উদাহরণস্বরূপ, যদি আপনার এমন একটি ডিরেক্টরি থাকে যেখানে বিভিন্ন অ্যান্ড্রয়েড বাইনারি ইন্টারফেস (ABI) এর জন্য সাবডিরেক্টরি থাকে, তাহলে আপনি একটি নির্দিষ্ট ABI বা সমস্ত ABI এর জন্য একটি ডিরেক্টরি যোগ করতে পারেন। যদিও উচ্চ-স্তরের ডিরেক্টরি অনুসন্ধান করতে বেশি সময় লাগতে পারে, তবে আপনি যদি অন্য কোনও ডিভাইসে ডিবাগ করার সিদ্ধান্ত নেন তবে এটি আরও নির্ভুল।

    Note that you don't have to add directories containing Gradle symbol files because the debugger uses them automatically.

    LLDB Startup Commands

    Add LLDB commands that you want to execute before the debugger attaches to the process. For example, you can define settings for the environment, as shown in the following command:

    settings set target.max-memory-read-size 2048

    LLDB executes the commands in order from top to bottom.

    LLDB Post Attach Commands

    Add LLDB commands that you want to execute right after the debugger attaches to the process. For example:

    process handle SIGPIPE -n true -p true -s false

    LLDB executes the commands in order from top to bottom.

    Host working directory Specify the LLDB working directory.
    Logging: Target channels

    Specify LLDB log options. Android Studio sets the default options based on the team's experience — so it's not too slow but contains needed information for troubleshooting issues. The log is often requested for Android Studio bug reports. This default is

    lldb process:gdb-remote packets

    You can change the default to gather more information. For example, the following log options gather information about a specific platform :

    lldb process platform :gdb-remote packets

    For a complete list of log commands, enter the log list command from an LLDB shell window in Android Studio.

    Android Studio places device logs in the following location, where ApplicationId is the unique application ID that's used in your built APK manifest, and identifies your app on your device and in the Google Play Store:

    /data/data/ ApplicationId /lldb/log

    Or, if multiple users access a device, it places the logs in the following location, where AndroidUserId is a unique identifier for a user on the device:

    /data/user/ AndroidUserId / ApplicationId /lldb/log

    For information about using LLDB for remote debugging, see Remote Debugging .

    Before Launch See Defining Before Launch Operations .

    App Engine DevAppServer

    This run/debug configuration applies to the Google Cloud Platform. When you follow these steps and sync your project to the build.gradle file, Android Studio creates an App Engine DevAppServer configuration for you.

    Note that the IntellJ IDEA App Engine Server template is a different template that's not available in Android Studio.

    মাঠ বিবরণ
    Single instance only If you want to make sure that only one instance of the run/debug configuration is currently executed, select this option. It doesn't allow multiple runs of the same configuration at the same time. Default: selected
    Module Select a module to apply this configuration to.
    Synchronize with build.gradle configuration If you add an App Engine module and sync to the build.gradle file, the App Engine DevAppServer configuration fields are filled in for you (recommended). Selecting File > Sync Project with Gradle Files also syncs the project. Default: selected
    App Engine SDK Type a path to a Google App Engine SDK for Java on the local machine. Click ... to select it from a dialog.
    War Path Type a path to the Web Application Archive (WAR) directory of the app you're deploying on the local development server. Click ... to select it from a dialog.
    VM Args

    Specify the command-line options you want to pass to the VM for launching the DevAppServer. When specifying the options:

    • Use spaces to separate different options.
    • For options that have spaces, enclose the space in quotation marks ( " " ).
    • If an option includes quotation marks, add a backslash before the quotation mark ( \" ).

    For more information about VM options, see the documentation for your J2SE version, such as java JDK 7 and java JDK 8 .

    Default: no options

    Server Address Type the host address to use for the server. You might need to provide the address to be able to access the development server from another computer on your network. An address of 0.0.0.0 allows both localhost access and hostname access. Default: localhost
    Server Port Type the port number to use for the server. Default: 8080
    Disable Check for App Engine SDK Updates If given, the development server will not contact App Engine to check for the availability of a new release of the SDK. By default, the server checks for a new version on startup, and prints a message if a new version is available.
    Before Launch See Defining Before Launch Operations .

    Wear OS run/debug configurations

    The Wear OS Complication, Tile, and Watch Face templates let you run or debug Wear OS apps on virtual or hardware devices. Most of the template configuration options are the same as the Android App options . Here are the options that are more specific to the Wear OS run/debug configurations:

    • For all Wear run/debug configurations, you have to select a specific complication data source, tile, or watch face (depending on the template) to apply the configuration to. Generally each of these entities corresponds to a class in your code.
    • For the Wear OS Complication run/debug configuration, you must choose the Slot where you want to put the complication data provided by the complication data source. You can choose to put it at the top, right, bottom, left, or background of the watch face.
    • For the Wear OS Complication run/debug configuration, you must also select the Type of the complication data provided by the complication data source. The types you can choose from are limited to those that are provided by the chosen complication data source and supported by the chosen slot. For a list of complication data types, see Types and fields .

    Alternatively, you can also run these surfaces from the gutter icon that is located next to the declaration of the surface, as shown in the following image. If an error occurs, such as "Error while setting the tile," check that you've correctly configured the surface, including declaring the surface in your manifest .

    Run button in the gutter next to a WatchFaceService class.
    Figure 1. Run a Wear OS surface directly using the gutter icon.