IN NativeScript не может подключиться к Facebook - PullRequest
0 голосов
/ 12 декабря 2018

Я установил модуль

модуль 'FacebookSDK',

модуль 'FBSDKCoreKit'

модуль 'FBSDKLoginKit'

Это правильно установлено .via pod file.

код внутри моего app.js

const application = require("tns-core-modules/application"); 
if(application.ios){
var AppDelegate = NSObject.extend({
       applicationDidFinishLaunchingWithOptions :function (application, launchOptions) {
         var gglDelegate = false;
         try {
            var errorRef = new interop.Reference();
            GGLContext.sharedInstance().configureWithError(errorRef);
            var signIn = GIDSignIn.sharedInstance();
            gglDelegate = true;
        } catch (error) {  console.log(error);    }
        var fcbDelegate = FBSDKApplicationDelegate.sharedInstance().applicationDidFinishLaunchingWithOptions(application, launchOptions); // facebook login delegate
                                  return gglDelegate || fcbDelegate;
      },
     applicationOpenURLSourceApplicationAnnotation : function (application, url, sourceApplication, annotation) {
         var fcbDelegate = FBSDKApplicationDelegate.sharedInstance().applicationOpenURLSourceApplicationAnnotation(application, url, sourceApplication, annotation); // facebook login delegate
          var gglDelegate = GIDSignIn.sharedInstance().handleURLSourceApplicationAnnotation(url, sourceApplication, annotation); // google login delegate
           return fcbDelegate || gglDelegate;
        }                         
},{
     name: "AppDelegate",
     ObjCProtocols:[UIApplicationDelegate , UIResponder ]  
});  
}
application.run({ moduleName: "app-root" });

я пытаюсь использовать демо https://github.com/mkloubert/nativescript-social-login/tree/master/demo, но в моем проекте,Но я не использую какие-либо рамки nativescript.Мой проект основан на простом простом javascript demo.typescript или angular не работает в моем проекте.

но все же у меня появляется эта ошибка

enter image description here

1 Ответ

0 голосов
/ 12 декабря 2018

Похоже, ваш синтаксис был неверным.Расширение от UIResponder и использование protocols вместо ObjCProtocols при передаче его в качестве второго аргумента для расширения функции.

var AppDelegate = UIResponder.extend({
    ....
    ....
}, {
    name: "AppDelegate",
    protocols: [UIApplicationDelegate]
});

И установка делегата перед запуском приложения,

application.ios.delegate = AppDelegate
...