簡體   English   中英

使用Java編譯調試時,Java文件找不到DeviceEventManagerModule

[英]Java file can't find DeviceEventManagerModule when compiling debug with Java

我一直在嘗試為react-native編寫一個模塊,當手機收到一個電話時,應該調用一個Javascript方法。 但是當我運行命令react-native run-androidcompileDebugJavaWithJavac會出現以下錯誤。

CallListenerModule.java:44 error: package DeviceEventManagerModule does not exist (DeviceEventManagerModule.RCTDeviceEventEmitter.class)

這是CallListenerModule類:

import com.facebook.react.bridge.NativeModule;
import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.ReactContext;
import com.facebook.react.bridge.ReactContextBaseJavaModule;
import com.facebook.react.bridge.ReactMethod;


import com.facebook.react.bridge.ReactApplicationContext;
import com.facebook.react.bridge.WritableMap;
import com.facebook.react.bridge.Arguments;

import android.util.Log;

public class CallListenerModule extends ReactContextBaseJavaModule {
    BroadcastReceiverCustom broadcastRecevier;

    ReactContext context;

    public CallListenerModule(ReactApplicationContext reactContext) {
        super(reactContext);
        context = reactContext;
        broadcastRecevier = new BroadcastReceiverCustom(reactContext);
    }

    @Override
        public String getName() {
        return "CallListenerModule";
    }

    public void sendCallEvent(String incomingNumber){
        WritableMap params = Arguments.createMap();
        params.putString("Number", incomingNumber);
        sendEvent(context, "CallRecevied", params);
    }


    private void sendEvent(ReactContext reactContext,
                        String eventName,
                        WritableMap params) {
        reactContext
            .getJSModule(DeviceEventManagerModule.RCTDeviceEventEmitter.class)
            .emit(eventName, params);
    }
}

我已經在互聯網上尋找解決這個問題的方法,但沒有運氣。 sendEvent方法是從文檔中復制的。 我從params參數中刪除了@Nullable ,因為它引發了另一個錯誤,我不打算在沒有參數的情況下發送事件。

這是我關於SO的第一篇文章,所以任何建設性的批評都贊賞:)

您忘記導入類com.facebook.react.modules.core.DeviceEventManagerModule 因此,您可以通過添加以下行來解決您的問題:

import com.facebook.react.modules.core.DeviceEventManagerModule

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM