如何将真实设备注册到生产 MobileFirst 7.0 Server 并由其识别?
Posted
技术标签:
【中文标题】如何将真实设备注册到生产 MobileFirst 7.0 Server 并由其识别?【英文标题】:How can a real device be registered to and recognized by the production MobileFirst 7.0 Server? 【发布时间】:2015-06-05 09:32:35 【问题描述】:我们已经成功地为测试和生产环境配置了一个 MobileFirst 7.0 服务器,并在其上部署了一个应用程序。但是在安装了几个真实设备(ios和android)之后,我们在worklightconsole中看不到任何设备。
No device registered in this runtime.
那么如何才能识别这些已经安装了应用程序的设备并将其显示在 worklightconsole 设备选项卡中。
【问题讨论】:
您的应用程序是否真正连接到 MFP 服务器?我看到发生这种情况的最常见情况是应用程序从未连接到服务器,因此服务器从未真正意识到该设备(并且它从未出现在“设备”选项卡中)。 @patbarron 是的,这是主要问题。 【参考方案1】:请看这里: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 的用户身份域的逗号分隔有序列表 验证。领域应按优先顺序排列。首先 此列表中成功验证的领域被选为用户 身份领域。如果列表为空,或者列表中没有领域 经过身份验证,ID 令牌不包含身份信息。这 元素是可选的,默认值为空列表。
<userIdentityRealms>WASLTPARealm, CustomAuthenticatorRealm</userIdentityRealms>
注意:这个属性是 用于在基于 OAuth 的流程中设置用户身份。对于经典 (pre-V7.0) 流程,请参阅customSecurityTest security test 的文档。
您需要在 application-descriptor.xml 文件中提供您的领域名称,以便应用在“设备”选项卡中列出。
【讨论】:
嗨 Adar,连接到 MF 服务器后,设备会显示在选项卡中,但用户 ID 和朋友姓名为空白(在此处查看: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);
但仍然是空白。【参考方案2】:
这是由于失去与 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()
]);
【讨论】:
以上是关于如何将真实设备注册到生产 MobileFirst 7.0 Server 并由其识别?的主要内容,如果未能解决你的问题,请参考以下文章
如何在没有注册 Apple 开发者计划的情况下使用 Xcode 8 在真实设备上运行应用程序?