Известные неполадки и ограничения

improve this page | report issue

Известные неполадки

Щелкните на следующей ссылке, чтобы открыть динамически создаваемый список документов для этого выпуска и всех пакетов исправлений, включая известные неполадки вместе с инструкциями по исправлению, а также загружаемые компоненты: http://www.ibm.com/support/search.wss?tc=SSVNUQ&tc=SSHT2F&atrn=SWVersion&atrv=8.0.

Известные ограничения

Описание известных ограничений IBM Mobile Foundation можно найти в разных частях этой документации:

  • Если известное ограничение относится к конкретному компоненту, то его описание можно найти в разделе, посвященном этому компоненту. С учетом этой информации вы можете сразу определить влияние ограничения на компонент.
  • Информация об известных ограничениях общего характера, которые относятся к разным компонентам, приведена в этом разделе.
  • Возможна несогласованная работа развернутых ячеек Mobile Foundation Analytics вследствие неполадок поиска узлов Elasticsearch в кластере OpenShift 4.2. В результате консоль администрирования Analytics одновременно отображает только один узел.
  • В мобильном приложении AppCenter для Android пользователь может заметить неполадки прокрутки. Это не является нарушением работы. Приложение работает правильным образом - пользователю необходимо дополнительно прокрутить страницу вниз. Это ограничение связано с внешними средами Javascript, применяемыми в клиенте AppCenter.

Глобализация

В случае разработки глобализированных приложений действуют следующие ограничения:

  • Частичный перевод: часть продукта Mobile Foundation v8.0, включая документацию, переведена на следующие языки: китайский (КНР), китайский (Тайвань), французский, немецкий, итальянский, японский, корейский, португальский (бразильский), русский и испанский. Текст, который отображается пользователю, переведен.
  • Поддержка двунаправленного текста: приложения, создаваемые с помощью Mobile Foundation, не обеспечивают полную поддержку двунаправленного текста. Зеркальное размещение элементов графического пользовательского интерфейса (GUI) и управление направлением текста по умолчанию не предоставляются. Однако, разработчики могут обойти это ограничение и обеспечить полную поддержку двунаправленного текста, вручную настроив код создаваемых приложений.

Несмотря на то, что базовые функции Mobile Foundation переведены на иврит, отдельные элементы графического пользовательского интерфейса не размещаются зеркально.

  • Ограничения имен адаптеров: имена адаптеров должны допускать создание имен классов Java. Кроме того, они могут содержать только следующие символы:
    • Строчные и прописные буквы (A-Z и a-z)
    • Цифры (0-9)
    • Символ подчеркивания (_)
  • Символы Unicode: символы Unicode не поддерживаются за пределами базовой многоязыковой плоскости.
  • Чувствительность языка и формы нормализации Unicode: в следующих сценариях для обеспечения правильной работы функции поиска на разных языках запросы не учитывают чувствительность языка, включая обычное сравнение, игнорирование символа акцента, игнорирование регистра символов и преобразование один к двум. Кроме того, поиск для поиска по данными не применяется форма нормализации C (NFC).
    • В MobileFirst Analytics Console при создании пользовательского фильтра для пользовательской диаграммы. Однако, в этой консоли свойство сообщения использует форму нормализации C (NFC) и учитывает чувствительность языка.
    • В MobileFirst Operations Console при поиске приложения на странице Обзор приложений, при поиске адаптера на странице Обзор адаптеров, при поиске тега на странице Push-уведомления или при поиске устройства на странице Устройства.
    • При поиске функций для API JSONStore.

MobileFirst Analytics

