2016-04-27 2 views
1

[Огромное обновление]
Кто-то прислал мне это, и это гораздо легче читать, чтобы установить fbsdk с React Native: https://developers.facebook.com/docs/react-native/getting-started-ios
Однако проблема была все та же :Установка рамки Fbsdk в течение React-Native проекта IOS

Use of undeclared identifier 'UIUserInterfaceIdiomTV' 

Я думаю, что это ошибка идет от содержания, запряженных CocoaPods, потому что я был в состоянии сделать sample example работы просто удалив один и тот же UIUserInterfaceIdiomTV случая (он будет использоваться в коммутаторе).

Однако, следуя каждый шаг от руководства и в конечном итоге удаление UIUserInterfaceIdiomTV, я столкнулся с новыми проблемами компиляции в моем собственном проекте:
Undefined symbols for architecture x86_64: "_OBJC_CLASS_$_FBSDKAppEvents", referenced from: objc-class-ref in AppDelegate.o "_OBJC_CLASS_$_FBSDKApplicationDelegate", referenced from: objc-class-ref in AppDelegate.o "_OBJC_CLASS_$_RCTRootView", referenced from: objc-class-ref in AppDelegate.o ld: symbol(s) not found for architecture x86_64 clang: error: linker command failed with exit code 1 (use -v to see invocation)

Если кто-нибудь может помочь ...
Спасибо за ваш Помогите!

+0

Чтобы быть немного более ясным, я пробовал разные комбинации шагов из «Facebook SDK для iOS», зная, что я должен пропустить несколько шагов, поскольку Cocoapods заботится о некоторых, но я могу " t выяснить, какие шаги я должен сделать для компиляции для работы. –

+0

Я просто ответил на аналогичный вопрос, взгляните на это: http://stackoverflow.com/questions/36904245/getting-reactnative-facebooksdk-working/36921878#36921878 Надеюсь, это поможет. – Crysfel

+0

Привет, спасибо за вашу помощь, но я даже не могу скомпилировать свой проект. И я получаю ту же ошибку, когда пытаюсь скомпилировать образец [HelloFacebook] (https://github.com/facebook/react-native-fbsdk/tree/master/Sample/HelloFacebook), кстати ... –

ответ

1

Я, наконец, сделал fbsdk для работы (24/04/2016). Суммируя различные шаги, в случае, если вы встречаетесь с той же проблемой:

  • Если вы встречаете The 'YourApp [Debug]' target overrides the 'OTHER_LDFLAGS' build setting... предупреждение после команды pod install, то $(inherited) должен быть добавлен в параметры сборки основного проекта, а не в стручках
  • UIUserInterfaceIdiomTV не признаются в настоящее время по неизвестной причине, так что в AppDelegate.m, если вы получите сообщение об ошибке, просто обезжиренном случае от выключателя
  • info.plist должен включать в себя несколько строк, которые не являются (все же), упомянутые в руководстве по установке sdk. Вот полный список того, что вы должны добавить: <key>CFBundleURLTypes</key> <array> <dict> <key>CFBundleURLSchemes</key> <array> <string>fb{your-app-id}</string> </array> </dict> </array> <key>LSApplicationQueriesSchemes</key> <array> <string>fbapi</string> <string>fb-messenger-api</string> <string>fbauth2</string> <string>fbshareextension</string> </array> <key>FacebookAppID</key> <string>{your-app-id}</string> <key>FacebookDisplayName</key> <string>{your-app-name}</string>

Не забудьте заменить {ваше-приложение-идентификатор} по ... вашему идентификатору приложения, а {-приложение имя-вашего} по имени приложения , Удачи всем!

1

Эта статья отвечает на ваш вопрос прямо ... https://colinramsay.co.uk/2016/04/29/go-serverless.html

Я копировать/вставить соответствующие детали, потому что я знаю, что ссылка не достойный ответ на СОФ.

Давайте установить Facebook React Native SDK через НПМ, что даст нам кнопку хороший логин бесплатно:

npm install --save react-native-fbsdkcore react-native-fbsdklogin 

Нам необходимо установить некоторый машинный код, чтобы сделать эту работу, так что давайте делать это с CocoaPods. Сначала мы создаем Podfile:

cd ios 
pod init 

Редактировать файл, который был только что создан в FacebookAwsReactNative/Иос/Podfile и добавьте следующее:

source 'https://github.com/CocoaPods/Specs.git' 
pod 'React', :subspecs => ['Core', 'RCTImage', 'RCTNetwork', 'RCTText', 'RCTWebSocket'], :path => '../node_modules/react-native' 
pod 'react-native-fbsdkcore', :path => '../node_modules/react-native-fbsdkcore' 
pod 'react-native-fbsdklogin', :path => '../node_modules/react-native-fbsdklogin' 
pod 'react-native-fbsdkshare', :path => '../node_modules/react-native-fbsdkshare' 

Вы, возможно, потребуется выполнить некоторые другие шаги здесь, как и в Facebook documentation. Пойдите и прочитайте этот раздел на всякий случай. Давайте установим стручки, а затем немного поработаем в Xcode.

pod install 
open FacebookAwsReactNative.xcworkspace 

Обратите внимание: теперь мы используем файл xcworkspace, а не файл xcodeproj; это необходимо для CocoaPods, чтобы сделать свое дело.

Развернуть папку FacebookAwsReactNative> Библиотеки и выбрать все элементы там и удалить ссылки на них. Это связано с тем, что мы решили использовать CocoaPods для React Native (см. Строку pod 'React', которую мы добавили в Podfile), поэтому элементы в библиотеках являются дубликатами.

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