2017-08-29 4 views
1

最初のnpmモジュールを作成しようとしましたが、ユーザーが電話に参加しているかどうかを確認しようとしました。これはReact Nativeアプリのためのものです。何を試しても、モジュールは未定義に戻ります。 NativeModulesは常に空のオブジェクトのようです。ネイティブNativeModulesを空白にします。

助けてください!以下はコードへのリンクです。 export default RNOnPhoneCall;index.jsは、未定義の場合のみ返されます。 iosフォルダ内の関数をリンクし、index.jsにエクスポートするにはどうすればよいですか?最新の情報であるandroidはまだ最新ではなく、iosです。

Link to Github

答えて

0

私のiOSファイルでメソッドを正しくエクスポートしていませんでした。最終的なプロジェクトへのリンクとともに、解決策があります。

react-native-check-phone-call-status on github

#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 
0

プロジェクトを再構築してみてください。私は最近同じ問題に直面し、単に再構築して解決しました。

関連する問題