2016-08-24 18 views
0

私は5.2.1ga sdkでappceleratorのfacebookモジュールのバージョン5.0.1を使用しています。私は共有のためのfacebookログインダイアログを提示するモジュールを得ることができません。ここに私のコードは次のとおりです。Appcelerator Facebook Module Authorize()がIOSのログインダイアログを表示しない

var FacebookPublic = require("FacebookPublic"); 
    var fb = require('facebook');    
    // Test 
    // fb.setLoginBehavior(fb.LOGIN_BEHAVIOR_WEB); 
    // fb.permissions = ['email']; 
    // fb.permissions = ['read_stream','publish_actions']; 
    // fb.initialize(); 
    fb.authorize();    
    if (fb.getLoggedIn() == false) 
    { 
    alert('Error Logging Into Facebook'); 
    return;      
    } 

私のコードは、すべてのエラーをログに記録し、ただの警告にfb.authorize()文(のFacebookへのログインエラー ')で吹くしません。私はここで私は私のbundleIdとIOSのための私のFacebookの開発者アカウントを設定している私のtiapp.xmlからplistの

<key>CFBundleURLTypes</key> 
      <array> 
       <dict> 
        <key>CFBundleURLSchemes</key> 
        <array> 
         <string>fbXXX</string> 
        </array> 
       </dict> 
      </array> 
      <key>FacebookAppID</key> 
      <string>XXX</string> 
      <key>FacebookDisplayName</key> 
      <string>MYFACEBOOKAPP</string> 
      <key>LSApplicationQueriesSchemes</key> 
      <array> 
       <string>fbapi</string> 
       <string>fb-messenger-api</string> 
       <string>fbauth2</string> 
       <string>fbshareextension</string> 
       <string>fbapi20130214</string> 
       <string>fbapi20130410</string> 
       <string>fbapi20130702</string> 
       <string>fbapi20131010</string> 
       <string>fbapi20131219</string> 
       <string>fbapi20140410</string> 
       <string>fbapi20140116</string> 
       <string>fbapi20150313</string> 
       <string>fbapi20150629</string> 
       <string>fbauth</string> 
       <string>fb-messenger-api20140430</string> 
      </array> 

だ(私のコードでは、コメントのセクションを参照してください)行動に

をさまざまなログを試してみました。私のアンドロイドアプリで同じコードが問題なく動作します。どのようにこれを動作させるために任意のアイデアを持っていますか?あなたが提案したよう

おかげで

答えて

0
var fb = require('facebook'); 
    fb.permissions = [FACEBOOK_APP_PERMISSIONS]; 
    fb.initialize(); // <-- YOU NEED INITIALIZE MODULE 
    //for get error or success add listener 
    fb.addEventListener('login', function(e) { 
     if (e.success) { 
      alert('login from uid: '+e.uid+', name: '+ JSON.parse(e.data).name); 
      label.text = 'Logged In = ' + fb.loggedIn; 
     } 
     else if (e.cancelled) { 
      // user cancelled 
      alert('cancelled'); 
     } 
     else { 
      alert(e.error); 
     } 
    }); 
    fb.authorize(); 
+0

おかげで、私が試したし、今、私のアプリはちょうどパッと消える行くと消えます。 Facebookアプリをインストールしたデバイスでアプリを試しましたか?私の問題の一部は、私がテストデバイス上にfacebookアプリを持っていることだと思う。再度、感謝します! – user2275921

+0

私はあなたの助言を受けて進歩しています。私はvar data = {picture:BlogPost.image、caption:BlogPost.blogText}を変更してFacebookのリンクを共有しました。 var data = {link: "http://www.stackfish.com"}; fb.requestWithGraphPath( 'me/photos'、data、 "POST"、showRequestResult)を変更します。 〜 fb.requestWithGraphPath( 'me/feed'、data、 "POST"、showRequestResult); }と私のリンクは投稿しています – user2275921

関連する問題