react-native-callkeep icon indicating copy to clipboard operation
react-native-callkeep copied to clipboard

are you planning on supporting react native new architecture any time soon?

Open sidhamed opened this issue 1 year ago • 19 comments

sidhamed avatar Dec 09 '24 09:12 sidhamed

@sidhamed did you manage to get it working with new architecture RN >v.0.76 in any way?

danielnitu avatar Jan 12 '25 17:01 danielnitu

unfortunately no

sidhamed avatar Jan 12 '25 17:01 sidhamed

unfortunately no

Thanks for the quick reply! I see the project is pretty unmaintained, but it's the only one right now. Which RN version is the latest supported if you know?

danielnitu avatar Jan 12 '25 17:01 danielnitu

Anything below new architecture.

sidhamed avatar Jan 13 '25 06:01 sidhamed

@sidhamed what issues are you having? Its workign for me in the new build arch

CaptainJeff avatar Jan 15 '25 19:01 CaptainJeff

@CaptainJeff new arch supports backward compatibility at some point. I too am able to use this library in new architecture but I doubt this will leverage new architecture support.

ponikar avatar Jan 24 '25 07:01 ponikar

Can you describe how did you manage to make it work?

On Fri, Jan 24, 2025, 8:28 AM Ponikar @.***> wrote:

@CaptainJeff https://github.com/CaptainJeff new arch supports backward compatibility at some point. I too am able to use this library in new architecture but I doubt this will leverage new architecture support.

— Reply to this email directly, view it on GitHub https://github.com/react-native-webrtc/react-native-callkeep/issues/822#issuecomment-2611796782, or unsubscribe https://github.com/notifications/unsubscribe-auth/APO34XRV54GZLEQDUVIFSI32MHTS3AVCNFSM6AAAAABTIODQT6VHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDMMJRG44TMNZYGI . You are receiving this because you were mentioned.Message ID: @.*** com>

sidhamed avatar Jan 24 '25 07:01 sidhamed

@ponikar I am also interested in this

KolissnikBogdan avatar Jan 24 '25 10:01 KolissnikBogdan

Hey folks, I didn't do anything. My react native version is 0.76.5 where the new architecture is enabled by default. I complied my app and ran it in both android and iOS. It is working fine.

ponikar avatar Jan 24 '25 13:01 ponikar

@ponikar Are you using the “selfManaged” mode?

KolissnikBogdan avatar Jan 24 '25 13:01 KolissnikBogdan

everything works fine on ios too, the problem is with android

KolissnikBogdan avatar Jan 24 '25 13:01 KolissnikBogdan

Hey folks, I didn't do anything. My react native version is 0.76.5 where the new architecture is enabled by default. I complied my app and ran it in both android and iOS. It is working fine.

@ponikar What version of react native callkeep are you using?

KolissnikBogdan avatar Jan 24 '25 14:01 KolissnikBogdan

@KolissnikBogdan ^4.3.16

ponikar avatar Jan 27 '25 05:01 ponikar

@KolissnikBogdan

@ponikar Are you using the “selfManaged” mode?

I didn't understand this. I am not expo though.

ponikar avatar Jan 27 '25 06:01 ponikar

@ponikar My version is also same like yours

React Native: 0.76.5 Callkeep: ^4.3.16

error: Exception in HostObject::get for prop 'RNCallKeep': com.facebook.react.internal.turbomodule.core.TurboModuleInteropUtils$ParsingException: Unable to parse @ReactMethod annotations from native module: RNCallKeep. Details: Module exports two methods to JavaScript with the same name: "displayIncomingCall

shubham-ghanghotia avatar Feb 13 '25 15:02 shubham-ghanghotia

"react-native": "0.76.6" "react-native-callkeep": "4.3.16" # with some PR applied (Looper => handlerThread#825+ remove duplicate methods#816)

everythings seems to work great with new architecture. Until i noticed that didLoadWithEvents never happened on ios. Removed new arch and didLoadWithEvents is back again

michel3141 avatar Feb 17 '25 17:02 michel3141

try replacing below method in RNCallkeep.m

- (void)sendEventWithNameWrapper:(NSString *)name body:(id)body {
    NSLog(@"[RNCallKeep] sendEventWithNameWrapper: %@, hasListeners : %@", name, _hasListeners ? @"YES": @"NO");
 
    if (_hasListeners) {
        [self sendEventWithName:name body:body];
    } else {
        NSDictionary *dictionary = [NSDictionary dictionaryWithObjectsAndKeys:
            name, @"name",
            body, @"data",
            nil
        ];
        if (_delayedEvents == nil) _delayedEvents = [NSMutableArray array];
        [_delayedEvents addObject:dictionary];
    }
}

vishaldaher avatar May 09 '25 12:05 vishaldaher

Hi. @vishaldaher . You saved my day. Thank you very very much. Be happy !!!

Dimon70007 avatar Aug 20 '25 15:08 Dimon70007

I investigated the problem deeper and found that the reason is a late lazy call to RNCalkeep.init() from React-native Bridge. This problem is inherent to all applications that use swift in AppDelegate and call Objective-C libraries from it.

Dimon70007 avatar Aug 21 '25 08:08 Dimon70007