2017-04-13 73 views
2

我在嘗試將分段分析與React Native包裝庫(react-native-segment-analytics)相集成。核心Segment iOS庫已添加爲Pod(使用use_frameworks!);我將SegmentAnalytics.xcodeproj放入Libraries/的包裝庫。iOS庫無法找到標頭

我運行到該錯誤是

.../node_modules/react-native-segment-analytics/ios/SegmentAnalytics/Classes/SegmentAnalytics.m:7:9: fatal error: 'Analytics/SEGAnalytics.h' file not found

有問題的行是

#import <Analytics/SEGAnalytics.h>

Libraries

SEGAnalytics.h

我很有信心,這是不是特定於細分市場,但我爲了以防萬一而將其留在這裏。

標題在項目中可用。事實上,我可以將這個相同的#import添加到項目根目錄下的源文件中,並且解決問題。唯一的區別是我可以看出,包裝庫是一個嵌入式xcodeproj。

我一直在砸我的腦袋,似乎每一個試圖解決這個問題的Xcode配置選項,包括嘗試不同的標題搜索路徑和框架搜索路徑,試圖添加段庫作爲一個鏈接的二進制文件,即使將輸入從<>更改爲「」語法。

任何幫助表示讚賞。

編輯:使用圖書館:

EDIT2:增加了一些文字,試圖澄清段VS的反應,本機段的分析庫。

https://github.com/segmentio/analytics-ios

https://github.com/charlires/react-native-segment-analytics

回答

0

嘗試使用安裝instructions從這個庫的開發者:

Installation

  1. Download and install the npm package by running npm install --save react-native-segment-io-analytics
  2. In your Podfile, add pod "Analytics" to your project and run pod install in your ios folder
  3. Inside Xcode (make sure you've opened your .xcworkspace file), go to the project navigator and right click Libraries -> Add Files to [your project's name].
  4. Go to node_modules -> react-native-segment-io-analytics -> and choose the RNSegmentIOAnalytics.xcodeproj file. Make sure your project links to libAnalytics.a and libRNSegmentIOAnalytics.a (The libraries should be listed under "Build Phases -> Link Binary With Libraries").

也許,你已經錯過了一些步驟。

+0

使用的庫是https://github.com/charlires/react-native-segment-analytics(在原始文章中更新)。我從添加包裝爲Pod的RN改爲嵌入xcodeproj,因爲我們的項目本身包含React Native(而不是Cocoapod),並且我們遇到了其他依賴性問題,而沒有爲「React」添加Pod。 – dpalmer

+0

對我而言,仍然不清楚一件事:您已經將SegmentAnalitics添加爲項目依賴項,並且您已將react-native-segment-analytics添加爲pod依賴項?或相反亦然?因爲在你的第一個截圖中,SegmentAnalitics是項目依賴項。 –

+0

它讀起來有點不可思議。我將更新原始文章,但是SegmentAnalytics.xcodeproj === react-native-segment-analytics,Analytics === Segment的iOS庫。 – dpalmer

0

經過大量的試驗和錯誤之後,我無法連接圖書館,並且無法看到Segment Analytics Pod文件依賴關係。我最終刪除了我們在項目中鏈接的所有第三方模塊,並將它們全部添加爲CocoaPods。這極大地簡化了我們的iOS項目文件(不再管理對搜索頁眉路徑或鏈接庫/框架的更改)。

值得一提:

  • 切換到通過的CocoaPods所有RN的依賴拉動需要將大部分的React Subspecs的把事情的工作和以前一樣。
  • 我在此遷移中遇到了緩存地獄。 tl; dr清除所有node_modules,Pods,派生數據和iOS構建文件夾。
  • 我不得不在Podfile中註釋掉use_frameworks!。否則,我碰到fatal error: 'React/RCTBridgeModule.h' file not found錯誤。谷歌搜索導致死衚衕。