标签: uiwebview

如何删除UIWebView的所有cookie?

在我的应用程序中,我有一个UIWebview加载linkedin auth页面登录.当用户登录时,cookie会保存到应用程序中.

我的应用程序有一个与linkedin登录无关的注销按钮.因此,当用户点击此按钮时,他会从应用程序中注销.我希望这个注销将从应用程序中清除他的linkedin cookie,以便用户完全注销.

iphone objective-c uiwebview ios uiwebviewdelegate

91
推荐指数
2
解决办法
4万
查看次数

允许在UIWebView上禁用滚动?

我必须在文章UITableView下面显示一篇网络文章.

我找到的唯一选项是UIWebView在tableView标题中显示文章.

为了做到这一点,我必须获得webView内容的高度,我必须禁用webView的滚动.

我发现了两种禁用滚动的解决方案:

for (id subview in webView.subviews)
    if ([[subview class] isSubclassOfClass: [UIScrollView class]])
        ((UIScrollView *)subview).scrollEnabled=NO;
Run Code Online (Sandbox Code Playgroud)

或者在JavaScript中:

<script type="text/javascript">
touchMove = function(event) {
    event.preventDefault();
}
Run Code Online (Sandbox Code Playgroud)

我听说Apple禁止第一个解决方案,但我没有任何证据.使用此解决方案会拒绝我的申请吗?如果是这样,我可以使用第二种解决方案而不被拒绝吗?

scroll uiwebview ios

90
推荐指数
10
解决办法
9万
查看次数

从UIWebView迁移到WKWebView

在我的应用程序中,我正在从UIWebView迁移到WKWebView,如何为WKWebView重写这些功能?

    func webViewDidStartLoad(webView: UIWebView){}
    func webViewDidFinishLoad(webView: UIWebView){}
Run Code Online (Sandbox Code Playgroud)

    func webView(webView: UIWebView, shouldStartLoadWithRequest request: NSURLRequest, navigationType: UIWebViewNavigationType) -> Bool {
        print("webview asking for permission to start loading")
        if navigationType == .LinkActivated && !(request.URL?.absoluteString.hasPrefix("http://www.myWebSite.com/exemlpe"))!{
            UIApplication.sharedApplication().openURL(request.URL!)
            print(request.URL?.absoluteString)
            return false
        }
        print(request.URL?.absoluteString)
        lastUrl = (request.URL?.absoluteString)!

        return true
    }


    func webView(webView: UIWebView, didFailLoadWithError error: NSError?) {
        print("webview did fail load with error: \(error)")
        let testHTML = NSBundle.mainBundle().pathForResource("back-error-bottom", ofType: "jpg")
        let baseUrl = NSURL(fileURLWithPath: testHTML!)

        let htmlString:String! = "myErrorinHTML"
        self.webView.loadHTMLString(htmlString, baseURL: baseUrl)
    }
Run Code Online (Sandbox Code Playgroud)

uiwebview ios swift wkwebview

83
推荐指数
3
解决办法
3万
查看次数

iOS UIWebView中的Javascript console.log()

使用UIWebView编写iPhone/iPad应用程序时,控制台不可见. 这个优秀的答案显示了如何捕获错误,但我也想使用console.log().

javascript uiwebview ios

80
推荐指数
5
解决办法
7万
查看次数

是否可以使用sharedHTTPCookieStorage为UIWebView手动设置cookie?

我在iOS应用程序中有Web视图,需要对身份验证cookie进行适当的身份验证.我正在寻找一种在iOS应用程序的webview中设置cookie的方法,而不必发出设置cookie的出站请求,因为我已经在客户端上有auth信息.

这篇文章向我们展示了UIWebView cookie的存储位置.

现在我正在加载一个隐藏的Web视图来发出一个出站请求,但是我不想做一个外部请求来设置一个简单的cookie.

objective-c uiwebview ios

72
推荐指数
3
解决办法
8万
查看次数

使用swift将本地html加载到UIWebView中

这个让我今天早上疯狂.我想将一些本地html加载到Web视图中:

class PrivacyController: UIViewController {

    @IBOutlet weak var webView:UIWebView!

    override func viewDidLoad() {
        let url = NSURL(fileURLWithPath: "privacy.html")
        let request = NSURLRequest(URL: url!)
        webView.loadRequest(request)
    }
}
Run Code Online (Sandbox Code Playgroud)

html文件位于我项目的根文件夹中,但位于组内.webview对我来说是空白的.任何想法都错了吗?我在xcode 6.1上并在我的iphone 6上运行这个例子.

uiwebview ios swift

70
推荐指数
7
解决办法
7万
查看次数

Xcode 8.3 libMobileGestalt MobileGestaltSupport.m:153:

