Wear OS-এ অনুমতির জন্য অনুরোধ করুন

কীওয়ার্ড: পরিধান, অনুমতি, সংগ্রহ_গাইডল্যান্ডিংওয়্যার image_path: images/training/wear/multiple_permissions.png

Wear OS-এ অনুমতি চাওয়া মোবাইল অ্যাপে অনুমতি চাওয়ার মতোই, আরও কিছু অতিরিক্ত ব্যবহারের ক্ষেত্রে। এই ডকুমেন্টটি ধরে নিয়েছে যে আপনি Android অনুমতি কীভাবে কাজ করে তা বোঝেন। যদি না জানেন, তাহলে Android-এ অনুমতি কীভাবে কাজ করে তা পর্যালোচনা করুন।

ঠিক যেমন একটি মোবাইল অ্যাপে, ব্যবহারকারীকে নির্দিষ্ট কার্যকারিতা অ্যাক্সেস করার জন্য একটি Wear অ্যাপকে অনুমতি দিতে হবে। আপনার Wear অ্যাপগুলিতে, কোনও অনুমতির অনুরোধ না করেই অর্থপূর্ণ কার্যকারিতা প্রদান করুন

অনুমতির পরিস্থিতি

Wear OS-এ বিপজ্জনক অনুমতির অনুরোধ করার সময় আপনি বেশ কয়েকটি পরিস্থিতির সম্মুখীন হতে পারেন:

  • Wear অ্যাপটি পরিধেয় ডিভাইসে চলমান একটি অ্যাপের জন্য অনুমতির অনুরোধ করে।

  • Wear অ্যাপটি ফোনে চলমান একটি অ্যাপের জন্য অনুমতির অনুরোধ করে।

  • ফোন অ্যাপটি পরিধেয় ডিভাইসে চলমান একটি অ্যাপের জন্য অনুমতির অনুরোধ করে।

  • ফোন অ্যাপটি একাধিক অনুমতির অনুরোধ করে যা শুধুমাত্র পরিধেয় ডিভাইসটি সংযুক্ত থাকাকালীন ব্যবহার করা যেতে পারে।

একটি কার্যকরী অ্যাপে এই সমস্ত পরিস্থিতি দেখতে, GitHub-এ ExerciseSampleCompose নমুনাটি পর্যালোচনা করুন।

নিম্নলিখিত বিভাগগুলিতে এই প্রতিটি পরিস্থিতি ব্যাখ্যা করা হয়েছে। অনুমতি অনুরোধ সম্পর্কে আরও বিস্তারিত তথ্যের জন্য, অনুমতি-অনুরোধের ধরণ বিভাগটি দেখুন।

Wear অ্যাপটি পরিধেয় ব্যবহারের অনুমতি চেয়েছে

যখন Wear অ্যাপটি পরিধেয় ডিভাইসে চলমান কোনও অ্যাপের জন্য অনুমতির অনুরোধ করে, তখন সিস্টেমটি ব্যবহারকারীকে সেই অনুমতির জন্য অনুরোধ করার জন্য একটি ডায়ালগ প্রদর্শন করে। আপনার অ্যাপে, শুধুমাত্র তখনই অনুমতির অনুরোধ করুন যখন ব্যবহারকারীর কাছে স্পষ্ট হয় যে কোনও নির্দিষ্ট ক্রিয়াকলাপ সম্পাদনের জন্য কেন অনুমতিগুলির প্রয়োজন।

আপনার ব্যবহারকারীদের জন্য সর্বোত্তম অভিজ্ঞতা প্রদান নিশ্চিত করতে অনুমতির নীতিগুলি পর্যালোচনা করুন এবং shouldShowRequestPermissionRationale() চেক করতে ভুলবেন না এবং প্রয়োজনে অতিরিক্ত তথ্য প্রদান করুন

যদি কোনও অ্যাপ বা ওয়াচফেসের জন্য একবারে একাধিক অনুমতির প্রয়োজন হয়, তাহলে একের পর এক অনুমতির অনুরোধ আসতে থাকে।

একের পর এক একাধিক অনুমতি স্ক্রিন।
চিত্র ১. পরপর প্রদর্শিত অনুমতি পর্দা।

Wear অ্যাপ ফোনের অনুমতি চাইছে

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

Wear অ্যাপটি ব্যবহারকারীকে অনুমতি দেওয়ার জন্য ফোনে পাঠায়।
চিত্র ২। অনুমতি দেওয়ার জন্য ব্যবহারকারীকে ফোনে পাঠান।

ফোন অ্যাপটি পরিধেয় ব্যবহারের অনুমতি চেয়েছে

