Android-এর জন্য কোনও Home API ব্যবহার করার আগে, অ্যাপের কাছে ব্যবহারকারীর হোমে ডিভাইস অ্যাক্সেস করার অনুমতি থাকতে হবে, API-তে এটিকে স্ট্রাকচার হিসেবে উল্লেখ করা হয়েছে। অনুমতি API-এর মাধ্যমে, ব্যবহারকারী তার Google অ্যাকাউন্ট ব্যবহার করে, Home API অ্যাপকে তার হোমে থাকা ডিভাইসে অ্যাক্সেস দিতে পারেন।
অনুমতি ফ্লো ব্যবহারকারীকে একটি স্ট্রাকচার তৈরি করতে এবং তার রাস্তার ঠিকানা অ্যাসাইন করতে দেয়, যদি আগে থেকে সেট-আপ করা না থাকে, Google Home app (GHA) ব্যবহার না করেই।
Permissions API ইন্টিগ্রেট করা
এগিয়ে যাওয়ার আগে, আপনি
Android-এ হোম ইনিশিয়ালাইজ করুন ধাপ অনুসরণ করেছেন কিনা তা নিশ্চিত করুন।
সেই ধাপের homeManager ইনস্ট্যান্স এখানে সব অনুমতি সংক্রান্ত উদাহরণে ব্যবহার করা হয়েছে।
প্রথমে, SDK-এর সাথে
ActivityResultCaller
রেজিস্টার করুন। যেমন, স্যাম্পেল অ্যাপ এটি এইভাবে ম্যানেজ করে:
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
homeManager.registerActivityResultCallerForPermissions(this)
}
অনুমতি চেক করুন
অনুমতির অনুরোধ করার আগে, অ্যাপের ব্যবহারকারী স্ট্রাকচার অ্যাক্সেস করার জন্য আগে থেকেই সম্মতি দিয়েছেন কিনা তা চেক করে দেখার জন্য আমরা সাজেস্ট করি। এটি করতে, PermissionsState
মানের Flow পেতে
Home ইনস্ট্যান্সের
hasPermissions()
মেথড কল করুন:
val permissionsReadyState =
homeManager.hasPermissions().collect { state ->
when (state) {
PermissionsState.GRANTED -> println("Permissions granted, no need to request permissions")
PermissionsState.PERMISSIONS_STATE_UNAVAILABLE ->
println("Permissions state unavailable, request permissions")
PermissionsState.NOT_GRANTED ->
println("OAuth permission is enabled but not granted yet, request permissions")
PermissionsState.PERMISSIONS_STATE_UNINITIALIZED -> println(
"Permissions state is not initialized yet. Clients should wait for another status update"
)
else ->
throw IllegalStateException("""
HomeClient.hasPermissions state should be PermissionsState.GRANTED,
PermissionState.PERMISSIONS_STATE_UNINITIALIZED, or
PermissionsState.PERMISSIONS_STATE_UNAVAILABLE. Actual state: $state
""".trimIndent())
}
}
চেক করার পরে NOT_GRANTED-এর মধ্যে PermissionsState বা
PERMISSIONS_STATE_UNAVAILABLE রিটার্ন করলে, এর অর্থ হল ব্যবহারকারী বা
অ্যাপ্লিকেশনের কাছে স্ট্রাকচারের অ্যাক্সেস নেই।
চেক করার পরে যদি PermissionsState
of GRANTED রিটার্ন করে কিন্তু structures()-এ পরবর্তী কল কোনও স্ট্রাকচার রিটার্ন না করে,
তাহলে হয় ব্যবহারকারী GHA সেটিংস পৃষ্ঠার মাধ্যমে
অ্যাপের অ্যাক্সেস তুলে নিয়েছেন অথবা ব্যবহারকারীর কাছে
প্রয়োজনীয় অ্যাক্সেস নেই।
অনুমতির জন্য অনুরোধ করুন
প্রদত্ত স্ট্রাকচারের মধ্যে স্ট্রাকচার ও ডিভাইস অ্যাক্সেস করার জন্য আপনার অ্যাপকে অনুমতি দিতে হবে।
ব্যবহারকারী আগে থেকে অনুমতি না দিয়ে থাকলে, Permissions UI চালু করতে এবং ফলাফল প্রসেস করতে,
requestPermissions()
হোম ইনস্ট্যান্সের পদ্ধতি ব্যবহার করুন:
fun requestPermissions(scope: CoroutineScope, onShowSnackbar: (String) -> Unit) {
scope.launch {
val result =
try {
homeManager.requestPermissions()
} catch (e: HomeException) {
PermissionsResult(
PermissionsResultStatus.ERROR,
"Got HomeException with error: ${e.message}",
)
}
when (result.status) {
PermissionsResultStatus.SUCCESS -> {
Log.i(TAG, "Permissions successfully granted.")
}
PermissionsResultStatus.CANCELLED -> {
Log.i(TAG, "User cancelled Permissions flow.")
onShowSnackbar("User cancelled Permissions flow")
}
else -> {
Log.e(
TAG,
"Failed to grant permissions with error: ${result.status}, ${result.errorMessage}",
)
onShowSnackbar("Failed to grant permissions with error: ${result.errorMessage}")
}
}
}
}
অনুমতি UI সঠিকভাবে চালু করার জন্য, আপনাকে আগেই আপনার অ্যাপের জন্য OAuth সেট-আপ করতে হবে।
HomeClient.setLocale()-এর সাথে কনফিগার করা লোকেলে অনুমতি সংক্রান্ত সম্মতি UI রেন্ডার করা হয়, অথবা সেট করা না থাকলে অ্যাপ বা ডিভাইস লোকেলে ডিফল্ট হিসেবে সেট করা হয়।
নির্দিষ্ট ভাষায় সম্মতি সংক্রান্ত স্ক্রিন দেখাতে, requestPermissions() কল করার আগে
আপনার HomeClient ইনস্ট্যান্সে
setLocale() কল করুন। আরও তথ্যের জন্য, অ্যাপের লোকাল কনফিগার করুন দেখুন।
অনুমতি দিন
এখন আপনি নিজের অ্যাপ চালাতে পারবেন এবং ব্যবহারকারীকে অনুমতি দিতে পারবেন। আপনি Google Home Developer Console-এ আপনার অ্যাপ রেজিস্টার করেছেন কিনা তার উপর নির্ভর করে, কোন ধরনের ব্যবহারকারী অনুমতি দিতে পারবেন এবং কোন ধরনের ডিভাইসের জন্য অনুমতি দেওয়া যাবে, তা আলাদা হবে।
Home API ব্যবহার করে অ্যাপ প্রকাশ করতে Developer Console রেজিস্ট্রেশন প্রয়োজন। Home API পরীক্ষা ও ব্যবহার করার জন্য এটি প্রয়োজন নেই।
কোনও অ্যাপ Developer Console-এ রেজিস্টার করা না থাকলে, সেটি যাচাই করা হয়নি স্ট্যাটাসে থাকবে। Home API-এর ব্যবহার টেস্ট করার জন্য এটি সাজেস্ট করা হয়:
শুধুমাত্র OAuth কনসোলে টেস্ট ব্যবহারকারী হিসেবে রেজিস্টার করা ব্যবহারকারীরাই অ্যাপের জন্য অনুমতি দিতে পারবেন। যাচাই না করা অ্যাপের জন্য টেস্ট ব্যবহারকারীর সংখ্যা ১০০-এর মধ্যে সীমিত।
Home API-এর জন্য OAuth-এর মাধ্যমে কাজ করে এমন যেকোনও ধরনের ডিভাইসে যাচাই না করা অ্যাপের অ্যাক্সেস থাকবে (ডিভাইসের ধরনের তালিকা Developer Console-এ আছে)। স্ট্রাকচারের সব ডিভাইসে অ্যাক্সেস দেওয়া হবে।
কোনও অ্যাপ যদি Developer Console -এ রেজিস্টার করা থাকে এবং এক বা একাধিক ধরনের ডিভাইস অ্যাক্সেস করার জন্য অনুমোদন পেয়ে থাকে এবং OAuth-এর জন্য ব্র্যান্ড যাচাইকরণ সম্পূর্ণ হয়ে থাকে, তাহলে এটি যাচাই করা অবস্থায় থাকবে। প্রোডাকশনে অ্যাপ লঞ্চ করার জন্য এই স্ট্যাটাস প্রয়োজন:
- টেস্ট ব্যবহারকারীর সীমা আর প্রযোজ্য নয়। যেকোনও ব্যবহারকারী অ্যাপকে অনুমতি দিতে পারেন।
- ব্যবহারকারী শুধুমাত্র সেই ধরনের ডিভাইসের জন্য অনুমতি দিতে পারবেন যা Developer Console-এ অনুমোদিত হয়েছে।
OAuth সেট-আপ করা হয়ে গেছে, তাই অ্যাপের requestPermissions()-এ কল করার ফলে নিম্নলিখিত ডায়ালগ
ট্রিগার হয়:
- ব্যবহারকারীকে তার পছন্দের Google অ্যাকাউন্ট বেছে নিতে বলা হয়।
- ব্যবহারকারীকে সেই স্ট্রাকচার বেছে নিতে বলা হয়, যেটিতে তিনি অ্যাপকে অ্যাক্সেস
দিতে চান।
- যাচাই না করা অ্যাপের ক্ষেত্রে, Home API দ্বারা কাজ করে এমন সব ধরনের ডিভাইস অ্যাপের জন্য উপলভ্য।
- যাচাই করা অ্যাপের ক্ষেত্রে, ব্যবহারকারী শুধুমাত্র সেইসব ডিভাইসের ধরনকে অনুমতি দিতে পারবেন যেগুলি Developer Console-এ অনুমোদিত হয়েছে।
- অ্যাপের অ্যাক্সেস আছে এমন সংবেদনশীল ডিভাইসের ধরন ম্যানেজ করার জন্য, ব্যবহারকারী প্রতিটি ডিভাইসের ভিত্তিতে অ্যাক্সেস সীমাবদ্ধ করতে পারবেন। যেমন, কোনও ব্যবহারকারীর কাছে তিনটি লক থাকলে, তিনি শুধুমাত্র একটি লকের অ্যাক্সেস দিতে পারবেন।
অনুমতি দেওয়া হয়ে গেলে, অ্যাপটি Home API ব্যবহার করে স্ট্রাকচারে থাকা ডিভাইসের স্ট্যাটাস পড়তে ও তা কন্ট্রোল করতে পারবে। ব্যবহারকারী যদি কোনও নির্দিষ্ট ধরনের ডিভাইস বা সংবেদনশীল ডিভাইসের জন্য অ্যাপকে অনুমতি না দেন, তাহলে অ্যাপটি Home API ব্যবহার করে এটি অ্যাক্সেস, কন্ট্রোল বা অটোমেট করতে পারবে না।
অনুমতিগুলি পরিবর্তন করুন
অন্য স্ট্রাকচারে ডিভাইস অ্যাক্সেস করার অনুমতি দিতে, অ্যাকাউন্ট পিকার চালু করা যেতে পারে যাতে ব্যবহারকারী Google অ্যাকাউন্ট বেছে নিতে পারেন এবং স্ট্রাকচার পরিবর্তন করতে পারেন। এই প্রসেস চলাকালীন, ব্যবহারকারীকে আবার সম্মতি সংক্রান্ত স্ক্রিন দেখানো হবে, এমনকি আগে সম্মতি দেওয়া হয়ে থাকলেও।
forcePermissionFlow-কে ForcePermissionFlow.FORCE_LAUNCH-এ সেট করে আবার
requestPermissions()
কল করার মাধ্যমে এটি করা যেতে পারে:
homeManager.requestPermissions(forcePermissionFlow = ForcePermissionFlow.FORCE_LAUNCH)
স্ট্রাকচার হিন্টিংয়ের মাধ্যমে অনুমতি পরিবর্তন করা
ব্যবহারকারীর Home API-এর অনুমতিতে ইনক্রিমেন্টাল পরিবর্তনের অনুরোধ করার সময়, স্ট্রাকচার হিন্টিং কোনও অ্যাপকে নির্দিষ্ট স্ট্রাকচার আগে থেকে বেছে নিতে অথবা উপলভ্য স্ট্রাকচারের তালিকা সীমিত করতে দেয়। অনুমোদনের অনুরোধে স্ট্রাকচার প্যারামিটার পাস করার মাধ্যমে, অনুমতির ডায়ালগ বক্স অটোমেটিক বেছে নেওয়া স্ট্রাকচারে ফোকাস করবে, যার ফলে ব্যবহারকারীর সমস্যা কম হবে এবং কনফিগারেশন সংক্রান্ত সমস্যা এড়ানো যাবে।
ConsentScreenOptions
ডেটা ক্লাস ব্যবহার করে স্ট্রাকচার হিন্টিং ম্যানেজ করা হয়। ConsentScreenOptions ক্লাস নিম্নলিখিত কনফিগারেশন
প্যারামিটার গ্রহণ করে:
structureId— অনুমতি সংক্রান্ত ডায়ালগে আগে থেকে বেছে নেওয়ার জন্য নির্দিষ্ট স্ট্রাকচার আইডি। আপডেট করা হচ্ছে এমন স্ট্রাকচারের জন্য স্ট্রাকচার প্রপার্টি চেক করে এটি পান।allowedStructureIds— স্ট্রাকচার আইডির তালিকা। প্রদান করা হলে, অনুমতির ডায়ালগ উপলভ্য স্ট্রাকচার ফিল্টার করবে যাতে শুধু এই তালিকায় থাকা স্ট্রাকচার দেখানো যায়। বেশিরভাগ ক্ষেত্রে এটি উল্লেখ না করলেও চলবে, যদি না আপনি এটি নিশ্চিত করতে চান যে ব্যবহারকারী আগে থেকে অনুমোদিত স্ট্রাকচারের তালিকার মধ্যেই আছেন।allowStructureChange— ব্যবহারকারী আগে থেকে বেছে নেওয়া স্ট্রাকচার পরিবর্তন করতে পারবেন কিনা তা নির্ধারণ করে। ব্যবহারকারীর স্বাভাবিক আচরণকে সমর্থন করার জন্য বেশিরভাগ ক্ষেত্রেallowedStructureIdsএবংstructureId-এর মধ্যে অন্তত একটি নির্দিষ্ট করা থাকলে, এটিকেtrue-এ সেট করুন।
requestPermissions() কলে এই অবজেক্টটি ঐচ্ছিক প্যারামিটার হিসেবে পাস করুন,
যেখানে forcePermissionFlow-এর মান ForcePermissionFlow.FORCE_LAUNCH-এ সেট করা আছে:
import com.google.home.ConsentScreenOptions
// Create the ConsentScreenOptions class, allowing structure changes while
// ensuring the permissions dialog pre-selects the target structure on launch
val consentOptions = ConsentScreenOptions(
structureId = target-structure-id,
allowStructureChange = true
)
homeManager.requestPermissions(forcePermissionFlow = ForcePermissionFlow.FORCE_LAUNCH, consentScreenOptions = consentOptions)
ব্যবহারকারীকে সম্মতি সংক্রান্ত স্ক্রিন দেখানো হবে যা আগে থেকেই ConsentScreenOptions অবজেক্টে উল্লেখ করা
স্ট্রাকচার অনুযায়ী ফিল্টার করা থাকবে।
ব্যবহারকারীকে স্ট্রাকচার হিন্টিংয়ের মাধ্যমে স্ট্রাকচার পরিবর্তন করার অনুমতি দিন
কোনও ব্যবহারকারীর অ্যাপে একাধিক স্ট্রাকচার থাকলে এবং আপনি যদি তাদের উপলভ্য স্ট্রাকচারের মধ্যে পরিবর্তন করার অনুমতি দেওয়ার সাথে সাথে
একটি আগে থেকে বেছে নিতে চান, তাহলে
allowStructureChange ফ্ল্যাগ দিয়ে স্ট্রাকচার পরিবর্তন করার সুবিধা চালু করুন এবং
allowedStructureIds-এ স্ট্রাকচারের একটি তালিকা প্রদান করুন:
val consentOptions = ConsentScreenOptions(
structureId = target-structure-id,
allowedStructureIds = listOf(target-structure-id, another-structure-id),
allowStructureChange = true
)
অনুমতি প্রত্যাহার করুন
ব্যবহারকারীরা আগে দেওয়া অ্যাক্সেস প্রত্যাহার করতে পারবেন:
Google অ্যাকাউন্ট সেটিংস > ডেটা ও গোপনীয়তা > থার্ড-পার্টি অ্যাপ ও পরিষেবা বিকল্পের মাধ্যমে। এর ফলে, প্রাথমিক সম্মতি দেওয়ার সময় ইস্যু করা OAuth টোকেন তুলে নেওয়া হবে এবং ব্যবহারকারী সব সারফেস (ফোন) ও স্ট্রাকচার জুড়ে অ্যাপের যে ইনস্ট্যান্স ব্যবহার করছিলেন, সেটির অ্যাক্সেস তুলে নেওয়া হবে।
ব্যবহারকারীকে ডিপ লিঙ্কের মাধ্যমে থার্ড-পার্টি অ্যাপ ও পরিষেবা সাব-পেজে নিয়ে যাওয়া হতে পারে, যার জন্য নিম্নলিখিত URL স্কিম ব্যবহার করা হয়:
https://myaccount.google.com/connections/link?project_number=Cloud project_numberGHA > সেটিংস > লিঙ্ক করা অ্যাপ পৃষ্ঠা থেকে। GHA-এ -এ ক্লিক করলে আপনাকে সেটিংস পৃষ্ঠায় নিয়ে যাওয়া হবে। সেখান থেকে, লিঙ্ক করা অ্যাপ টাইলটিতে ক্লিক করুন যা আপনাকে এমন একটি পৃষ্ঠায় নিয়ে যায় যা সম্মতি সংক্রান্ত স্ক্রিনের মতো দেখায়। এই পৃষ্ঠা থেকে ব্যবহারকারী অ্যাপে অ্যাক্সেস সরাতে পারবেন। ব্যবহারকারী এই একই পৃষ্ঠা ব্যবহার করে কোন ধরনের ডিভাইস বা নির্দিষ্ট সংবেদনশীল ডিভাইস অ্যাপে অ্যাক্সেসযোগ্য তা পরিবর্তন করতে পারবেন।
ব্যবহারকারীর ডেটা মুছে দেওয়া ও এক্সপোর্ট করা
কোনও ব্যবহারকারী তার Google অ্যাকাউন্ট মুছে দিলে বা কোনও স্ট্রাকচার ছেড়ে দিলে, প্ল্যাটফর্মটি অটোমেটিক ব্যাকএন্ড ডেটা মুছে ফেলার কাজটি ম্যানেজ করে:
- মুছে ফেলা ব্যবহারকারী যদি কোনও স্ট্রাকচারের একমাত্র মালিক হন, তাহলে প্ল্যাটফর্মটি স্ট্রাকচার এবং এর ডিভাইস অ্যাসোসিয়েশন মুছে দেয়।
- অন্য মালিকরা শেয়ার করা স্ট্রাকচারে থাকলে, স্ট্রাকচার এবং এর শেয়ার করা ডিভাইস বাকি মেম্বারদের জন্য থেকে যায়। প্ল্যাটফর্মটি চলে যাওয়া ব্যবহারকারীর মেম্বারশিপ সরিয়ে দেয় এবং শুধুমাত্র সেই ব্যবহারকারীর ক্রেডেনশিয়ালের মাধ্যমে কানেক্ট করা যেকোনও থার্ড-পার্টি Cloud-to-cloud ডিভাইস আনলিঙ্ক করে দেয়।
- অ্যাকাউন্ট মুছে দিলে ব্যবহারকারীর স্ট্রাকচার ডেটা এবং অ্যাপ্লিকেশন সংক্রান্ত অনুমতি অবিলম্বে এবং স্থায়ীভাবে মুছে যায়। ব্যবহারকারী পরে তার Google অ্যাকাউন্ট ফিরিয়ে আনলেও, তার স্ট্রাকচার ও অনুমতি ফিরিয়ে আনা হয় না।
Home API, ব্যবহারকারীর Google অ্যাকাউন্ট ডেটা এক্সপোর্ট বা মুছে ফেলার জন্য এন্ডপয়েন্ট প্রদান করে না। Google অ্যাকাউন্ট আছে এমন ব্যবহারকারীদের Google Takeout-এ পাঠান যাতে তারা Google Home ডেটা এক্সপোর্ট করতে পারেন এবং অ্যাকাউন্ট মুছে দেওয়ার বিষয়টি ম্যানেজ করতে তাদের Google অ্যাকাউন্ট সেটিংস-এ পাঠান।
ব্যবহারকারী কোন ধরনের ডিভাইসের জন্য অনুমতি দিয়েছেন তা দেখুন
Google Home ইকোসিস্টেমে, বেশিরভাগ ডিভাইসের ধরনের জন্য, ব্যবহারকারীরা একবারে সেই ধরনের সব ডিভাইসের জন্য অনুমতি দিতে পারেন। লক, ক্যামেরা বা কলিং বেলের মতো সংবেদনশীল বা বিধিনিষেধযুক্ত ডিভাইসের ক্ষেত্রে, ব্যবহারকারীদের অবশ্যই আলাদাভাবে সেগুলির জন্য অনুমতি দিতে হবে।
কোনও ব্যবহারকারী সংবেদনশীল বা সীমাবদ্ধ ডিভাইসের ধরন অ্যাক্সেস করার অনুমতি দিয়েছেন কিনা তা নির্ধারণ করতে, স্ট্রাকচার-লেভেল consentedDeviceTypes()
ফাংশন ব্যবহার করুন:
import com.google.home.Structure
import com.google.home.DeviceType
import com.google.home.DeviceTypeFactory
import com.google.home.consentedDeviceTypes // Extension function from the SDK
import kotlinx.coroutines.flow.Flow
import kotlinx.coroutines.flow.collect
import kotlinx.coroutines.launch
/**
* Example of how an app may monitor which device types have been granted access by a user.
*/
fun monitorDeviceConsent(structure: Structure, myScope: CoroutineScope) {
// Obtain the flow of consented device type factories
val consentedTypesFlow: Flow<Set<DeviceTypeFactory<out DeviceType>>> =
structure.consentedDeviceTypes()
myScope.launch {
consentedTypesFlow.collect { consentedSet ->
// Check if the user has consented to share a specific restricted
// type, such as a Doorbell or Camera.
val hasCameraAccess = consentedSet.any {
it.toString() == "matter.google.type.GoogleDoorbellDevice"
}
if (hasCameraAccess) {
// Enable features that require camera access
} else {
// Inform the user or disable camera-specific features
}
}
}
}
OkGoogle-এর অনুমতি
okGoogle
কমান্ড হল ডিভাইস-লেভেল কমান্ড এবং এটি স্ট্রাকচারের যেকোনও ডিভাইস অটোমেট করতে ব্যবহার করা যেতে পারে। তবে, Home API অ্যাপের কাছে প্রতিটি ডিভাইসের অ্যাক্সেস নাও থাকতে পারে। নিম্নলিখিত
সারণীতে এই ধরনের ক্ষেত্রে কীভাবে অনুমতি এনফোর্স করা হয় তা বর্ণনা করা হয়েছে।
| অটোমেশন | বৈশিষ্ট্য | অনুমতি এনফোর্সমেন্ট |
|---|---|---|
| রাত ১০:০০টায়, বেডরুমের স্পিকারে "ঘুমানোর সময়" ব্রডকাস্ট করো। |
ডিভাইসে
AssistantBroadcastTrait
। |
অটোমেশন তৈরি করা:
|
| রাত ১০:০০টায় সব ডিভাইসে "ঘুমানোর সময়" মেসেজ ব্রডকাস্ট করো |
স্ট্রাকচারে
AssistantBroadcastTrait
। |
অটোমেশন তৈরি করা:
|
| রাত ১০ টার সময়, "কিছু মিউজিক চালাও" |
AssistantFulfillmentTrait.OkGoogleCommand
|
অটোমেশন তৈরি করা:
|
| যখনই কেউ "কিছু মিউজিক চালাও" বলে |
VoiceStarterTrait.OkGoogleEvent
|
অটোমেশন তৈরি করা:
|
ব্যবহারকারী সম্পূর্ণ অনুমতি প্রত্যাহার করলে নির্দেশিকা
ব্যবহারকারী সম্পূর্ণ অনুমতি প্রত্যাহার করলে, আগে থেকে থাকা সব অটোমেশন কাজ করা বন্ধ করে দেবে। এছাড়াও, ব্যবহারকারী নির্দিষ্ট ডিভাইসের অ্যাক্সেস প্রত্যাহার করলে, সেইসব ডিভাইসের সাথে যুক্ত স্টার্টার, শর্ত ও অ্যাকশন কাজ করা বন্ধ করে দেবে।
প্রতিবার অ্যাপ চালু করার সময়, অনুমতি এখনও কার্যকর আছে কিনা তা চেক করতে ভুলবেন না। যদি সেগুলি প্রত্যাহার করা হয়ে থাকে, তাহলে নিশ্চিত করুন যে আগের সব ডেটা মুছে ফেলা হয়েছে, যার মধ্যে অ্যাপ্লিকেশনে ক্যাশে করা যেকোনও ডেটা অন্তর্ভুক্ত।
স্ট্রাকচার অ্যাক্সেস প্রত্যাহার করা হলে, আপনার ক্লাউড ব্যাকএন্ডে একটি
StructureAccessRevokedEvent
ডেলিভার করা হয়। এন্ড-টু-এন্ড পার্টনার ক্লাউড এবং মোবাইল অ্যাপ প্রত্যাহার ওয়ার্কফ্লোর জন্য
Structure অনুদান
দেখুন।