我正在使用UIWebView XCode版本8.3.当我启动应用程序时,我的控制台继续向我显示此错误,但我不明白这意味着什么.在我UIViewController的没有代码,所以我不明白为什么XCode继续向我显示这个错误.

我只有一个在我的地方webview viewcontroller通过Storyboard.

这是错误: -

2017-04-07 23:54:50.081592 + 0200 Conquers [1647:697735] libMobileGestalt MobileGestaltSupport.m:153:piid 1647(Conquers)没有为frZQaeyWLUvLjeuEK43hmg提供沙盒访问权限而且未获得相应的授权

2017-04-07 23:54:50.081651 + 0200 Conquers [1647:697735] libMobileGestalt MobileGestalt.c:550:无法访问InverseDeviceID(请参阅参考资料)

xcode compiler-errors uiwebview ios xcode8

70
推荐指数
1
解决办法
4169
查看次数

在UIWebView中更改用户代理

我有业务需要能够为嵌入式UIWebView自定义UserAgent.(例如,如果用户使用的是应用程序的一个版本而不是另一个版本,我希望服务器以不同的方式做出响应.)

是否可以在现有的UIWebView控件中自定义UserAgent,例如,对于Windows应用程序中的嵌入式IE浏览器?

iphone cocoa-touch uiwebview ios

69
推荐指数
8
解决办法
10万
查看次数

如何根据内容在可变高度UITableView内确定UIWebView高度?

我正在尝试创建一个UITableView可变高度行,如本问题的答案中所述

我的问题是每个单元格包含一个UIWebView具有不同(静态加载)的内容我无法弄清楚如何根据内容计算合适的高度.有没有办法做到这一点?我尝试过这样的事情:

   (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath {
       WebViewCell *cell = (WebViewCell*)[self tableView:tableView cellForRowAtIndexPath:indexPath];
       [cell setNeedsLayout];
       [cell layoutIfNeeded];
       return cell.bounds.size.height;
    }
Run Code Online (Sandbox Code Playgroud)

细胞本身是从笔尖加载的,笔尖只是一个UITableViewCell含有a 的笔尖UIWebView.(如果细胞只是将自己调整到html内容的最大值,那也没关系,尽管可变高度会更好).

iphone cocoa-touch uiwebview uitableview ios

69
推荐指数
3
解决办法
7万
查看次数

iTunes Connect中的Unrestricted Web Access意味着什么

当您将应用程序提交到Apple应用程序商店时,会有一个名为"评级"的部分,您应该根据图表对内容进行评级,并确定内容的显示频率.

有一个名为"Unrestricted web access"的选项,在Internet和iTunes Connect开发人员指南中没有关于此的更多详细信息.你到处都可以找到:

如果您的应用允许用户浏览和查看网页(例如使用嵌入式浏览器),请选择"是".

这是什么意思?这是否意味着您的应用可以在嵌入式或Safari浏览器中打开链接?或者这是否意味着您的应用程序具有浏览器,用户可以在其中输入URL并在网络中无限制地浏览?因为对这个问题说"是"会让你的应用程序超过17岁!

在此输入图像描述 在此输入图像描述

如果这意味着从您的应用程序(Safari或嵌入式)打开链接,那么具有嵌入式浏览器功能的其他应用程序如何获得4+评级(如Twitter和Facebook)?正如在屏幕截图中可以看到的那样,没有办法选择这个并且不被评为17+

在此输入图像描述 在此输入图像描述

更新:我的应用程序已通过嵌入式WebView(TOWebViewController)批准,答案为"否"(4+).正如答案所提到的,任何让用户通过互联网浏览的方式,例如动态地址栏,这意味着它应该是"是"(17+),因为无法在WebView上进行家长控制.

更新2:自iOS 9发布以来,Apple推出了SFSafariViewController,这是一种在互联网上打开任何URL的方式.此功能还有一个地址栏,但只读.因此,如果没有家长控制,用户就无法上网.它还继承了Safari中的内容阻止(广告,显式内容等).我非常积极地使用iOS 9或更高版本的SFSafariViewController你仍然可以选择4+,因为家长控制的设备无论如何也无法打开任何URL.(如果我错了,请告诉我)

更新3:Twitter现在是17岁以上,基于以下几点:

您必须年满17岁才能下载此应用程序.

罕见/温和的亵渎或粗暴的幽默

频繁/激烈的成熟/暗示主题

罕见/轻度的性内容和裸露

更新4:可以在您的应用程序内使用Twitter内容,而无需继承其评级(17+).我的应用程序正在显示推文,但由于用户是经过验证和信任的公众人物,我可以降到12岁以上:

罕见/轻度的性内容和裸露

罕见/温和的亵渎或粗暴的幽默

罕见/温和的成熟/暗示主题

itunesconnect uiwebview appstore-approval ios sfsafariviewcontroller

68
推荐指数
2
解决办法
3万
查看次数