যদি ব্যবহারকারী কোনও ফোন অ্যাপ ব্যবহার করেন এবং অ্যাপটির জন্য পরিধেয় অনুমতির প্রয়োজন হয়—যেমন, ফোন সংযোগ বিচ্ছিন্ন হয়ে গেলে সঙ্গীত প্রিলোড করার জন্য—ফোন অ্যাপটি ব্যবহারকারীকে পরিধেয় ডিভাইসে অনুমতি গ্রহণের জন্য পাঠায়। অ্যাপটির পরিধেয় সংস্করণটি সিস্টেম অনুমতি ডায়ালগ ট্রিগার করার জন্য requestPermissions() পদ্ধতি ব্যবহার করে।

ফোন অ্যাপটি ব্যবহারকারীকে অনুমতি দেওয়ার জন্য পরিধেয় ডিভাইসে পাঠায়।
চিত্র ৩। ব্যবহারকারীকে অনুমতি দেওয়ার জন্য পরিধেয় ডিভাইসে পাঠান।

ফোন অ্যাপ একসাথে একাধিক অনুমতির অনুরোধ করে

চিত্র ৪। একটি অনুমতি ডায়ালগ যা একটি কম্প্যানিয়ন ডিভাইস প্রোফাইল ব্যবহার করে একটি একক অনুরোধে একাধিক অনুমতির অনুরোধ করে।

অ্যান্ড্রয়েড ১২ (এপিআই লেভেল ৩১) এবং তার উচ্চতর ভার্সনের পার্টনার অ্যাপগুলি ঘড়ির সাথে সংযোগ করার সময় কম্প্যানিয়ন ডিভাইস প্রোফাইল ব্যবহার করতে পারে। প্রোফাইল ব্যবহার করলে ডিভাইস-টাইপ-নির্দিষ্ট অনুমতির সেট এক ধাপে একত্রিত করে তালিকাভুক্তি প্রক্রিয়া সহজ হয়।

ডিভাইসটি সংযুক্ত হওয়ার পরে কম্প্যানিয়ন অ্যাপে বান্ডেল করা অনুমতিগুলি মঞ্জুর করা হয় এবং কেবলমাত্র ডিভাইসটি সংযুক্ত থাকাকালীন সময় পর্যন্ত স্থায়ী হয়। অ্যাপটি মুছে ফেলা বা সংযুক্তি অপসারণ করলে অনুমতিগুলি সরানো হয়। বিস্তারিত জানার জন্য, AssociationRequest.Builder.setDeviceProfile() দেখুন।

অনুমতি-অনুরোধের ধরণ

ব্যবহারকারীদের কাছ থেকে অনুমতি চাওয়ার বিভিন্ন ধরণ রয়েছে। অগ্রাধিকারের ক্রমানুসারে, সেগুলি হল:

  • নির্দিষ্ট কার্যকারিতার জন্য যখন অনুমতি স্পষ্টতই প্রয়োজন, কিন্তু সম্পূর্ণ অ্যাপটি চালানোর জন্য প্রয়োজন না হয়, তখন প্রসঙ্গে জিজ্ঞাসা করুন।

  • যখন অনুমতি চাওয়ার কারণ স্পষ্ট না হয় এবং সম্পূর্ণ অ্যাপটি চালানোর জন্য অনুমতির প্রয়োজন না হয়, তখন প্রেক্ষাপট অনুযায়ী শিক্ষা দিন।

এই ধরণগুলি নিম্নলিখিত বিভাগগুলিতে ব্যাখ্যা করা হয়েছে।

প্রসঙ্গে জিজ্ঞাসা করুন

ব্যবহারকারী যখন স্পষ্টভাবে বুঝতে পারবেন যে কোনও নির্দিষ্ট ক্রিয়াকলাপ সম্পাদনের জন্য কেন অনুমতি প্রয়োজন, তখন অনুমতির জন্য অনুরোধ করুন। ব্যবহারকারীরা যখন বুঝতে পারবেন যে তারা যে বৈশিষ্ট্যটি ব্যবহার করতে চান তার সাথে এর সংযোগ রয়েছে, তখন তারা অনুমতি দেওয়ার সম্ভাবনা বেশি থাকে।

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

অ্যাপটি যখন স্পষ্টতই প্রয়োজন তখন অনুমতির অনুরোধ করে।
চিত্র ৫। প্রসঙ্গে অনুমতি চাও।

প্রেক্ষাপটে শিক্ষিত করুন

চিত্র ৬-এ ইন-কনটেক্সট শিক্ষার একটি উদাহরণ দেখানো হয়েছে। টাইমার শুরু করার জন্য অ্যাপটির অনুমতির প্রয়োজন হয় না, তবে একটি ইনলাইন শিক্ষামূলক কিউ দেখায় যে কার্যকলাপের অংশ—অবস্থান সনাক্তকরণ—লক করা আছে। ব্যবহারকারী যখন কিউতে ট্যাপ করেন, তখন একটি অনুমতি-অনুরোধ স্ক্রিন প্রদর্শিত হয়, যা ব্যবহারকারীকে অবস্থান সনাক্তকরণ আনলক করতে দেয়।

