indiecastfm / react-native-audio-streamer

A react-native audio streaming module which works on both iOS & Android
MIT License
132 stars 50 forks source link

Incompatibility with react native 0.48.x in iOS #17

Open lucianomlima opened 6 years ago

lucianomlima commented 6 years ago

I'm try to use this package in React Native version 0.48.4 and always have this error in iOS redefinition of 'RCTMethodInfo'

In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:13:
In file included from ../../react-native/React/Base/RCTEventDispatcher.h:12:
In file included from /Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridge.h:13:
/Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridgeModule.h:54:16: error: redefinition of 'RCTMethodInfo'
typedef struct RCTMethodInfo {
               ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:9:
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.h:10:
../../react-native/React/Base/RCTBridgeModule.h:54:16: note: previous definition is here
typedef struct RCTMethodInfo {
               ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:13:
In file included from ../../react-native/React/Base/RCTEventDispatcher.h:12:
In file included from /Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridge.h:13:
/Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridgeModule.h:58:3: error: typedef redefinition with different types ('struct (anonymous struct at /Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridgeModule.h:54:16)' vs 'struct RCTMethodInfo')
} RCTMethodInfo;
  ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:9:
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.h:10:
../../react-native/React/Base/RCTBridgeModule.h:58:3: note: previous definition is here
} RCTMethodInfo;
  ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:13:
In file included from ../../react-native/React/Base/RCTEventDispatcher.h:12:
In file included from /Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridge.h:13:
/Users/luciano/Library/Developer/Xcode/DerivedData/minutosDeSabedoria-azkedynizuzbsvfbgkbuwmswzege/Build/Products/Debug-iphonesimulator/include/React/RCTBridgeModule.h:65:11: warning: duplicate protocol definition of 'RCTBridgeModule' is ignored [-Wduplicate-protocol]
@protocol RCTBridgeModule <NSObject>
          ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:9:
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.h:10:
../../react-native/React/Base/RCTBridgeModule.h:65:11: note: previous definition is here
@protocol RCTBridgeModule <NSObject>
          ^
/Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:108:34: warning: 'sendDeviceEventWithName:body:' is deprecated: Subclass RCTEventEmitter instead [-Wdeprecated-declarations]
    [self.bridge.eventDispatcher sendDeviceEventWithName:@"RNAudioStreamerStatusChanged"
                                 ^
In file included from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.m:13:
../../react-native/React/Base/RCTEventDispatcher.h:84:1: note: 'sendDeviceEventWithName:body:' has been explicitly marked deprecated here
__deprecated_msg("Subclass RCTEventEmitter instead");
^
In module 'Foundation' imported from /Users/luciano/apps/App2Sales/minutosDeSabedoria/node_modules/react-native-audio-streamer/ios/RNAudioStreamer/RNAudioStreamer.h:9:
In module 'CoreFoundation' imported from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.0.sdk/System/Library/Frameworks/Foundation.framework/Headers/Foundation.h:6:
In module 'Darwin' imported from /Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.0.sdk/System/Library/Frameworks/CoreFoundation.framework/Headers/CoreFoundation.h:16:
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator11.0.sdk/usr/include/sys/cdefs.h:180:48: note: expanded from macro '__deprecated_msg'
        #define __deprecated_msg(_msg) __attribute__((deprecated(_msg)))
                                                      ^
2 warnings and 2 errors generated.

I created a fresh react native app and after react-native link react-native-audio-streamer build failed both in Xcode and react native cli.

Some advice to fix this problem?

lucianomlima commented 6 years ago

We send a PR #18 that fix this problem.

wdayanand commented 5 years ago

It looks like the repo owners are no longer active so I created new package with fix use this https://www.npmjs.com/package/react-native-audio-file-streamer