ارائه دهندگان مدیریت تحرک سازمانی (EMM) راه حل هایی را برای سازمان ها برای مدیریت دستگاه های Android و برنامه های نصب شده روی آنها ارائه می دهند. این راه حل ها معمولاً به عنوان کنسول های وب در دسترس هستند که کنسول های EMM نامیده می شوند. با استفاده از کنسول EMM، مدیران فناوری اطلاعات وظایف مدیریت دستگاه و برنامه را از طرف سازمان خود انجام می دهند.
برنامههایی که سازمانهای سازمانی را هدف قرار میدهند، میتوانند بازخورد خود را در قالب حالتهای برنامه کلیددار به EMM ارسال کنند. APIها برای EMMها برای بازیابی دادههای وضعیت برنامه کلیددار موجود است، که سپس میتوانند در کنسول EMM خود نمایش دهند. این کانال ارتباطی به مدیران فناوری اطلاعات اجازه میدهد درباره وضعیت برنامههای نصب شده در دستگاههایی که مدیریت میکنند، بازخورد دریافت کنند.
برای مثال، یک برنامه مشتری ایمیل میتواند از وضعیتهای برنامه کلیددار برای تأیید پیکربندی موفقیتآمیز حساب، گزارش هنگام بروز خطاهای همگامسازی یا ارسال هر گونه بهروزرسانی وضعیت دیگری که توسعهدهنده برنامه فکر میکند مناسب است، استفاده کند.
یک وضعیت برنامه کلیددار از موارد زیر تشکیل شده است:
- کلید: شناسه منحصر به فرد برای وضعیت برنامه. حداکثر 100 کاراکتر
- پیام: پیام اختیاری که وضعیت برنامه را توصیف می کند. حداکثر 1000 کاراکتر توجه: معمولاً پیامها باید بسیار کوتاهتر از این باشند.
- داده: مقدار قابل خواندن توسط ماشین اختیاری که برای EMM در نظر گرفته شده است تا به مدیران فناوری اطلاعات اجازه دهد تا هشدارها یا فیلترها را بر اساس مقدار تنظیم کنند. به عنوان مثال، اگر فیلد داده
battery_percentage < 10
یک سرپرست فناوری اطلاعات میتواند هشداری را تنظیم کند. حداکثر 1000 کاراکتر - Severity: شدت وضعیت برنامه. مقادیر مجاز عبارتند از
SEVERITY_ERROR
وSEVERITY_INFO
(پیشفرض). فقط برای شرایط خطای واقعی که سازمان باید برای رفع آن اقدام کند، شدت را رویSEVERITY_ERROR
تنظیم کنید. - مهر زمانی: هنگامی که یک حالت برنامه کلیدی تنظیم می شود، به طور خودکار با یک مهر زمانی در میلی ثانیه از دوره ارسال می شود.
اگر برنامه شما از پیکربندیهای مدیریتشده پشتیبانی میکند، ارسال وضعیتهای برنامه کلیددار بهعنوان راهی برای بهروزرسانی مدیران فناوری اطلاعات در مورد وضعیت پیکربندیهایی که تنظیم میکنند، توصیه میشود. گردش کار مثال زیر یکی از راه های انجام این کار را توضیح می دهد.
- سرپرستهای فناوری اطلاعات از کنسول EMM خود برای تنظیم و ارسال پیکربندیهای مدیریتشده برای برنامهای که در یک دستگاه کاملاً مدیریتشده یا داخل یک نمایه کاری نصب شده است، استفاده میکنند. به عنوان مثال:
- حجم: '50%'
- واحد پول: 'USDD'
- برنامه سعی می کند تنظیمات را اعمال کند. حجم با موفقیت روی 50٪ تنظیم شد، اما کد ارز نامعتبر است و نمی توان آن را اعمال کرد.
- بر اساس وضعیت هر پیکربندی، برنامه یک وضعیت برنامه کلیدی را تنظیم می کند. هر حالت برنامه کلیددار حاوی یک کلید منحصر به فرد و یک پیام با جزئیات وضعیت است. توصیه می کنیم در صورت امکان، کلید تنظیمات مدیریت شده را مطابقت دهید. به عنوان مثال:
کلید پیام شدت مهر زمان volume
روی 50% تنظیم کنید SEVERITY_INFO
1554461130
currency
ارز "USDD" شناسایی نشد SEVERITY_ERROR
1554461130
- ارائهدهنده EMM حالتهای کلیدی برنامه تنظیمشده توسط برنامه را بازیابی میکند و آنها را در کنسول EMM خود نمایش میدهد. به عنوان مثال:
پیکربندی وضعیت اقدام لازم است زمان حجم روی 50% تنظیم کنید خیر 5 آوریل 2019; 10:45:30 صبح ارز خطا: ارز «USDD» شناسایی نشد. بله 5 آوریل 2019; 10:45:30 صبح ارائهدهنده EMM همچنین باید صراحتاً هر وضعیت دریافتی را با
SEVERITY_ERROR
به سرپرست فناوری اطلاعات پرچمگذاری کند. مدیران فناوری اطلاعات میتوانند اطلاعات موجود در کنسول EMM خود را مشاهده کنند و برای اصلاح هر گونه خطا در پیکربندیهایی که تنظیم کردهاند اقدام کنند.
پس از رفع خطا، فوراً وضعیت برنامه پیگیری را ارسال کنید تا EMM ها پیام خطا را به طور نامحدود نشان ندهند. این وضعیت پیگیری باید شامل موارد زیر باشد:
- همان کلید پیام خطای اولیه.
- شدت
SEVERITY_INFO
، که نشان می دهد ایالت در شرایط خطا قرار ندارد و سازمان را ملزم به انجام هیچ اقدام دیگری نمی کند.
مراحل زیر نحوه ادغام حالت های برنامه کلیددار را در برنامه خود توضیح می دهد.
settings.gradle
خود اضافه کنید همانطور که در زیر نشان داده شده است، مخزن Maven Google را به عنوان یک مکان مخزن در فایل settings.gradle
پروژه خود اضافه کنید:
dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() } }
build.gradle
در سطح ماژول خود اضافه کنید وابستگی زیر را به فایل build.gradle
در سطح ماژول خود اضافه کنید:
dependencies { implementation 'androidx.enterprise:enterprise-feedback:1.0.0' }
KeyedAppStatesReporter
را دریافت کنید در متد onCreate()
خود، یک نمونه از KeyedAppStatesReporter
را دریافت و ذخیره کنید. این یک کانال ارتباطی بین برنامه شما و ارائه دهندگان EMM را فعال می کند.
val reporter = KeyedAppStatesReporter.create(context)
KeyedAppStatesReporter reporter = KeyedAppStatesReporter.create(context);
هنگام ایجاد حالت های برنامه کلیددار، بهترین شیوه های ذکر شده در زیر را دنبال کنید:
- هرگز اطلاعات قابل شناسایی شخصی (PII) را در یک وضعیت قرار ندهید—حالت های برنامه های کلیددار برای داده های حساس مناسب نیستند.
- وضعیتهای برنامه کلیددار را در محدودههای تعیینشده در
MAX_KEY_LENGTH
،MAX_MESSAGE_LENGTH
، وMAX_DATA_LENGTH
نگه دارید. - یک تماس
setStates
یاsetStatesImmediate
در مجموع به 300 کیلوبایت محدود می شود (تقریباً 1/3 کل قابل ذخیره در روز). فراتر از این منجر به رفتار نامشخص می شود. - فقط در صورتی شدت یک حالت را روی
SEVERITY_ERROR
تنظیم کنید که شرایطی وجود داشته باشد که سازمان باید برای رفع آن اقدام کند. - هنگام ارسال یک وضعیت برنامه حاوی خطا، اطمینان حاصل کنید که پس از رفع خطاها، وضعیت پیگیری را نیز ارسال کنید تا EMM بتواند پرچم گذاری خطاها را در کنسول خود متوقف کند.
- برای وضعیت پیگیری، از همان کلید حالت اولیه استفاده کنید که خطا را برگرداند و شدت را روی
SEVERITY_INFO
تنظیم کنید.
قطعه زیر مجموعه ای از حالت های کلیددار برنامه را ایجاد می کند:
val states = hashSetOf(KeyedAppState.builder() .setKey("key") .setSeverity(KeyedAppState.SEVERITY_INFO) .setMessage("message") .setData("data") .build())
Collectionstates = new HashSet<>(); states.add(KeyedAppState.builder() .setKey("key") .setSeverity(KeyedAppState.SEVERITY_INFO) .setMessage("message") .setData("data") .build());
متد setStates()
فوراً حالتهای برنامه کلیددار را به برنامه Play Store (نام بسته: com.android.vending
) در صورت نصب روی دستگاه و همچنین هر سرپرست دستگاه یا نمایه کاری ارسال میکند.
keyedAppStatesReporter.setStates(states)
keyedAppStatesReporter.setStates(states);