加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

如何使用已登录用户-iPhone设置我的Web视图

发布时间:2020-12-15 01:45:45 所属栏目:百科 来源:网络整理
导读:在我的应用程序中使用带URL的Web视图:@“http://www.gmail.com/”. 当我单击主页面/主页中的按钮时,加载了此Web视图 (IBAction)webClick:(id)sender {MailViewController *mail = [[MailViewController alloc]initWithNibName:@"MailViewController" bundle
在我的应用程序中使用带URL的Web视图:@“http://www.gmail.com/”.

>当我单击主页面/主页中的按钮时,加载了此Web视图

(IBAction)webClick:(id)sender
 {
MailViewController *mail = [[MailViewController alloc]initWithNibName:@"MailViewController" bundle:nil];
[self.navigationController pushViewController:mail animated:YES];
}

>然后加载了Web视图,我在邮件视图中使用了类似瘦的代码:

-(void)viewDidLoad

{
    [super viewDidLoad];
    NSString *urlAddress = @"http://www.gmail.com/";
    NSURL *url = [NSURL URLWithString:urlAddress];
    NSURLRequest *requestObj = [NSURLRequest requestWithURL:url];
    [webView loadRequest:requestObj];
}

这里用登录页面打开了gmail.我们需要输入用户名&密码.

我想要的是,

>如果我们已经通过Gmail应用程序登录我的帐户..

加载的视图直接挂载我的邮件,而不是登录页面.
>如果我还没有进入,请在登录时显示提醒.

怎么做?

请帮帮我.
提前致谢.

解决方法

首先,我认为您应加载的网址是http://mail.google.com/mail

除此之外,你没有获得正常的gmail行为,因为UIWebView不会在应用程序运行之间保存cookie,你应该尝试这样的东西来保存它们:

- (void)saveCookies
{
    NSData         *cookiesData = [NSKeyedArchiver archivedDataWithRootObject: [[NSHTTPCookieStorage sharedHTTPCookieStorage] cookies]];
    NSUserDefaults *defaults    = [NSUserDefaults standardUserDefaults];
    [defaults setObject: cookiesData forKey: @"cookies"];
    [defaults synchronize];
}

并使用以下方法加载它们:

- (void)loadCookies
{
    NSArray             *cookies       = [NSKeyedUnarchiver unarchiveObjectWithData: [[NSUserDefaults standardUserDefaults] objectForKey: @"cookies"]];
    NSHTTPCookieStorage *cookieStorage = [NSHTTPCookieStorage sharedHTTPCookieStorage];

    for (NSHTTPCookie *cookie in cookies)
    {
        [cookieStorage setCookie: cookie];
    }
}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读