2

I want to add com.phonegap.plugins.facebookconnect to my PhoneGap build android app but I unable to do it. In doc site they say to add

<gap:plugin name="com.phonegap.plugins.facebookconnect">
    <param name="APP_ID" value="..." />
    <param name="APP_NAME" value="..." />
</gap:plugin>

in config.xml file but there is 3 config.xml files in PhoneGap build folder and even when I add it what than? There should be files added to project like cdv-plugin-fb-connect.js and facebook-js-sdk.js so I can include them in index.html but none of files are added to project. How can I manage that?

Dom
  • 2,569
  • 1
  • 18
  • 28
Dusan Malic
  • 231
  • 4
  • 15

2 Answers2

4

Answer below is for phonegap-build. Disregard.

  1. Add the below to your config.xml and ensure you place your config.xml in the root folder with your index.html file:

    <gap:plugin name="com.phonegap.plugins.facebookconnect">
        <param name="APP_ID" value="..." />
        <param name="APP_NAME" value="..." />
    </gap:plugin>
    
  2. Add the below to the <head></head> of your index.html file and every .html file that you want to access the plugin scripts:

    <script scr="phonegap.js"></script>
    <script src="cdv-plugin-fb-connect.js"></script > 
    <script src="facebook-js-sdk.js"></script > 
    
  3. Read and follow the documentation located here. Be sure to pay attention to the paragraph titled "Facebook Requirements and Set-Up".

  4. Once complete, upload your zipped project to build.phonegap.com and wait for your project to be compiled.

Notes:

  • You should only have 1 config.xml file in the root of your project.
  • Do not add the phonegap.js, cdv-plugin-fb-connect.js file or facebook-js-sdk.js files to the root of your project. Phonegap Build will handle that for you.
Dom
  • 2,569
  • 1
  • 18
  • 28
0

@Dom I did step by step how you specified: 1. added to config.xml in platforms/android/assets/www/config.xml 2. included js files in header and when I execute phonegap install android from cmd with this code:

document.addEventListener('deviceready', function() {
alert('1');
  FB.init({
      appId: 'appid',
      nativeInterface: CDV.FB,
      useCachedDialogs: false
  });
  alert('2');

  FB.getLoginStatus(handleStatusChange);
  alert('3');

  authUser();
  updateAuthElements();
  alert('4');
});

it only displays first alert and removes .js files from heder. Why is that happening? - It was happening because when you edit in phonegap build you don't edit in platforms/adnroid/assets/www but in root folder of project there is www folder and you edit config.xml and index.html there and after running app it is build for android from there.

Edit: I have just wrapped FB.init in try/catch and I got this error : ReferenceError FB is not defined I think that is because js is not loading.

Dusan Malic
  • 231
  • 4
  • 15
  • Based on this, it looks like you are using phonegap (cordova) and not phonegap build. Instructions are different for cordova vs using build. My instructions are for phonegap-build since that is the tag you used in your initial question. Please clarify. – Dom Sep 24 '13 at 12:30
  • Yes I am using Phonegap Build. Why do you think it is phonegap? Maybe I am doing something wrong with phonegap build – Dusan Malic Sep 24 '13 at 12:45
  • Placing the "config.xml in platforms/android/assets/www/config.xml" and "execute phonegap install android" tell me you are using cordova. For phonegap-build, you place your config.xml in the root of your project (with your index.html and there is no command line interface. You just upload the zipped project to build.phonegap.com. Updated answer below to better reflect where to place your config.xml – Dom Sep 24 '13 at 12:49
  • This is my mistake, I thought using command line interface means using PhoneGap build... So my questions above is wrong... I am using phonegap not phonegap build. So even using command-line interface I need to add plugin manual? Because they specified that using plugman is not yet enabled... – Dusan Malic Sep 24 '13 at 12:54
  • Yes, you need to add the plugin manually and that means my answer below is completely wrong. I have limited experience with cordova plugins so unfortunately I will be of little further help. Editing my below post to reflect it is for phonegap-build. Good luck. – Dom Sep 24 '13 at 12:58
  • I will mark your previous post as correct since it is correct answer to my question. – Dusan Malic Sep 24 '13 at 13:01