- PVSM.RU - https://www.pvsm.ru -
Самое первое защищённое устройство (rugged device) Samsung появилось в далёком 2011 году. С виду укреплённый корпус и заменяемая батарея, что продлевает жизнь смартфона, но всё не так просто. Линейка rugged моделей создана для снижения расходов бизнеса при эксплуатации смартфонов в долгосрочной перспективе, потому что на производстве условия часто суровые, а отношение сотрудников к устройству не всегда бережное.
В этой статье я опишу малоизвестные подробности использования смартфонов в бизнесе и расскажу о модели защищенного смартфона Galaxy XCover7, а также о трёх способах программировать кнопку XCover на его левой стороне.
Хотелось бы начать с неочевидных конкретных кейсов, так как защищённость – это не просто укреплённый и необычный на вид корпус. На производстве бывает шумно, поэтому динамики устройств для бизнеса звучат громче. Touchscreen готов для работы в перчатках, а также для работы под дождём и снегом (real life). Настройки такие есть, см. ниже.
Понятно, что возможность замены батареи продлевает срок службы смартфона: «устала» и просела с годами - заменили и никаких проблем. Однако главная тема реальной долговечности - это «разматывание» Type-C из-за постоянных и не самых аккуратных подключений к зарядке (сотрудники не бережны, да и вообще). Для этого около Type-C входа есть POGO pin разъемы (видны на рисунке ниже), а также специальные зарядные устройства, рассчитанные на одно или несколько (до двадцати) устройств, которые просто удобнее и надёжнее в повседневном использовании. Это доп. аксессуар.
Какие ещё потребности бывают и как их решает устройство?
eSIM на корпоративном устройстве – это реально важно, поэтому добавили. Производство, менеджмент, логистика и администрирование пластика стоят приличных денег, если посчитать. А ещё бывают находчивые сотрудники, которые вынимают симку из устройства и гоняют трафик в личных целях. Если люди что-то могут, они это делают. Тоже real life.
Что по параметрам?
- Батарея (15W) 4050mAh (хотелось бы побольше, но это влияет на размеры и вес, а удобство важно)
- если реально автономность тема, то батарейку можно менять на ходу (заменимость)
- Corning® Gorilla® Glass Victus®+ (и это хорошо)
- 5G и Android 14 (и это актуально)
- Экран 6.6 дюймов
- Разрешение экрана FHD+
- Память 6Gb (для большинства бизнес задач хватит)
- Хранение 128Gb с расширением до 1Тб
- Габариты: 169.0 x 80.1 x 10.2мм, 240 г.
- Wi-Fi : 802.11 a/b/g/n/ac 2.4G+5GHz, Wi-Fi Direct
- Bluetooth : BT5.3
- USB : USB 2.0
- GNSS Support : GPS, Glonass, Beidou, Galileo, QZSS
- Сенсоры: Accelerometer, Gyro, Geomagnetic, Light, Proximity
- NFC : UICC (в B2B бывает нужно)
Производительность ограничена требованиями защищенности и здравым смыслом. Это не красивый и модный флагман, а рабочая лошадка, задача которой – «пахать». Поэтому электронные компоненты спроектированы так, чтобы смартфон проходил более суровые, чем IP68 [1], тесты стандарта MIL-STD-810H [2]
Приведу самые занятные примеры из них:
- Вибрации по трём осям от 20 до 20000Гц в течение часа по каждой
- Обдув 8м/c песком и пылью 10г/м3 в течение часа каждой из 6 сторон при 25 и 65 °С
- Выдержка в камерах по 2 часа при температурах -51 °С и 63 °С и разном давлении
- Резкие температурные изменения от -20 °С до +60 °С
- Реакции на удар по всем осям с разными параметрами
- Трёхдневные испытания солёным туманом и ледяным дождём
- Бросание на фанеру с высоты 1.5м каждой гранью и стороной 26 раз
- Наращивание льда до 6мм при температуре -10 °С
- Циклы испытаний солнечным облучением с макс температурой +54° С и ветром
Помню, с выходом первых складных флагманов Flip и Fold была тема, что не нужно с ними грубо обращаться, постоянно швыряя на кровать. При большой удаче можно дошвыряться. XCover создан для гораздо менее нежных условий, чем флагманы. Откуда солёный туман? Морские порты и перевозки. Ледяной дождь? Приёмка грузов и внешние осмотры могут происходить на улице в любую погоду. Склады с хранением заморозки. Падения? Да сколько угодно. Условия пустынь, полных песка и ветра, или сравнимые с арктическими, в добывающей промышленности бывают повсеместно.
Каким образом можно назначать желаемую функциональность для XCover кнопки? Конечно, в этом участвует ваше приложение, но как связывать действия с кнопками для вызова соответствующих функций?
Первый способ [3] - это ручная настройка в разделе Settings > Advanced Settings > XCover. В приложение включают логику обработки нажатия и добавляют метаданные в AndroidManifest.xml, чтобы оно оказалось в разделе среди доступных
<meta-data
android:name="com.samsung.android.knox.intent.action.HARD_KEY_PRESS"
android:value="true" />
<receiver android:name=".receiver" android:exported="true">
<intent-filter>
<action android:name="com.samsung.android.knox.intent.action.HARD_KEY_REPORT" />
</intent-filter>
</receiver>
Когда пользователь нажимает или отпускает XCover кнопку, устройство передает intent со следующими свойствами:
|
Action |
"com.samsung.android.knox.intent.action.HARD_KEY_REPORT" |
|
Extra key settings |
"com.samsung.android.knox.intent.extra.KEY_CODE" |
В KNOX SDK предопределены константы, которые используются для определения кнопок и нажатий
|
Public static final int KEYCODE_PTT [4] |
1015 (0x000003f7) |
|
Public static final int KEYCODE_EMERGENCY [5] |
1079 (0x00000437) |
|
Public static final int KEY_ACTION_DOWN [6] (key press) |
1 (0x00000001) |
|
Public static final int KEY_ACTION_UP [7] (key release) |
2 (0x00000002) |
Ниже пример кода, который разбирает intent для кнопки XCover и проверяет, нажата она была или отпущена
String intentAction = intent.getAction();
if ("com.samsung.android.knox.intent.action.HARD_KEY_REPORT".equals(intentAction)) {
int keyCode = intent.getExtra(com.samsung.android.knox.intent.extra.KEY_CODE)
int keyReportType = intent.getExtra(com.samsung.android.knox.intent.extra.KEY_REPORT_TYPE)
if (keyCode == KEYCODE_PTT && keyReportType == 1) {
// XCover key pressed
}
else if (keyCode == KEYCODE_PTT && keyReportType == 2) {
// XCover key released
}
}
Второй способ [8] состоит в том, что разработчики приложения определяют собственные intents в манифесте
<receiver
android:name=".PTTKeyReceiver"
android:permission="com.samsung.android.knox.permission.KNOX_CUSTOM_SETTING"
android:exported="true" >
<intent-filter>
<action android:name="com.vendor.intent.action.PTT_PRESS" />
<action android:name="com.vendor.intent.action.PTT_RELEASE" />
</intent-filter>
</receiver>
KNOX_CUSTOM_SETTING permission добавляют для того, чтобы быть уверенным, что приложение будет ожидать intent от специализированных сервисов платформы, таких как Knox Service Plugin [9] или Knox Configure, через которые IT администратор компании настраивает соответствие с приложением. Им нужно сообщить обрабатываемые intents.
Особенностью Knox Configure является возможность использования сервиса без MDM, с возможностью автоматической (Out-of-The-Box) раскатки настроек, через загрузку в сервис серийных номеров официальным реселлером или QR код.
Третий способ [10] – это использование KNOX SDK for ISV (Independent Software Providers), который не требует активации KNOX лицензий на устройстве, если оно находится в режиме Device Owner.
Значения кодов для hardware кнопок на устройстве:
Volume up: 24
Volume down: 25
Power (side): 26
Push-to-Talk (XCover): 1015
Top (Emergency, Xcover): 1079
Последняя кнопка есть на XCover6 Pro, как я отмечал под первой картинкой в статье. Её часто называют Emergency, потому что используют для SOS оповещений о нештатных ситуациях на производстве
Uri uri = Uri.parse("content://com.samsung.android.knox.sdk/config/settings");
ContentValues contentValues = new ContentValues();
contentValues.put("component-name", "com.android.settings/com.android.settings.Settings");
contentValues.put("event", "long-press");
contentValues.put("key-code", "24");
contentValues.put("action", "activity");
String selection = "key=?";
String[] selectionArgs = new String[] {"hardware-key"};
mContext.getContentResolver().update(uri, contentValues, selection, selectionArgs);
Самая известная функциональность - это рация Push-To-Talk или Walkie-Talkie. Часто реализуют SOS функциональность, связывающую с диспетчером и передающую данные о местоположении, а также быстрое считывание данных штрих кодов для заполнения чек листов при учете товаров. Для этого, конечно, тоже используется отдельное приложение - Knox Capture [11]. Опция доступна и с клавиатуры, но через кнопку многим удобнее. Кстати, Knox Capture входит в сервис Knox Suite, годовая лицензия на который идет в комплекте с устройством, в нее включены Knox Manage (MDM) и другие полезные KNOX сервисы.
Приведу несколько отраслевых примеров:
Ритейл. Самая крупная известная сделка — это покупка [12] Walmart 740,000 защищенных устройств Samsung, которые, в том числе, используются для функции Push-to-Talk с кнопкой XCover. Ещё одним применением кнопки стала её интеграция с Knox Capture для автоматизации заполнения форм данными со штрих кодов.
Транспорт. Вопреки распространенному мнению «если автомобиль, то навигатор, а значит планшет», на самом деле, оперативная связь с водителем, который не всегда находится в кабине, гораздо важнее. Он должен постоянно иметь устройство с собой, что в случае с планшетом неудобно. А кнопка нужна для реализации экстренной связи с диспетчером.
В производстве, строительстве и добывающей промышленности кнопка нужна не только для рации push-to-talk, но и для обеспечения безопасности, то есть SOS вызова в экстренных ситуациях. Обычно операторы организуют заказчикам Private LTE сети, в которых работает смартфон, и это распространенная практика для Push-To-Talk и XCover. И наличие джек разъема тут тоже пригодится, чтобы подключить любые проводные наушники или так называемую тангенту.
О том, что у Samsung есть защищенные устройства, известно немногим. Защищенные устройства – это особая специализированная ниша, в которой имеют значение не только кнопки, от которых избавились в обычных смартфонах. Не только читатели могут задать вопрос: а надо ли вот это вот всё…? Может дёшево и сердито пользоваться в бизнесе типовыми потребительскими смартфонами? Стоит ли овчинка выделки следует решать, проявляя достаточную разборчивость в краткосрочных и долгосрочных эффектах (семь раз отмерь, один отрежь). Цена, в команде с иллюзией важности сиюминутных выгод, всегда играет против долгосрочных целей и реальной экономии.
Автор: pavelmedvedev79
Источник [13]
Сайт-источник PVSM.RU: https://www.pvsm.ru
Путь до страницы источника: https://www.pvsm.ru/samsung/403698
Ссылки в тексте:
[1] IP68: https://insights.samsung.com/2020/05/04/ip68-and-milspec-how-they-protect-your-smartphone-investments/
[2] MIL-STD-810H: https://insights.samsung.com/2024/10/22/how-tough-is-the-samsung-galaxy-xcover6-pro-smartphone/
[3] Первый способ: https://docs.samsungknox.com/dev/knox-sdk/features/independent-software-vendors-da/hardware-key-mappings/unmanaged-key-mappings/
[4] KEYCODE_PTT: https://docs.samsungknox.com/devref/knox-sdk/reference/com/samsung/android/knox/kpcc/KPCCManager.html#KEYCODE_PTT
[5] KEYCODE_EMERGENCY: https://docs.samsungknox.com/devref/knox-sdk/reference/com/samsung/android/knox/kpcc/KPCCManager.html#KEYCODE_EMERGENCY
[6] KEY_ACTION_DOWN: https://docs.samsungknox.com/devref/knox-sdk/reference/com/samsung/android/knox/custom/CustomDeviceManager.html#KEY_ACTION_DOWN
[7] KEY_ACTION_UP: https://docs.samsungknox.com/devref/knox-sdk/reference/com/samsung/android/knox/custom/CustomDeviceManager.html#KEY_ACTION_UP
[8] Второй способ: https://docs.samsungknox.com/dev/knox-sdk/features/independent-software-vendors-da/hardware-key-mappings/managed-key-mappings/
[9] Knox Service Plugin: https://docs.samsungknox.com/admin/knox-platform-for-enterprise/knox-service-plugin/configure-advanced-policies/device-key-mapping-for-rugged-devices/
[10] Третий способ: https://docs.samsungknox.com/dev/knox-sdk/sample-app-tutorials/get-started-with-isv-apis/manage-devices-using-isv-apis/
[11] Knox Capture: https://www.samsungknox.com/en/solutions/it-solutions/knox-capture
[12] покупка: https://news.samsung.com/ru/how-samsung-is-helping-walmart-transform-the-retail-associate-experience
[13] Источник: https://habr.com/ru/companies/samsung/articles/862538/?utm_campaign=862538&utm_source=habrahabr&utm_medium=rss
Нажмите здесь для печати.