2012-09-01 26 views
3

我正在开发一个具有响应式布局的Facebook应用程序。有时我的应用程序必须为用户生成一个链接。只要有可能,链接会将用户发送至页面标签(当用户在桌面上时),而其他时间将直接链接到应用程序(当用户在手机上时)。Facebook如何处理平板电脑?

Facebook在平板电脑上的默认行为是什么?它显示移动网站还是桌面站点?

我应该用在平板电脑上的移动桌面我的应用程序?


更新针对BBog的问题的意见: 我喜欢的应用程序桌面版,因为它包括一个像门。如果用户的体验对于平板电脑在页面标签(仅在www.facebook.com上可用,即非移动版)上查看应用程序是有利的,那么这是优选的,因为类似按钮将被显示在页面,位于应用的iframe上方。相比之下,该应用的移动版本要求用户点击一个链接,将他们带到(移动)脸书页面,他们必须取消该应用。它为用户增加了一个额外的步骤,并要求他们暂时远离应用程序。用户可能会因此额外的步骤而感到沮丧,并决定不进入大门。

+0

某些片剂获取重定向m.facebook.com和一些www.facebook.com。最好的选择是,查看[Facebook移动网站](https://developers.facebook.com/docs/guides/mobile/web/),有一个关于“用户代理”的部分可以提供帮助。 –

+0

谢谢,检测用户代理不是问题。但是,知道在检测到平板电脑时显示的内容是我的主要问题。然而,你给我的想法是检查引用者,看看用户是来自www.facebook ...还是m.facebook ... –

+0

自从我上次处理Facebook的API已经差不多一年了,所以我不能直接回答您的问题,但作为替代解决方案,您为什么不尝试检测用户是否具有启用触摸设备?如果这是真的,您将他重定向到移动应用程序,否则,将其重定向到桌面版本。我不清楚你的手机版本有什么不同,但是如果它针对触控设备/ 3G速度连接进行了优化,你不希望将所有平板电脑都显示为手机版本,并最终让他们选择切换到桌面版本? – BBog

回答

0

无法找到具体的答案,我最终检测到用户的首页访问推荐。然后,如果www.facebook.com在网址中,我将转到桌面。否则我去移动..

if ($detect->isTablet()) { 
    session_start(); 

    if (!isset($_SESSION["tabletAsMobile"])) 
    $_SESSION["tabletAsMobile"] = (stripos($_SERVER["HTTP_REFERER"], 'www.facebook.com')===true):'0':'1'; 
    } 

    $useMobileLinks = ($detect->isMobile() || ($detect->isTablet() && $_SESSION["tabletAsMobile"])); 
} 
0


对于Android平板电脑 - 说实话,这取决于您希望Facebook如何处理它。如果您查看链接wiki的Android原生应用 - https://developers.facebook.com/docs/mobile/android/deep_linking/,Facebook为您提供了选择用户体验的选项。 Facebook原生android应用程序本身对待手机等平板电脑。如果您的应用与平板电脑兼容,那么这将是理想选择,然后您可以启用深层链接,以便用户查看应用内的内容。
对于iOS,它是从iOS捆绑ID内处理的。

+0

谢谢,但不是我正在寻找。这不是本机应用程序。 –