MobileFirst Analytics имеет следующие ограничения:

  • Аналитика безопасности (данные о запросах, не прошедших проверки безопасности) не поддерживается.
  • В MobileFirst Analytics Console формат чисел не соответствует правилам International Components for Unicode (ICU).
  • В MobileFirst Analytics Console не применяется предпочитаемый пользователем тип цифр.
  • В MobileFirst Analytics Console формат дат, времени и чисел отображается с учетом параметра языка операционной системы, а не локали Microsoft Internet Explorer.
  • При создании пользовательского фильтра для пользовательской диаграммы поддерживаются только десятичные числа, такие как 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
  • При создании предупреждений на странице Управление предупреждениями MobileFirst Analytics Console поддерживаются только десятичные числа, такие как 0, 1, 2, 3, 4, 5, 6, 7, 8, 9.
  • Страница Аналитика MobileFirst Operations Console поддерживает следующие браузеры:
    • Microsoft Internet Explorer версии 10 и выше
    • Mozilla Firefox ESR и выше
    • Apple Safari для iOS версии 7.0 и выше
    • Последняя версия Google Chrome
  • SDK клиента аналитики недоступен для Windows.

Мобильный клиент IBM MobileFirst Foundation Application Center

Мобильный клиент Application Center применяет культурные соглашения устройства, на котором работает, такие как формат даты. Он не всегда соответствует более строгим правилам International Components for Unicode (ICU).

IBM MobileFirst Operations Console

MobileFirst Operations Console имеет следующие ограничения:

  • Предлагает только частичную поддержку двунаправленных языков.
  • Направление текста нельзя изменить в случае отправки уведомлений на устройство Android:
    • Если первые буквы относятся к языку с письмом справа налево, такому как арабский или иврит, то это направление автоматически применяется ко всему тексту.

    • Если первые буквы относятся к языку с письмом слева направо, то это направление автоматически применяется ко всему тексту.

  • Последовательность символов и выравнивание текста не соответствуют культурным соглашением двунаправленного языка.
  • Числовые поля не анализируют числовые значения в соответствии с правилами форматирования локали. Консоль отображает отформатированные числа, но в качестве ввода принимает только необработанные (неотформатированные) числа. Пример: 1000, а не 1 000 или 1,000.
  • Время ответа страницы Аналитика MobileFirst Operations Console зависит от нескольких факторов, таких как аппаратное обеспечение (ОЗУ, ЦПУ), количества накопленных аналитических данных и конфигурации кластера MobileFirst Analytics. Рекомендуется провести тестирование нагрузки перед интеграцией MobileFirst Analytics в рабочую среду.

Инструмент настройки сервера

Инструмент настройки сервера имеет следующие ограничения:

  • В описательном имени конфигурации сервера допустимы только символы из системного набора символов. Например, в Windows применяется набор символов ANSI.
  • Пароли, содержащие одинарные или двойные кавычки, могут работать неправильным образом.
  • Отображение строк, не принадлежащих кодовой странице по умолчанию: Консоль Инструмента настройки сервера имеет то же ограничение глобализации, что и консоль Windows.

Кроме того, вы можете столкнуться с ограничениями и аномалиями в разных аспектах глобализации, обусловленными ограничениями других продуктов, таких как браузеры, системы управления базами данных или комплекты для разработки программного обеспечения. Например:

  • В идентификационных данных пользователя Application Center допустимы только символы ASCII. Это ограничение связано с тем, что WebSphere Application Server (полный профайл или Liberty) не поддерживает символы, отличные от ASCII, в паролях и именах пользователей. См. раздел Символы, допустимые в ИД пользователей и паролях.
  • Windows:
    • Для просмотра локализованных сообщений в файле протокола, созданном тестовым сервером, необходимо открыть файл протокола в кодировке UTF8.

    • Эти ограничения обусловлены следующими причинами:

      • Тестовый сервер устанавливается в профайле WebSphere Application Server Liberty, который по умолчанию создает файлы протоколов в кодировке ANSI, однако для локализованных сообщений применяет кодировку UTF8.
  • В Java 7.0 Service Refresh 4-FP2 и более ранних версий в поля ввода нельзя вставлять символы Unicode, которые находятся за пределами базовой многоязыковой плоскости. Для того чтобы избежать этой неполадки, создайте папку path вручную и выберите ее в ходе установки.
  • Пользовательские заголовки и имена кнопок для предупреждений, подтверждений и приглашений должны быть короткими, чтобы избежать усечения на краю экрана.
  • JSONStore не обрабатывает нормализацию. Функции поиска для API JSONStore не учитывают чувствительность языка, включая игнорирование символа акцента, игнорирование регистра символов и преобразование один к двум.

