我正在尝试在我的应用程序中使用UIWebView查看ip camera feed但我只看到黑屏。如果我在iphone上的Safari中使用相同的链接,我可以查看实时源。这是用例。
当我打开链接时,系统会要求我输入登录详细信息。一旦我输入它们,我就会被带到另一个屏幕,我必须点击“直播视频”链接。现在,我在safari和UIWebView之间看到了不同的行为。在Safari上我得到一个弹出窗口,再次询问登录详细信息,当我输入时,我看到视频。但是在UIWebView中我没有得到登录弹出窗口。(UIWebView是我应用程序中的一个选项卡),我只看到黑屏。
关于这个问题的任何想法。
由于 开发。
答案 0 :(得分:1)
询问用户名和密码的警报不是默认警报。您必须自己发出警报,或者在委托函数调用时,您可以在代码中专门提供用户名和密码。
-(BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType;
{
NSURLConnection *myConn = [[NSURLConnection alloc] initWithRequest:request delegate:self];
[myConn start];
return YES;
}
- (void)connection:(NSURLConnection *)connection didReceiveAuthenticationChallenge:(NSURLAuthenticationChallenge *)challenge;
{
[[NSURLCredentialStorage sharedCredentialStorage] setCredential:[NSURLCredential credentialWithUser:@"userName" password:@"passWord" persistence:NSURLCredentialPersistencePermanent] forProtectionSpace:[challenge protectionSpace]];
[myWebView loadRequest:[connection originalRequest]];
}