0
私はiOS機能にアクセスするためのネイティブインタフェースを実装しています。ネイティブiOSネイティブモジュールに未対応ですか?
//SPRNUtilities.h at /ios/project_name
#import <React/RCTBridgeModule.h>
@interface SPRNUtilities : NSObject <RCTBridgeModule>
@end
//SPRNUtilities.m
#import "SPRNUtilities.h"
@implementation SPRNUtilities
RCT_EXPORT_MODULE();
RCT_EXPORT_METHOD(pushNotificationEnabled:(RCTResponseSenderBlock)callback)
{
id object = nil;
if ([[UIApplication sharedApplication] isRegisteredForRemoteNotifications]){
object = @(YES);
}else{
object = [NSNull null];
}
callback(@[object]);
}
私はJSコードでそれにアクセスする、
import { Platform, StyleSheet, NativeModules} from 'react-native';
export default class SPReactNativeUtils{
static pushNotificationEnabled(callback){
if (Platform.OS === 'ios'){
const SPNativeiOS = NativeModules.SPRNUtilities;
SPNativeiOS.pushNotificationEnabled((enabled) => {
callback(enabled);
});
}else{
callback(false);
}
}
}
しかし、メッセージ失敗しました:
を、私はこの問題を持って、なぜ誰かが私を助けてもらえますか? ありがとうございました!
1.私はログを「未定義」にしようとしました。 2.それがエラーを印刷する理由です。 3. xcodeモジュールが呼び出されたことはありません。 4.私はまた、 "npm start"、 "react-native run-ios"も試しました。しかしまだ動作していません –
静的なpushNotificationEnabled(コールバック){'どこから呼び出されているのですか?関数に有効なコールバックが渡されていることを確認してください。 –