Адаптеры и внешние зависимости

Следующие известные неполадки относятся к взаимодействиям между зависимостями и классами на сервере приложений, включая общую библиотеку MobileFirst.

Apache HttpClient

Mobile Foundation использует Apache HttpClient для внутренней обработки. Если добавить экземпляр Apache HttpClient в качестве зависимости в адаптер Java, то в адаптере будет нарушена работа следующих API: AdaptersAPI.executeAdapterRequest, AdaptersAPI.getResponseAsJSON и AdaptersAPI.createJavascriptAdapterRequest. Это связано с тем, что API содержат типы Apache HttpClient в сигнатурах. Для обхода этой неполадки следует использовать внутренний экземпляр Apache HttpClient, изменив область зависимости в предоставленном файле pom.xml.

Криптографическая библиотека Bouncy Castle

Mobile Foundation использует Bouncy Castle. В адаптере можно указать другую версию Bouncy Castle, внимательно изучив возможные последствия: код MobileFirst Bouncy Castle может заполнять отдельные статические поля Singleton классов пакета javax.security и может запретить доступ версии Bouncy Castle из адаптера к функциям, в которых используются эти поля.

Реализация файлов JAR Apache CXF

Поскольку CXF применяется в реализации MobileFirst JAX-RS, в адаптер нельзя добавить файлы JAR Apache CXF.

Мобильный клиент Application Center: неполадки обновления в Android

4.0.x

В компоненте WebView Android 4.0.x существуют известные неполадки, связанные с обновлением. Рекомендуется обновить устройства до Android 4.1.x.

Если клиент Application Center компонуется из исходного кода, то выключение аппаратного ускорения на уровне приложений в манифесте Android помогает улучшить ситуацию в Android 4.0.x. В этом случае приложение должно быть создано с помощью SDK Android 11 и выше.

Application Center требуется MobileFirst Studio V7.1 для импорта и

компоновки мобильного клиента Application Center

Для создания мобильного клиента Application Center требуется MobileFirst Studio V7.1. MobileFirst Studio можно загрузить на странице Загрузки. Перейдите на вкладку Предыдущие выпуски MobileFirst Platform Foundation и найдите ссылку для загрузки. Инструкции по установке приведены в разделе Установка MobileFirst Studio в справочной системе IBM Knowledge Center for 7.1. Дополнительная информация о создании мобильного клиента Application Center приведена в разделе Подготовка к работе с мобильным клиентом.

Application Center и Microsoft Windows Phone 8.1

Application Center поддерживает распространение приложений в виде файлов пакетов приложений Windows Phone (.xap) для Microsoft Windows Phone 8.0 и Microsoft Windows Phone 8.1. Начиная с Microsoft Windows Phone 8.1, Microsoft предлагает новый универсальный формат пакетов приложений (.appx) для Windows Phone. В настоящее время Application Center не поддерживает файлы .appx для Microsoft Windows Phone 8.1; для Windows Phone поддержка ограничена только форматом .xap.

Application Center поддерживает распространение файлов пакетов приложений (.appx) только для Microsoft Windows Store (настольные приложения).

Администрирование приложений MobileFirst с помощью Ant или командной строки

Инструмент mfpadm недоступен, если вы загрузили и установили только IBM MobileFirst Foundation Developer Kit. Инструмент mfpadm устанавливается с помощью программы установки MobileFirst Server.

Конфиденциальные клиенты

В значениях ИД и паролей конфиденциального клиента допустимы только символы ASCII.

Непосредственное обновление

Непосредственное обновление в Windows не поддерживается в версии V8.0.0.

Ограничения функции FIPS 140-2

