1

Я пытаюсь выполнить вход в Facebook в своем приложении Phonegap, специально предназначенном для платформы Windows Phone.phonegap не может интегрироваться с facebook

Я загрузил необходимый плагин (файлы: ChildBrowserCommand.cs, ChildBrowser.js) и FBConnect.js, доступные по адресу https://github.com/purplecabbage/phonegap-plugins/tree/master/WindowsPhone. Я также включил файл ChildBrowser.cs в свой проект

Ниже представлен мой простой файл html. Через некоторое время я хочу, чтобы выполнить Facebook логин:

<!DOCTYPE html> 
<html> 
    <head> 
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    <meta name="format-detection" content="telephone=no" /> 
    <meta name="viewport" content="user-scalable=no, initial-scale=1, maximum-scale=1, minimum-scale=1, width=device-width, height=device-height, target-densitydpi=device-dpi" /> 
    <link rel="stylesheet" type="text/css" href="css/index.css" /> 
    <link rel="stylesheet" href="css/jquery.mobile-1.3.2.min.css" /> 
    <script type="text/javascript" charset="utf-8" src="js/jquery/jquery.min.js"></script> 
    <script type="text/javascript" charset="utf-8" src="js/jquery/jquery.mobile-1.3.2.min.js"></script> 
    <script type="text/javascript" src="js/run/cordova.js"></script> 
    <script type="text/javascript" src="js/utils/ChildBrowser.js"></script> 
    <script type="text/javascript" src="js/utils/FBConnect.js"></script> 
    <title></title> 
</head> 
<body> 
    <script> 
     $.support.cors = true; 
    </script> 
    <div id="testPage" data-role="page"> 
     <script> 
      setTimeout(function() { 
       var client_id = "..."; 
       var redir_url = "http://www.facebook.com/connect/login_success.html"; 
       var friendsMap = {}; 

       var fb = FBConnect.install(client_id, redir_url, "touch"); 
       fb.connect('email, read_stream, read_friendlists'); 
       fb.onConnect = onFBConnected; 
      }, 2500); 

      function onFBConnected() { 
      } 
      </script> 
     <div data-role="content"> 
     </div> 
    </div> 
</body> 
</html> 

Но когда я составляю мой проект, я получил следующие ошибки:

1. The type or namespace name 'BaseCommand' could not be found 
2. The type or namespace name 'JSON' does not exist in the namespace 'WP7CordovaClassLib.Cordova' 

О первой ошибки, я видел, что некорректные пространств имен в ChildBrowserCommand.cs файл. Я исправил эту проблему, но я не знаю, где найти отсутствующий модуль JSON. После загрузки Phonegap 2.9.1 из архива есть возможность создавать шаблоны Visual Studio (по каталогу lib/windows-phone после распаковки, и я это сделал), но кажется, что библиотека может быть неполной. Осталось еще одна ошибка, и я не могу выполнить свой вход в Facebook. Вы когда-нибудь сталкивались с этой проблемой? Где найти этот недостающий модуль? Ниже приведены мои изменения ChildBrowserCommand.cs. Буду признателен за любую помощь!

using System; 
using System.Net; 
using System.Windows; 
using System.Windows.Controls; 
using System.Windows.Documents; 
using System.Windows.Ink; 
using System.Windows.Input; 
using System.Windows.Media; 
using System.Windows.Media.Animation; 
using System.Windows.Shapes; 
using Microsoft.Phone.Controls; 
using System.Diagnostics; 
using System.Runtime.Serialization; 
using WP7CordovaClassLib.Cordova; 
using WPCordovaClassLib.Cordova.Commands; // previous: using WP7CordovaClassLib.Cordova.Commands; 
using WP7CordovaClassLib.Cordova.JSON; // it's missing 
using Microsoft.Phone.Shell; 

ответ

0

UPDATE: Некоторое время назад я нашел очень хорошее решение, доступное HERE. И это работает для моего приложения Windows Phone! Чтобы правильно выполнить вход в Facebook, вам необходимо настроить плагин InAppBrowser в своем проекте Phonegap и ввести ключи вашего App ID и App Secret до . FaceGap вызов метода. Brilliant! :)

Смежные вопросы