আপনার অ্যাপকে আরও তথ্য প্রদান করতে হবে কিনা তা নির্ধারণ করতে shouldShowRequestPermissionRationale() পদ্ধতিটি ব্যবহার করুন। আরও তথ্যের জন্য, "অনুরোধ অ্যাপ্লিকেশন অনুমতি" দেখুন। বিকল্পভাবে, আপনি GitHub-এর স্পিকার নমুনা অ্যাপ্লিকেশন কীভাবে তথ্য প্রদর্শন পরিচালনা করে তা পরীক্ষা করতে পারেন।

যখন অনুমতির প্রয়োজন হয়, তখন অ্যাপটি ব্যাখ্যা করে কেন অনুমতি প্রয়োজন।
চিত্র ৬। প্রেক্ষাপটে শিক্ষিত করুন।

প্রত্যাখ্যান পরিচালনা করুন

যদি ব্যবহারকারী এমন কোনও অনুরোধকৃত অনুমতি প্রত্যাখ্যান করেন যা কোনও উদ্দেশ্যমূলক কার্যকলাপের জন্য গুরুত্বপূর্ণ নয়, তাহলে তাদের কার্যকলাপ চালিয়ে যেতে বাধা দেবেন না। যদি কার্যকলাপের কিছু অংশ অস্বীকৃত অনুমতি দ্বারা অক্ষম করা হয়, তাহলে দৃশ্যমান, কার্যকর প্রতিক্রিয়া প্রদান করুন।

চিত্র ৭-এ একটি লক আইকন ব্যবহার দেখানো হয়েছে যা নির্দেশ করে যে ব্যবহারকারী কোনও বৈশিষ্ট্য ব্যবহারের অনুমতি না দেওয়ার কারণে এটি লক করা হয়েছে।

যখন ব্যবহারকারী অনুমতি প্রত্যাখ্যান করেন, তখন সংশ্লিষ্ট বৈশিষ্ট্যের পাশে একটি লক আইকন প্রদর্শিত হয়।
চিত্র ৭। লক আইকনটি দেখায় যে অনুমতি না দেওয়ার কারণে একটি বৈশিষ্ট্য লক করা আছে।

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

সিস্টেমটি অনুমতি চাওয়া বন্ধ করার প্রস্তাব দেয়।
চিত্র ৮। ব্যবহারকারী সেটিংসের মাধ্যমে এমন একটি অনুমতি অনুরোধ অ্যাক্সেস করতে পারবেন যা আগে দুবার প্রত্যাখ্যান করা হয়েছে।

অনুমতি অস্বীকার কীভাবে পরিচালনা করবেন সে সম্পর্কে আরও জানুন।

পরিষেবার জন্য অনুমতি

শুধুমাত্র একটি অ্যাক্টিভিটিই requestPermissions() পদ্ধতিতে কল করতে পারে, তাই যদি ব্যবহারকারী আপনার অ্যাপের সাথে কোনও পরিষেবা ব্যবহার করে ইন্টারঅ্যাক্ট করে—যেমন, ওয়াচফেসের মাধ্যমে—তবে অনুমতির অনুরোধ করার আগে পরিষেবাটিকে অবশ্যই একটি অ্যাক্টিভিটি খুলতে হবে। এই অ্যাক্টিভিটিতে, কেন অনুমতি প্রয়োজন সে সম্পর্কে অতিরিক্ত শিক্ষা প্রদান করুন।

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

সেটিংস

একজন ব্যবহারকারী যেকোনো সময় সেটিংসে গিয়ে Wear অ্যাপের অনুমতি পরিবর্তন করতে পারেন। যখন ব্যবহারকারী এমন কিছু করার চেষ্টা করেন যার জন্য অনুমতির প্রয়োজন হয়, তখন প্রথমে checkSelfPermission() পদ্ধতিতে কল করে দেখুন যে অ্যাপটির অপারেশন করার অনুমতি আছে কিনা।

ব্যবহারকারী যদি আগে অনুমতি দিয়ে থাকেন, তবুও এই পরীক্ষাটি করুন, কারণ ব্যবহারকারী পরবর্তীতে এটি প্রত্যাহার করে নিতে পারেন।

ব্যবহারকারী সেটিংস অ্যাপের মাধ্যমে অনুমতি পরিবর্তন করতে পারেন।
চিত্র ৯। ব্যবহারকারী সেটিংস অ্যাপ ব্যবহার করে অনুমতি পরিবর্তন করতে পারেন।
{% অক্ষরে অক্ষরে %} {% এন্ডভারব্যাটিম %} {% অক্ষরে অক্ষরে %} {% এন্ডভারব্যাটিম %}