{"id":15097032,"url":"https://github.com/jeduan/cordova-plugin-facebook4","last_synced_at":"2025-10-08T02:30:46.911Z","repository":{"id":34127297,"uuid":"37959149","full_name":"jeduan/cordova-plugin-facebook4","owner":"jeduan","description":"Use the latest Facebook SDK in your Cordova and Ionic projects","archived":true,"fork":true,"pushed_at":"2021-02-19T06:15:15.000Z","size":499486,"stargazers_count":763,"open_issues_count":0,"forks_count":506,"subscribers_count":52,"default_branch":"master","last_synced_at":"2025-08-18T14:22:56.163Z","etag":null,"topics":["cordova"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":"Wizcorp/phonegap-facebook-plugin","license":"other","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jeduan.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2015-06-24T03:08:07.000Z","updated_at":"2025-05-22T11:16:44.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/jeduan/cordova-plugin-facebook4","commit_stats":null,"previous_names":[],"tags_count":40,"template":false,"template_full_name":null,"purl":"pkg:github/jeduan/cordova-plugin-facebook4","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeduan%2Fcordova-plugin-facebook4","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeduan%2Fcordova-plugin-facebook4/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeduan%2Fcordova-plugin-facebook4/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeduan%2Fcordova-plugin-facebook4/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jeduan","download_url":"https://codeload.github.com/jeduan/cordova-plugin-facebook4/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jeduan%2Fcordova-plugin-facebook4/sbom","scorecard":{"id":513640,"data":{"date":"2025-08-11","repo":{"name":"github.com/jeduan/cordova-plugin-facebook4","commit":"988af6c6126209646357b548de439540fcf56238"},"scorecard":{"version":"v5.2.1-40-gf6ed084d","commit":"f6ed084d17c9236477efd66e5b258b9d4cc7b389"},"score":3.3,"checks":[{"name":"Token-Permissions","score":-1,"reason":"No tokens found","details":null,"documentation":{"short":"Determines if the project's workflows follow the principle of least privilege.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#token-permissions"}},{"name":"Dangerous-Workflow","score":-1,"reason":"no workflows found","details":null,"documentation":{"short":"Determines if the project's GitHub Action workflows avoid dangerous patterns.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#dangerous-workflow"}},{"name":"Code-Review","score":2,"reason":"Found 6/30 approved changesets -- score normalized to 2","details":null,"documentation":{"short":"Determines if the project requires human code review before pull requests (aka merge requests) are merged.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#code-review"}},{"name":"Maintained","score":0,"reason":"project is archived","details":["Warn: Repository is archived."],"documentation":{"short":"Determines if the project is \"actively maintained\".","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#maintained"}},{"name":"Packaging","score":-1,"reason":"packaging workflow not detected","details":["Warn: no GitHub/GitLab publishing workflow detected."],"documentation":{"short":"Determines if the project is published as a package that others can easily download, install, easily update, and uninstall.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#packaging"}},{"name":"Binary-Artifacts","score":10,"reason":"no binaries found in the repo","details":null,"documentation":{"short":"Determines if the project has generated executable (binary) artifacts in the source repository.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#binary-artifacts"}},{"name":"Pinned-Dependencies","score":-1,"reason":"no dependencies found","details":null,"documentation":{"short":"Determines if the project has declared and pinned the dependencies of its build process.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#pinned-dependencies"}},{"name":"CII-Best-Practices","score":0,"reason":"no effort to earn an OpenSSF best practices badge detected","details":null,"documentation":{"short":"Determines if the project has an OpenSSF (formerly CII) Best Practices Badge.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#cii-best-practices"}},{"name":"Security-Policy","score":0,"reason":"security policy file not detected","details":["Warn: no security policy file detected","Warn: no security file to analyze","Warn: no security file to analyze","Warn: no security file to analyze"],"documentation":{"short":"Determines if the project has published a security policy.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#security-policy"}},{"name":"Vulnerabilities","score":10,"reason":"0 existing vulnerabilities detected","details":null,"documentation":{"short":"Determines if the project has open, known unfixed vulnerabilities.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#vulnerabilities"}},{"name":"Fuzzing","score":0,"reason":"project is not fuzzed","details":["Warn: no fuzzer integrations found"],"documentation":{"short":"Determines if the project uses fuzzing.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#fuzzing"}},{"name":"License","score":9,"reason":"license file detected","details":["Info: project has a license file: LICENSE:0","Warn: project license file does not contain an FSF or OSI license."],"documentation":{"short":"Determines if the project has defined a license.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#license"}},{"name":"Signed-Releases","score":-1,"reason":"no releases found","details":null,"documentation":{"short":"Determines if the project cryptographically signs release artifacts.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#signed-releases"}},{"name":"Branch-Protection","score":0,"reason":"branch protection not enabled on development/release branches","details":["Warn: branch protection not enabled for branch 'master'"],"documentation":{"short":"Determines if the default and release branches are protected with GitHub's branch protection settings.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#branch-protection"}},{"name":"SAST","score":0,"reason":"SAST tool is not run on all commits -- score normalized to 0","details":["Warn: 0 commits out of 10 are checked with a SAST tool"],"documentation":{"short":"Determines if the project uses static code analysis.","url":"https://github.com/ossf/scorecard/blob/f6ed084d17c9236477efd66e5b258b9d4cc7b389/docs/checks.md#sast"}}]},"last_synced_at":"2025-08-20T01:12:50.310Z","repository_id":34127297,"created_at":"2025-08-20T01:12:50.310Z","updated_at":"2025-08-20T01:12:50.310Z"},"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":276605990,"owners_count":25672147,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-23T02:00:09.130Z","response_time":73,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["cordova"],"created_at":"2024-09-25T16:03:47.789Z","updated_at":"2025-10-08T02:30:46.589Z","avatar_url":"https://github.com/jeduan.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\n# Important Notice\n\nThis plugin is not actively maintained anymore since March 2019.\n\n**IT IS NOT RECEIVING SECURITY UPDATES AND YOU MIGHT BE ADDING HARMFUL CODE TO YOUR PROJECT.**\n\nPlease check out [cordova-plugin-facebook-connect](https://github.com/cordova-plugin-facebook-connect/cordova-plugin-facebook-connect) for an active fork. \nThis repo is conserved for archival purposes only. \n\n\n\n\n\n\n\n\n## cordova-plugin-facebook4\n\n\u003e Use Facebook SDK in Cordova projects\n\n\n## Table of contents\n\n- [Installation](#installation)\n- [Usage](#usage)\n- [Sample repo](#sample-repo)\n- [Compatibility](#compatibility)\n- [Facebook SDK](#facebook-sdk)\n- [API](#api)\n\n## Installation\n\nSee npm package for versions - https://www.npmjs.com/package/cordova-plugin-facebook4\n\nMake sure you've registered your Facebook app with Facebook and have an `APP_ID` [https://developers.facebook.com/apps](https://developers.facebook.com/apps).\n\n```bash\n$ cordova plugin add cordova-plugin-facebook4 --save --variable APP_ID=\"123456789\" --variable APP_NAME=\"myApplication\"\n```\n\nIf you need to change your `APP_ID` after installation, it's recommended that you remove and then re-add the plugin as above. Note that changes to the `APP_ID` value in your `config.xml` file will *not* be propagated to the individual platform builds.\n\nIMPORTANT: This plugin works as is with cordova-ios 5 but if you use earlier version of cordova-ios then you need to add the code in the following comment to your CordovaLib/Classes/Public/CDVAppDelegate.m file which was added to your project as part of the cordova-ios ios platform template: https://github.com/apache/cordova-ios/issues/476#issuecomment-460907247\n\n### Installation Guides\n\n- [iOS Guide](docs/ios/README.md)\n\n- [Android Guide](docs/android/README.md)\n\n- [Browser Guide](docs/browser/README.md)\n\n- [Troubleshooting Guide | F.A.Q.](docs/TROUBLESHOOTING.md)\n\n## Usage\n\nThis is a fork of the [official plugin for Facebook](https://github.com/Wizcorp/phonegap-facebook-plugin/) in Apache Cordova that implements the latest Facebook SDK. Unless noted, this is a drop-in replacement. You don't have to replace your client code.\n\nThe Facebook plugin for [Apache Cordova](http://cordova.apache.org/) allows you to use the same JavaScript code in your Cordova application as you use in your web application. However, unlike in the browser, the Cordova application will use the native Facebook app to perform Single Sign On for the user.  If this is not possible then the sign on will degrade gracefully using the standard dialog based authentication.\n\n## Sample Repo\n\nIf you are looking to test the plugin, would like to reproduce a bug or build issues, there is a demo project for such purpose: [cordova-plugin-facebook4-lab](https://github.com/peterpeterparker/cordova-plugin-facebook4-lab).\n\n## Compatibility\n\n  * Cordova \u003e= 5.0.0\n  * cordova-android \u003e= 4.0\n  * cordova-ios \u003e= 3.8\n  * cordova-browser \u003e= 3.6\n  * Phonegap build (use phonegap-version \u003e= cli-5.2.0, android-minSdkVersion\u003e=15, and android-build-tool=gradle), see [example here](https://github.com/yoav-zibin/phonegap-tictactoe/blob/gh-pages/www/config.xml)\n\n## Facebook SDK\n\nThis plugin use the SDKs provided by Facebook. More information about these in their documentation for [iOS](https://developers.facebook.com/docs/ios/) or [Android](https://developers.facebook.com/docs/android/)\n\n### Facebook SDK version\n\nAs of v3.0.0, this plugin will always be released for iOS and for Android with a synchronized usage of the Facebook SDKs\n\nFor example: v3.0.0 include the Facebook SDK iOS v4.36.0 and reference per default the Facebook SDK Android v4.36.0 too\n\n### Graph API version\n\nPlease note that this plugin itself does not specify which Graph API version is used. The Graph API version is set by the Facebook SDK for iOS and Android (see [Facebook documentation about versioning](https://developers.facebook.com/docs/apps/versions/))\n\n## API\n\n### Login\n\n`facebookConnectPlugin.login(Array strings of permissions, Function success, Function failure)`\n\nSuccess function returns an Object like:\n\n\t{\n\t\tstatus: \"connected\",\n\t\tauthResponse: {\n\t\t\tsession_key: true,\n\t\t\taccessToken: \"\u003clong string\u003e\",\n\t\t\texpiresIn: 5183979,\n\t\t\tsig: \"...\",\n\t\t\tsecret: \"...\",\n\t\t\tuserID: \"634565435\"\n\t\t}\n\t}\n\nFailure function returns an error String.\n\n### Logout\n\n`facebookConnectPlugin.logout(Function success, Function failure)`\n\n### Check permissions (iOS only)\n\n`facebookConnectPlugin.checkHasCorrectPermissions(Array strings of permissions, Function success, Function failure)`\n\nSuccess function returns a success string if all passed permissions are granted.\n\nFailure function returns an error String if any passed permissions are not granted.\n\n### Get Status\n\n`facebookConnectPlugin.getLoginStatus(Function success, Function failure)`\n\nSuccess function returns an Object like:\n\n```\n{\n\tauthResponse: {\n\t\tuserID: \"12345678912345\",\n\t\taccessToken: \"kgkh3g42kh4g23kh4g2kh34g2kg4k2h4gkh3g4k2h4gk23h4gk2h34gk234gk2h34AndSoOn\",\n\t\tsession_Key: true,\n\t\texpiresIn: \"5183738\",\n\t\tsig: \"...\"\n\t},\n\tstatus: \"connected\"\n}\n```\nFor more information see: [Facebook Documentation](https://developers.facebook.com/docs/reference/javascript/FB.getLoginStatus)\n\n### Show a Dialog\n\n`facebookConnectPlugin.showDialog(Object options, Function success, Function failure)`\n\nExample options -\nShare Dialog:\n\n\t{\n\t\tmethod: \"share\",\n\t\thref: \"http://example.com\",\n\t\tcaption: \"Such caption, very feed.\",\n\t\tdescription: \"Much description\",\n\t\tpicture: 'http://example.com/image.png',\n\t\thashtag: '#myHashtag',\n\t\tshare_feedWeb: true, // iOS only\n\t}\n\n#### iOS\n\nThe default dialog mode is [`FBSDKShareDialogModeAutomatic`](https://developers.facebook.com/docs/reference/ios/current/constants/FBSDKShareDialogMode/). You can share that by adding a specific dialog mode parameter. The available share dialog modes are: `share_sheet`, `share_feedBrowser`, `share_native` and `share_feedWeb`. [Read more about share dialog modes](https://developers.facebook.com/docs/reference/ios/current/constants/FBSDKShareDialogMode/)\n\n`caption`, `description` and `picture` were deprecated in Facebok API [v2.9](https://developers.facebook.com/docs/graph-api/changelog/version2.9#gapi-deprecate) and therefore not supported anymore on iOS \n\nGame request:\n\n\t{\n\t\tmethod: \"apprequests\",\n\t\tmessage: \"Come on man, check out my application.\",\n\t\tdata: data,\n\t\ttitle: title,\n\t\tactionType: 'askfor',\n\t\tfilters: 'app_non_users'\n\t}\n\nSend Dialog:\n\n\t{\n\t\tmethod: \"send\",\n\t\tcaption: \"Check this out.\",\n\t\tlink: \"http://example.com\",\n\t\tdescription: \"The site I told you about\",\n\t\tpicture: \"http://example.com/image.png\"\n\t}\n\t\nShare dialog - Open Graph Story: (currently only fully available on Android, iOS currently does not support action_properties)\n\n\t{\n\t\tvar obj = {};\n\t\n    \tobj['og:type'] = 'objectname';\n    \tobj['og:title'] = 'Some title';\n    \tobj['og:url'] = 'https://en.wikipedia.org/wiki/Main_Page';\n    \tobj['og:description'] = 'Some description.';\n\n    \tvar ap = {};\n    \t\n    \tap['expires_in'] = 3600;\n    \t\n    \tvar options = {\n    \t\tmethod: 'share_open_graph', // Required\n        \taction: 'actionname', // Required\n        \taction_properties: JSON.stringify(ap), // Optional\n        \tobject: JSON.stringify(obj) // Required\n    \t};\n\t}\n\t\nIn case you want to use custom actions/objects, just prepend the app namespace to the name (E.g: ` obj['og:type'] = 'appnamespace:objectname' `, `action: 'appnamespace:actionname'`. The namespace of a Facebook app is found on the Settings page. \n\n\nFor options information see: [Facebook share dialog documentation](https://developers.facebook.com/docs/sharing/reference/share-dialog) [Facebook send dialog documentation](https://developers.facebook.com/docs/sharing/reference/send-dialog)\n\nSuccess function returns an Object with `postId` as String or `from` and `to` information when doing `apprequest`.\nFailure function returns an error String.\n\n### The Graph API\n\n`facebookConnectPlugin.api(String requestPath, Array permissions, Function success, Function failure)`\n\nAllows access to the Facebook Graph API. This API allows for additional permission because, unlike login, the Graph API can accept multiple permissions.\n\nExample permissions:\n\n\t[\"public_profile\", \"user_birthday\"]\n\nSuccess function returns an Object.\n\nFailure function returns an error String.\n\n**Note: \"In order to make calls to the Graph API on behalf of a user, the user has to be logged into your app using Facebook login.\"**\n\nFor more information see:\n\n- Calling the Graph API - [https://developers.facebook.com/docs/ios/graph](https://developers.facebook.com/docs/ios/graph)\n- Graph Explorer - [https://developers.facebook.com/tools/explorer](https://developers.facebook.com/tools/explorer)\n- Graph API - [https://developers.facebook.com/docs/graph-api/](https://developers.facebook.com/docs/graph-api/)\n\n### Events\n\nApp events allow you to understand the makeup of users engaging with your app, measure the performance of your Facebook mobile app ads, and reach specific sets of your users with Facebook mobile app ads.\n\n- [iOS] [https://developers.facebook.com/docs/ios/app-events](https://developers.facebook.com/docs/ios/app-events)\n- [Android] [https://developers.facebook.com/docs/android/app-events](https://developers.facebook.com/docs/android/app-events)\n- [JS] Does not have an Events API, so the plugin functions are empty and will return an automatic success\n\nActivation events are automatically tracked for you in the plugin.\n\nEvents are listed on the [insights page](https://www.facebook.com/insights/)\n\n#### Log an Event\n\n`logEvent(String name, Object params, Number valueToSum, Function success, Function failure)`\n\n- **name**, name of the event\n- **params**, extra data to log with the event (is optional)\n- **valueToSum**, a property which is an arbitrary number that can represent any value (e.g., a price or a quantity). When reported, all of the valueToSum properties will be summed together. For example, if 10 people each purchased one item that cost $10 (and passed in valueToSum) then they would be summed to report a number of $100. (is optional)\n\n#### Log a Purchase\n\n`logPurchase(Number value, String currency, Function success, Function failure)`\n\n**NOTE:** Both parameters are required. The currency specification is expected to be an [ISO 4217 currency code](http://en.wikipedia.org/wiki/ISO_4217)\n\n#### Manually log activation events\n\n`activateApp(Function success, Function failure)`\n\n### Login\n\nIn your `onDeviceReady` event add the following\n\n```js\nvar fbLoginSuccess = function (userData) {\n  console.log(\"UserInfo: \", userData);\n}\n\nfacebookConnectPlugin.login([\"public_profile\"], fbLoginSuccess,\n  function loginError (error) {\n    console.error(error)\n  }\n);\n```\n\n### Get Access Token\n\nIf you need the Facebook access token (for example, for validating the login on server side), do:\n```js\nvar fbLoginSuccess = function (userData) {\n  console.log(\"UserInfo: \", userData);\n  facebookConnectPlugin.getAccessToken(function(token) {\n    console.log(\"Token: \" + token);\n  });\n}\n\nfacebookConnectPlugin.login([\"public_profile\"], fbLoginSuccess,\n  function (error) {\n    console.error(error)\n  }\n);\n```\n\n### Get Status and Post-to-wall\n\nFor a more instructive example change the above `fbLoginSuccess` to;\n\n```js\nvar fbLoginSuccess = function (userData) {\n  console.log(\"UserInfo: \", userData);\n  facebookConnectPlugin.getLoginStatus(function onLoginStatus (status) {\n    console.log(\"current status: \", status);\n    facebookConnectPlugin.showDialog({\n      method: \"share\"\n    }, function onShareSuccess (result) {\n      console.log(\"Posted. \", result);\n    });\n  });\n};\n```\n\n### Getting a User's Birthday\n\nUsing the graph api this is a very simple task:\n\n```js\nfacebookConnectPlugin.api(\"\u003cuser-id\u003e/?fields=id,email\", [\"user_birthday\"],\n  function onSuccess (result) {\n    console.log(\"Result: \", result);\n    /* logs:\n      {\n        \"id\": \"000000123456789\",\n        \"email\": \"myemail@example.com\"\n      }\n    */\n  }, function onError (error) {\n    console.error(\"Failed: \", error);\n  }\n);\n```\n\n### Publish a Photo\n\nSend a photo to a user's feed\n\n```js\nfacebookConnectPlugin.showDialog({\n    method: \"share\",\n    picture:'https://www.google.co.jp/logos/doodles/2014/doodle-4-google-2014-japan-winner-5109465267306496.2-hp.png',\n    name:'Test Post',\n    message:'First photo post',\n    caption: 'Testing using phonegap plugin',\n    description: 'Posting photo using phonegap facebook plugin'\n  }, function (response) {\n    console.log(response)\n  }, function (response) {\n    console.log(response)\n  }\n);\n```\n\n### Hybrid Mobile App Events\n\nStarting from Facebook SDK v4.34 for both iOS and Android, there is a new way of converting pixel events into mobile app events. For more information: [https://developers.facebook.com/docs/app-events/hybrid-app-events/](https://developers.facebook.com/docs/app-events/hybrid-app-events/)\n\nIn order to enable this feature in your cordova app, please set the *FACEBOOK_HYBRID_APP_EVENTS* variable to \"true\"(default is false):\n```bash\n$ cordova plugin add cordova-plugin-facebook4 --save --variable APP_ID=\"123456789\" --variable APP_NAME=\"myApplication\" --variable FACEBOOK_HYBRID_APP_EVENTS=\"true\"\n```\nPlease check [this repo](https://github.com/msencer/fb_hybrid_app_events_sample) for an example app using this feature.\n\n**NOTE(iOS):** This feature only works with WKWebView so until [Cordova iOS 5 is relased](https://cordova.apache.org/news/2018/08/01/future-cordova-ios-webview.html), an additional plugin (e.g cordova-plugin-wkwebview-engine) is needed.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeduan%2Fcordova-plugin-facebook4","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjeduan%2Fcordova-plugin-facebook4","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjeduan%2Fcordova-plugin-facebook4/lists"}