не может запустить родной модуль официальный пример - PullRequest
1 голос
/ 19 марта 2019

Я проследовал за документом и попытался вызвать ToastExample.show () из собственного кода реакции.Но это всегда показывает ошибка

Мой код:

открытый класс CustomToastPackage реализует ReactPackage {

@Override
public List<ViewManager> createViewManagers(ReactApplicationContext reactContext) {
    return Collections.emptyList();
}

@Override
public List<NativeModule> createNativeModules(
        ReactApplicationContext reactContext) {
    List<NativeModule> modules = new ArrayList<>();

    modules.add(new ToastModule(reactContext));

    return modules;
}

}

public class ToastModule extends ReactContextBaseJavaModule {

private static final String DURATION_SHORT_KEY = "SHORT";
private static final String DURATION_LONG_KEY = "LONG";

public ToastModule(ReactApplicationContext reactContext) {
    super(reactContext);
}
@Override
public String getName() {
    return "ToastExample";
}
@Override
public Map<String, Object> getConstants() {
    final Map<String, Object> constants = new HashMap<>();
    constants.put(DURATION_SHORT_KEY, Toast.LENGTH_SHORT);
    constants.put(DURATION_LONG_KEY, Toast.LENGTH_LONG);
    return constants;
}
@ReactMethod
public void show(String message, int duration) {
    Toast.makeText(getReactApplicationContext(), message, duration).show();
}

}

MainApplication.Java:

@Override
    protected List<ReactPackage> getPackages() {
        return Arrays.<ReactPackage>asList(
                new MainReactPackage(),
                new ReanimatedPackage(),
                new VectorIconsPackage(),
                new RNGestureHandlerPackage(),
                new CustomToastPackage(),
                new RNSharedPreferencesReactPackage()

        );
    }

ToastExample.js:

import {NativeModules} from 'react-native';
module.exports = NativeModules.ToastExample;

На моем экране:

import ToastExample from './ToastExample'
ToastExample.show('Awesome', ToastExample.SHORT);

Я пыталсязапустить-андроид и ./gradlew почистить много раз.Что не так с кодом?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...