尝试创建我的第一个 npm 模块以确定用户是否在打电话。它适用于 React Native 应用程序。无论我尝试什么,模块都会返回未定义。NativeModules 总是看起来是一个空对象。
请帮忙!下面是代码的链接。export default RNOnPhoneCall;
inindex.js
只会返回未定义的。如何链接ios
文件夹中的功能,并将它们导出index.js
?注意,android
还不是最新的,只有ios
.
尝试创建我的第一个 npm 模块以确定用户是否在打电话。它适用于 React Native 应用程序。无论我尝试什么,模块都会返回未定义。NativeModules 总是看起来是一个空对象。
请帮忙!下面是代码的链接。export default RNOnPhoneCall;
inindex.js
只会返回未定义的。如何链接ios
文件夹中的功能,并将它们导出index.js
?注意,android
还不是最新的,只有ios
.
尝试重建您的项目。我最近遇到了同样的问题,只是重建解决了它
我没有在我的 iOS 文件中正确导出该方法。这是解决方案,以及最终项目的链接。
github 上的 react-native-check-phone-call-status
#import "RNCheckPhoneCallStatus.h"
#import "React/RCTLog.h"
#import <AVFoundation/AVAudioSession.h>
#import<CoreTelephony/CTCallCenter.h>
#import<CoreTelephony/CTCall.h>
@implementation RNCheckPhoneCallStatus
RCT_EXPORT_MODULE()
RCT_EXPORT_METHOD(get:(RCTResponseSenderBlock)callback)
{
NSString *phoneStatus = @"PHONE_OFF";
CTCallCenter *ctCallCenter = [[CTCallCenter alloc] init];
if (ctCallCenter.currentCalls != nil)
{
NSArray* currentCalls = [ctCallCenter.currentCalls allObjects];
for (CTCall *call in currentCalls)
{
if(call.callState == CTCallStateConnected)
{
phoneStatus = @"PHONE_ON";
}
}
}
callback(@[[NSNull null], phoneStatus]);
}
@end