您可以从IOS应用程序内的UIWebView下载存折优惠券吗?

您可以从IOS应用程序内的UIWebView下载存折优惠券吗?,第1张

概述是否可以从webview中下载和添加存折而无需修改应用程序以支持新的MIME类型或Sparrow所做的未知MIME类型? 我有一个带有webview的新闻ios应用程序.在webview中,我显示新闻项目和横幅.当您单击横幅时,我想打开一个.pkpass文件的URL并将其添加到我的存折中.相反,我得到一个FrameLoadInterrupted错误,没有任何可见的事情发生. 如果我打开safari 是否可以从webvIEw中下载和添加存折而无需修改应用程序以支持新的MIME类型或Sparrow所做的未知MIME类型?

我有一个带有webvIEw的新闻ios应用程序.在webvIEw中,我显示新闻项目和横幅.当您单击横幅时,我想打开一个.pkpass文件的URL并将其添加到我的存折中.相反,我得到一个FrameLoadInterrupted错误,没有任何可见的事情发生.
如果我打开safari中的url,这个工作正常,Chrome,因为本周早些时候(版本23)也打开了像预期的url.

这可能是Apple的一些奇怪策略吗?不允许从webvIEw正确打开此MIME类型?

解决方法 我最好的选择是UIWebVIEw无法处理Passbook传递.然而,您可以尝试在uiwebviewdelegate方法中捕获下载 – (BOol)webVIEw:(UIWebVIEw *)webVIEw shouldStartLoaDWithRequest:(NSURLRequest *)请求navigationType:(UIWebVIEwNavigationType)navigationType.

我的意思是你必须自己处理这部分,因为我使用的http://passkit.com/samples/没有返回结束pkpass的url因此它完全取决于你如何请求存折文件.

如果您包含.pkpass扩展名,则可以检查请求中的扩展名.

如果您知道存折文件的URL类型,请在此处编写自己的下载代码,并通过passbook api将其传递给存折.

似乎没有任何很好的修复,你可以在safari中加载失败的ulR:

- (voID) webVIEw:(UIWebVIEw *)webVIEw dIDFailLoaDWithError:(NSError *)error {    NSLog(@"WebvIEw: %@",error);    if ([error.domain isEqualToString:@"WebKitErrorDomain"] && error.code == 102) {        Nsstring *FailedURL = [error.userInfo objectForKey:NSURLErrorFailingURLStringErrorKey];        if (FailedURL == nil) {            return;        }        NSURL *url = [NSURL URLWithString:FailedURL];        [[UIApplication sharedApplication] openURL:url];    }}

但这只是非常糟糕的编码.

总结

以上是内存溢出为你收集整理的您可以从IOS应用程序内的UIWebView下载存折优惠券吗?全部内容,希望文章能够帮你解决您可以从IOS应用程序内的UIWebView下载存折优惠券吗?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1071334.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存