2014-04-25 1 views
1

J'ai actuellement une application Facebook en cours d'exécution. L'utilisation de Mobile Detect via PHP redirigera tout appareil mobile ou tablette vers le lien direct de l'application au lieu de l'application Onglet Page.L'application n'a pas configuré son URL Web mobile ou l'erreur URL URL sur iPad

if ($detect->isMobile() || $detect->isTablet()) { 
    header("Location: https://[domain].com/facebook/[app]/"); 
} else{ 
    header("Location: https://www.facebook.com/[page-app]"); 
} 

Cela fonctionne bien sur tous les appareils sauf sur l'iPad. Grâce à l'iPad, je reçois cette erreur:

Either this application has not configured its Mobile Web URL or the URL could not be verified as owned by the application. Unable to redirect.

Sur les paramètres de l'application que j'ai App on Facebook et Page Tab plates-formes définies. Aucune plate-forme Website a été ajoutée. Je pensais que l'ajout de cela permettrait de résoudre ce problème, mais après avoir fourni les URL, la même erreur a commencé à apparaître sur les appareils mobiles.

Je ne sais pas si quelqu'un a déjà eu ce problème.

Mise à jour

Ce qui se passe sur iOS et uniquement sur l'application Facebook. Le tester sur un navigateur iPhone ou iPad ne pose aucun problème.

Mise à jour 2

Donc, ce qui se passe sur le Facebook iOS en application navigateur, ce que je suis en train de le savoir est maintenant s'il y a un moyen de forcer Facebook à ouvrir les liens à un navigateur plutôt que le navigateur intégré à l'application.

des questions similaires:

Répondre

0

J'ai résolu ce problème en supprimant le redirect_uri lors de l'appel getLoginUrl. L'application redirigera les utilisateurs via jQuery et appellera Mobile Detect. Si un utilisateur n'utilise pas l'application depuis un appareil mobile ou une tablette, l'utilisateur est redirigé vers l'application Page Facebook.

jQuery:

function get_mobiledetect() { 
    jQuery.ajax({ 
     url: "[URL]/get_mobiledetect.php", 
     type: "post", 
     success: function(data) { 
      var mobile_detect = JSON.parse(data); 
      if (!mobile_detect.isMobile && !mobile_detect.isTablet) { 
       if (top === self) { 
        window.location.href = [Facebook Page app URL]; 
       } 
      } 
     }, 
     error: function() { 
      /* handle error */ 
     } 
    }) 
} 

Mobile Detect:

include 'libs/Mobile_Detect.php'; 

$detect = new Mobile_Detect(); 

echo json_encode(array(
     "isMobile" => $detect->isMobile(), 
     "isTablet" => $detect->isTablet() 
    ) 
);