Как реальное устройство может быть зарегистрировано и распознано производственным сервером MobileFirst 7.0?

Мы успешно настроили сервер MobileFirst 7.0 для тестирования и производственной среды и развернули на нем приложение. Но после того, как несколько реальных устройств установили приложение (как iOS, так и Android), мы НЕ МОЖЕМ увидеть какие-либо устройства в worklightconsole.

No device registered in this runtime.

введите здесь описание изображения

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


person Sam Su    schedule 05.06.2015    source источник
comment
Ваше приложение действительно подключается к серверу MFP? Наиболее распространенный случай, когда это происходит, когда приложение никогда не подключается к серверу, поэтому сервер никогда не знает об устройстве (и оно никогда не отображается на вкладке «Устройства»).   -  person patbarron    schedule 05.06.2015
comment
@patbarron да, это главная проблема.   -  person Sam Su    schedule 14.07.2015


Ответы (2)


См. здесь: http://engtest01w.francelab.fr.ibm.com:9090/support/knowledgecenter/SSHS8R_7.1.0/com.ibm.worklight.dev.doc/devref/c_the_application_descriptor.html

userIdentityRealms
Упорядоченный список областей идентификации пользователей, разделенных запятыми, для аутентификации OAuth. Сферы должны быть упорядочены по предпочтениям. Первая успешно аутентифицированная область в этом списке выбирается в качестве области идентификации пользователя. Если список пуст или ни одна область в списке не прошла проверку подлинности, токен идентификатора не содержит идентификационной информации. Этот элемент является необязательным, и значением по умолчанию является пустой список.

<userIdentityRealms>WASLTPARealm, CustomAuthenticatorRealm</userIdentityRealms>

Примечание. Этот атрибут используется для установки идентификатора пользователя в потоках на основе OAuth. Классические потоки (до V7.0) см. в документации по тест безопасности customSecurityTest.

Вам нужно будет указать имя вашей области в файле application-descriptor.xml, чтобы приложение было указано на вкладке «Устройства».

person Idan Adar    schedule 05.06.2015
comment
Привет, Адар, после подключения к серверу MF устройство отображается на вкладке, но с пустым идентификатором пользователя и именем друга (проверьте здесь: ww1.sinaimg.cn/large/5fd37818jw1eu2dz80kngj21go0octds.jpg), я сделал что-то после входа пользователя в систему, например var userIdentity = { userId: userinfo.userId, loginName:userinfo.loginName, displayName: username, userRoleId:userinfo.roleId, attributes: { foo: "bar" } }; и WL.Server.setActiveUser("SingleStepAuthRealm", userIdentity);, но все еще не получил. - person Sam Su; 14.07.2015

Это было вызвано потерей связи с сервером MF.

Простая проверка соединения с помощью следующего кода:

function wlCommonInit(){
    WL.Client.connect({
        onSuccess: onConnectSuccess,
        onFailure: onConnectFailure
    });

}

function onConnectSuccess() {
    WL.Logger.debug ("Connecting to MobileFirst Server.");
}

function onConnectFailure(data){
    WL.SimpleDialog.show("CAN NOT Connecting to MobileFirst Server", "try it again", 
        [{
            text : 'Reload',
            handler : WL.Client.reloadApp 
        },
        {
            text: 'Close',
            handler : function() {}
        }]);
}
person Sam Su    schedule 03.07.2015