隐藏“文件”;“登录过程”;对于iOS应用程序

隐藏“文件”;“登录过程”;对于iOS应用程序,ios,uiwebview,Ios,Uiwebview,我正在创建一个iOS应用程序,它将显示来自内部网站的新闻流。我创建了一个UIWebView,它显示内部网站的移动页面,用户必须在第一次使用应用程序时登录(然后会记住凭据并在下次自动填写) 当应用程序启动时,它首先加载一个页面,用户必须在其中输入登录凭据,然后单击“登录”按钮,然后将他们重定向到移动页面。下一次,当凭证被记住时,它会自动执行登录过程,但是处理登录需要1-2秒,我想通过添加某种延迟来隐藏登录页面 重要提示: 我读过不同的主题,人们提到的苹果网站上说尽量避免延迟你的应用。我不想延迟应用

我正在创建一个iOS应用程序,它将显示来自内部网站的新闻流。我创建了一个
UIWebView
,它显示内部网站的移动页面,用户必须在第一次使用应用程序时登录(然后会记住凭据并在下次自动填写)

当应用程序启动时,它首先加载一个页面,用户必须在其中输入登录凭据,然后单击“登录”按钮,然后将他们重定向到移动页面。下一次,当凭证被记住时,它会自动执行登录过程,但是处理登录需要1-2秒,我想通过添加某种延迟来隐藏登录页面

重要提示:

我读过不同的主题,人们提到的
苹果
网站上说
尽量避免延迟你的应用
。我不想延迟应用程序,我只想对用户隐藏登录过程,因为它无论如何都存在,并显示一个公司徽标

因此将有两种情况

首次登录:

显示徽标2秒(延迟)>登录页面>新闻流

以下登录:

显示徽标2秒(隐藏登录过程)>新闻流

实现这一目标的最佳做法是什么

先谢谢你


Igor

当应用程序启动时,您需要检查是否已存储凭据,如果已存储凭据,请调用执行类似以下操作的方法:

 //display your logo preferably with an activity indicator

dispatch_async( dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
// authenticate 

dispatch_async( dispatch_get_main_queue(), ^{
    //if success load news flow 
    //else show login page
    // remove logo
});
});

没有最佳实践,因为这主要取决于您对iOS SDK的了解。因此,给出的任何答案都将完全取决于用户的意见。此外,您的问题看起来像是一个代码请求,它被皱起眉头,可能会让您被否决。您可能只想尝试构建应用程序,如果遇到一些代码,请返回并发布代码,以便我们可以帮助您解决问题。另外,延迟文档并不意味着你不能显示徽标。感谢回复。我已经创建了这个应用程序,它可以按预期在设备上运行,目前只在我自己的设备上进行了测试,但我想增加用户体验,并对用户隐藏登录过程,如果他们已经填写了一次凭据。我刚刚开始开发iOS,还不知道这么多技巧,因此我在这里发布了我的问题。您需要使用NSUserDefaults在应用程序中持久化用户登录数据。然后,在后续启动应用程序时,请在继续之前检查NSUserDefaults中是否存在该值。感谢您的回复,但我对自动登录过程没有问题,我只想对用户隐藏该部分,因为这可能会混淆他们。应用程序从登录屏幕开始,然后进入新闻流页面,一切正常,我只想隐藏登录阶段,并在UIWebView中加载新闻之前显示其他内容。