В случае применения функции FIPS 140-2 в Mobile Foundation действуют следующие ограничения:

  • Проверенный режим FIPS 140-2 применим только в случае защиты (шифрования) локальных данных функции JSONStore и защиты соединений HTTPS между клиентом MobileFirst и MobileFirst Server.
    • Для соединений HTTPS клиент использует библиотеки FIPS 140-2 только в случае передачи данных между клиентом MobileFirst и MobileFirst Server. Прямые соединения с другими серверами и службами не используют библиотеки FIPS 140-2.
  • Эта функция поддерживается только на платформах iOS и Android.
    • В Android эта функция поддерживается только на устройствах и в симуляторах на основе архитектуры x86 или armeabi. Она не поддерживается в Android на основе архитектуры armv5 или armv6. Это связано с тем, что применяемая библиотека OpenSSL не получила проверку FIPS 140-2 для armv5 и armv6 в Android. FIPS 140-2 не поддерживается в 64-разрядной архитектуре, хотя библиотека MobileFirst поддерживает 64-разрядную архитектуру. FIPS 140-2 можно запустить на 64-разрядных устройствах, если проект содержит только 32-разрядные нативные библиотеки NDK.

    • В iOS она поддерживается в архитектурах i386, x86_64, armv7, armv7s и arm64.

  • Эта функция работает только с гибридными приложениями (не с нативными приложениями).
  • Для нативных приложений iOS поддержка FIPS включена по умолчанию на основе библиотек FIPS iOS. Для включения FIPS 140-2 никаких действий выполнять не требуется.
  • Функция FIPS 140-2 не поддерживает регистрацию пользователей в клиенте.
  • Клиент Application Center не поддерживает функцию FIPS 140-2.

Установка пакета исправлений или временного исправления в Application Center или MobileFirst Server

В процессе применения пакета исправлений или временного исправления в Application Center и MobileFirst Server требуется вмешательство пользователя, а также может потребоваться временно завершить работу приложений.

Поддерживаемые архитектуры JSONStore

JSONStore в Android поддерживает следующие архитектуры: ARM, ARM v7 и x86 32-bit. Другие архитектуры в настоящее время не поддерживаются. Если попытаться использовать другие архитектуры, то вы можете столкнуться с исключительными ситуациями и сбоями приложений.

JSONStore не поддерживается для нативных приложений Windows.

Ограничения сервера Liberty

Если сервер Liberty применяется в 32-разрядном JDK 7, то при запуске Eclipse может выдаваться следующее сообщение об ошибке: “Произошла ошибка в ходе инициализации VM. Не удалось зарезервировать память для кучи объектов. Ошибка: не удалось создать виртуальную машину Java. Ошибка: произошла неустранимая исключительная ситуация. Программа будет закрыта.”

Для устранения этой неполадки следует использовать 64-разрядный JDK, 64-разрядную среду Eclipse и 64-разрядную версию Windows. В случае применения 32-разрядного JDK в 64-разрядной системе может потребоваться настроить следующие параметры JVM: mx512m и Xms216m.

Ограничения маркеров LTPA

Возникает исключительная ситуация SESN0008E, если срок действия маркера LTPA истекает раньше срока действия сеанса пользователя.

Маркер LTPA связан с текущим сеансом пользователя. Если срок действия сеанс истекает раньше срока действия маркера LTPA, то новый сеанс создается автоматически. Однако, если срок действия маркера LTPA истекает раньше срока действия сеанса, то возникает следующая исключительная ситуация:

com.ibm.websphere.servlet.session.UnauthorizedSessionRequestException: SESN0008E: Анонимный пользователь предпринял попытку обращения к сеансу, владельцем которого является {имя пользователя}

Для обхода этого ограничения необходимо настроить принудительное завершение сеанса пользователя в случае истечения срока действия маркера LTPA.

  • В конфигурации WebSphere Application Server Liberty укажите для атрибута httpSession invalidateOnUnauthorizedSessionRequestException значение true в файле server.xml.
  • В конфигурации WebSphere Application Server добавьте пользовательское свойство управления сеансом InvalidateOnUnauthorizedSessionRequestException со значением true, чтобы устранить неполадку.

