Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ios/95.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript IBM MobileFirst 8在iOS 9/10上的直接更新导致解压缩失败_Javascript_Ios_Cordova_Ibm Mobilefirst - Fatal编程技术网

Javascript IBM MobileFirst 8在iOS 9/10上的直接更新导致解压缩失败

Javascript IBM MobileFirst 8在iOS 9/10上的直接更新导致解压缩失败,javascript,ios,cordova,ibm-mobilefirst,Javascript,Ios,Cordova,Ibm Mobilefirst,我正试图让直接更新功能在IBMMobileFirst8上运行,使用Cordova的“HelloWorld”示例,同时在iPad上运行。我在下面描述的问题在iOS 9和iOS 10上都有,直接更新最终导致解压状态失败 首先,我正在尝试下面描述的示例hello world Cordova应用程序 我已经下载了MobileFirst开发者工具包(产品版本:8.0.0.00-20171024-064640),启动了服务器,安装了示例适配器,添加了iOS平台,并在设备上运行了应用程序。我可以很好地连接到本

我正试图让直接更新功能在IBMMobileFirst8上运行,使用Cordova的“HelloWorld”示例,同时在iPad上运行。我在下面描述的问题在iOS 9和iOS 10上都有,直接更新最终导致解压状态失败

首先,我正在尝试下面描述的示例hello world Cordova应用程序

我已经下载了MobileFirst开发者工具包(产品版本:8.0.0.00-20171024-064640),启动了服务器,安装了示例适配器,添加了iOS平台,并在设备上运行了应用程序。我可以很好地连接到本地MobileFirst服务器,并在ping本地服务器时收到“连接成功”消息

当我更新服务器上的web资产时,我会得到标准的“可用更新”弹出窗口,然后单击更新。几秒钟后,我会看到一个弹出窗口,上面写着“更新失败-直接更新失败”

接下来,我尝试了“自定义”直接更新(在中的“自定义直接更新UI”下描述)

我下载了直接更新教程底部的示例代码。我修改了示例代码以使用教程中描述的直接更新自定义侦听器。因此,我的index.js文件如下所示:

var消息={};
var wlInitOptions={};
var directUpdateCustomListener={
onStart:函数(总大小){
警报('onStart:totalSize='+totalSize+'Byte');
},
onProgress:函数(状态、总大小、完成大小){
警报('onProgress:status='+status+'completeSize='+completeSize+'Byte');
},
onFinish:功能(状态){
警报('onFinish:status='+status);
var pos=状态indexOf(“故障”);
如果(位置>-1){
WL.SimpleDialog.show('更新失败','按重试按钮'[{
文本:“重试”,
处理程序:restartDirectUpdate//restartDirectUpdate
}]);
}
}
};
//由WL.Client.init(wlInitOptions)在MFP框架初始化后自动调用。
函数wlCommonInit(){
//覆盖默认的直接更新接口。
wl_directUpdateChallengeHandler.handleDirectUpdate=函数(directUpdateData,directUpdateContext){
//创建一个对话框。
navigator.notification.confirm(
'自定义对话框正文',
//处理对话框按钮。
功能(按钮索引){
如果(按钮索引==1){
directUpdateContext.start(directUpdateCustomListener);
}否则{
wl_directUpdateChallengeHandler.submitFailure();
}
},
“自定义对话框标题文本”,
[“更新”]
);
};
//用于触发对MobileFirst服务器的请求,以检查更新的web资源。
WLAuthorizationManager.ActainAccessToken()
.那么(
函数(){
警报(“***已成功获取令牌”);
},
函数(){
警报(“***获取令牌失败”);
}
);

}
您可以共享您正在运行的应用程序吗?我已经尝试使用相同的mfp cordova版本,上面的代码由您共享,但没有发现任何错误。自定义更新正在成功进行。您好@Keerthi--感谢您这么快地询问!是Cordova代码,但我清空了一些node_模块和插件目录以节省空间。这与“自定义直接更新”教程所指的完全相同。唯一的例外是,我根据教程修改了index.js文件以合并directUpdateCustomListener,并更改了应用程序ID以在iPad上运行。如果按原样运行customDirectupdate示例,您认为它工作正常吗?另外,您是否看到任何客户端错误?在XCode控制台中?您好@VivinK--非常感谢您的回复。我已经用Xcode客户端日志更新了帖子(编辑(10-31-17)到结束编辑(10-31-17))。基本上,我得到了自定义弹出窗口,然后下载进度达到100%,最后我得到了一个“更新失败-直接更新失败”弹出窗口。从Xcode客户机日志中我看不出有什么错误。当我没有触发直接更新时,我会收到“***已成功获取令牌”控制台日志消息。谢谢你能分享你正在运行的应用程序吗?我已经尝试使用相同的mfp cordova版本,上面的代码由您共享,但没有发现任何错误。自定义更新正在成功进行。您好@Keerthi--感谢您这么快地询问!是Cordova代码,但我清空了一些node_模块和插件目录以节省空间。这与“自定义直接更新”教程所指的完全相同。唯一的例外是,我根据教程修改了index.js文件以合并directUpdateCustomListener,并更改了应用程序ID以在iPad上运行。如果按原样运行customDirectupdate示例,您认为它工作正常吗?另外,您是否看到任何客户端错误?在XCode控制台中?您好@VivinK--非常感谢您的回复。我已经用Xcode客户端日志更新了帖子(编辑(10-31-17)到结束编辑(10-31-17))。基本上,我得到了自定义弹出窗口,然后下载进度达到100%,最后我得到了一个“更新失败-直接更新失败”弹出窗口。从Xcode客户机日志中我看不出有什么错误。当我没有触发直接更新时,我会收到“***已成功获取令牌”控制台日志消息。谢谢