jpush / janalytics-react-native

MIT License
51 stars 21 forks source link

Undefined symbol: _OBJC_METACLASS_$_JPUSHRequest #48

Closed Natai closed 3 years ago

Natai commented 5 years ago

React-Native版本0.59.9,引入janalytics-react-native,不用cocoapods直接react-native link正常;用cocoapods则编译报错,Development Pods中已经包含了JAnalyticsRN、JCoreRN文件夹,报错信息:

Undefined symbols for architecture x86_64:
  "_OBJC_METACLASS_$_JPUSHRequest", referenced from:
      _OBJC_METACLASS_$_JANALYTICSUserPropertyRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_OBJC_CLASS_$_JPUSHResponse", referenced from:
      _OBJC_CLASS_$_JANALYTICSUserPropertyResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_OBJC_CLASS_$_JPUSHRequest", referenced from:
      _OBJC_CLASS_$_JANALYTICSUserPropertyRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_OBJC_IVAR_$_JPUSHRequest._packetData", referenced from:
      -[JANALYTICSUserPropertyRequest packData] in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_OBJC_METACLASS_$_JPUSHReportResponse", referenced from:
      _OBJC_METACLASS_$_JANALYTICSUserInfoResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_METACLASS_$_JANALYTICSDetachUserInfoResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_METACLASS_$_JANALYTICSFrequencyResponse in libjanalytics-ios-1.2.1.a(JANALYTICSFrequencyReport.o)
      _OBJC_METACLASS_$_JANALYTICSEventReportResponse in libjanalytics-ios-1.2.1.a(JANALYTICSEventReport.o)
      _OBJC_METACLASS_$_JANALYTICSPageFlowReportResponse in libjanalytics-ios-1.2.1.a(JANALYTICSPageFlowReport.o)
  "_OBJC_METACLASS_$_JPUSHReportRequest", referenced from:
      _OBJC_METACLASS_$_JANALYTICSUserInfoRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_METACLASS_$_JANALYTICSDetachUserInfoRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_METACLASS_$_JANALYTICSFrequencyRequest in libjanalytics-ios-1.2.1.a(JANALYTICSFrequencyReport.o)
      _OBJC_METACLASS_$_JANALYTICSEventReportRequest in libjanalytics-ios-1.2.1.a(JANALYTICSEventReport.o)
      _OBJC_METACLASS_$_JANALYTICSPageFlowReportRequest in libjanalytics-ios-1.2.1.a(JANALYTICSPageFlowReport.o)
  "_OBJC_CLASS_$_JPUSHReportResponse", referenced from:
      _OBJC_CLASS_$_JANALYTICSUserInfoResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_CLASS_$_JANALYTICSDetachUserInfoResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_CLASS_$_JANALYTICSFrequencyResponse in libjanalytics-ios-1.2.1.a(JANALYTICSFrequencyReport.o)
      _OBJC_CLASS_$_JANALYTICSEventReportResponse in libjanalytics-ios-1.2.1.a(JANALYTICSEventReport.o)
      _OBJC_CLASS_$_JANALYTICSPageFlowReportResponse in libjanalytics-ios-1.2.1.a(JANALYTICSPageFlowReport.o)
  "_OBJC_METACLASS_$_JPUSHResponse", referenced from:
      _OBJC_METACLASS_$_JANALYTICSUserPropertyResponse in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_JPUSHJSONData", referenced from:
      -[JANALYTICSUserInfoSession insertAccount:withItime:] in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
  "_OBJC_CLASS_$_JPUSHReportRequest", referenced from:
      _OBJC_CLASS_$_JANALYTICSUserInfoRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_CLASS_$_JANALYTICSDetachUserInfoRequest in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      _OBJC_CLASS_$_JANALYTICSFrequencyRequest in libjanalytics-ios-1.2.1.a(JANALYTICSFrequencyReport.o)
      _OBJC_CLASS_$_JANALYTICSEventReportRequest in libjanalytics-ios-1.2.1.a(JANALYTICSEventReport.o)
      _OBJC_CLASS_$_JANALYTICSPageFlowReportRequest in libjanalytics-ios-1.2.1.a(JANALYTICSPageFlowReport.o)
  "_JPUSHGetCurrentTimestamp", referenced from:
      -[JANALYTICSEventObject init] in libjanalytics-ios-1.2.1.a(JANALYTICSEventObject.o)
      -[JANALYTICSUserInfoSession cacheAndUploadUserInfo:] in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
      -[JANALYTICSUserInfoSession cacheAndDetachUserInfo:] in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
      -[JANALYTICSUserInfoSession overLimit] in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
      -[JANALYTICSFrequencyRequest packData] in libjanalytics-ios-1.2.1.a(JANALYTICSFrequencyReport.o)
      -[JANALYTICSRequestFrequency tooFrequently] in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
      -[JANALYTICSRequestSession setViewStart:] in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
      ...
  "_OBJC_CLASS_$_JCOREInterface", referenced from:
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSService.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSClientController.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserPropertyController.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserProperty.o)
  "_JCOREDisplayVersion", referenced from:
      +[JANALYTICSService setupWithConfig:] in libjanalytics-ios-1.2.1.a(JANALYTICSService.o)
  "_JCOREGetBuildVersion", referenced from:
      +[JANALYTICSService setupWithConfig:] in libjanalytics-ios-1.2.1.a(JANALYTICSService.o)
  "_JPUSHGetDateAndTimeFromTimestamp", referenced from:
      -[JANALYTICSRequestSession setViewStart:] in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
      -[JANALYTICSRequestSession setViewStop:] in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
  "_OBJC_CLASS_$_JPUSHLog", referenced from:
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSEventObject.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSService.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSClientController.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoSession.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserInfoReport.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSRequestSession.o)
      objc-class-ref in libjanalytics-ios-1.2.1.a(JANALYTICSUserPropertyController.o)
      ...
ld: symbol(s) not found for architecture x86_64
clang: error: linker command failed with exit code 1 (use -v to see invocation)

package.json

{
    "name": "RNTest",
    "version": "0.0.1",
    "private": true,
    "scripts": {
        "start": "yarn react-native start"
    },
    "dependencies": {
        "janalytics-react-native": "^1.4.1",
        "jcore-react-native": "^1.3.2",
        "react": "16.8.3",
        "react-native": "^0.59.9"
    }
}

Podfile

platform :ios, '9.0'
use_frameworks!
inhibit_all_warnings!

target 'RNTest' do

  pod 'JAnalyticsRN', :path => '../node_modules/janalytics-react-native'
  pod 'JCoreRN', :path => '../node_modules/jcore-react-native'

  pod 'React', :path => '../node_modules/react-native', :subspecs => [
    'Core',
    'CxxBridge',
    'DevSupport',
    'RCTText',
    'RCTNetwork',
    'RCTWebSocket',
    'RCTAnimation', 
  ]

  pod 'yoga', :path => '../node_modules/react-native/ReactCommon/yoga'

  pod 'DoubleConversion', :podspec => '../node_modules/react-native/third-party-podspecs/DoubleConversion.podspec'
  pod 'glog', :podspec => '../node_modules/react-native/third-party-podspecs/glog.podspec'
  pod 'Folly', :podspec => '../node_modules/react-native/third-party-podspecs/Folly.podspec'

end