Примечание: в отдельных версиях WebSphere Application Server и WebSphere Application Server Liberty исключительная ситуация может по-прежнему регистрироваться в протоколе, однако сеанс будет завершаться правильным образом. Дополнительная информация приведена в APAR PM85141.

Microsoft Windows Phone 8

Для сред Windows Phone 8.1 не поддерживается архитектура x64.

Приложения Microsoft Windows 10 UWP

Функция проверки подлинности приложений не работает для приложений Windows 10 UWP MobileFirst, если SDK MobileFirst установлен с помощью пакета NuGet. Для обхода этого ограничения разработчики могут загрузить пакет NuGet и добавить ссылки на SDK MobileFirst вручную. .

Вложенные проекты могут вызвать непредвиденные результаты в ходе работы с CLI

MobileFirst CLI не обеспечивает согласованную работу с вложенными проектами.

Предварительный просмотр веб-ресурсов Cordova с помощью Mobile Browser Simulator

Mobile Browser Simulator обеспечивает предварительный просмотр веб-ресурсов, но не всех API JavaScript MobileFirst из числа поддерживаемых симулятором. В частности, протокол OAuth поддерживается не полностью. Однако, вы можете проверить вызовы адаптеров с помощью WLResourceRequest.

Физическое устройство iOS требуется для тестирования расширенной проверки подлинности приложений

Для тестирования расширенной функции проверки подлинности приложений требуется физическое устройство iOS, поскольку IPA нельзя установить в симуляторе iOS.

Поддержка Oracle 12c в MobileFirst Server

Инструменты установки MobileFirst Server (Installation Manager, Инструмент настройки сервера и задачи Ant) поддерживают установку с базой данных Oracle 12c.

Инструменты установки могут создать пользователей и таблицы, однако базы данных должны быть созданы заранее.

Поддержка push-уведомлений

Незащищенные push-уведомления поддерживаются в Cordova (iOS и Android).

Обновление платформы cordova-ios

Для обновления платформы cordova-ios приложения Cordova необходимо удалить и заново установить платформу, выполнив следующие действия:

  1. Перейдите в каталог проекта приложения с помощью интерфейса командной строки.
  2. Выполните команду cordova platform rm ios для удаления платформы.
  3. Выполните команду cordova platform add ios@version для добавления новой платформы в приложение, где version - это версия платформы Cordova iOS.
  4. Выполните команду cordova prepare для интеграции изменений.

В случае применения команды cordova platform update ios возникает ошибка обновления.

Веб-приложения

Веб-приложения имеют следующие ограничения:

  • В Microsoft Internet Explorer (IE) и Microsoft Edge сообщения административного приложения и сообщения веб-SDK клиента отображаются в соответствии с параметрами региона и формата операционной системы, а не в соответствии с настроенными в браузере или операционной системе параметрами языка пользовательского интерфейса. См. также раздел Определение сообщений администратора на разных языках.

cordova-plugin-statusbar не работает с приложением Cordova, загруженным с помощью cordova-plugin-mfp.

cordova-plugin-statusbar не будет работать с приложением Cordova, загруженным с помощью cordova-plugin-mfp.

Для обхода этой неполадки разработчику потребуется указать CDVViewController в качестве корневого контроллера представления. Замените фрагмент кода в методе wlInitDidCompleteSuccessfully из файла MFPAppdelegate.m проекта Cordova iOS, как показано ниже.

Существующий фрагмент кода:

(void)wlInitDidCompleteSuccessfully
{
UIViewController* rootViewController = self.window.rootViewController;
// Создание контроллера представления Cordova
CDVViewController* cordovaViewController = [[CDVViewController alloc] init] ;
cordovaViewController.startPage = [[WL sharedInstance] mainHtmlFilePath];
// Настройка контроллера представления Cordova с учетом границ родительского представления
cordovaViewController.view.frame = rootViewController.view.bounds;
// Отображение представления Cordova [rootViewController addChildViewController:cordovaViewController];
[rootViewController.view addSubview:cordovaViewController.view];
[cordovaViewController didMoveToParentViewController:rootViewController];
}

