به عنوان یک توسعهدهنده، ممکن است بخواهید به مدیران ChromeOS Enterprise اجازه دهید برنامه شما را به صورت پویا پیکربندی کنند. رابط برنامهنویسی کاربردی پیکربندی مدیریتشده (Managed Configuration API) روشی قدرتمند برای مدیریت رفتار برنامه شما هنگام نصب ارائه میدهد. میتوانید رابطی تعریف کنید تا به مدیران اجازه دهد پیکربندی را به برنامه شما منتقل کنند و رفتار آن را به صورت پویا تغییر دهند، از جمله، اما نه محدود به:
- اندازه پنجره مشخصی را برای باز شدن تنظیم کنید.
- آدرسهای سرور یا پیکربندیهای احراز هویت را از قبل وارد کنید.
- ویژگیهای برنامه را فعال یا غیرفعال کنید.
راهاندازی API پیکربندی مدیریتشده تحت وب
پیکربندی مدیریتشده نیازمند مراحلی است که هم توسط توسعهدهندگان و هم توسط مدیران سازمان انجام میشود. توسعهدهندگان باید API را پیادهسازی کرده و رابط کاربری خود را منتشر کنند. مدیران سازمان باید نمونه خود را از کنسول مدیریت پیکربندی کنند. برای نشان دادن این مراحل، از پیکربندی گزینههای مختلف ورود به سیستم به عنوان مثال استفاده خواهیم کرد. یک مدیر سازمان ممکن است بخواهد به برخی از کاربران یا واحدهای سازمانی اجازه دهد با اعتبارنامههای خاصی وارد سیستم شوند و برخی دیگر را غیرفعال کند.
رابط کاربری قابل تنظیم خود را تعریف و به اشتراک بگذارید
مانند هر نوع سرویس خارجی دیگر، بهتر است با تعریف یک رابط کاربری که میتواند به صورت خارجی با هر مشتری که میخواهد برنامه شما را پیکربندی کند، به اشتراک گذاشته شود، شروع کنید. پیکربندی مدیریتشده یک دیکشنری JSON به برنامه شما ارسال میکند، بنابراین توصیه میکنیم هر پارامتر را با توضیحات، نوع، پیشفرض و گزینههای معتبر مستند کنید. در اینجا چیزی است که ممکن است برای یک پارامتر برای غیرفعال کردن گزینههای ورود به سیستم به نظر برسد:
| پارامتر | نوع | پیشفرض | گزینهها | توضیحات |
|---|---|---|---|---|
| رشته[] | | | فهرستی از گزینههای ورود که باید غیرفعال شوند. |
مستندسازی رابط کاربری به این روش به برقراری ارتباط سرویس با تیمهای خارجی و مشتریان کمک میکند و میتواند در درازمدت به شما در حفظ آن کمک کند. با توجه به موارد فوق، یک مدیر سازمانی میتواند از JSON زیر برای غیرفعال کردن ورود از "email" استفاده کند:
{ “DisableLoginOptions”: ["email"] };
پیکربندی مدیریتشده را تنظیم کنید
کنسول مدیریت گوگل رابطی را ارائه میدهد که به مدیران سازمانی اجازه میدهد پیکربندی مدیریتشده را تنظیم کنند. در زمان نگارش این مطلب، این گزینه در سمت راست برنامه انتخابشده، تحت عنوان **پیکربندی مدیریتشده** ظاهر میشود. وارد کردن یک مقدار و ذخیره پیکربندی، آن را بهطور خودکار برای استفاده برنامه مدیریتشده در دسترس قرار میدهد.

رابط کاربری کنسول مدیریت گوگل برای درج فیلدهای پیکربندی مدیریتشده
برای مثال، برای غیرفعال کردن ورود به سیستم، مدیر سازمانی میتواند برنامه را با { "'DisableLoginOptions'" : ["email"]} برای همه کاربران تحت واحد سازمانی ریشه پیکربندی کند. این کار باعث میشود که آن پیکربندی پس از ذخیره تغییرات، به طور خودکار در دسترس برنامه مدیریت شده قرار گیرد.
پیکربندی را از برنامه خود بازیابی کنید
پس از تعریف رابط کاربری و ارسال پیکربندی به برنامه، اکنون باید آن را درون برنامه خود بازیابی کنید. برای انجام این کار، API پیکربندی مدیریتشده را فراخوانی کنید:
navigator.managed.getManagedConfiguration(['DisableLoginOptions']).then(function (result) { // result = { "‘DisableLoginOptions’" : ["email"]} // hide email login option });
getManagedConfiguration یک تابع مبتنی بر promise است که یک کلید را به عنوان آرایهای از رشتهها دریافت میکند و نتیجه را به عنوان یک شیء JSON برمیگرداند. این مقداری است که توسط مدیر Enterprise در مرحله قبل وارد شده است.
توجه: اگر قبلاً در کد خود از ماتریس تبدیل برای TextureView استفاده کردهاید، ممکن است پیشنمایش در دستگاههایی با حالت افقی طبیعی مانند کرومبوکها درست به نظر نرسد. احتمالاً ماتریس تبدیل شما به اشتباه جهت حسگر را ۹۰ یا ۲۷۰ درجه فرض میکند. میتوانید برای یافتن راهحل به این کامیت در گیتهاب مراجعه کنید، اما اکیداً توصیه میکنیم که برنامه خود را به روشی که در اینجا توضیح داده شده است، منتقل کنید.
سپس میتوان از نتیجه برای تغییر رفتار برنامه شما استفاده کرد و به مدیران اجازه داد تا برنامه شما را به صورت پویا پیکربندی کرده و آن را با نیازهای تمام واحدهای سازمانی خود تنظیم کنند.