Рекомендуемый фрагмент кода для обхода этого ограничения:

(void)wlInitDidCompleteSuccessfully
{
 // Создание контроллера представления Cordova
CDVViewController* cordovaViewController = [[CDVViewController alloc] init] ;
cordovaViewController.startPage = [[WL sharedInstance] mainHtmlFilePath];
[self.window setRootViewController:cordovaViewController];
[self.window makeKeyAndVisible];
}

Приложения Android не поддерживают адреса IPv6

Если вы настраиваете файл mfpclient.properties для нативного приложения Android и MobileFirst Server размещается на хосте с адресом IPv6, используйте имя хоста, связанное с адресом IPV6, для настройки свойства wlServerHost в файле mfpclient.properties. Если указать в свойстве wlServerHost адрес IPv6, то приложение не сможет подключиться к MobileFirst Server.

Изменение алгоритма работы по умолчанию приложения Cordova (например, переопределение кнопки Назад), если SDK MobileFirst Cordova добавлен в проект, может привести к отклонению приложения магазином Google Play Store. По другим вопросам, связанным с неудачной отправкой приложений в Google Play Store, обращайтесь в службу поддержки Google.

Примечание: если применяется временное исправление MobileFirst 8.0, выпущенное в январе 2018 года или позднее, то рекомендуется обновить сервер и клиент до одной и той же версии.

Ошибки доступа в ходе установки CLI MobileFirst с помощью Node 8

В ходе установки CLI MobileFirst с помощью npm могут появиться ошибки в выводе терминала.

> bufferutil@1.2.1 install /usr/local/lib/node_modules/mfpdev-cli/node_modules/bufferutil
> node-gyp rebuild

gyp ERR! clean error
gyp ERR! stack Error: EACCES: permission denied, rmdir 'build'
gyp ERR! System Darwin 18.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/mfpdev-cli/node_modules/bufferutil
gyp ERR! node -v v8.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok

> utf-8-validate@1.2.2 install /usr/local/lib/node_modules/mfpdev-cli/node_modules/utf-8-validate
> node-gyp rebuild

gyp ERR! clean error
gyp ERR! stack Error: EACCES: permission denied, rmdir 'build'
gyp ERR! System Darwin 18.0.0
gyp ERR! command "/usr/local/bin/node" "/usr/local/lib/node_modules/npm/node_modules/node-gyp/bin/node-gyp.js" "rebuild"
gyp ERR! cwd /usr/local/lib/node_modules/mfpdev-cli/node_modules/utf-8-validate
gyp ERR! node -v v8.12.0
gyp ERR! node-gyp -v v3.8.0
gyp ERR! not ok

> fsevents@1.2.4 install /usr/local/lib/node_modules/mfpdev-cli/node_modules/fsevents
> node install

Эта ошибка связана с известной неполадкой node-gyp. Эти ошибки можно проигнорировать, поскольку они не влияют на работу CLI MobileFirst. Это применимо для mfpdev-cli iFix level 8.0.2018100112 и выше. Для устранения этой ошибки укажите флаг --no-optional в ходе установки. Пример:

npm install -g mfpdev-cli --no-optional

Комплект приложений Android

Поскольку Android 5.x и Android 6.x и выше используют разные структуры комплектов приложений, пользователи в Android 5.x не смогут подключиться к серверу MobileFirst, если включена проверка подлинности приложений, а в Play Store выбран режим распространения комплектов приложений. Это ограничение действует только для следующей комбинации: Android 5.x + проверка подлинности приложений + комплект приложений Android. Для обхода ограничения передайте приложение в Play Store в качестве обычного файла .apk или укажите минимальную версию Android 6 и выше или создайте отдельную версию приложения для устройств Android 5.x.

Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.
Last modified on August 17, 2020